net.sf.saxon.om

Class Axis


public final class Axis
extends java.lang.Object

An axis, that is a direction of navigation in the document structure.

Field Summary

static byte
ANCESTOR
Constant representing the ancestor axis
static byte
ANCESTOR_OR_SELF
Constant representing the ancestor-or-self axis
static byte
ATTRIBUTE
Constant representing the attribute axis
static byte
CHILD
Constant representing the child axis
static byte
DESCENDANT
Constant representing the descendant axis
static byte
DESCENDANT_OR_SELF
Constant representing the descendant-or-self axis
static byte
FOLLOWING
Constant representing the following axis
static byte
FOLLOWING_SIBLING
Constant representing the following-sibling axis
static byte
NAMESPACE
Constant representing the namespace axis
static byte
PARENT
Constant representing the parent axis
static byte
PRECEDING
Constant representing the preceding axis
static byte
PRECEDING_OR_ANCESTOR
Constant representing the preceding-or-ancestor axis.
static byte
PRECEDING_SIBLING
Constant representing the preceding-sibling axis
static byte
SELF
Constant representing the self axis
static String[]
axisJavaName
Table giving the name each axis
static String[]
axisName
Table giving the name each axis
static boolean[]
isForwards
Table indicating for each axis whether it is in forwards document order
static boolean[]
isPeerAxis
Table indicating for each axis whether it is a peer axis.
static boolean[]
isReverse
Table indicating for each axis whether it is in reverse document order
static boolean[]
isSubtreeAxis
Table indicating for each axis whether it is contained within the subtree rooted at the origin node.
static short[]
principalNodeType
Table indicating the principal node type of each axis

Method Summary

static boolean
containsNodeKind(int axis, int nodeKind)
Determine whether a given kind of node can be found on a given axis
static byte
getAxisNumber(String name)
Resolve an axis name into a symbolic constant representing the axis
static boolean
isAlwaysEmpty(int axis, int nodeKind)

Field Details

ANCESTOR

public static final byte ANCESTOR
Constant representing the ancestor axis
Field Value:
0

ANCESTOR_OR_SELF

public static final byte ANCESTOR_OR_SELF
Constant representing the ancestor-or-self axis
Field Value:
1

ATTRIBUTE

public static final byte ATTRIBUTE
Constant representing the attribute axis
Field Value:
2

CHILD

public static final byte CHILD
Constant representing the child axis
Field Value:
3

DESCENDANT

public static final byte DESCENDANT
Constant representing the descendant axis
Field Value:
4

DESCENDANT_OR_SELF

public static final byte DESCENDANT_OR_SELF
Constant representing the descendant-or-self axis
Field Value:
5

FOLLOWING

public static final byte FOLLOWING
Constant representing the following axis
Field Value:
6

FOLLOWING_SIBLING

public static final byte FOLLOWING_SIBLING
Constant representing the following-sibling axis
Field Value:
7

NAMESPACE

public static final byte NAMESPACE
Constant representing the namespace axis
Field Value:
8

PARENT

public static final byte PARENT
Constant representing the parent axis
Field Value:
9

PRECEDING

public static final byte PRECEDING
Constant representing the preceding axis
Field Value:
10

PRECEDING_OR_ANCESTOR

public static final byte PRECEDING_OR_ANCESTOR
Constant representing the preceding-or-ancestor axis. This axis is used internally by the xsl:number implementation, it returns the union of the preceding axis and the ancestor axis.
Field Value:
13

PRECEDING_SIBLING

public static final byte PRECEDING_SIBLING
Constant representing the preceding-sibling axis
Field Value:
11

SELF

public static final byte SELF
Constant representing the self axis
Field Value:
12

axisJavaName

public static final String[] axisJavaName
Table giving the name each axis

axisName

public static final String[] axisName
Table giving the name each axis

isForwards

public static final boolean[] isForwards
Table indicating for each axis whether it is in forwards document order

isPeerAxis

public static final boolean[] isPeerAxis
Table indicating for each axis whether it is a peer axis. An axis is a peer axis if no node on the axis is an ancestor of another node on the axis.

isReverse

public static final boolean[] isReverse
Table indicating for each axis whether it is in reverse document order

isSubtreeAxis

public static final boolean[] isSubtreeAxis
Table indicating for each axis whether it is contained within the subtree rooted at the origin node.

principalNodeType

public static final short[] principalNodeType
Table indicating the principal node type of each axis

Method Details

containsNodeKind

public static boolean containsNodeKind(int axis,
                                       int nodeKind)
Determine whether a given kind of node can be found on a given axis

getAxisNumber

public static byte getAxisNumber(String name)
            throws XPathException
Resolve an axis name into a symbolic constant representing the axis
Parameters:
name -
Returns:
integer value representing the named axis
Throws:
XPathException -

isAlwaysEmpty

public static boolean isAlwaysEmpty(int axis,
                                    int nodeKind)