| java.lang.Object net.sf.saxon.om.Navigator
Navigator | final public class Navigator (Code) | | The Navigator class provides helper classes for navigating a tree, irrespective
of its implementation
author: Michael H. Kay |
Inner Class :abstract public static class BaseEnumeration extends AxisIteratorImpl | |
Inner Class :final public static class AncestorEnumeration extends BaseEnumeration | |
Inner Class :final public static class DescendantEnumeration extends BaseEnumeration | |
Inner Class :final public static class FollowingEnumeration extends BaseEnumeration | |
Inner Class :final public static class PrecedingEnumeration extends BaseEnumeration | |
Method Summary | |
public static String | alphaKey(int value) | public static int | compareOrder(SiblingCountingNode first, SiblingCountingNode second) Generic (model-independent) method to determine the relative position of two
node in document order. | public static void | copy(NodeInfo node, Receiver out, NamePool namePool, int whichNamespaces, boolean copyAnnotations, int locationId) Generic (model-independent) implementation of deep copy algorithm for nodes. | public static String | getAttributeValue(NodeInfo element, String uri, String localName) Get the string value of an attribute of a given element, given the URI and
local part of the attribute name. | public static String | getBaseURI(NodeInfo element) | public static int | getNumberAny(Expression inst, NodeInfo node, Pattern count, Pattern from, XPathContext context, boolean hasVariablesInPatterns) Get node number (level="any").
Return one plus the number of previous nodes in the
document that match the supplied pattern
exception: net.sf.saxon.trans.XPathException - Parameters: inst - Identifies the xsl:number expression; this is relevantwhen the function is memoised to support repeated use of the sameinstruction to number multiple nodes Parameters: node - The node being numbered Parameters: count - Pattern that identifies which nodes should becounted. | public static List | getNumberMulti(NodeInfo node, Pattern count, Pattern from, XPathContext context) Get node number (level="multiple").
Return a vector giving the hierarchic position of this node. | public static int | getNumberSimple(NodeInfo node, XPathContext context) Get simple node number. | public static int | getNumberSingle(NodeInfo node, Pattern count, Pattern from, XPathContext context) Get node number (level="single"). | public static String | getPath(NodeInfo node) Get an absolute XPath expression that identifies a given node within its document
Parameters: node - the node whose path is required. | public static String | getSequentialKey(SiblingCountingNode node) Get a character string that uniquely identifies this node and that collates nodes
into document order
a string. | final public static boolean | isWhite(CharSequence content) | public static void | sendNamespaceDeclarations(NodeInfo node, Receiver out, boolean includeAncestors) Output all namespace nodes associated with this element. |
alphaKey | public static String alphaKey(int value)(Code) | | Construct an alphabetic key from an positive integer; the key collates in the same sequence
as the integer
Parameters: value - The positive integer key value (negative values are treated as zero). |
compareOrder | public static int compareOrder(SiblingCountingNode first, SiblingCountingNode second)(Code) | | Generic (model-independent) method to determine the relative position of two
node in document order. The nodes must be in the same tree.
Parameters: first - The first node Parameters: second - The second node, whose position is to be compared with the first node -1 if this node precedes the other node, +1 if it follows the othernode, or 0 if they are the same node. (In this case, isSameNode() will alwaysreturn true, and the two nodes will produce the same result for generateId()) |
copy | public static void copy(NodeInfo node, Receiver out, NamePool namePool, int whichNamespaces, boolean copyAnnotations, int locationId) throws XPathException(Code) | | Generic (model-independent) implementation of deep copy algorithm for nodes.
This is available for use by any node implementations that choose to use it.
Parameters: node - The node to be copied Parameters: out - The receiver to which events will be sent Parameters: namePool - Namepool holding the name codes (used only to resolve namespacecodes) Parameters: whichNamespaces - Indicates which namespace nodes for an element shouldbe copied Parameters: copyAnnotations - Indicates whether type annotations should be copied throws: XPathException - on any failure reported by the Receiver |
getAttributeValue | public static String getAttributeValue(NodeInfo element, String uri, String localName)(Code) | | Get the string value of an attribute of a given element, given the URI and
local part of the attribute name.
the attribute value, or null if the attribute is not present |
getBaseURI | public static String getBaseURI(NodeInfo element)(Code) | | Helper method to get the base URI of an element node
|
getNumberAny | public static int getNumberAny(Expression inst, NodeInfo node, Pattern count, Pattern from, XPathContext context, boolean hasVariablesInPatterns) throws XPathException(Code) | | Get node number (level="any").
Return one plus the number of previous nodes in the
document that match the supplied pattern
exception: net.sf.saxon.trans.XPathException - Parameters: inst - Identifies the xsl:number expression; this is relevantwhen the function is memoised to support repeated use of the sameinstruction to number multiple nodes Parameters: node - The node being numbered Parameters: count - Pattern that identifies which nodes should becounted. Default (null) is the element name if the current node isan element, or "node()" otherwise. Parameters: from - Pattern that specifies where counting starts from.Default (null) is the root node. Only nodes after the first (mostrecent) node that matches the 'from' pattern are counted. Parameters: context - The dynamic context for the transformation Parameters: hasVariablesInPatterns - if the count or from patternscontain variables, then it's not safe to get the answer by addingone to the number of the most recent node that matches one plus the number of nodes that precede the current node,that match the count pattern, and that follow the first node thatmatches the from pattern if specified. |
getNumberMulti | public static List getNumberMulti(NodeInfo node, Pattern count, Pattern from, XPathContext context) throws XPathException(Code) | | Get node number (level="multiple").
Return a vector giving the hierarchic position of this node. See the XSLT spec for details.
exception: XPathException - Parameters: node - The node to be numbered Parameters: count - Pattern that identifies which nodes (ancestors andtheir previous siblings) should be counted. Default (null) is theelement name if the current node is an element, or "node()"otherwise. Parameters: from - Pattern that specifies where counting starts from.Default (null) is the root node. Only nodes below the first (mostrecent) node that matches the 'from' pattern are counted. Parameters: context - The dynamic context for the transformation a vector containing for each ancestor-or-self that matches thecount pattern and that is below the nearest node that matches thefrom pattern, an Integer which is one greater than the number ofprevious siblings that match the count pattern. |
getNumberSimple | public static int getNumberSimple(NodeInfo node, XPathContext context) throws XPathException(Code) | | Get simple node number. This is defined as one plus the number of previous siblings of the
same node type and name. It is not accessible directly in XSL.
Parameters: node - The node whose number is required Parameters: context - Used for remembering previous result, forperformance exception: XPathException - if any error occurs the node number, as defined above |
getNumberSingle | public static int getNumberSingle(NodeInfo node, Pattern count, Pattern from, XPathContext context) throws XPathException(Code) | | Get node number (level="single"). If the current node matches the supplied pattern, the returned
number is one plus the number of previous siblings that match the pattern. Otherwise,
return the element number of the nearest ancestor that matches the supplied pattern.
Parameters: node - the current node, the one whose node number is required Parameters: count - Pattern that identifies which nodes should becounted. Default (null) is the element name if the current node isan element, or "node()" otherwise. Parameters: from - Pattern that specifies where counting starts from.Default (null) is the root node. (This parameter does not seemuseful but is included for the sake of XSLT conformance.) Parameters: context - the dynamic context of the transformation, used ifthe patterns reference context values (e.g. variables) exception: XPathException - when any error occurs in processing the node number established as follows: go to the nearestancestor-or-self that matches the 'count' pattern and that is adescendant of the nearest ancestor that matches the 'from' pattern.Return one plus the nunber of preceding siblings of that ancestorthat match the 'count' pattern. If there is no such ancestor,return 0. |
getPath | public static String getPath(NodeInfo node)(Code) | | Get an absolute XPath expression that identifies a given node within its document
Parameters: node - the node whose path is required. If null is supplied,an empty string is returned - this fact is used in making a recursive callfor a parentless node. a path expression that can be used to retrieve the node |
getSequentialKey | public static String getSequentialKey(SiblingCountingNode node)(Code) | | Get a character string that uniquely identifies this node and that collates nodes
into document order
a string. The string is always interned so keys can be compared using "==". |
isWhite | final public static boolean isWhite(CharSequence content)(Code) | | Determine if a string is all-whitespace
Parameters: content - the string to be tested true if the supplied string contains no non-whitespacecharactersWhitespace.isWhite |
|
|