Interface XPathFactory

All Known Implementing Classes:
DefaultXPathFactory

public interface XPathFactory
An abstract factory used to create individual path component objects.
  • Method Details

    • 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