com.icl.saxon.expr

Class AttributeReference

class AttributeReference extends SingletonExpression

An expression that represents a reference to a named attribute
Constructor Summary
AttributeReference(int fingerprint)
Constructor
Method Summary
voidbindParentNode(NodeInfo node)
Bind the reference to a particular node
voiddisplay(int level)
Diagnostic print of expression structure
booleanevaluateAsBoolean(Context context)
Evaluate as a boolean.
StringevaluateAsString(Context context)
Evaluate as a string.
intgetDependencies()
Determine which aspects of the context the expression depends on.
NodeInfogetNode(Context context)
Return the relevant attribute node
Expressionreduce(int dependencies, Context context)
Perform a partial evaluation of the expression, by eliminating specified dependencies on the context.

Constructor Detail

AttributeReference

public AttributeReference(int fingerprint)
Constructor

Method Detail

bindParentNode

public void bindParentNode(NodeInfo node)
Bind the reference to a particular node

display

public void display(int level)
Diagnostic print of expression structure

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

evaluateAsString

public String evaluateAsString(Context context)
Evaluate as a string. Returns the string value of the attribute 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

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

getNode

public NodeInfo getNode(Context context)
Return the relevant attribute node

Parameters: context the evaluation context

reduce

public Expression reduce(int dependencies, Context context)
Perform a partial evaluation of the expression, by eliminating specified dependencies on the context.

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