Package com.saxonica.ee.schema
Class EnumerationFacetSet
- java.lang.Object
-
- com.saxonica.ee.schema.Facet
-
- com.saxonica.ee.schema.EnumerationFacetSet
-
public class EnumerationFacetSet extends Facet
Represents the set of enumeration values defined on a single simple type, This is a "virtual" facet that combines all the enumeration facets in one simple type definition.
-
-
Constructor Summary
Constructors Constructor Description EnumerationFacetSet()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
addEnumerationValue(AtomicSequence val, java.lang.String stringValue)
Add a permitted value to the set of enumeration values.void
checkFacetRestriction(UserSimpleType type, SimpleType base, SchemaCompiler compiler)
Check that this facet is legal when used on a type derived by restrictionFunction
getFacetAsFunctionItem()
Get a function item that represents this Facet schema component.java.lang.String
getName()
The name of this facet.java.lang.String
getSharedInstance(java.lang.String value)
Get an instance of the facet value that is stored in the schema rather than the instanceAtomicSequence
getSharedInstance(AtomicSequence value)
Get an instance of the facet value that is stored in the schema rather than the instancejava.util.List<java.lang.String>
getStringValues()
Get the enumeration values, as stringsjava.lang.String
getValue()
Get a string representation of the value of the facetvoid
serializeFacet(SchemaModelSerializer serializer)
Serialize this facetboolean
testAtomicValue(AtomicValue value)
Test whether an atomic value conforms to this facetboolean
testListValue(AtomicSequence value)
Test whether a list value conforms to this facet.-
Methods inherited from class com.saxonica.ee.schema.Facet
getConstraintName, getMessage, getWhitespaceAction, isConstraining, isFacetName, isFixed, isNewlyIntroduced, makeFacet, setFixed, setMessage, testLength, toLong
-
-
-
-
Method Detail
-
getName
public java.lang.String getName()
The name of this facet.
-
getStringValues
public java.util.List<java.lang.String> getStringValues()
Get the enumeration values, as strings- Returns:
- the list of strings in the enumeration facets
-
addEnumerationValue
public void addEnumerationValue(AtomicSequence val, java.lang.String stringValue)
Add a permitted value to the set of enumeration values. For internal use only.- Parameters:
val
- the value to be added. This must be an atomic value or a sequence of atomic values.stringValue
- the string value of the facet as written
-
getValue
public java.lang.String getValue()
Get a string representation of the value of the facet
-
checkFacetRestriction
public void checkFacetRestriction(UserSimpleType type, SimpleType base, SchemaCompiler compiler)
Check that this facet is legal when used on a type derived by restriction- Overrides:
checkFacetRestriction
in classFacet
- Parameters:
base
- the type from which the restricted type is derivedcompiler
- the schema compilertype
- the type on which the facet is defined
-
testAtomicValue
public boolean testAtomicValue(AtomicValue value)
Test whether an atomic value conforms to this facet- Specified by:
testAtomicValue
in classFacet
- Parameters:
value
- the value to be tested- Returns:
- true if the value conforms; false if it doesn't conform, or if the test fails
-
testListValue
public boolean testListValue(AtomicSequence value)
Test whether a list value conforms to this facet. This is used only for the enumeration facet.- Overrides:
testListValue
in classFacet
- Parameters:
value
- the value to be tested- Returns:
- true if the value conforms; false if it doesn't conform, or if the test fails
-
getSharedInstance
public java.lang.String getSharedInstance(java.lang.String value)
Get an instance of the facet value that is stored in the schema rather than the instance- Parameters:
value
- the value required- Returns:
- a string which is equal to the value required, but which if possible is the instance held in the compiled schema, reducing storage requirements in instances.
-
getSharedInstance
public AtomicSequence getSharedInstance(AtomicSequence value)
Get an instance of the facet value that is stored in the schema rather than the instance- Parameters:
value
- the value required- Returns:
- a string which is equal to the value required, but which if possible is the instance held in the compiled schema, reducing storage requirements in instances.
-
serializeFacet
public void serializeFacet(SchemaModelSerializer serializer) throws XPathException
Serialize this facet- Overrides:
serializeFacet
in classFacet
- Parameters:
serializer
- receives the content for serialization- Throws:
XPathException
- if an error occurs writing the value to the output
-
getFacetAsFunctionItem
public Function getFacetAsFunctionItem()
Description copied from class:Facet
Get a function item that represents this Facet schema component.- Specified by:
getFacetAsFunctionItem
in classFacet
-
-