com.saxonica.schema
Class LengthRangeFacet

java.lang.Object
  extended by com.saxonica.schema.Facet
      extended by com.saxonica.schema.LengthRangeFacet
All Implemented Interfaces:
Serializable
Direct Known Subclasses:
LengthFacet, MaxLengthFacet, MinLengthFacet

public abstract class LengthRangeFacet
extends Facet

Abstract class for the three facets length, minLength, and maxLength. Subclasses represent the minLength and maxLength facets.

See Also:
Serialized Form

Constructor Summary
LengthRangeFacet()
           
 
Method Summary
 String getValue()
          Returns the lexical representation of the value of this facet
 void setNumericValue(int value)
          Set the value as an integer
 void setValue(String value)
          Set the value of this facet as a string.
 boolean testAtomicValue(AtomicValue value)
          Test whether an atomic value conforms to this facet
abstract  boolean testLength(int actualLength)
          Test whether a supplied length conforms to this required length.
 long toLong()
          Returns the numeric value of this facet, for facets where this is appropriate
 
Methods inherited from class com.saxonica.schema.Facet
checkFacetRestriction, getMessage, getName, getWhitespaceAction, isConstraining, isFacetName, isFixed, isNewlyIntroduced, makeFacet, serializeFacet, setFixed, setMessage, testListValue
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

LengthRangeFacet

public LengthRangeFacet()
Method Detail

getValue

public String getValue()
Description copied from class: Facet
Returns the lexical representation of the value of this facet

Specified by:
getValue in class Facet
Returns:
the value of this facet, as a string

toLong

public long toLong()
Description copied from class: Facet
Returns the numeric value of this facet, for facets where this is appropriate

Overrides:
toLong in class Facet
Returns:
a long representation of the value of this facet

setNumericValue

public void setNumericValue(int value)
Set the value as an integer

Parameters:
value - the value of the length facet as an integer

setValue

public void setValue(String value)
              throws SchemaException
Set the value of this facet as a string. For internal use only.

Parameters:
value - the value as a string, which must parse as an integer
Throws:
SchemaException - if the value is invalid.

testAtomicValue

public boolean testAtomicValue(AtomicValue value)
Test whether an atomic value conforms to this facet

Specified by:
testAtomicValue in class Facet
Parameters:
value - the value to be tested
Returns:
true if the value conforms; false if it doesn't conform, or if the test fails

testLength

public abstract boolean testLength(int actualLength)
Test whether a supplied length conforms to this required length. This method is overridden for the minlength and maxlength facets.

Overrides:
testLength in class Facet
Parameters:
actualLength - the actual length of the list
Returns:
true if the facet allows a list of this length, otherwise false


Copyright (c) 2004-2011 Saxonica Limited. All rights reserved.