## com.icl.saxon.expr
Class RootExpression

    java.lang.Object
      |
      +--com.icl.saxon.expr.Expression
            |
            +--com.icl.saxon.expr.NodeSetExpression
                  |
                  +--com.icl.saxon.expr.SingletonExpression
                        |
                        +--com.icl.saxon.expr.RootExpression

public class RootExpression
extends SingletonExpression

An expression whose value is always a set of nodes containing a single node, the document root.

Field Summary

Fields inherited from class com.icl.saxon.expr.Expression
`staticContext`

Constructor Summary
`RootExpression()`

Method Summary
`void` `display(int level)` Diagnostic print of expression structure
`boolean` `evaluateAsBoolean(Context context)` Evaluate as a boolean.
`java.lang.String` `evaluateAsString(Context context)` Evaluate as a string
`int` `getDependencies()` Determine which aspects of the context the expression depends on.
`NodeInfo` `getNode(Context context)` Return the first element selected by this Expression
`Expression` `reduce(int dependencies, Context context)` Perform a partial evaluation of the expression, by eliminating specified dependencies on the context.
`Expression` `simplify()` Simplify an expression

Methods inherited from class com.icl.saxon.expr.SingletonExpression
`enumerate, evaluateAsNodeSet, isContextDocumentNodeSet, selectFirst`

Methods inherited from class com.icl.saxon.expr.NodeSetExpression
`evaluate, getDataType, outputStringValue`

Methods inherited from class com.icl.saxon.expr.Expression
`containsReferences, evaluateAsNumber, getStaticContext, indent, make, setStaticContext, usesCurrent`

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

Constructor Detail

### RootExpression

    public RootExpression()

Method Detail

### simplify

    public Expression simplify()
                        throws XPathException

  Simplify an expression

  Overrides:
    `simplify` in class `Expression`
  Returns:
    the simplified expression
    `XPathException`

### getNode

    public NodeInfo getNode(Context context)
                     throws XPathException

  Return the first element selected by this Expression

  Specified by:
    `getNode` in class `SingletonExpression`
  Parameters:
    `context` - The evaluation context
  Returns:
    the NodeInfo of the first selected element, or null if no element is selected
    `XPathException`

### evaluateAsString

    public java.lang.String evaluateAsString(Context context)
                                      throws XPathException

  Evaluate as a string

  Overrides:
    `evaluateAsString` in class `SingletonExpression`
  Parameters:
    `context` - The context for evaluation
  Returns:
    The concatenation of all the character data within the document
    `XPathException`

### evaluateAsBoolean

    public boolean evaluateAsBoolean(Context context)
                              throws XPathException

  Evaluate as a boolean.

  Overrides:
    `evaluateAsBoolean` in class `SingletonExpression`
  Parameters:
    `context` - The context (not used)
  Returns:
    true (always - because the nodeset is never empty)
    `XPathException`

### getDependencies

    public int getDependencies()

  Determine which aspects of the context the expression depends on. The result is a bitwise-or'ed value composed from constants such as Context.VARIABLES and Context.CURRENT_NODE

  Specified by:
    `getDependencies` in class `Expression`

### reduce

    public Expression reduce(int dependencies,
                             Context context)
                      throws XPathException

  Perform a partial evaluation of the expression, by eliminating specified dependencies on the context.

  Specified by:
    `reduce` in class `Expression`
  Parameters:
    `dependencies` - The dependencies to be removed
    `context` - The context to be used for the partial evaluation
  Returns:
    a new expression that does not have any of the specified dependencies
    `XPathException`

### display

    public void display(int level)

  Diagnostic print of expression structure

  Specified by:
    `display` in class `Expression`