Overview | Package | Class | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## net.sf.saxon.om
Class Axis

    java.lang.Object
      net.sf.saxon.om.Axis

    public final class Axis

extends 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 String[]` | `axisJavaName` Table giving the name of each axis as used in a generated Java program, for example "ANCESTOR_OR_SELF"
`static String[]` | `axisName` Table giving the name of each axis as used in XPath, for example "ancestor-or-self"
`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[]` | `inverseAxis` For each axis, determine the inverse axis, in the sense that if A is on axis X starting at B, the B is on the axis inverseAxis[X] starting at A.
`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[]` | `isSubtreeAxis` Table indicating for each axis whether it is contained within the subtree rooted at the origin node.
`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 short[]` | `principalNodeType` Table indicating the principal node type of each axis
`static byte` | `SELF` Constant representing the self 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)` Ask whether a given axis can contain any nodes when starting at the specified node kind.

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

Field Detail

### ANCESTOR

    public static final byte ANCESTOR

  Constant representing the ancestor axis

  See Also:
    Constant Field Values

### ANCESTOR_OR_SELF

    public static final byte ANCESTOR_OR_SELF

  Constant representing the ancestor-or-self axis

  See Also:
    Constant Field Values

### ATTRIBUTE

    public static final byte ATTRIBUTE

  Constant representing the attribute axis

  See Also:
    Constant Field Values

### CHILD

    public static final byte CHILD

  Constant representing the child axis

  See Also:
    Constant Field Values

### DESCENDANT

    public static final byte DESCENDANT

  Constant representing the descendant axis

  See Also:
    Constant Field Values

### DESCENDANT_OR_SELF

    public static final byte DESCENDANT_OR_SELF

  Constant representing the descendant-or-self axis

  See Also:
    Constant Field Values

### FOLLOWING

    public static final byte FOLLOWING

  Constant representing the following axis

  See Also:
    Constant Field Values

### FOLLOWING_SIBLING

    public static final byte FOLLOWING_SIBLING

  Constant representing the following-sibling axis

  See Also:
    Constant Field Values

### NAMESPACE

    public static final byte NAMESPACE

  Constant representing the namespace axis

  See Also:
    Constant Field Values

### PARENT

    public static final byte PARENT

  Constant representing the parent axis

  See Also:
    Constant Field Values

### PRECEDING

    public static final byte PRECEDING

  Constant representing the preceding axis

  See Also:
    Constant Field Values

### PRECEDING_SIBLING

    public static final byte PRECEDING_SIBLING

  Constant representing the preceding-sibling axis

  See Also:
    Constant Field Values

### SELF

    public static final byte SELF

  Constant representing the self axis

  See Also:
    Constant Field Values

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

  See Also:
    Constant Field Values

### principalNodeType

    public static final short[] principalNodeType

  Table indicating the principal node type of 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.

### isSubtreeAxis

    public static final boolean[] isSubtreeAxis

  Table indicating for each axis whether it is contained within the subtree rooted at the origin node.

### axisName

    public static final String[] axisName

  Table giving the name of each axis as used in XPath, for example "ancestor-or-self"

### axisJavaName

    public static final String[] axisJavaName

  Table giving the name of each axis as used in a generated Java program, for example "ANCESTOR_OR_SELF"

### inverseAxis

    public static byte[] inverseAxis

  For each axis, determine the inverse axis, in the sense that if A is on axis X starting at B, the B is on the axis inverseAxis[X] starting at A. This doesn't quite work for the PARENT axis, which has no simple inverse: this table gives the inverse as CHILD

Method Detail

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

  Ask whether a given axis can contain any nodes when starting at the specified node kind. For example, the attribute axis when starting at an attribute node will always be empty

  Parameters:
    `axis` - the axis, for example `ATTRIBUTE`
    `nodeKind` - the node kind of the origin node, for example `Type.ATTRIBUTE`
  Returns:
    true if no nodes will ever appear on the specified axis when starting at the specified node kind.

### containsNodeKind

    public static boolean containsNodeKind(int axis,
                                           int nodeKind)

  Determine whether a given kind of node can be found on a given axis. For example, the attribute axis will never contain any element nodes.

  Parameters:
    `axis` - the axis, for example `ATTRIBUTE`
    `nodeKind` - the node kind of the origin node, for example `Type.ELEMENT`
  Returns:
    true if the given kind of node can appear on the specified axis

Overview | Package | Class | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

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