Package com.icl.saxon.expr
Class SingletonExpression
- java.lang.Object
-
- com.icl.saxon.expr.Expression
-
- com.icl.saxon.expr.NodeSetExpression
-
- com.icl.saxon.expr.SingletonExpression
-
- Direct Known Subclasses:
AttributeReference,ContextNodeExpression,ParentNodeExpression,RootExpression
public abstract class SingletonExpression extends NodeSetExpression
A node set expression that will always return zero or one nodes
-
-
Field Summary
-
Fields inherited from class com.icl.saxon.expr.Expression
staticContext
-
-
Constructor Summary
Constructors Constructor Description SingletonExpression()
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description NodeEnumerationenumerate(Context context, boolean sort)Evaluate the expression in a given context to return a Node enumerationbooleanevaluateAsBoolean(Context context)Evaluate as a boolean.NodeSetValueevaluateAsNodeSet(Context context)Evaluate an expression as a NodeSet.java.lang.StringevaluateAsString(Context context)Evaluate as a string.abstract NodeInfogetNode(Context context)Get the single node to which this expression refersbooleanisContextDocumentNodeSet()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-
Methods inherited from class com.icl.saxon.expr.NodeSetExpression
evaluate, getDataType, outputStringValue
-
Methods inherited from class com.icl.saxon.expr.Expression
containsReferences, display, evaluateAsNumber, getDependencies, getStaticContext, indent, make, reduce, setStaticContext, simplify, usesCurrent
-
-
-
-
Method Detail
-
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.- Overrides:
isContextDocumentNodeSetin classExpression
-
getNode
public abstract NodeInfo getNode(Context context) throws XPathException
Get the single node to which this expression refers- Throws:
XPathException
-
selectFirst
public NodeInfo selectFirst(Context context) throws XPathException
Return the first node selected by this Expression when evaluated in the current context- Overrides:
selectFirstin classNodeSetExpression- 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.
- Throws:
XPathException
-
enumerate
public NodeEnumeration enumerate(Context context, boolean sort) throws XPathException
Evaluate the expression in a given context to return a Node enumeration- Specified by:
enumeratein classNodeSetExpression- Parameters:
context- the evaluation contextsort- Indicates result must be in document order- Throws:
XPathException- when the expression does not return a nodeset.
-
evaluateAsNodeSet
public NodeSetValue evaluateAsNodeSet(Context context) throws XPathException
Evaluate an expression as a NodeSet.- Overrides:
evaluateAsNodeSetin classNodeSetExpression- Parameters:
context- The context in which the expression is to be evaluated- Returns:
- the value of the expression, evaluated in the current context
- Throws:
XPathException- when the expression does not return a nodeset.
-
evaluateAsString
public java.lang.String evaluateAsString(Context context) throws XPathException
Evaluate as a string. Returns the string value of the node if it exists- Overrides:
evaluateAsStringin classNodeSetExpression- Parameters:
context- The context in which the expression is to be evaluated- Returns:
- true if there are any nodes selected by the NodeSetExpression
- Throws:
XPathException
-
evaluateAsBoolean
public boolean evaluateAsBoolean(Context context) throws XPathException
Evaluate as a boolean. Returns true if there are any nodes selected by the NodeSetExpression- Overrides:
evaluateAsBooleanin classNodeSetExpression- Parameters:
context- The context in which the expression is to be evaluated- Returns:
- true if there are any nodes selected by the NodeSetExpression
- Throws:
XPathException
-
-