public interface ItemType
Saxon assumes that apart from AnyItemType (which corresponds to item()
and matches anything), every ItemType will be either an AtomicType, a NodeTest,
or a FunctionItemType. User-defined implementations of ItemType must therefore extend one of those
three classes/interfaces.
AtomicType,
NodeTest,
FunctionItemType| Modifier and Type | Interface and Description |
|---|---|
static interface |
ItemType.WithSequenceTypeCache
Extension of the ItemType interface implemented by some item types, to provide
a cache of SequenceType objects based on this item type, with different
occurrence indicators.
|
| Modifier and Type | Method and Description |
|---|---|
java.lang.String |
generateJavaScriptItemTypeAcceptor(java.lang.String errorCode,
int targetVersion)
Generate Javascript code to convert a supplied Javascript value to this item type,
if conversion is possible, or throw an error otherwise.
|
java.lang.String |
generateJavaScriptItemTypeTest(ItemType knownToBe,
int targetVersion)
Generate Javascript code to test whether an item conforms to this item type
|
PlainType |
getAtomizedItemType()
Get the item type of the atomic values that will be produced when an item
of this type is atomized
|
ItemType |
getPrimitiveItemType()
Get the primitive item type corresponding to this item type.
|
int |
getPrimitiveType()
Get the primitive type corresponding to this item type.
|
UType |
getUType()
Get the corresponding
UType. |
boolean |
isAtomicType()
Determine whether this item type is an atomic type
|
boolean |
isAtomizable()
Ask whether values of this type are atomizable
|
boolean |
isPlainType()
Determine whether this item type is a plain type (that is, whether it can ONLY match
atomic values)
|
boolean |
matches(Item item,
TypeHierarchy th)
Test whether a given item conforms to this type
|
java.lang.String |
toExportString()
Return a string representation of this SequenceType suitable for use in export (SEF) files.
|
java.lang.String |
toString() |
void |
visitNamedSchemaComponents(SchemaComponentVisitor visitor)
Visit all the schema components used in this ItemType definition
|
boolean isAtomicType()
boolean isPlainType()
boolean matches(Item item, TypeHierarchy th) throws XPathException
item - The item to be testedth - The type hierarchy cache. Currently used only when matching function items.XPathExceptionItemType getPrimitiveItemType()
int getPrimitiveType()
UType getUType()
UType. A UType is a union of primitive item
types.PlainType getAtomizedItemType()
boolean isAtomizable()
java.lang.String toExportString()
void visitNamedSchemaComponents(SchemaComponentVisitor visitor) throws XPathException
visitor - the visitor class to be called when each component is visitedXPathException - if an error occursjava.lang.String generateJavaScriptItemTypeTest(ItemType knownToBe, int targetVersion) throws XPathException
knownToBe - An item type that the supplied item is known to conform to; the generated code
can assume that the item is an instance of this type.targetVersion - The version of Saxon-JS for which code is being generated. Currently either 1 or 2.XPathException - if JS code cannot be generated for this item type, for example because
the test is schema-aware.java.lang.String generateJavaScriptItemTypeAcceptor(java.lang.String errorCode,
int targetVersion)
throws XPathException
errorCode - the error to be thrown if conversion is not possibletargetVersion - the version of Saxon-JS for which code is being generatedXPathExceptionjava.lang.String toString()
toString in class java.lang.ObjectCopyright (c) 2004-2018 Saxonica Limited. All rights reserved.