java.io.SerializableAtomicType, FunctionItemType, PlainTypeAnyChildNodeTest, AnyFunctionType, AnyItemType, AnyNodeTest, BuiltInAtomicType, CombinedNodeTest, ContentTypeTest, DocumentNodeTest, EmptySequenceTest, ExternalObjectType, LocalNameTest, NamespaceTest, NameTest, NodeKindTest, NodeTestpublic interface ItemType
extends java.io.Serializable
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 | Method | Description |
|---|---|---|
PlainType |
getAtomizedItemType() |
Get the item type of the atomic values that will be produced when an item
of this type is atomized
|
double |
getDefaultPriority() |
Determine the default priority of this item type when used on its own as a Pattern
|
ItemType |
getPrimitiveItemType() |
Get the primitive item type corresponding to this item type.
|
int |
getPrimitiveType() |
Get the primitive type corresponding to this item type.
|
ItemType |
getSuperType(TypeHierarchy th) |
Get the type from which this item type is derived by restriction.
|
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,
XPathContext context) |
Test whether a given item conforms to this type
|
boolean |
matchesItem(Item item,
boolean allowURIPromotion,
Configuration config) |
Test whether a given item conforms to this type
|
java.lang.String |
toString(NamePool pool) |
Produce a representation of this type name for use in error messages.
|
void |
visitNamedSchemaComponents(SchemaComponentVisitor visitor) |
Visit all the schema components used in this ItemType definition
|
boolean isAtomicType()
boolean isPlainType()
boolean matches(Item item, XPathContext context)
item - The item to be testedcontext - the XPath dynamic evaluation contextboolean matchesItem(Item item, boolean allowURIPromotion, Configuration config)
item - The item to be testedallowURIPromotion - if a URI value is to be treated as a stringconfig - the Saxon configurationItemType getSuperType(TypeHierarchy th)
In fact the concept of "supertype" is not really well-defined, because the types form a lattice rather than a hierarchy. The only real requirement on this function is that it returns a type that strictly subsumes this type, ideally as narrowly as possible.
th - the type hierarchy cacheItemType getPrimitiveItemType()
int getPrimitiveType()
double getDefaultPriority()
java.lang.String toString(NamePool pool)
pool - the name poolPlainType getAtomizedItemType()
boolean isAtomizable()
void visitNamedSchemaComponents(SchemaComponentVisitor visitor) throws XPathException
visitor - the visitor class to be called when each component is visitedXPathException - if an error occurs