## net.sf.saxon.pattern
Class DocumentNodeTest

    java.lang.Object
      net.sf.saxon.pattern.NodeTest
          net.sf.saxon.pattern.DocumentNodeTest

All Implemented Interfaces:
  Serializable, ItemType

    public class DocumentNodeTest

extends NodeTest

A DocumentNodeTest implements the test document-node(element(~,~))

See Also:
  Serialized Form

Constructor Summary
`DocumentNodeTest(NodeTest elementTest)`

Method Summary
`boolean` `equals(Object other)`
`double` `getDefaultPriority()` Determine the default priority of this node test when used on its own as a Pattern
`NodeTest` `getElementTest()` Get the element test contained within this document test
`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.
`int` `hashCode()` Returns a hash code value for the object.
`boolean` `matches(int nodeKind, int fingerprint, int annotation)` Test whether this node test is satisfied by a given node
`boolean` `matches(NodeInfo node)` Determine whether this Pattern matches the given Node.
`boolean` `matches(TinyTree tree, int nodeNr)` Test whether this node test is satisfied by a given node on a TinyTree.
`String` `toString()`
`String` `toString(NamePool pool)` Display the type descriptor for diagnostics

Methods inherited from class net.sf.saxon.pattern.NodeTest
`getAtomizedItemType, getContentType, getFingerprint, getPrimitiveItemType, getRequiredNodeNames, getSuperType, isAtomicType, isAtomizable, isNillable, matchesItem, visitNamedSchemaComponents`

Methods inherited from class java.lang.Object
`clone, finalize, getClass, notify, notifyAll, wait, wait, wait`

Constructor Detail

### DocumentNodeTest

    public DocumentNodeTest(NodeTest elementTest)

Method Detail

### 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

### matches

    public boolean matches(TinyTree tree,
                           int nodeNr)

  Test whether this node test is satisfied by a given node on a TinyTree. The node must be a document, element, text, comment, or processing instruction node. This method is provided so that when navigating a TinyTree a node can be rejected without actually instantiating a NodeInfo object.

  Overrides:
    `matches` in class `NodeTest`
  Parameters:
    `tree` - the TinyTree containing the node
    `nodeNr` - the number of the node within the TinyTree
  Returns:
    true if the node matches the NodeTest, otherwise false

### matches

    public boolean matches(NodeInfo node)

  Determine whether this Pattern matches the given Node.

  Overrides:
    `matches` in class `NodeTest`
  Parameters:
    `node` - The NodeInfo representing the Element or other node to be tested against the Pattern uses variables, or contains calls on functions such as document() or key().
  Returns:
    true if the node matches the Pattern, false otherwise

### getDefaultPriority

    public final double getDefaultPriority()

  Determine the default priority of this node test when used on its own as a Pattern

  Specified by:
    `getDefaultPriority` in class `NodeTest`

### getPrimitiveType

    public int getPrimitiveType()

  Determine the types of nodes to which this pattern applies. Used for optimisation.

  Specified by:
    `getPrimitiveType` in interface `ItemType`
  Overrides:
    `getPrimitiveType` in class `NodeTest`
  Returns:
    the type of node matched by this pattern. e.g. Type.ELEMENT or Type.TEXT

### getNodeKindMask

    public int getNodeKindMask()

  Get a mask indicating which kinds of nodes this NodeTest can match. This is a combination of bits: 1<<Type.ELEMENT for element nodes, 1<<Type.TEXT for text nodes, and so on.

  Overrides:
    `getNodeKindMask` in class `NodeTest`

### getElementTest

    public NodeTest getElementTest()

  Get the element test contained within this document test

  Returns:
    the contained element test

### toString

    public String toString(NamePool pool)

  Description copied from class: `NodeTest`
  Display the type descriptor for diagnostics

  Specified by:
    `toString` in interface `ItemType`
  Overrides:
    `toString` in class `NodeTest`
  Parameters:
    `pool` - the name pool
  Returns:
    a string representation of the type, in notation resembling but not necessarily identical to XPath syntax

### toString

    public String toString()

  Overrides:
    `toString` in class `Object`

### hashCode

    public int hashCode()

  Returns a hash code value for the object.

  Overrides:
    `hashCode` in class `Object`

### equals

    public boolean equals(Object other)

  Overrides:
    `equals` in class `Object`

Copyright (c) 2004-2010 Saxonica Limited. All rights reserved.