|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object | +--net.sf.saxon.expr.ExpressionParser | +--net.sf.saxon.query.QueryParser
This class defines extensions to the XPath parser to handle the additional syntax supported in XQuery
Nested Class Summary |
Nested classes inherited from class net.sf.saxon.expr.ExpressionParser |
ExpressionParser.ForClause |
Field Summary |
Fields inherited from class net.sf.saxon.expr.ExpressionParser |
env, numberOfRangeVariables, rangeVariables, t |
Constructor Summary | |
QueryParser()
|
Method Summary | |
protected java.lang.String |
getLanguage()
Get the current language (XPath or XQuery) |
protected void |
grumble(java.lang.String message)
Report a parsing error |
protected StringValue |
makeStringLiteral(java.lang.String token)
Method to make a string literal from a token identified as a string literal. |
protected Expression |
parseConstructor()
Parse a node constructor. |
protected Expression |
parseForExpression()
Parse a FLWOR expression. |
void |
parseLibraryModule(java.lang.String queryString,
StaticQueryContext env)
Parse a library module. |
Expression |
parseQuery(java.lang.String queryString,
StaticQueryContext env)
Parse a top-level Query. |
protected Expression |
parseTypeswitchExpression()
Parse a Typeswitch Expression. |
Methods inherited from class net.sf.saxon.expr.ExpressionParser |
currentTokenDisplay, declareRangeVariable, expect, isKeyword, makeLocalNameTest, makeLocator, makeNameCode, makeNamespaceTest, makeNameTest, nextToken, parse, parseExpression, parseExprSingle, parseMappingExpression, parsePattern, parseSequenceType, parseSequenceType, setLocation, setLocation, undeclareRangeVariable |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
public QueryParser()
Method Detail |
public final Expression parseQuery(java.lang.String queryString, StaticQueryContext env) throws XPathException
queryString
- The text of the queryenv
- The static context
XPathException
- if the expression contains a syntax errorpublic final void parseLibraryModule(java.lang.String queryString, StaticQueryContext env) throws XPathException
queryString
- The text of the library module.env
- The static context. The result of parsing
a library module is that the static context is populated with a set of function
declarations and variable declarations. Each library module must have its own
static context objext.
XPathException
- if the expression contains a syntax errorprotected void grumble(java.lang.String message) throws XPathException
grumble
in class ExpressionParser
message
- the error message
XPathException
- always thrown: an exception containing the
supplied messageprotected Expression parseForExpression() throws XPathException
[41] FLWORExpr ::= (ForClause | LetClause)+ WhereClause? OrderByClause? "return" ExprSingle [42] ForClause ::= <"for" "$"> VarName TypeDeclaration? PositionalVar? "in" ExprSingle ("," "$" VarName TypeDeclaration? PositionalVar? "in" ExprSingle)* [43] PositionalVar ::= "at" "$" VarName [44] LetClause ::= <"let" "$"> VarName TypeDeclaration? ":=" ExprSingle ("," "$" VarName TypeDeclaration? ":=" ExprSingle)* [45] WhereClause ::= "where" Expr [46] OrderByClause ::= (<"order" "by"> | <"stable" "order" "by">) OrderSpecList [47] OrderSpecList ::= OrderSpec ("," OrderSpec)* [48] OrderSpec ::= ExprSingle OrderModifier [49] OrderModifier ::= ("ascending" | "descending")? (<"empty" "greatest"> | <"empty" "least">)? ("collation" StringLiteral)?
parseForExpression
in class ExpressionParser
XPathException
- if any error is encounteredprotected Expression parseTypeswitchExpression() throws XPathException
parseTypeswitchExpression
in class ExpressionParser
XPathException
protected Expression parseConstructor() throws XPathException
parseConstructor
in class ExpressionParser
XPathException
- in the event of a syntax error.protected StringValue makeStringLiteral(java.lang.String token) throws XPathException
makeStringLiteral
in class ExpressionParser
token
-
XPathException
protected java.lang.String getLanguage()
getLanguage
in class ExpressionParser
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |