Package 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 anXPathHandler
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
All Methods Instance Methods Abstract Methods Modifier and Type Method Description 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 callvoid
endMultiplicativeExpr(int multiplicativeOperator)
Receive notification of the start of a multiplicative ('*', 'div' or 'mod') expression.void
endNameStep()
Receive notification of the end of a NameStepvoid
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(java.lang.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(java.lang.String prefix, java.lang.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, java.lang.String prefix, java.lang.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, java.lang.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(java.lang.String prefix, java.lang.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, java.lang.String prefix, java.lang.String localName) throws SAXPathException
Receive notification of the start of a name step.- Parameters:
axis
- the axis of this stepprefix
- the namespace prefix for the name to test, or the empty string if no prefix is specifiedlocalName
- 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, java.lang.String name) throws SAXPathException
Receive notification of the start of a processing-instruction(...) step.- Parameters:
axis
- the axis of this stepname
- 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 notOperator.NO_OP
, it will always beOperator.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(java.lang.String literal) throws SAXPathException
Receive notification of a literal expression.- Parameters:
literal
- the string literal value- Throws:
SAXPathException
-
variableReference
void variableReference(java.lang.String prefix, java.lang.String variableName) throws SAXPathException
Receive notification of a variable-reference expression.- Parameters:
prefix
- the namespace prefix of the variablevariableName
- the local name of the variable- Throws:
SAXPathException
-
startFunction
void startFunction(java.lang.String prefix, java.lang.String functionName) throws SAXPathException
Receive notification of a function call.- Parameters:
prefix
- the namespace prefix of the functionfunctionName
- the local name of the function- Throws:
SAXPathException
-
endFunction
void endFunction() throws SAXPathException
Receive notification of the end of a function call- Throws:
SAXPathException
-
-