org.jaxen.expr
Interface Expr

All Superinterfaces:
java.io.Serializable
All Known Subinterfaces:
AdditiveExpr, BinaryExpr, EqualityExpr, FilterExpr, FunctionCallExpr, LiteralExpr, LocationPath, LogicalExpr, MultiplicativeExpr, NumberExpr, PathExpr, RelationalExpr, UnaryExpr, UnionExpr, VariableReferenceExpr
All Known Implementing Classes:
DefaultAbsoluteLocationPath, DefaultAdditiveExpr, DefaultAndExpr, DefaultArithExpr, DefaultBinaryExpr, DefaultDivExpr, DefaultEqualityExpr, DefaultEqualsExpr, DefaultExpr, DefaultFilterExpr, DefaultFunctionCallExpr, DefaultGreaterThanEqualExpr, DefaultGreaterThanExpr, DefaultLessThanEqualExpr, DefaultLessThanExpr, DefaultLiteralExpr, DefaultLocationPath, DefaultLogicalExpr, DefaultMinusExpr, DefaultModExpr, DefaultMultiplicativeExpr, DefaultMultiplyExpr, DefaultNotEqualsExpr, DefaultNumberExpr, DefaultOrExpr, DefaultPathExpr, DefaultPlusExpr, DefaultRelationalExpr, DefaultRelativeLocationPath, DefaultTruthExpr, DefaultUnaryExpr, DefaultUnionExpr, DefaultVariableReferenceExpr

public interface Expr
extends java.io.Serializable

Represents an XPath expression. This is production 14 in the XPath 1.0 specification:

[14]      Expr       ::=      OrExpr


Method Summary
 java.lang.Object evaluate(Context context)
          Evaluate the expression in the given context, and return the result.
 java.lang.String getText()
          Returns a String containing the XPath expression.
 Expr simplify()
          Simplifies the XPath expression.
 

Method Detail

getText

java.lang.String getText()
Returns a String containing the XPath expression.

Returns:
the text form of this XPath expression

simplify

Expr simplify()
Simplifies the XPath expression. For example, the expression //para[1 = 1] could be simplified to //para. In practice, this is usually a noop. Jaxen does not currently perform any simplification.

Returns:
the simplified expression

evaluate

java.lang.Object evaluate(Context context)
                          throws JaxenException
Evaluate the expression in the given context, and return the result. The result will be a java.lang.Double for expressions that return a number, a java.lang.String for expressions that return a string, a java.lang.Boolean for expressions that return a boolean, and a java.util.List for expressions that return a node-set. In the latter case, the elements of the list are the actual objects from the source document model. Copies are not made.

Parameters:
context - the context in which the expression is evaluated
Returns:
an object representing the result of the evaluation
Throws:
JaxenException