org.jaxen.saxpath
Interface XPathHandler

All Known Implementing Classes:
JaxenHandler, PatternHandler

public interface XPathHandler

Interface for event-based XPath parsing.

A XPathReader generates callbacks into an XPathHandler to allow for custom handling of the parse.

The callbacks very closely match the productions listed in the W3C XPath specification. Gratuitous productions (e.g. Expr/startExpr()/endExpr()) are not included in this API.

Author:
bob mcwhirter (bob@werken.com)

Method Summary
 void endAbsoluteLocationPath()
          Receive notification of the end of an absolute location path expression.
 void endAdditiveExpr(int additiveOperator)
          Receive notification of the end of an additive ('+' or '-') expression.
 void endAllNodeStep()
          Receive notification of the end of a node() step.
 void endAndExpr(boolean create)
          Receive notification of the end of an 'and' expression.
 void endCommentNodeStep()
          Receive notification of the end of a comment() step.
 void endEqualityExpr(int equalityOperator)
          Receive notification of the end of an equality ('=' or '!=') expression.
 void endFilterExpr()
          Receive notification of the end of a filter expression.
 void endFunction()
          Receive notification of the end of a function call
 void endMultiplicativeExpr(int multiplicativeOperator)
          Receive notification of the start of a multiplicative ('*', 'div' or 'mod') expression.
 void endNameStep()
          Receive notification of the end of a NameStep
 void endOrExpr(boolean create)
          Receive notification of the end of an 'or' expression.
 void endPathExpr()
          Receive notification of the end of a path expression.
 void endPredicate()
          Receive notification of the end of a predicate.
 void endProcessingInstructionNodeStep()
          Receive notification of the end of a processing-instruction(...) step.
 void endRelationalExpr(int relationalOperator)
          Receive notification of the start of a relational ('<', '>', '<=', or '>=') expression.
 void endRelativeLocationPath()
          Receive notification of the end of a relative location path expression.
 void endTextNodeStep()
          Receive notification of the end of a text() step.
 void endUnaryExpr(int unaryOperator)
          Receive notification of the end of a unary ('+' or '-') expression.
 void endUnionExpr(boolean create)
          Receive notification of the end of a union ('|') expression.
 void endXPath()
          Receive notification of the end of an XPath expression parse.
 void literal(String literal)
          Receive notification of a literal expression.
 void number(double number)
          Receive notification of a number expression.
 void number(int number)
          Receive notification of a number expression.
 void startAbsoluteLocationPath()
          Receive notification of the start of an absolute location path expression.
 void startAdditiveExpr()
          Receive notification of the start of an additive ('+' or '-') expression.
 void startAllNodeStep(int axis)
          Receive notification of the start of a node() step.
 void startAndExpr()
          Receive notification of the start of an 'and' expression.
 void startCommentNodeStep(int axis)
          Receive notification of the start of a comment() step.
 void startEqualityExpr()
          Receive notification of the start of an equality ('=' or '!=') expression.
 void startFilterExpr()
          Receive notification of the start of a filter expression.
 void startFunction(String prefix, String functionName)
          Receive notification of a function call.
 void startMultiplicativeExpr()
          Receive notification of the start of a multiplicative ('*', 'div' or 'mod') expression.
 void startNameStep(int axis, String prefix, String localName)
          Receive notification of the start of a name step.
 void startOrExpr()
          Receive notification of the start of an 'or' expression.
 void startPathExpr()
          Receive notification of the start of a path expression.
 void startPredicate()
          Receive notification of the start of a predicate.
 void startProcessingInstructionNodeStep(int axis, String name)
          Receive notification of the start of a processing-instruction(...) step.
 void startRelationalExpr()
          Receive notification of the start of a relational ('<', '>', '<=', or '>=') expression.
 void startRelativeLocationPath()
          Receive notification of the start of a relative location path expression.
 void startTextNodeStep(int axis)
          Receive notification of the start of a text() step.
 void startUnaryExpr()
          Receive notification of the start of a unary ('+' or '-') expression.
 void startUnionExpr()
          Receive notification of the start of a union ('|') expression.
 void startXPath()
          Receive notification of the start of an XPath expression parse.
 void variableReference(String prefix, String variableName)
          Receive notification of a variable-reference expression.
 

Method Detail

startXPath

void startXPath()
                throws SAXPathException
Receive notification of the start of an XPath expression parse.

Throws:
SAXPathException

endXPath

void endXPath()
              throws SAXPathException
Receive notification of the end of an XPath expression parse.

Throws:
SAXPathException

startPathExpr

void startPathExpr()
                   throws SAXPathException
Receive notification of the start of a path expression.

Throws:
SAXPathException

endPathExpr

void endPathExpr()
                 throws SAXPathException
Receive notification of the end of a path expression.

Throws:
SAXPathException

startAbsoluteLocationPath

void startAbsoluteLocationPath()
                               throws SAXPathException
Receive notification of the start of an absolute location path expression.

Throws:
SAXPathException

endAbsoluteLocationPath

void endAbsoluteLocationPath()
                             throws SAXPathException
Receive notification of the end of an absolute location path expression.

Throws:
SAXPathException

startRelativeLocationPath

void startRelativeLocationPath()
                               throws SAXPathException
Receive notification of the start of a relative location path expression.

Throws:
SAXPathException

endRelativeLocationPath

void endRelativeLocationPath()
                             throws SAXPathException
Receive notification of the end of a relative location path expression.

Throws:
SAXPathException

startNameStep

void startNameStep(int axis,
                   String prefix,
                   String localName)
                   throws SAXPathException
Receive notification of the start of a name step.

Parameters:
axis - the axis of this step
prefix - the namespace prefix for the name to test, or the empty string if no prefix is specified
localName - the local part of the name to test
Throws:
SAXPathException

endNameStep

void endNameStep()
                 throws SAXPathException
Receive notification of the end of a NameStep

Throws:
SAXPathException

startTextNodeStep

void startTextNodeStep(int axis)
                       throws SAXPathException
Receive notification of the start of a text() step.

Parameters:
axis - the axis of this step
Throws:
SAXPathException

endTextNodeStep

void endTextNodeStep()
                     throws SAXPathException
Receive notification of the end of a text() step.

Throws:
SAXPathException

startCommentNodeStep

void startCommentNodeStep(int axis)
                          throws SAXPathException
Receive notification of the start of a comment() step.

Parameters:
axis - the axis of this step
Throws:
SAXPathException

endCommentNodeStep

void endCommentNodeStep()
                        throws SAXPathException
Receive notification of the end of a comment() step.

Throws:
SAXPathException

startAllNodeStep

void startAllNodeStep(int axis)
                      throws SAXPathException
Receive notification of the start of a node() step.

Parameters:
axis - the axis of this step
Throws:
SAXPathException

endAllNodeStep

void endAllNodeStep()
                    throws SAXPathException
Receive notification of the end of a node() step.

Throws:
SAXPathException

startProcessingInstructionNodeStep

void startProcessingInstructionNodeStep(int axis,
                                        String name)
                                        throws SAXPathException
Receive notification of the start of a processing-instruction(...) step.

Parameters:
axis - the axis of this step
name - the name of the processing-instruction, or the empty string if none is specified
Throws:
SAXPathException

endProcessingInstructionNodeStep

void endProcessingInstructionNodeStep()
                                      throws SAXPathException
Receive notification of the end of a processing-instruction(...) step.

Throws:
SAXPathException

startPredicate

void startPredicate()
                    throws SAXPathException
Receive notification of the start of a predicate.

Throws:
SAXPathException

endPredicate

void endPredicate()
                  throws SAXPathException
Receive notification of the end of a predicate.

Throws:
SAXPathException

startFilterExpr

void startFilterExpr()
                     throws SAXPathException
Receive notification of the start of a filter expression.

Throws:
SAXPathException

endFilterExpr

void endFilterExpr()
                   throws SAXPathException
Receive notification of the end of a filter expression.

Throws:
SAXPathException

startOrExpr

void startOrExpr()
                 throws SAXPathException
Receive notification of the start of an 'or' expression.

Throws:
SAXPathException

endOrExpr

void endOrExpr(boolean create)
               throws SAXPathException
Receive notification of the end of an 'or' expression.

Parameters:
create - flag that indicates if this expression should truly be instantiated, or if it was just a pass-through, based upon the grammar productions
Throws:
SAXPathException

startAndExpr

void startAndExpr()
                  throws SAXPathException
Receive notification of the start of an 'and' expression.

Throws:
SAXPathException

endAndExpr

void endAndExpr(boolean create)
                throws SAXPathException
Receive notification of the end of an 'and' expression.

Parameters:
create - flag that indicates if this expression should truly be instantiated, or if it was just a pass-through, based upon the grammar productions
Throws:
SAXPathException

startEqualityExpr

void startEqualityExpr()
                       throws SAXPathException
Receive notification of the start of an equality ('=' or '!=') expression.

Throws:
SAXPathException

endEqualityExpr

void endEqualityExpr(int equalityOperator)
                     throws SAXPathException
Receive notification of the end of an equality ('=' or '!=') expression.

Parameters:
equalityOperator - the operator specific to this particular equality expression. If null, this expression is only a pass-through, and should not actually be instantiated.
Throws:
SAXPathException

startRelationalExpr

void startRelationalExpr()
                         throws SAXPathException
Receive notification of the start of a relational ('<', '>', '<=', or '>=') expression.

Throws:
SAXPathException

endRelationalExpr

void endRelationalExpr(int relationalOperator)
                       throws SAXPathException
Receive notification of the start of a relational ('<', '>', '<=', or '>=') expression.

Parameters:
relationalOperator - the operator specific to this particular relational expression. If NO_OP, this expression is only a pass-through, and should not actually be instantiated.
Throws:
SAXPathException

startAdditiveExpr

void startAdditiveExpr()
                       throws SAXPathException
Receive notification of the start of an additive ('+' or '-') expression.

Throws:
SAXPathException

endAdditiveExpr

void endAdditiveExpr(int additiveOperator)
                     throws SAXPathException
Receive notification of the end of an additive ('+' or '-') expression.

Parameters:
additiveOperator - the operator specific to this particular additive expression. If NO_OP, this expression is only a pass-through, and should not actually be instantiated.
Throws:
SAXPathException

startMultiplicativeExpr

void startMultiplicativeExpr()
                             throws SAXPathException
Receive notification of the start of a multiplicative ('*', 'div' or 'mod') expression.

Throws:
SAXPathException

endMultiplicativeExpr

void endMultiplicativeExpr(int multiplicativeOperator)
                           throws SAXPathException
Receive notification of the start of a multiplicative ('*', 'div' or 'mod') expression.

Parameters:
multiplicativeOperator - the operator specific to this particular multiplicative expression. If null, this expression is only a pass-through, and should not actually be instantiated.
Throws:
SAXPathException

startUnaryExpr

void startUnaryExpr()
                    throws SAXPathException
Receive notification of the start of a unary ('+' or '-') expression.

Throws:
SAXPathException

endUnaryExpr

void endUnaryExpr(int unaryOperator)
                  throws SAXPathException
Receive notification of the end of a unary ('+' or '-') expression.

Parameters:
unaryOperator - the operator specific to this particular unary expression. If NO_OP, this expression is only a pass-through, and should not actually be instantiated. If not Operator.NO_OP, it will always be Operator.NEGATIVE.
Throws:
SAXPathException

startUnionExpr

void startUnionExpr()
                    throws SAXPathException
Receive notification of the start of a union ('|') expression.

Throws:
SAXPathException

endUnionExpr

void endUnionExpr(boolean create)
                  throws SAXPathException
Receive notification of the end of a union ('|') expression.

Parameters:
create - flag that indicates if this expression should truly be instantiated, or if it was just a pass-through, based upon the grammar productions
Throws:
SAXPathException

number

void number(int number)
            throws SAXPathException
Receive notification of a number expression.

Parameters:
number - the number value
Throws:
SAXPathException

number

void number(double number)
            throws SAXPathException
Receive notification of a number expression.

Parameters:
number - the number value
Throws:
SAXPathException

literal

void literal(String literal)
             throws SAXPathException
Receive notification of a literal expression.

Parameters:
literal - the string literal value
Throws:
SAXPathException

variableReference

void variableReference(String prefix,
                       String variableName)
                       throws SAXPathException
Receive notification of a variable-reference expression.

Parameters:
prefix - the namespace prefix of the variable
variableName - the local name of the variable
Throws:
SAXPathException

startFunction

void startFunction(String prefix,
                   String functionName)
                   throws SAXPathException
Receive notification of a function call.

Parameters:
prefix - the namespace prefix of the function
functionName - the local name of the function
Throws:
SAXPathException

endFunction

void endFunction()
                 throws SAXPathException
Receive notification of the end of a function call

Throws:
SAXPathException


Copyright © 2001-2008 Codehaus. All Rights Reserved.