com.saxonica.schema
Class AssertionFacet

java.lang.Object
  extended by com.saxonica.schema.Facet
      extended by com.saxonica.schema.AssertionFacet
All Implemented Interfaces:
java.io.Serializable

public class AssertionFacet
extends Facet

Represents an assertion facet on a schema-defined simple type. This is a Saxon extension.

See Also:
Serialized Form

Field Summary
 
Fields inherited from class com.saxonica.schema.Facet
ASSERT, ENUMERATION, FRACTIONDIGITS, LENGTH, MAX_EXCLUSIVE, MAX_INCLUSIVE, MAX_LENGTH, MIN_EXCLUSIVE, MIN_INCLUSIVE, MIN_LENGTH, PATTERN, TOTALDIGITS, WHITESPACE
 
Constructor Summary
AssertionFacet(Assertion assertion)
          Create a assertion facet
 
Method Summary
 void checkFacetRestriction(UserSimpleType type, SimpleType base)
          Check that this facet is legal when used on a type derived by restriction
 java.lang.String getName()
          Returns the name of this Facet
 java.lang.String getValue()
          Returns the lexical representation of this facet
 void serializeFacet(SchemaModelSerializer serializer)
          Serialize this facet
 void setValue(java.lang.String value)
          Set the string value of the facet
 boolean testAtomicValue(AtomicValue value)
          Test whether an atomic value conforms to this facet
 boolean testListValue(Value value)
          Test whether a list value conforms to this facet.
 
Methods inherited from class com.saxonica.schema.Facet
getWhitespaceAction, isFacetName, isFixed, isNewlyIntroduced, makeFacet, setFixed, testLength, toLong
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

AssertionFacet

public AssertionFacet(Assertion assertion)
Create a assertion facet

Parameters:
assertion - the assertion
Method Detail

getName

public java.lang.String getName()
Description copied from class: Facet
Returns the name of this Facet

Specified by:
getName in class Facet
Returns:
the name of this Facet

setValue

public void setValue(java.lang.String value)
              throws SchemaException
Set the string value of the facet

Specified by:
setValue in class Facet
Parameters:
value - the string value of the facet
Throws:
java.lang.UnsupportedOperationException - for facets that have no lexica value, specifically the facet containing the collected enumeration values
SchemaException - if the value is not valid for this facet on this type

getValue

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

Specified by:
getValue in class Facet
Returns:
the value of this facet

checkFacetRestriction

public void checkFacetRestriction(UserSimpleType type,
                                  SimpleType base)
                           throws SchemaException
Check that this facet is legal when used on a type derived by restriction

Overrides:
checkFacetRestriction in class Facet
Parameters:
base - the type from which the restricted type is derived
type - the type on which the facet is defined
Throws:
SchemaException - if the facet is not legal

testAtomicValue

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

Overrides:
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

testListValue

public boolean testListValue(Value value)
Test whether a list value conforms to this facet. This is used only for the enumeration and assertion facets.

Overrides:
testListValue 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

serializeFacet

public void serializeFacet(SchemaModelSerializer serializer)
                    throws XPathException
Serialize this facet

Overrides:
serializeFacet in class Facet
Parameters:
serializer - receives the content for serialization
Throws:
XPathException


Copyright (c) Saxonica Limited. All rights reserved.