org.jaxen.expr
Interface XPathFactory

All Known Implementing Classes:
DefaultXPathFactory

public interface XPathFactory

An abstract factory used to create individual path component objects.


Method Summary
 LocationPath createAbsoluteLocationPath()
          Create a new empty absolute location path.
 BinaryExpr createAdditiveExpr(Expr lhs, Expr rhs, int additiveOperator)
          Returns a new XPath additive expression.
 Step createAllNodeStep(int axis)
          Create a step with a node() node-test.
 BinaryExpr createAndExpr(Expr lhs, Expr rhs)
          Returns a new XPath And expression.
 Step createCommentNodeStep(int axis)
          Create a step with a comment() node-test.
 BinaryExpr createEqualityExpr(Expr lhs, Expr rhs, int equalityOperator)
          Returns a new XPath equality expression.
 FilterExpr createFilterExpr(Expr expr)
          Returns a new XPath filter expression.
 FunctionCallExpr createFunctionCallExpr(String prefix, String functionName)
          Create a new function call expression.
 LiteralExpr createLiteralExpr(String literal)
          Create a string literal expression.
 BinaryExpr createMultiplicativeExpr(Expr lhs, Expr rhs, int multiplicativeOperator)
          Returns a new XPath multiplicative expression.
 Step createNameStep(int axis, String prefix, String localName)
          Create a step with a named node-test.
 NumberExpr createNumberExpr(double number)
          Create a number expression.
 NumberExpr createNumberExpr(int number)
          Create a number expression.
 BinaryExpr createOrExpr(Expr lhs, Expr rhs)
          Returns a new XPath Or expression.
 PathExpr createPathExpr(FilterExpr filterExpr, LocationPath locationPath)
          Create a new path expression.
 Predicate createPredicate(Expr predicateExpr)
          Create from the supplied expression.
 PredicateSet createPredicateSet()
          Create an empty predicate set.
 Step createProcessingInstructionNodeStep(int axis, String name)
          Create a step with a processing-instruction() node-test.
 BinaryExpr createRelationalExpr(Expr lhs, Expr rhs, int relationalOperator)
          Returns a new XPath relational expression.
 LocationPath createRelativeLocationPath()
          Create a new empty relative location path.
 Step createTextNodeStep(int axis)
          Create a step with a text() node-test.
 Expr createUnaryExpr(Expr expr, int unaryOperator)
          Returns a new XPath unary expression.
 UnionExpr createUnionExpr(Expr lhs, Expr rhs)
          Returns a new XPath union expression.
 VariableReferenceExpr createVariableReferenceExpr(String prefix, String variableName)
          Create a new variable reference expression.
 XPathExpr createXPath(Expr rootExpr)
          Create a new XPathExpr from an Expr.
 

Method Detail

createXPath

XPathExpr createXPath(Expr rootExpr)
                      throws JaxenException
Create a new XPathExpr from an Expr.

Parameters:
rootExpr - the expression wrapped by the resulting XPathExpr
Returns:
an XPathExpr wrapping the root expression
Throws:
JaxenException

createPathExpr

PathExpr createPathExpr(FilterExpr filterExpr,
                        LocationPath locationPath)
                        throws JaxenException
Create a new path expression.

Parameters:
filterExpr - the filter expression that starts the path expression
locationPath - the location path that follows the filter expression
Returns:
a path expression formed by concatenating the two arguments
Throws:
JaxenException

createRelativeLocationPath

LocationPath createRelativeLocationPath()
                                        throws JaxenException
Create a new empty relative location path.

Returns:
an empty relative location path
Throws:
JaxenException

createAbsoluteLocationPath

LocationPath createAbsoluteLocationPath()
                                        throws JaxenException
Create a new empty absolute location path.

Returns:
an empty absolute location path
Throws:
JaxenException

createOrExpr

BinaryExpr createOrExpr(Expr lhs,
                        Expr rhs)
                        throws JaxenException
Returns a new XPath Or expression.

Parameters:
lhs - the left hand side of the expression
rhs - the right hand side of the expression
Returns:
lhs or rhs
Throws:
JaxenException

createAndExpr

BinaryExpr createAndExpr(Expr lhs,
                         Expr rhs)
                         throws JaxenException
Returns a new XPath And expression.

Parameters:
lhs - the left hand side of the expression
rhs - the right hand side of the expression
Returns:
lhs and rhs
Throws:
JaxenException

createEqualityExpr

BinaryExpr createEqualityExpr(Expr lhs,
                              Expr rhs,
                              int equalityOperator)
                              throws JaxenException
Returns a new XPath equality expression.

Parameters:
lhs - the left hand side of the expression
rhs - the right hand side of the expression
equalityOperator - Operator.EQUALS or Operator.NOT_EQUALS
Returns:
lhs = rhs or lhs != rhs
Throws:
JaxenException - if the third argument is not Operator.EQUALS or Operator.NOT_EQUALS

createRelationalExpr

BinaryExpr createRelationalExpr(Expr lhs,
                                Expr rhs,
                                int relationalOperator)
                                throws JaxenException
Returns a new XPath relational expression.

Parameters:
lhs - the left hand side of the expression
rhs - the right hand side of the expression
relationalOperator - Operator.LESS_THAN, Operator.GREATER_THAN, Operator.LESS_THAN_EQUALS, or Operator.GREATER_THAN_EQUALS
Returns:
lhs relationalOperator rhs or lhs != rhs
Throws:
JaxenException - if the third argument is not a relational operator constant

createAdditiveExpr

BinaryExpr createAdditiveExpr(Expr lhs,
                              Expr rhs,
                              int additiveOperator)
                              throws JaxenException
Returns a new XPath additive expression.

Parameters:
lhs - the left hand side of the expression
rhs - the right hand side of the expression
additiveOperator - Operator.ADD or Operator.SUBTRACT
Returns:
lhs + rhs or lhs - rhs
Throws:
JaxenException - if the third argument is not Operator.ADD or Operator.SUBTRACT

createMultiplicativeExpr

BinaryExpr createMultiplicativeExpr(Expr lhs,
                                    Expr rhs,
                                    int multiplicativeOperator)
                                    throws JaxenException
Returns a new XPath multiplicative expression.

Parameters:
lhs - the left hand side of the expression
rhs - the right hand side of the expression
multiplicativeOperator - Operator.MULTIPLY, Operator.DIV, or Operator.MOD
Returns:
lhs * rhs, lhs div rhs, or lhs mod rhs
Throws:
JaxenException - if the third argument is not a multiplicative operator constant

createUnaryExpr

Expr createUnaryExpr(Expr expr,
                     int unaryOperator)
                     throws JaxenException
Returns a new XPath unary expression.

Parameters:
expr - the expression to be negated
unaryOperator - Operator.NEGATIVE
Returns:
- expr or expr
Throws:
JaxenException

createUnionExpr

UnionExpr createUnionExpr(Expr lhs,
                          Expr rhs)
                          throws JaxenException
Returns a new XPath union expression.

Parameters:
lhs - the left hand side of the expression
rhs - the right hand side of the expression
Returns:
lhs | rhs
Throws:
JaxenException

createFilterExpr

FilterExpr createFilterExpr(Expr expr)
                            throws JaxenException
Returns a new XPath filter expression.

Parameters:
expr - the basic expression to which the predicate will be added
Returns:
the expression with an empty predicate set
Throws:
JaxenException

createFunctionCallExpr

FunctionCallExpr createFunctionCallExpr(String prefix,
                                        String functionName)
                                        throws JaxenException
Create a new function call expression.

Parameters:
prefix - the namespace prefix of the function
functionName - the local name of the function
Returns:
a function with an empty argument list
Throws:
JaxenException

createNumberExpr

NumberExpr createNumberExpr(int number)
                            throws JaxenException
Create a number expression.

Parameters:
number - the value
Returns:
a number expression wrapping that value
Throws:
JaxenException

createNumberExpr

NumberExpr createNumberExpr(double number)
                            throws JaxenException
Create a number expression.

Parameters:
number - the value
Returns:
a number expression wrapping that value
Throws:
JaxenException

createLiteralExpr

LiteralExpr createLiteralExpr(String literal)
                              throws JaxenException
Create a string literal expression.

Parameters:
literal - the value
Returns:
a literal expression wrapping that value
Throws:
JaxenException

createVariableReferenceExpr

VariableReferenceExpr createVariableReferenceExpr(String prefix,
                                                  String variableName)
                                                  throws JaxenException
Create a new variable reference expression.

Parameters:
prefix - the namespace prefix of the variable
variableName - the local name of the variable
Returns:
a variable expression
Throws:
JaxenException

createNameStep

Step createNameStep(int axis,
                    String prefix,
                    String localName)
                    throws JaxenException
Create a step with a named node-test.

Parameters:
axis - the axis to create the name-test on
prefix - the namespace prefix for the test
localName - the local name for the test
Returns:
a name step
Throws:
JaxenException - if axis is not one of the axis constants????

createAllNodeStep

Step createAllNodeStep(int axis)
                       throws JaxenException
Create a step with a node() node-test.

Parameters:
axis - the axis to create the node-test on
Returns:
an all node step
Throws:
JaxenException - if axis is not one of the axis constants????

createCommentNodeStep

Step createCommentNodeStep(int axis)
                           throws JaxenException
Create a step with a comment() node-test.

Parameters:
axis - the axis to create the comment() node-test on
Returns:
a comment node step
Throws:
JaxenException - if axis is not one of the axis constants????

createTextNodeStep

Step createTextNodeStep(int axis)
                        throws JaxenException
Create a step with a text() node-test.

Parameters:
axis - the axis to create the text() node-test on
Returns:
a text node step
Throws:
JaxenException - if axis is not one of the axis constants????

createProcessingInstructionNodeStep

Step createProcessingInstructionNodeStep(int axis,
                                         String name)
                                         throws JaxenException
Create a step with a processing-instruction() node-test.

Parameters:
axis - the axis to create the processing-instruction() node-test on
name - the target to match, may be empty
Returns:
a processing instruction node step
Throws:
JaxenException - if axis is not one of the axis constants????

createPredicate

Predicate createPredicate(Expr predicateExpr)
                          throws JaxenException
Create from the supplied expression.

Parameters:
predicateExpr - the expression to evaluate in the predicate
Returns:
a predicate
Throws:
JaxenException

createPredicateSet

PredicateSet createPredicateSet()
                                throws JaxenException
Create an empty predicate set.

Returns:
an empty predicate set
Throws:
JaxenException


Copyright © 2001-2008 Codehaus. All Rights Reserved.