com.icl.saxon.expr
Class ParentNodeExpression

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

public class ParentNodeExpression
extends SingletonExpression

Class ParentNodeExpression represents the XPath expression ".." or "parent::*"


Fields inherited from class com.icl.saxon.expr.Expression
staticContext
 
Constructor Summary
ParentNodeExpression()
           
 
Method Summary
 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 node selected by this SingletonExpression
 Expression reduce(int dependencies, Context context)
          Perform a partial evaluation of the expression, by eliminating specified dependencies on the context.
 java.lang.String toString()
          Get a string representation of this expression
 
Methods inherited from class com.icl.saxon.expr.SingletonExpression
enumerate, evaluateAsNodeSet, 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, make, setStaticContext, simplify, usesCurrent
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

ParentNodeExpression

public ParentNodeExpression()
Method Detail

getNode

public NodeInfo getNode(Context context)
                 throws org.xml.sax.SAXException
Return the node selected by this SingletonExpression
Overrides:
getNode in class SingletonExpression
Parameters:
context - The context for the evaluation
Returns:
the parent of the current node defined by the context

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
Overrides:
getDependencies in class Expression

evaluateAsString

public java.lang.String evaluateAsString(Context context)
                                  throws org.xml.sax.SAXException
Evaluate as a string. Returns the string value of the parent node
Overrides:
evaluateAsString in class SingletonExpression
Parameters:
context - The context in which the expression is to be evaluated
Returns:
the value of the current node, identified by the context

evaluateAsBoolean

public boolean evaluateAsBoolean(Context context)
                          throws org.xml.sax.SAXException
Evaluate as a boolean. Returns true if there are any nodes selected by the NodeSetExpression.
Overrides:
evaluateAsBoolean in class SingletonExpression
Parameters:
context - The context in which the expression is to be evaluated
Returns:
true unless the current node is the Document node

toString

public java.lang.String toString()
Get a string representation of this expression
Overrides:
toString in class java.lang.Object

reduce

public Expression reduce(int dependencies,
                         Context context)
                  throws org.xml.sax.SAXException
Perform a partial evaluation of the expression, by eliminating specified dependencies on the context.
Overrides:
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