Google

: Class NodeSetExpression

com.icl.saxon.expr
Class NodeSetExpression


java.lang.Object

  |

  +--com.icl.saxon.expr.Expression

        |

        +--com.icl.saxon.expr.NodeSetExpression

Direct Known Subclasses:
NodeListExpression, PathExpression, SingletonExpression, SortedSelection

public abstract class NodeSetExpression
extends Expression

A NodeSetExpression is any expression denoting a set of nodes.
This is an abstract class, the methods are defaults which may be overridden in subclasses


Fields inherited from class com.icl.saxon.expr.Expression
staticContext
 
Constructor Summary
NodeSetExpression()
           
 
Method Summary
abstract  NodeEnumeration enumerate(Context context, boolean sorted)
          Return a node enumeration.
 Value evaluate(Context context)
          Evaluate this node-set.
 boolean evaluateAsBoolean(Context context)
          Evaluate as a boolean.
 NodeSetValue evaluateAsNodeSet(Context context)
          Evaluate an expression as a NodeSet.
 java.lang.String evaluateAsString(Context context)
          Evaluate as a string.
 int getDataType()
          Determine the data type of the exprssion, if possible
 void outputStringValue(Outputter out, Context context)
          Evaluate an expression as a String and write the result to the specified outputter.
 NodeInfo selectFirst(Context context)
          Return the first node selected by this Expression when evaluated in the current context
 
Methods inherited from class com.icl.saxon.expr.Expression
containsReferences, display, evaluateAsNumber, getDependencies, getStaticContext, indent, isContextDocumentNodeSet, make, reduce, setStaticContext, simplify, usesCurrent
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

NodeSetExpression


public NodeSetExpression()
Method Detail

enumerate


public abstract NodeEnumeration enumerate(Context context,
                                          boolean sorted)
                                   throws XPathException
Return a node enumeration. All NodeSetExpressions must implement this method: the evaluate() function is defined in terms of it. (But note that some expressions that return node-sets are not NodeSetExpressions: for example functions such as key(), id(), and document() are not, and neither are variable references).
Overrides:
enumerate in class Expression
Parameters:
context - The evaluation context
sorted - True if the nodes must be returned in document order

evaluate


public Value evaluate(Context context)
               throws XPathException
Evaluate this node-set. This doesn't actually retrieve all the nodes: it returns a wrapper around a node-set expression in which all context dependencies have been eliminated.
Overrides:
evaluate in class Expression
Following copied from class: com.icl.saxon.expr.Expression
Parameters:
context - The context in which the expression is to be evaluated
Returns:
the value of the expression, evaluated in the current context

selectFirst


public NodeInfo selectFirst(Context context)
                     throws XPathException
Return the first node selected by this Expression when evaluated in the current context
Parameters:
context - The context for the evaluation
Returns:
the NodeInfo of the first node in document order, or null if the node-set is empty.

evaluateAsString


public java.lang.String evaluateAsString(Context context)
                                  throws XPathException
Evaluate as a string. Returns the string value of the first node selected by the NodeSetExpression
Overrides:
evaluateAsString in class Expression
Parameters:
context - The context in which the expression is to be evaluated
Returns:
the value of the NodeSetExpression, evaluated in the current context

outputStringValue


public void outputStringValue(Outputter out,
                              Context context)

Evaluate an expression as a String and write the result to the specified outputter.
Overrides:
outputStringValue in class Expression
Parameters:
context - The context in which the expression is to be evaluated
Returns:
the value of the expression, evaluated in the current context

evaluateAsBoolean


public boolean evaluateAsBoolean(Context context)
                          throws XPathException
Evaluate as a boolean. Returns true if there are any nodes selected by the NodeSetExpression
Overrides:
evaluateAsBoolean in class Expression
Parameters:
context - The context in which the expression is to be evaluated
Returns:
true if there are any nodes selected by the NodeSetExpression

evaluateAsNodeSet


public NodeSetValue evaluateAsNodeSet(Context context)
                               throws XPathException
Evaluate an expression as a NodeSet.
Overrides:
evaluateAsNodeSet in class Expression
Parameters:
context - The context in which the expression is to be evaluated
Returns:
the value of the expression, evaluated in the current context

getDataType


public int getDataType()
Determine the data type of the exprssion, if possible
Overrides:
getDataType in class Expression
Returns:
Value.NODESET