net.sf.saxon.pattern
Class NodeKindTest

java.lang.Object
  |
  +--net.sf.saxon.pattern.Pattern
        |
        +--net.sf.saxon.pattern.NodeTest
              |
              +--net.sf.saxon.pattern.NodeKindTest
All Implemented Interfaces:
ItemType, java.io.Serializable

public class NodeKindTest
extends NodeTest

NodeTest is an interface that enables a test of whether a node has a particular name and kind. A NodeKindTest matches the node kind only.

See Also:
Serialized Form

Field Summary
static NodeKindTest ATTRIBUTE
           
static NodeKindTest COMMENT
           
static NodeKindTest DOCUMENT
           
static NodeKindTest ELEMENT
           
static NodeKindTest NAMESPACE
           
static NodeKindTest PROCESSING_INSTRUCTION
           
static NodeKindTest TEXT
           
 
Fields inherited from class net.sf.saxon.pattern.Pattern
originalText
 
Method Summary
 boolean allowsTextNodes()
          Indicate whether this NodeTest is capable of matching text nodes
 double getDefaultPriority()
          Determine the default priority of this node test when used on its own as a Pattern
 int getNodeKind()
          Determine the types of nodes to which this pattern applies.
static NodeTest makeNodeKindTest(int kind)
          Make a test for a given kind of node
 boolean matches(int nodeKind, int fingerprint, int annotation)
          Test whether this node test is satisfied by a given node
 java.lang.String toString()
          Produce a representation of this type name for use in error messages.
 
Methods inherited from class net.sf.saxon.pattern.NodeTest
getAtomizedItemType, getNodeTest, getPrimitiveType, getSuperType, isSameType, matches, matchesItem
 
Methods inherited from class net.sf.saxon.pattern.Pattern
getFingerprint, getLineNumber, getSystemId, internalMatches, make, setLineNumber, setOriginalText, setSystemId, simplify, typeCheck
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

DOCUMENT

public static final NodeKindTest DOCUMENT

ELEMENT

public static final NodeKindTest ELEMENT

ATTRIBUTE

public static final NodeKindTest ATTRIBUTE

TEXT

public static final NodeKindTest TEXT

COMMENT

public static final NodeKindTest COMMENT

PROCESSING_INSTRUCTION

public static final NodeKindTest PROCESSING_INSTRUCTION

NAMESPACE

public static final NodeKindTest NAMESPACE
Method Detail

makeNodeKindTest

public static NodeTest makeNodeKindTest(int kind)
Make a test for a given kind of node


matches

public boolean matches(int nodeKind,
                       int fingerprint,
                       int annotation)
Test whether this node test is satisfied by a given node

Specified by:
matches in class NodeTest
Parameters:
nodeKind - The type of node to be matched
fingerprint - identifies the expanded name of the node to be matched
annotation - The actual content type of the node

getDefaultPriority

public final double getDefaultPriority()
Determine the default priority of this node test when used on its own as a Pattern

Overrides:
getDefaultPriority in class Pattern

getNodeKind

public int getNodeKind()
Determine the types of nodes to which this pattern applies. Used for optimisation.

Overrides:
getNodeKind in class Pattern
Returns:
the type of node matched by this pattern. e.g. Type.ELEMENT or Type.TEXT

allowsTextNodes

public boolean allowsTextNodes()
Indicate whether this NodeTest is capable of matching text nodes

Specified by:
allowsTextNodes in class NodeTest

toString

public java.lang.String toString()
Description copied from interface: ItemType
Produce a representation of this type name for use in error messages. Where this is a QName, it will use conventional prefixes

Specified by:
toString in interface ItemType
Overrides:
toString in class Pattern