public class XPathParser extends Object
| Modifier and Type | Field and Description |
|---|---|
static String |
CONTINUE_AFTER_FATAL_ERROR |
protected static int |
FILTER_MATCH_FAILED
Results from checking FilterExpr syntax
|
protected static int |
FILTER_MATCH_PREDICATES |
protected static int |
FILTER_MATCH_PRIMARY |
| Constructor and Description |
|---|
XPathParser(ErrorListener errorListener,
SourceLocator sourceLocator)
The parser constructor.
|
| Modifier and Type | Method and Description |
|---|---|
protected boolean |
AbbreviatedNodeTestStep(boolean isLeadingSlashPermitted)
AbbreviatedNodeTestStep ::= '@'? NodeTest Predicate
|
protected int |
AdditiveExpr(int addPos)
This has to handle construction of the operations so that they are evaluated
in pre-fix order.
|
protected void |
AndExpr()
AndExpr ::= EqualityExpr
| AndExpr 'and' EqualityExpr
|
protected void |
Argument()
Argument ::= Expr
|
protected int |
AxisName()
Basis ::= AxisName '::' NodeTest
| AbbreviatedBasis
|
protected void |
Basis()
Basis ::= AxisName '::' NodeTest
| AbbreviatedBasis
|
protected void |
BooleanExpr()
StringExpr ::= Expr
|
protected String |
dumpRemainingTokenQueue()
Dump the remaining token queue.
|
protected int |
EqualityExpr(int addPos) |
protected void |
Expr()
Expr ::= OrExpr
|
protected int |
FilterExpr()
FilterExpr ::= PrimaryExpr
| FilterExpr Predicate
|
protected boolean |
FunctionCall()
FunctionCall ::= FunctionName '(' ( Argument ( ',' Argument)*)? ')'
|
ErrorListener |
getErrorListener()
Return the current error listener.
|
protected void |
IdKeyPattern()
IdKeyPattern ::= 'id' '(' Literal ')'
| 'key' '(' Literal ',' Literal ')'
(Also handle doc())
|
void |
initMatchPattern(Compiler compiler,
String expression,
PrefixResolver namespaceContext)
Given an string, init an XPath object for pattern matches,
in order that a parse doesn't
have to be done each time the expression is evaluated.
|
void |
initXPath(Compiler compiler,
String expression,
PrefixResolver namespaceContext)
Given an string, init an XPath object for selections,
in order that a parse doesn't
have to be done each time the expression is evaluated.
|
protected void |
Literal()
The value of the Literal is the sequence of characters inside
the " or ' characters>.
|
protected void |
LocationPath()
LocationPath ::= RelativeLocationPath
| AbsoluteLocationPath
|
protected void |
LocationPathPattern()
LocationPathPattern ::= '/' RelativePathPattern?
| IdKeyPattern (('/' | '//') RelativePathPattern)?
| '//'? RelativePathPattern
|
protected int |
MultiplicativeExpr(int addPos)
This has to handle construction of the operations so that they are evaluated
in pre-fix order.
|
protected void |
NCName()
NCName ::= (Letter | '_') (NCNameChar)
NCNameChar ::= Letter | Digit | '.' | '-' | '_' | CombiningChar | Extender
|
protected void |
NodeTest(int axesType)
NodeTest ::= WildcardName
| NodeType '(' ')'
| 'processing-instruction' '(' Literal ')'
|
protected void |
Number()
Number ::= [0-9]+('.'[0-9]+)? | '.'[0-9]+
|
protected void |
NumberExpr()
NumberExpr ::= Expr
|
protected void |
OrExpr()
OrExpr ::= AndExpr
| OrExpr 'or' AndExpr
|
protected void |
PathExpr()
PathExpr ::= LocationPath
| FilterExpr
| FilterExpr '/' RelativeLocationPath
| FilterExpr '//' RelativeLocationPath
|
protected void |
Pattern()
Pattern ::= LocationPathPattern
| Pattern '|' LocationPathPattern
|
protected void |
Predicate()
Predicate ::= '[' PredicateExpr ']'
|
protected void |
PredicateExpr()
PredicateExpr ::= Expr
|
protected boolean |
PrimaryExpr()
PrimaryExpr ::= VariableReference
| '(' Expr ')'
| Literal
| Number
| FunctionCall
|
protected void |
QName()
QName ::= (Prefix ':')? LocalPart
Prefix ::= NCName
LocalPart ::= NCName
|
protected int |
RelationalExpr(int addPos)
.
|
protected boolean |
RelativeLocationPath()
RelativeLocationPath ::= Step
| RelativeLocationPath '/' Step
| AbbreviatedRelativeLocationPath
|
protected void |
RelativePathPattern()
RelativePathPattern ::= StepPattern
| RelativePathPattern '/' StepPattern
| RelativePathPattern '//' StepPattern
|
void |
setErrorHandler(ErrorListener handler)
Allow an application to register an error event handler, where syntax
errors will be sent.
|
protected boolean |
Step()
Step ::= Basis Predicate
| AbbreviatedStep
|
protected boolean |
StepPattern(boolean isLeadingSlashPermitted)
StepPattern ::= AbbreviatedNodeTestStep
|
protected void |
StringExpr()
StringExpr ::= Expr
|
protected void |
UnaryExpr()
UnaryExpr ::= UnionExpr
| '-' UnaryExpr
|
protected void |
UnionExpr()
The context of the right hand side expressions is the context of the
left hand side expression.
|
public static final String CONTINUE_AFTER_FATAL_ERROR
protected static final int FILTER_MATCH_FAILED
protected static final int FILTER_MATCH_PRIMARY
protected static final int FILTER_MATCH_PREDICATES
public XPathParser(ErrorListener errorListener, SourceLocator sourceLocator)
public void initXPath(Compiler compiler, String expression, PrefixResolver namespaceContext) throws TransformerException
compiler - The compiler object.expression - A string conforming to the XPath grammar.namespaceContext - An object that is able to resolve prefixes in
the XPath to namespaces.TransformerExceptionpublic void initMatchPattern(Compiler compiler, String expression, PrefixResolver namespaceContext) throws TransformerException
compiler - The XPath object to be initialized.expression - A String representing the XPath.namespaceContext - An object that is able to resolve prefixes in
the XPath to namespaces.TransformerExceptionpublic void setErrorHandler(ErrorListener handler)
handler - Reference to error listener where syntax errors will be
sent.public ErrorListener getErrorListener()
protected String dumpRemainingTokenQueue()
protected void Expr()
throws TransformerException
TransformerExceptionprotected void OrExpr()
throws TransformerException
TransformerExceptionprotected void AndExpr()
throws TransformerException
TransformerExceptionprotected int EqualityExpr(int addPos)
throws TransformerException
addPos - Position where expression is to be added, or -1 for append.TransformerExceptionprotected int RelationalExpr(int addPos)
throws TransformerException
addPos - Position where expression is to be added, or -1 for append.TransformerExceptionprotected int AdditiveExpr(int addPos)
throws TransformerException
addPos - Position where expression is to be added, or -1 for append.TransformerExceptionprotected int MultiplicativeExpr(int addPos)
throws TransformerException
addPos - Position where expression is to be added, or -1 for append.TransformerExceptionprotected void UnaryExpr()
throws TransformerException
TransformerExceptionprotected void StringExpr()
throws TransformerException
TransformerExceptionprotected void BooleanExpr()
throws TransformerException
TransformerExceptionprotected void NumberExpr()
throws TransformerException
TransformerExceptionprotected void UnionExpr()
throws TransformerException
TransformerExceptionprotected void PathExpr()
throws TransformerException
XSLProcessorException - thrown if the active ProblemListener and XPathContext decide
the error condition is severe enough to halt processing.TransformerExceptionprotected int FilterExpr()
throws TransformerException
XSLProcessorException - thrown if the active ProblemListener and XPathContext decide
the error condition is severe enough to halt processing.TransformerExceptionprotected boolean PrimaryExpr()
throws TransformerException
TransformerExceptionprotected void Argument()
throws TransformerException
TransformerExceptionprotected boolean FunctionCall()
throws TransformerException
TransformerExceptionprotected void LocationPath()
throws TransformerException
TransformerExceptionprotected boolean RelativeLocationPath()
throws TransformerException
TransformerExceptionprotected boolean Step()
throws TransformerException
TransformerExceptionprotected void Basis()
throws TransformerException
TransformerExceptionprotected int AxisName()
throws TransformerException
Keywords.TransformerExceptionprotected void NodeTest(int axesType)
throws TransformerException
axesType - FROM_XXX axes type, found in Keywords.TransformerExceptionprotected void Predicate()
throws TransformerException
TransformerExceptionprotected void PredicateExpr()
throws TransformerException
TransformerExceptionprotected void QName()
throws TransformerException
TransformerExceptionprotected void NCName()
protected void Literal()
throws TransformerException
TransformerExceptionprotected void Number()
throws TransformerException
TransformerExceptionprotected void Pattern()
throws TransformerException
TransformerExceptionprotected void LocationPathPattern()
throws TransformerException
TransformerExceptionprotected void IdKeyPattern()
throws TransformerException
TransformerExceptionprotected void RelativePathPattern()
throws TransformerException
TransformerExceptionprotected boolean StepPattern(boolean isLeadingSlashPermitted)
throws TransformerException
isLeadingSlashPermitted - a boolean indicating whether a slash can
appear at the start of this stepTransformerExceptionprotected boolean AbbreviatedNodeTestStep(boolean isLeadingSlashPermitted)
throws TransformerException
isLeadingSlashPermitted - a boolean indicating whether a slash can
appear at the start of this stepTransformerExceptionCopyright © 2017 JBoss by Red Hat. All rights reserved.