|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
public interface ItemType
ItemType is an interface that allows testing of whether an Item conforms to an expected type. ItemType represents the types in the type hierarchy in the XPath model, as distinct from the schema model: an item type is either item() (matches everything), a node type (matches nodes), an atomic type (matches atomic values), or empty() (matches nothing). Atomic types, represented by the class AtomicType, are also instances of SimpleType in the schema type hierarchy. Node Types, represented by the class NodeTest, are also Patterns as used in XSLT.
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
Method Summary | |
---|---|
AtomicType |
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. |
ItemType |
getSuperType(TypeHierarchy th)
Get the type from which this item type is derived by restriction. |
boolean |
isAtomicType()
Determine whether this item type is atomic (that is, whether it can ONLY match atomic values) |
boolean |
isAtomizable()
Ask whether values of this type are atomizable |
boolean |
matchesItem(Item item,
boolean allowURIPromotion,
Configuration config)
Test whether a given item conforms to this type |
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 |
Method Detail |
---|
boolean isAtomicType()
boolean matchesItem(Item item, boolean allowURIPromotion, Configuration config)
item
- The item to be testedallowURIPromotion
- config
-
ItemType 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 cache
ItemType getPrimitiveItemType()
int getPrimitiveType()
String toString(NamePool pool)
pool
- the name pool
AtomicType getAtomizedItemType()
boolean isAtomizable()
void visitNamedSchemaComponents(SchemaComponentVisitor visitor) throws XPathException
visitor
- the visitor class to be called when each component is visited
XPathException
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |