Package net.sf.saxon.s9api
Class ConstructedItemType
java.lang.Object
net.sf.saxon.s9api.ItemType
net.sf.saxon.s9api.ConstructedItemType
An item type constructed by the
ItemTypeFactory
(as distinct from one that is predefined)
This class is not user-visible.
-
Nested Class Summary
Nested classes/interfaces inherited from class net.sf.saxon.s9api.ItemType
ItemType.BuiltInAtomicItemType
-
Field Summary
Fields inherited from class net.sf.saxon.s9api.ItemType
ANY_ARRAY, ANY_ATOMIC_VALUE, ANY_FUNCTION, ANY_ITEM, ANY_MAP, ANY_NODE, ANY_URI, ATTRIBUTE_NODE, BASE64_BINARY, BOOLEAN, BYTE, COMMENT_NODE, DATE, DATE_TIME, DATE_TIME_STAMP, DAY_TIME_DURATION, DECIMAL, DOCUMENT_NODE, DOUBLE, DURATION, ELEMENT_NODE, ENTITY, ERROR, FLOAT, G_DAY, G_MONTH, G_MONTH_DAY, G_YEAR, G_YEAR_MONTH, HEX_BINARY, ID, IDREF, INT, INTEGER, LANGUAGE, LONG, NAME, NAMESPACE_NODE, NCNAME, NEGATIVE_INTEGER, NMTOKEN, NON_NEGATIVE_INTEGER, NON_POSITIVE_INTEGER, NORMALIZED_STRING, NOTATION, NUMERIC, POSITIVE_INTEGER, PROCESSING_INSTRUCTION_NODE, QNAME, SHORT, STRING, TEXT_NODE, TIME, TOKEN, UNSIGNED_BYTE, UNSIGNED_INT, UNSIGNED_LONG, UNSIGNED_SHORT, UNTYPED_ATOMIC, YEAR_MONTH_DURATION
-
Constructor Summary
ConstructorsModifierConstructorDescriptionprotected
ConstructedItemType
(ItemType underlyingType, Processor processor) Protected constructor -
Method Summary
Modifier and TypeMethodDescriptionGet the conversion rules implemented by this type.protected Processor
Get the underlying ProcessorMethod to get the underlying Saxon implementation objectboolean
Determine whether this item type matches a given item.boolean
Determine whether this ItemType subsumes another ItemType.Methods inherited from class net.sf.saxon.s9api.ItemType
equals, getTypeName, hashCode, toString
-
Constructor Details
-
ConstructedItemType
Protected constructor- Parameters:
underlyingType
- the Saxon internal item type. Must not be null.processor
- The s9api processor Must not be null
-
-
Method Details
-
getConversionRules
Get the conversion rules implemented by this type. The conversion rules reflect variations between different versions of the W3C specifications, for example XSD 1.1 allows "+INF" as a lexical representation of xs:double, while XSD 1.0 does not.- Overrides:
getConversionRules
in classItemType
- Returns:
- the conversion rules
-
matches
Determine whether this item type matches a given item.- Specified by:
matches
in classItemType
- Parameters:
item
- the item to be tested against this item type- Returns:
- true if the item matches this item type, false if it does not match.
- Throws:
SaxonApiUncheckedException
- in the rare event that the item is a map or array containing a lazily evaluated sequence, and evaluation of the sequence fails with a dynamic error in the course of checking
-
subsumes
Determine whether this ItemType subsumes another ItemType. Specifically,A.subsumes(B) is true if every value that matches the ItemType B also matches the ItemType A.
-
getUnderlyingItemType
Method to get the underlying Saxon implementation objectThis gives access to Saxon methods that may change from one release to another.
- Specified by:
getUnderlyingItemType
in classItemType
- Returns:
- the underlying Saxon implementation object
-
getProcessor
Get the underlying Processor- Returns:
- the processor used to create this ItemType. This will be null if the ItemType is one of the three
static constant item types
ItemType.ANY_ITEM
,ItemType.ANY_NODE
, orItemType.ANY_ATOMIC_VALUE
-