public class ContentTypeTest extends NodeTest
ItemType.WithSequenceTypeCache| Constructor and Description |
|---|
ContentTypeTest(int nodeKind,
SchemaType schemaType,
Configuration config,
boolean nillable)
Create a ContentTypeTest
|
| Modifier and Type | Method and Description |
|---|---|
boolean |
equals(java.lang.Object other)
Indicates whether some other object is "equal to" this one.
|
java.lang.String |
generateJavaScriptItemTypeTest(ItemType knownToBe,
int targetVersion)
Generate Javascript code to test whether an item conforms to this item type
|
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
|
IntPredicate |
getMatcher(NodeVectorTree tree)
Get a matching function that can be used to test whether numbered nodes in a TinyTree
or DominoTree satisfy the node test.
|
SchemaType |
getNearestNamedType() |
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() |
UType |
getUType()
Get the corresponding
UType. |
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,
SchemaType annotation)
Test whether this node test is satisfied by a given node.
|
boolean |
matchesNode(NodeInfo node)
Test whether this node test is satisfied by a given node.
|
void |
setNillable(boolean nillable)
Indicate whether nilled elements should be matched (the default is false)
|
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
|
copy, generateJavaScriptItemTypeAcceptor, getFingerprint, getMatchingNodeName, getPrimitiveItemType, getRequiredNodeNames, isAtomicType, isPlainType, matches, one, oneOrMore, zeroOrMore, zeroOrOnepublic ContentTypeTest(int nodeKind,
SchemaType schemaType,
Configuration config,
boolean nillable)
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 informationnillable - indicates whether an element with xsi:nil=true satisifies the testpublic UType getUType()
UType. A UType is a union of primitive item
types.public void setNillable(boolean nillable)
nillable - true if nilled elements should be matchedpublic boolean isNillable()
isNillable in class NodeTestpublic SchemaType getSchemaType()
public int getNodeKind()
public boolean matches(int nodeKind,
NodeName name,
SchemaType annotation)
matches in class NodeTestnodeKind - The kind of node to be matchedname - identifies the expanded name of the node to be matched.
The value should be null for a node with no name.annotation - The actual content type of the nodepublic IntPredicate getMatcher(NodeVectorTree tree)
NodeTestmatchesNode(tree.getNode(nodeNr)), but it may well be faster).getMatcher in class NodeTesttree - the tree against which the returned function will operatepublic boolean matchesNode(NodeInfo node)
matchesNode in class NodeTestnode - the node to be matchedpublic final double getDefaultPriority()
getDefaultPriority in class NodeTestpublic int getPrimitiveType()
getPrimitiveType in interface ItemTypegetPrimitiveType in class NodeTestpublic int getNodeKindMask()
getNodeKindMask in class NodeTestpublic SchemaType getContentType()
getContentType in class NodeTestpublic AtomicType getAtomizedItemType()
getAtomizedItemType in interface ItemTypegetAtomizedItemType in class NodeTestpublic boolean isAtomizable()
isAtomizable in interface ItemTypeisAtomizable in class NodeTestpublic void visitNamedSchemaComponents(SchemaComponentVisitor visitor) throws XPathException
visitNamedSchemaComponents in interface ItemTypevisitNamedSchemaComponents in class NodeTestvisitor - the visitor class to be called when each component is visitedXPathException - if an error occurspublic java.lang.String toString()
public java.lang.String toExportString()
toExportString in interface ItemTypetoExportString in class NodeTestpublic SchemaType getNearestNamedType()
public int hashCode()
hashCode in class java.lang.Objectpublic boolean equals(java.lang.Object other)
equals in class java.lang.Objectpublic java.lang.String generateJavaScriptItemTypeTest(ItemType knownToBe, int targetVersion) throws XPathException
knownToBe - targetVersion - XPathException - if JS code cannot be generated for this item type, for example because
the test is schema-aware.Copyright (c) 2004-2018 Saxonica Limited. All rights reserved.