java.io.Serializable
, ItemType
public class ContentTypeTest extends NodeTest
Constructor | Description |
---|---|
ContentTypeTest(int nodeKind,
SchemaType schemaType,
Configuration config) |
Create a ContentTypeTest
|
Modifier and Type | Method | Description |
---|---|---|
boolean |
equals(java.lang.Object other) |
Indicates whether some other object is "equal to" this one.
|
AtomicType |
getAtomizedItemType() |
Get the item type of the atomic values that will be produced when an item
of this type is atomized (assuming that atomization succeeds)
|
SchemaType |
getContentType() |
Get the content type allowed by this NodeTest (that is, the type annotation of the matched nodes).
|
double |
getDefaultPriority() |
Determine the default priority of this node test when used on its own as a Pattern
|
int |
getNodeKind() |
|
int |
getNodeKindMask() |
Get a mask indicating which kinds of nodes this NodeTest can match.
|
int |
getPrimitiveType() |
Determine the types of nodes to which this pattern applies.
|
SchemaType |
getSchemaType() |
|
ItemType |
getSuperType(TypeHierarchy th) |
Get the type from which this item type is derived by restriction.
|
int |
hashCode() |
Returns a hash code value for the object.
|
boolean |
isAtomizable() |
Ask whether values of this type are atomizable
|
boolean |
isNillable() |
The test is nillable if a question mark was specified as the occurrence indicator
|
boolean |
matches(int nodeKind,
NodeName name,
int annotation) |
Test whether this node test is satisfied by a given node.
|
boolean |
matches(NodeInfo node) |
Test whether this node test is satisfied by a given node.
|
boolean |
matches(TinyTree tree,
int nodeNr) |
Test whether this node test is satisfied by a given node on a TinyTree.
|
void |
setNillable(boolean nillable) |
Indicate whether nilled elements should be matched (the default is false)
|
java.lang.String |
toString() |
|
void |
visitNamedSchemaComponents(SchemaComponentVisitor visitor) |
Visit all the schema components used in this ItemType definition
|
getFingerprint, getPrimitiveItemType, getRequiredNodeNames, isAtomicType, isPlainType, matches, matchesItem, toString
public ContentTypeTest(int nodeKind, SchemaType schemaType, Configuration config)
nodeKind
- the kind of nodes to be matched: always elements or attributesschemaType
- the required type annotation, as a simple or complex schema typeconfig
- the Configuration, supplied because this KindTest needs access to schema informationpublic void setNillable(boolean nillable)
nillable
- true if nilled elements should be matchedpublic boolean isNillable()
isNillable
in class NodeTest
public SchemaType getSchemaType()
public int getNodeKind()
public ItemType getSuperType(TypeHierarchy th)
NodeTest
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.
getSuperType
in interface ItemType
getSuperType
in class NodeTest
th
- the type hierarchy cachepublic boolean matches(int nodeKind, NodeName name, int annotation)
public boolean matches(TinyTree tree, int nodeNr)
public boolean matches(NodeInfo node)
public final double getDefaultPriority()
public int getPrimitiveType()
getPrimitiveType
in interface ItemType
getPrimitiveType
in class NodeTest
public int getNodeKindMask()
getNodeKindMask
in class NodeTest
public SchemaType getContentType()
getContentType
in class NodeTest
public AtomicType getAtomizedItemType()
getAtomizedItemType
in interface ItemType
getAtomizedItemType
in class NodeTest
public boolean isAtomizable()
isAtomizable
in interface ItemType
isAtomizable
in class NodeTest
public void visitNamedSchemaComponents(SchemaComponentVisitor visitor) throws XPathException
visitNamedSchemaComponents
in interface ItemType
visitNamedSchemaComponents
in class NodeTest
visitor
- the visitor class to be called when each component is visitedXPathException
- if an error occurspublic java.lang.String toString()
toString
in class java.lang.Object
public int hashCode()
hashCode
in class java.lang.Object
public boolean equals(java.lang.Object other)
equals
in class java.lang.Object