com.icl.saxon.expr

Class SingletonExpression

public abstract class SingletonExpression extends NodeSetExpression

A node set expression that will always return zero or one nodes
Method Summary
NodeEnumerationenumerate(Context context, boolean sort)
Evaluate the expression in a given context to return a Node enumeration
booleanevaluateAsBoolean(Context context)
Evaluate as a boolean.
NodeSetValueevaluateAsNodeSet(Context context)
Evaluate an expression as a NodeSet.
StringevaluateAsString(Context context)
Evaluate as a string.
abstract NodeInfogetNode(Context context)
Get the single node to which this expression refers
booleanisContextDocumentNodeSet()
Determine, in the case of an expression whose data type is Value.NODESET, whether all the nodes in the node-set are guaranteed to come from the same document as the context node.
NodeInfoselectFirst(Context context)
Return the first node selected by this Expression when evaluated in the current context

Method Detail

enumerate

public NodeEnumeration enumerate(Context context, boolean sort)
Evaluate the expression in a given context to return a Node enumeration

Parameters: context the evaluation context sort Indicates result must be in document order

evaluateAsBoolean

public boolean evaluateAsBoolean(Context context)
Evaluate as a boolean. Returns true if there are any nodes selected by the NodeSetExpression

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)
Evaluate an expression as a NodeSet.

Parameters: context The context in which the expression is to be evaluated

Returns: the value of the expression, evaluated in the current context

evaluateAsString

public String evaluateAsString(Context context)
Evaluate as a string. Returns the string value of the node if it exists

Parameters: context The context in which the expression is to be evaluated

Returns: true if there are any nodes selected by the NodeSetExpression

getNode

public abstract NodeInfo getNode(Context context)
Get the single node to which this expression refers

isContextDocumentNodeSet

public boolean isContextDocumentNodeSet()
Determine, in the case of an expression whose data type is Value.NODESET, whether all the nodes in the node-set are guaranteed to come from the same document as the context node. Used for optimization.

selectFirst

public NodeInfo selectFirst(Context context)
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.