<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <!--NewPage--> <HTML> <HEAD> <!-- Generated by javadoc (build 1.6.0_18) on Fri Dec 09 20:48:13 GMT 2011 --> <TITLE> ExpressionParser </TITLE> <META NAME="date" CONTENT="2011-12-09"> <LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../stylesheet.css" TITLE="Style"> <SCRIPT type="text/javascript"> function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { parent.document.title="ExpressionParser"; } } </SCRIPT> <NOSCRIPT> </NOSCRIPT> </HEAD> <BODY BGCOLOR="white" onload="windowTitle();"> <HR> <!-- ========= START OF TOP NAVBAR ======= --> <A NAME="navbar_top"><!-- --></A> <A HREF="#skip-navbar_top" title="Skip navigation links"></A> <TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY=""> <TR> <TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A NAME="navbar_top_firstrow"><!-- --></A> <TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY=""> <TR ALIGN="center" VALIGN="top"> <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A> </TD> <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A> </TD> <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> <FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT> </TD> <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A> </TD> <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A> </TD> <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A> </TD> <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A> </TD> </TR> </TABLE> </TD> <TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM> </EM> </TD> </TR> <TR> <TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2"> <A HREF="../../../../../net/sf/saxon/expr/parser/ExpressionLocation.html" title="class in net.sf.saxon.expr.parser"><B>PREV CLASS</B></A> <A HREF="../../../../../net/sf/saxon/expr/parser/ExpressionParser.TemporaryContainer.html" title="class in net.sf.saxon.expr.parser"><B>NEXT CLASS</B></A></FONT></TD> <TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2"> <A HREF="../../../../../index.html?net/sf/saxon/expr/parser/ExpressionParser.html" target="_top"><B>FRAMES</B></A> <A HREF="ExpressionParser.html" target="_top"><B>NO FRAMES</B></A> <SCRIPT type="text/javascript"> <!-- if(window==top) { document.writeln('<A HREF="../../../../../allclasses-noframe.html"><B>All Classes</B></A>'); } //--> </SCRIPT> <NOSCRIPT> <A HREF="../../../../../allclasses-noframe.html"><B>All Classes</B></A> </NOSCRIPT> </FONT></TD> </TR> <TR> <TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2"> SUMMARY: <A HREF="#nested_class_summary">NESTED</A> | <A HREF="#field_summary">FIELD</A> | <A HREF="#constructor_summary">CONSTR</A> | <A HREF="#method_summary">METHOD</A></FONT></TD> <TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2"> DETAIL: <A HREF="#field_detail">FIELD</A> | <A HREF="#constructor_detail">CONSTR</A> | <A HREF="#method_detail">METHOD</A></FONT></TD> </TR> </TABLE> <A NAME="skip-navbar_top"></A> <!-- ========= END OF TOP NAVBAR ========= --> <HR> <!-- ======== START OF CLASS DATA ======== --> <H2> <FONT SIZE="-1"> net.sf.saxon.expr.parser</FONT> <BR> Class ExpressionParser</H2> <PRE> <A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">java.lang.Object</A> <IMG SRC="../../../../../resources/inherit.gif" ALT="extended by "><B>net.sf.saxon.expr.parser.ExpressionParser</B> </PRE> <DL> <DT><B>Direct Known Subclasses:</B> <DD><A HREF="../../../../../net/sf/saxon/pattern/PatternParser.html" title="class in net.sf.saxon.pattern">PatternParser</A>, <A HREF="../../../../../net/sf/saxon/query/QueryParser.html" title="class in net.sf.saxon.query">QueryParser</A>, <A HREF="../../../../../com/saxonica/schema/sdoc/SelectionParser.html" title="class in com.saxonica.schema.sdoc">SelectionParser</A>, <A HREF="../../../../../com/saxonica/expr/XPath30Parser.html" title="class in com.saxonica.expr">XPath30Parser</A></DD> </DL> <HR> <DL> <DT><PRE>public class <B>ExpressionParser</B><DT>extends <A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</A></DL> </PRE> <P> Parser for XPath expressions and XSLT patterns. <p/> This code was originally inspired by James Clark's xt but has been totally rewritten (several times) <p/> The base class handles parsing of XPath 2.0 and XPath 3.0 syntax (switched by a languageVersion variable). Subclasses refine this to handle XQuery syntax (1.0 and 3.0) and XQuery Update syntax. <P> <P> <DL> <DT><B>Author:</B></DT> <DD>Michael Kay</DD> </DL> <HR> <P> <!-- ======== NESTED CLASS SUMMARY ======== --> <A NAME="nested_class_summary"><!-- --></A> <TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY=""> <TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor"> <TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2"> <B>Nested Class Summary</B></FONT></TH> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> <CODE>protected static class</CODE></FONT></TD> <TD><CODE><B><A HREF="../../../../../net/sf/saxon/expr/parser/ExpressionParser.TemporaryContainer.html" title="class in net.sf.saxon.expr.parser">ExpressionParser.TemporaryContainer</A></B></CODE> <BR> A Container used on a temporary basis to hold an expression while it is being parsed</TD> </TR> </TABLE> <!-- =========== FIELD SUMMARY =========== --> <A NAME="field_summary"><!-- --></A> <TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY=""> <TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor"> <TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2"> <B>Field Summary</B></FONT></TH> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> <CODE>protected boolean</CODE></FONT></TD> <TD><CODE><B><A HREF="../../../../../net/sf/saxon/expr/parser/ExpressionParser.html#allowXPath30Syntax">allowXPath30Syntax</A></B></CODE> <BR> </TD> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> <CODE>protected <A HREF="../../../../../net/sf/saxon/expr/Container.html" title="interface in net.sf.saxon.expr">Container</A></CODE></FONT></TD> <TD><CODE><B><A HREF="../../../../../net/sf/saxon/expr/parser/ExpressionParser.html#defaultContainer">defaultContainer</A></B></CODE> <BR> </TD> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> <CODE>protected <A HREF="../../../../../net/sf/saxon/expr/StaticContext.html" title="interface in net.sf.saxon.expr">StaticContext</A></CODE></FONT></TD> <TD><CODE><B><A HREF="../../../../../net/sf/saxon/expr/parser/ExpressionParser.html#env">env</A></B></CODE> <BR> </TD> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> <CODE>protected int</CODE></FONT></TD> <TD><CODE><B><A HREF="../../../../../net/sf/saxon/expr/parser/ExpressionParser.html#language">language</A></B></CODE> <BR> </TD> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> <CODE>protected <A HREF="../../../../../net/sf/saxon/value/DecimalValue.html" title="class in net.sf.saxon.value">DecimalValue</A></CODE></FONT></TD> <TD><CODE><B><A HREF="../../../../../net/sf/saxon/expr/parser/ExpressionParser.html#languageVersion">languageVersion</A></B></CODE> <BR> </TD> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> <CODE>protected <A HREF="../../../../../net/sf/saxon/om/NameChecker.html" title="class in net.sf.saxon.om">NameChecker</A></CODE></FONT></TD> <TD><CODE><B><A HREF="../../../../../net/sf/saxon/expr/parser/ExpressionParser.html#nameChecker">nameChecker</A></B></CODE> <BR> </TD> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> <CODE>protected <A HREF="http://download.oracle.com/javase/6/docs/api/java/util/Stack.html?is-external=true" title="class or interface in java.util">Stack</A><<A HREF="../../../../../net/sf/saxon/expr/Binding.html" title="interface in net.sf.saxon.expr">Binding</A>></CODE></FONT></TD> <TD><CODE><B><A HREF="../../../../../net/sf/saxon/expr/parser/ExpressionParser.html#rangeVariables">rangeVariables</A></B></CODE> <BR> </TD> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> <CODE>protected boolean</CODE></FONT></TD> <TD><CODE><B><A HREF="../../../../../net/sf/saxon/expr/parser/ExpressionParser.html#scanOnly">scanOnly</A></B></CODE> <BR> </TD> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> <CODE>static int</CODE></FONT></TD> <TD><CODE><B><A HREF="../../../../../net/sf/saxon/expr/parser/ExpressionParser.html#SEQUENCE_TYPE">SEQUENCE_TYPE</A></B></CODE> <BR> </TD> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> <CODE>protected <A HREF="../../../../../net/sf/saxon/expr/parser/Tokenizer.html" title="class in net.sf.saxon.expr.parser">Tokenizer</A></CODE></FONT></TD> <TD><CODE><B><A HREF="../../../../../net/sf/saxon/expr/parser/ExpressionParser.html#t">t</A></B></CODE> <BR> </TD> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> <CODE>static int</CODE></FONT></TD> <TD><CODE><B><A HREF="../../../../../net/sf/saxon/expr/parser/ExpressionParser.html#XPATH">XPATH</A></B></CODE> <BR> </TD> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> <CODE>static int</CODE></FONT></TD> <TD><CODE><B><A HREF="../../../../../net/sf/saxon/expr/parser/ExpressionParser.html#XQUERY">XQUERY</A></B></CODE> <BR> </TD> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> <CODE>static int</CODE></FONT></TD> <TD><CODE><B><A HREF="../../../../../net/sf/saxon/expr/parser/ExpressionParser.html#XSLT_PATTERN">XSLT_PATTERN</A></B></CODE> <BR> </TD> </TR> </TABLE> <!-- ======== CONSTRUCTOR SUMMARY ======== --> <A NAME="constructor_summary"><!-- --></A> <TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY=""> <TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor"> <TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2"> <B>Constructor Summary</B></FONT></TH> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD><CODE><B><A HREF="../../../../../net/sf/saxon/expr/parser/ExpressionParser.html#ExpressionParser()">ExpressionParser</A></B>()</CODE> <BR> Create an expression parser</TD> </TR> </TABLE> <!-- ========== METHOD SUMMARY =========== --> <A NAME="method_summary"><!-- --></A> <TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY=""> <TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor"> <TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2"> <B>Method Summary</B></FONT></TH> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> <CODE>protected boolean</CODE></FONT></TD> <TD><CODE><B><A HREF="../../../../../net/sf/saxon/expr/parser/ExpressionParser.html#atStartOfRelativePath()">atStartOfRelativePath</A></B>()</CODE> <BR> Test whether the current token is one that can start a RelativePathExpression</TD> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> <CODE>protected <A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A></CODE></FONT></TD> <TD><CODE><B><A HREF="../../../../../net/sf/saxon/expr/parser/ExpressionParser.html#currentTokenDisplay()">currentTokenDisplay</A></B>()</CODE> <BR> Display the current token in an error message</TD> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> <CODE>protected void</CODE></FONT></TD> <TD><CODE><B><A HREF="../../../../../net/sf/saxon/expr/parser/ExpressionParser.html#customizeTokenizer(net.sf.saxon.expr.parser.Tokenizer)">customizeTokenizer</A></B>(<A HREF="../../../../../net/sf/saxon/expr/parser/Tokenizer.html" title="class in net.sf.saxon.expr.parser">Tokenizer</A> t)</CODE> <BR> Callback to tailor the tokenizer</TD> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> <CODE> void</CODE></FONT></TD> <TD><CODE><B><A HREF="../../../../../net/sf/saxon/expr/parser/ExpressionParser.html#declareRangeVariable(net.sf.saxon.expr.Binding)">declareRangeVariable</A></B>(<A HREF="../../../../../net/sf/saxon/expr/Binding.html" title="interface in net.sf.saxon.expr">Binding</A> declaration)</CODE> <BR> Declare a range variable (record its existence within the parser).</TD> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> <CODE>protected boolean</CODE></FONT></TD> <TD><CODE><B><A HREF="../../../../../net/sf/saxon/expr/parser/ExpressionParser.html#disallowedAtStartOfRelativePath()">disallowedAtStartOfRelativePath</A></B>()</CODE> <BR> Test whether the current token is one that is disallowed after a "leading lone slash".</TD> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> <CODE> void</CODE></FONT></TD> <TD><CODE><B><A HREF="../../../../../net/sf/saxon/expr/parser/ExpressionParser.html#expect(int)">expect</A></B>(int token)</CODE> <BR> Expect a given token; fail if the current token is different.</TD> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> <CODE>protected <A HREF="../../../../../net/sf/saxon/expr/Binding.html" title="interface in net.sf.saxon.expr">Binding</A></CODE></FONT></TD> <TD><CODE><B><A HREF="../../../../../net/sf/saxon/expr/parser/ExpressionParser.html#findRangeVariable(net.sf.saxon.om.StructuredQName)">findRangeVariable</A></B>(<A HREF="../../../../../net/sf/saxon/om/StructuredQName.html" title="class in net.sf.saxon.om">StructuredQName</A> qName)</CODE> <BR> Locate a range variable with a given name.</TD> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> <CODE> <A HREF="../../../../../net/sf/saxon/expr/parser/CodeInjector.html" title="interface in net.sf.saxon.expr.parser">CodeInjector</A></CODE></FONT></TD> <TD><CODE><B><A HREF="../../../../../net/sf/saxon/expr/parser/ExpressionParser.html#getCodeInjector()">getCodeInjector</A></B>()</CODE> <BR> Set a CodeInjector which can be used to modify or wrap expressions on the tree as the expression is parsed and the tree is constructed.</TD> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> <CODE> <A HREF="../../../../../net/sf/saxon/expr/Container.html" title="interface in net.sf.saxon.expr">Container</A></CODE></FONT></TD> <TD><CODE><B><A HREF="../../../../../net/sf/saxon/expr/parser/ExpressionParser.html#getDefaultContainer()">getDefaultContainer</A></B>()</CODE> <BR> Get the default container for newly constructed expressions</TD> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> <CODE>protected <A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A></CODE></FONT></TD> <TD><CODE><B><A HREF="../../../../../net/sf/saxon/expr/parser/ExpressionParser.html#getLanguage()">getLanguage</A></B>()</CODE> <BR> Get the current language (XPath or XQuery)</TD> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> <CODE> <A HREF="../../../../../net/sf/saxon/om/NameChecker.html" title="class in net.sf.saxon.om">NameChecker</A></CODE></FONT></TD> <TD><CODE><B><A HREF="../../../../../net/sf/saxon/expr/parser/ExpressionParser.html#getNameChecker()">getNameChecker</A></B>()</CODE> <BR> Get the name checker used by this parser</TD> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> <CODE> <A HREF="http://download.oracle.com/javase/6/docs/api/java/util/Stack.html?is-external=true" title="class or interface in java.util">Stack</A><<A HREF="../../../../../net/sf/saxon/expr/Binding.html" title="interface in net.sf.saxon.expr">Binding</A>></CODE></FONT></TD> <TD><CODE><B><A HREF="../../../../../net/sf/saxon/expr/parser/ExpressionParser.html#getRangeVariables()">getRangeVariables</A></B>()</CODE> <BR> Get the stack of in-scope range variables</TD> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> <CODE> <A HREF="../../../../../net/sf/saxon/expr/StaticContext.html" title="interface in net.sf.saxon.expr">StaticContext</A></CODE></FONT></TD> <TD><CODE><B><A HREF="../../../../../net/sf/saxon/expr/parser/ExpressionParser.html#getStaticContext()">getStaticContext</A></B>()</CODE> <BR> Get the static context used by this expression parser</TD> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> <CODE> <A HREF="../../../../../net/sf/saxon/expr/parser/Tokenizer.html" title="class in net.sf.saxon.expr.parser">Tokenizer</A></CODE></FONT></TD> <TD><CODE><B><A HREF="../../../../../net/sf/saxon/expr/parser/ExpressionParser.html#getTokenizer()">getTokenizer</A></B>()</CODE> <BR> Get the tokenizer (the lexical analyzer)</TD> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> <CODE> void</CODE></FONT></TD> <TD><CODE><B><A HREF="../../../../../net/sf/saxon/expr/parser/ExpressionParser.html#grumble(java.lang.String)">grumble</A></B>(<A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A> message)</CODE> <BR> Report a syntax error (a static error with error code XP0003)</TD> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> <CODE> void</CODE></FONT></TD> <TD><CODE><B><A HREF="../../../../../net/sf/saxon/expr/parser/ExpressionParser.html#grumble(java.lang.String, java.lang.String)">grumble</A></B>(<A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A> message, <A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A> errorCode)</CODE> <BR> Report a static error</TD> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> <CODE> void</CODE></FONT></TD> <TD><CODE><B><A HREF="../../../../../net/sf/saxon/expr/parser/ExpressionParser.html#grumble(java.lang.String, java.lang.String, int)">grumble</A></B>(<A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A> message, <A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A> errorCode, int offset)</CODE> <BR> Report a static error, with location information</TD> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> <CODE>protected void</CODE></FONT></TD> <TD><CODE><B><A HREF="../../../../../net/sf/saxon/expr/parser/ExpressionParser.html#grumble(java.lang.String, net.sf.saxon.om.StructuredQName, int)">grumble</A></B>(<A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A> message, <A HREF="../../../../../net/sf/saxon/om/StructuredQName.html" title="class in net.sf.saxon.om">StructuredQName</A> errorCode, int offset)</CODE> <BR> Report a static error</TD> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> <CODE> void</CODE></FONT></TD> <TD><CODE><B><A HREF="../../../../../net/sf/saxon/expr/parser/ExpressionParser.html#grumble(net.sf.saxon.trans.XPathException)">grumble</A></B>(<A HREF="../../../../../net/sf/saxon/trans/XPathException.html" title="class in net.sf.saxon.trans">XPathException</A> error)</CODE> <BR> </TD> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> <CODE>protected boolean</CODE></FONT></TD> <TD><CODE><B><A HREF="../../../../../net/sf/saxon/expr/parser/ExpressionParser.html#isKeyword(java.lang.String)">isKeyword</A></B>(<A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A> s)</CODE> <BR> Test whether the current token is a given keyword.</TD> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> <CODE>protected boolean</CODE></FONT></TD> <TD><CODE><B><A HREF="../../../../../net/sf/saxon/expr/parser/ExpressionParser.html#isNamespaceTestAllowed()">isNamespaceTestAllowed</A></B>()</CODE> <BR> Ask whether the syntax namespace-node() is allowed in a node kind test.</TD> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> <CODE>protected <A HREF="../../../../../net/sf/saxon/expr/Expression.html" title="class in net.sf.saxon.expr">Expression</A></CODE></FONT></TD> <TD><CODE><B><A HREF="../../../../../net/sf/saxon/expr/parser/ExpressionParser.html#makeCurriedFunction(int, net.sf.saxon.om.StructuredQName, net.sf.saxon.expr.Expression[], net.sf.saxon.expr.sort.IntSet)">makeCurriedFunction</A></B>(int offset, <A HREF="../../../../../net/sf/saxon/om/StructuredQName.html" title="class in net.sf.saxon.om">StructuredQName</A> name, <A HREF="../../../../../net/sf/saxon/expr/Expression.html" title="class in net.sf.saxon.expr">Expression</A>[] args, <A HREF="../../../../../net/sf/saxon/expr/sort/IntSet.html" title="interface in net.sf.saxon.expr.sort">IntSet</A> placeMarkers)</CODE> <BR> Process a function call in which one or more of the argument positions are represented as "?" placemarkers (indicating partial application or currying)</TD> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> <CODE> <A HREF="../../../../../net/sf/saxon/pattern/LocalNameTest.html" title="class in net.sf.saxon.pattern">LocalNameTest</A></CODE></FONT></TD> <TD><CODE><B><A HREF="../../../../../net/sf/saxon/expr/parser/ExpressionParser.html#makeLocalNameTest(short, java.lang.String)">makeLocalNameTest</A></B>(short nodeType, <A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A> localName)</CODE> <BR> Make a LocalNameTest (*:name)</TD> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> <CODE> int</CODE></FONT></TD> <TD><CODE><B><A HREF="../../../../../net/sf/saxon/expr/parser/ExpressionParser.html#makeNameCode(java.lang.String, boolean)">makeNameCode</A></B>(<A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A> qname, boolean useDefault)</CODE> <BR> Make a NameCode, using the static context for namespace resolution</TD> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> <CODE> int</CODE></FONT></TD> <TD><CODE><B><A HREF="../../../../../net/sf/saxon/expr/parser/ExpressionParser.html#makeNameCodeSilently(java.lang.String, boolean)">makeNameCodeSilently</A></B>(<A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A> qname, boolean useDefault)</CODE> <BR> Make a NameCode, using the static context for namespace resolution.</TD> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> <CODE> <A HREF="../../../../../net/sf/saxon/pattern/NamespaceTest.html" title="class in net.sf.saxon.pattern">NamespaceTest</A></CODE></FONT></TD> <TD><CODE><B><A HREF="../../../../../net/sf/saxon/expr/parser/ExpressionParser.html#makeNamespaceTest(short, java.lang.String)">makeNamespaceTest</A></B>(short nodeType, <A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A> prefix)</CODE> <BR> Make a NamespaceTest (name:*)</TD> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> <CODE> <A HREF="../../../../../net/sf/saxon/pattern/NameTest.html" title="class in net.sf.saxon.pattern">NameTest</A></CODE></FONT></TD> <TD><CODE><B><A HREF="../../../../../net/sf/saxon/expr/parser/ExpressionParser.html#makeNameTest(short, java.lang.String, boolean)">makeNameTest</A></B>(short nodeType, <A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A> qname, boolean useDefault)</CODE> <BR> Make a NameTest, using the static context for namespace resolution</TD> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> <CODE> <A HREF="../../../../../net/sf/saxon/om/NodeName.html" title="interface in net.sf.saxon.om">NodeName</A></CODE></FONT></TD> <TD><CODE><B><A HREF="../../../../../net/sf/saxon/expr/parser/ExpressionParser.html#makeNodeName(java.lang.String, boolean)">makeNodeName</A></B>(<A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A> qname, boolean useDefault)</CODE> <BR> Make a FingerprintedQName, using the static context for namespace resolution</TD> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> <CODE>protected <A HREF="../../../../../net/sf/saxon/expr/Literal.html" title="class in net.sf.saxon.expr">Literal</A></CODE></FONT></TD> <TD><CODE><B><A HREF="../../../../../net/sf/saxon/expr/parser/ExpressionParser.html#makeStringLiteral(java.lang.String)">makeStringLiteral</A></B>(<A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A> currentTokenValue)</CODE> <BR> Method to make a string literal from a token identified as a string literal.</TD> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> <CODE> <A HREF="../../../../../net/sf/saxon/om/StructuredQName.html" title="class in net.sf.saxon.om">StructuredQName</A></CODE></FONT></TD> <TD><CODE><B><A HREF="../../../../../net/sf/saxon/expr/parser/ExpressionParser.html#makeStructuredQName(java.lang.String, boolean)">makeStructuredQName</A></B>(<A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A> qname, boolean useDefault)</CODE> <BR> Make a Structured QName, using the static context for namespace resolution</TD> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> <CODE> <A HREF="../../../../../net/sf/saxon/expr/Expression.html" title="class in net.sf.saxon.expr">Expression</A></CODE></FONT></TD> <TD><CODE><B><A HREF="../../../../../net/sf/saxon/expr/parser/ExpressionParser.html#makeTracer(int, net.sf.saxon.expr.Expression, int, net.sf.saxon.om.StructuredQName)">makeTracer</A></B>(int startOffset, <A HREF="../../../../../net/sf/saxon/expr/Expression.html" title="class in net.sf.saxon.expr">Expression</A> exp, int construct, <A HREF="../../../../../net/sf/saxon/om/StructuredQName.html" title="class in net.sf.saxon.om">StructuredQName</A> qName)</CODE> <BR> If tracing, wrap an expression in a trace instruction</TD> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> <CODE> void</CODE></FONT></TD> <TD><CODE><B><A HREF="../../../../../net/sf/saxon/expr/parser/ExpressionParser.html#nextToken()">nextToken</A></B>()</CODE> <BR> Read the next token, catching any exception thrown by the tokenizer</TD> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> <CODE>protected <A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A></CODE></FONT></TD> <TD><CODE><B><A HREF="../../../../../net/sf/saxon/expr/parser/ExpressionParser.html#normalizeEQName(java.lang.String)">normalizeEQName</A></B>(<A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A> s)</CODE> <BR> Normalize an EQName.</TD> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> <CODE> <A HREF="../../../../../net/sf/saxon/expr/Expression.html" title="class in net.sf.saxon.expr">Expression</A></CODE></FONT></TD> <TD><CODE><B><A HREF="../../../../../net/sf/saxon/expr/parser/ExpressionParser.html#parse(java.lang.String, int, int, int, net.sf.saxon.expr.StaticContext)">parse</A></B>(<A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A> expression, int start, int terminator, int lineNumber, <A HREF="../../../../../net/sf/saxon/expr/StaticContext.html" title="interface in net.sf.saxon.expr">StaticContext</A> env)</CODE> <BR> Parse a string representing an expression.</TD> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> <CODE>protected <A HREF="../../../../../net/sf/saxon/expr/Expression.html" title="class in net.sf.saxon.expr">Expression</A></CODE></FONT></TD> <TD><CODE><B><A HREF="../../../../../net/sf/saxon/expr/parser/ExpressionParser.html#parseBasicStep(boolean)">parseBasicStep</A></B>(boolean firstInPattern)</CODE> <BR> Parse a basic step expression (without the predicates)</TD> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> <CODE> <A HREF="../../../../../net/sf/saxon/expr/Expression.html" title="class in net.sf.saxon.expr">Expression</A></CODE></FONT></TD> <TD><CODE><B><A HREF="../../../../../net/sf/saxon/expr/parser/ExpressionParser.html#parseBinaryExpression(net.sf.saxon.expr.Expression, int)">parseBinaryExpression</A></B>(<A HREF="../../../../../net/sf/saxon/expr/Expression.html" title="class in net.sf.saxon.expr">Expression</A> lhs, int minPrecedence)</CODE> <BR> Parse a binary expression, using operator precedence parsing.</TD> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> <CODE>protected <A HREF="../../../../../net/sf/saxon/expr/Expression.html" title="class in net.sf.saxon.expr">Expression</A></CODE></FONT></TD> <TD><CODE><B><A HREF="../../../../../net/sf/saxon/expr/parser/ExpressionParser.html#parseConstructor()">parseConstructor</A></B>()</CODE> <BR> Parse a node constructor.</TD> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> <CODE>protected <A HREF="../../../../../net/sf/saxon/expr/Expression.html" title="class in net.sf.saxon.expr">Expression</A></CODE></FONT></TD> <TD><CODE><B><A HREF="../../../../../net/sf/saxon/expr/parser/ExpressionParser.html#parseDynamicFunctionCall(net.sf.saxon.expr.Expression)">parseDynamicFunctionCall</A></B>(<A HREF="../../../../../net/sf/saxon/expr/Expression.html" title="class in net.sf.saxon.expr">Expression</A> functionItem)</CODE> <BR> Parse a dynamic function call</TD> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> <CODE> <A HREF="../../../../../net/sf/saxon/expr/Expression.html" title="class in net.sf.saxon.expr">Expression</A></CODE></FONT></TD> <TD><CODE><B><A HREF="../../../../../net/sf/saxon/expr/parser/ExpressionParser.html#parseExpression()">parseExpression</A></B>()</CODE> <BR> Parse a top-level Expression: ExprSingle ( ',' ExprSingle )*</TD> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> <CODE> <A HREF="../../../../../net/sf/saxon/expr/Expression.html" title="class in net.sf.saxon.expr">Expression</A></CODE></FONT></TD> <TD><CODE><B><A HREF="../../../../../net/sf/saxon/expr/parser/ExpressionParser.html#parseExprSingle()">parseExprSingle</A></B>()</CODE> <BR> Parse an ExprSingle</TD> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> <CODE>protected <A HREF="../../../../../net/sf/saxon/expr/Expression.html" title="class in net.sf.saxon.expr">Expression</A></CODE></FONT></TD> <TD><CODE><B><A HREF="../../../../../net/sf/saxon/expr/parser/ExpressionParser.html#parseExtensionExpression()">parseExtensionExpression</A></B>()</CODE> <BR> Parse an Extension Expression This construct is XQuery-only, so the XPath version of this method throws an error unconditionally</TD> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> <CODE>protected <A HREF="../../../../../net/sf/saxon/expr/Expression.html" title="class in net.sf.saxon.expr">Expression</A></CODE></FONT></TD> <TD><CODE><B><A HREF="../../../../../net/sf/saxon/expr/parser/ExpressionParser.html#parseFLWORExpression()">parseFLWORExpression</A></B>()</CODE> <BR> Parse a FOR or LET expression: for $x in expr (',' $y in expr)* 'return' expr let $x := expr (', $y := expr)* 'return' expr This version of the method handles the subset of the FLWOR syntax allowed in XPath</TD> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> <CODE> <A HREF="../../../../../net/sf/saxon/expr/Expression.html" title="class in net.sf.saxon.expr">Expression</A></CODE></FONT></TD> <TD><CODE><B><A HREF="../../../../../net/sf/saxon/expr/parser/ExpressionParser.html#parseFunctionArgument()">parseFunctionArgument</A></B>()</CODE> <BR> Parse an argument to a function call.</TD> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> <CODE>protected <A HREF="../../../../../net/sf/saxon/expr/Expression.html" title="class in net.sf.saxon.expr">Expression</A></CODE></FONT></TD> <TD><CODE><B><A HREF="../../../../../net/sf/saxon/expr/parser/ExpressionParser.html#parseFunctionCall()">parseFunctionCall</A></B>()</CODE> <BR> Parse a function call.</TD> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> <CODE>protected <A HREF="../../../../../net/sf/saxon/type/ItemType.html" title="interface in net.sf.saxon.type">ItemType</A></CODE></FONT></TD> <TD><CODE><B><A HREF="../../../../../net/sf/saxon/expr/parser/ExpressionParser.html#parseFunctionItemType()">parseFunctionItemType</A></B>()</CODE> <BR> Get the item type used for function items (XPath 3.0 higher order functions)</TD> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> <CODE>protected <A HREF="../../../../../net/sf/saxon/expr/Expression.html" title="class in net.sf.saxon.expr">Expression</A></CODE></FONT></TD> <TD><CODE><B><A HREF="../../../../../net/sf/saxon/expr/parser/ExpressionParser.html#parseInlineFunction()">parseInlineFunction</A></B>()</CODE> <BR> Parse an inline function "function" "(" ParamList? ")" ("as" SequenceType)? EnclosedExpr On entry, "function (" has already been read</TD> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> <CODE> <A HREF="../../../../../net/sf/saxon/type/ItemType.html" title="interface in net.sf.saxon.type">ItemType</A></CODE></FONT></TD> <TD><CODE><B><A HREF="../../../../../net/sf/saxon/expr/parser/ExpressionParser.html#parseItemType()">parseItemType</A></B>()</CODE> <BR> Parse an ItemType within a SequenceType</TD> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> <CODE>protected <A HREF="../../../../../net/sf/saxon/expr/Expression.html" title="class in net.sf.saxon.expr">Expression</A></CODE></FONT></TD> <TD><CODE><B><A HREF="../../../../../net/sf/saxon/expr/parser/ExpressionParser.html#parseLiteralFunctionItem()">parseLiteralFunctionItem</A></B>()</CODE> <BR> Parse a literal function item (introduced in XQuery 1.1) Syntax: QName # integer The QName and # have already been read</TD> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> <CODE>protected <A HREF="../../../../../net/sf/saxon/expr/Expression.html" title="class in net.sf.saxon.expr">Expression</A></CODE></FONT></TD> <TD><CODE><B><A HREF="../../../../../net/sf/saxon/expr/parser/ExpressionParser.html#parseMapExpression()">parseMapExpression</A></B>()</CODE> <BR> Parse a map expression.</TD> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> <CODE>protected <A HREF="../../../../../net/sf/saxon/type/ItemType.html" title="interface in net.sf.saxon.type">ItemType</A></CODE></FONT></TD> <TD><CODE><B><A HREF="../../../../../net/sf/saxon/expr/parser/ExpressionParser.html#parseMapItemType()">parseMapItemType</A></B>()</CODE> <BR> Get the item type used for map items (XPath 3.0)</TD> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> <CODE>protected <A HREF="../../../../../net/sf/saxon/pattern/NodeTest.html" title="class in net.sf.saxon.pattern">NodeTest</A></CODE></FONT></TD> <TD><CODE><B><A HREF="../../../../../net/sf/saxon/expr/parser/ExpressionParser.html#parseNodeTest(short)">parseNodeTest</A></B>(short nodeType)</CODE> <BR> Parse a NodeTest.</TD> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> <CODE>protected <A HREF="../../../../../net/sf/saxon/expr/Expression.html" title="class in net.sf.saxon.expr">Expression</A></CODE></FONT></TD> <TD><CODE><B><A HREF="../../../../../net/sf/saxon/expr/parser/ExpressionParser.html#parseNumericLiteral()">parseNumericLiteral</A></B>()</CODE> <BR> </TD> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> <CODE>protected <A HREF="../../../../../net/sf/saxon/type/ItemType.html" title="interface in net.sf.saxon.type">ItemType</A></CODE></FONT></TD> <TD><CODE><B><A HREF="../../../../../net/sf/saxon/expr/parser/ExpressionParser.html#parseParenthesizedItemType()">parseParenthesizedItemType</A></B>()</CODE> <BR> Parse a parenthesized item type (XPath 3.0)</TD> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> <CODE>protected <A HREF="../../../../../net/sf/saxon/expr/Expression.html" title="class in net.sf.saxon.expr">Expression</A></CODE></FONT></TD> <TD><CODE><B><A HREF="../../../../../net/sf/saxon/expr/parser/ExpressionParser.html#parsePathExpression()">parsePathExpression</A></B>()</CODE> <BR> Parse a PathExpresssion.</TD> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> <CODE>protected <A HREF="../../../../../net/sf/saxon/expr/Expression.html" title="class in net.sf.saxon.expr">Expression</A></CODE></FONT></TD> <TD><CODE><B><A HREF="../../../../../net/sf/saxon/expr/parser/ExpressionParser.html#parsePredicate()">parsePredicate</A></B>()</CODE> <BR> Parse the expression within a predicate.</TD> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> <CODE>protected <A HREF="../../../../../net/sf/saxon/expr/Expression.html" title="class in net.sf.saxon.expr">Expression</A></CODE></FONT></TD> <TD><CODE><B><A HREF="../../../../../net/sf/saxon/expr/parser/ExpressionParser.html#parseRelativePath()">parseRelativePath</A></B>()</CODE> <BR> Parse a relative path (a sequence of steps).</TD> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> <CODE>protected <A HREF="../../../../../net/sf/saxon/expr/Expression.html" title="class in net.sf.saxon.expr">Expression</A></CODE></FONT></TD> <TD><CODE><B><A HREF="../../../../../net/sf/saxon/expr/parser/ExpressionParser.html#parseRemainingPath(net.sf.saxon.expr.Expression)">parseRemainingPath</A></B>(<A HREF="../../../../../net/sf/saxon/expr/Expression.html" title="class in net.sf.saxon.expr">Expression</A> start)</CODE> <BR> Parse the remaining steps of an absolute path expression (one starting in "/" or "//").</TD> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> <CODE> <A HREF="../../../../../net/sf/saxon/value/SequenceType.html" title="class in net.sf.saxon.value">SequenceType</A></CODE></FONT></TD> <TD><CODE><B><A HREF="../../../../../net/sf/saxon/expr/parser/ExpressionParser.html#parseSequenceType()">parseSequenceType</A></B>()</CODE> <BR> Parse the sequence type production.</TD> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> <CODE> <A HREF="../../../../../net/sf/saxon/value/SequenceType.html" title="class in net.sf.saxon.value">SequenceType</A></CODE></FONT></TD> <TD><CODE><B><A HREF="../../../../../net/sf/saxon/expr/parser/ExpressionParser.html#parseSequenceType(java.lang.String, net.sf.saxon.expr.StaticContext)">parseSequenceType</A></B>(<A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A> input, <A HREF="../../../../../net/sf/saxon/expr/StaticContext.html" title="interface in net.sf.saxon.expr">StaticContext</A> env)</CODE> <BR> Parse a string representing a sequence type</TD> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> <CODE>protected <A HREF="../../../../../net/sf/saxon/expr/Expression.html" title="class in net.sf.saxon.expr">Expression</A></CODE></FONT></TD> <TD><CODE><B><A HREF="../../../../../net/sf/saxon/expr/parser/ExpressionParser.html#parseStepExpression(boolean)">parseStepExpression</A></B>(boolean firstInPattern)</CODE> <BR> Parse a step (including an optional sequence of predicates)</TD> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> <CODE>protected <A HREF="../../../../../net/sf/saxon/expr/Expression.html" title="class in net.sf.saxon.expr">Expression</A></CODE></FONT></TD> <TD><CODE><B><A HREF="../../../../../net/sf/saxon/expr/parser/ExpressionParser.html#parseStringLiteral()">parseStringLiteral</A></B>()</CODE> <BR> </TD> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> <CODE>protected <A HREF="../../../../../net/sf/saxon/expr/Expression.html" title="class in net.sf.saxon.expr">Expression</A></CODE></FONT></TD> <TD><CODE><B><A HREF="../../../../../net/sf/saxon/expr/parser/ExpressionParser.html#parseSwitchExpression()">parseSwitchExpression</A></B>()</CODE> <BR> Parse a Switch Expression.</TD> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> <CODE>protected <A HREF="../../../../../net/sf/saxon/expr/Expression.html" title="class in net.sf.saxon.expr">Expression</A></CODE></FONT></TD> <TD><CODE><B><A HREF="../../../../../net/sf/saxon/expr/parser/ExpressionParser.html#parseTryCatchExpression()">parseTryCatchExpression</A></B>()</CODE> <BR> Parse a try/catch Expression This construct is XQuery-1.1 only, so the XPath version of this method throws an error unconditionally</TD> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> <CODE>protected <A HREF="../../../../../net/sf/saxon/expr/Expression.html" title="class in net.sf.saxon.expr">Expression</A></CODE></FONT></TD> <TD><CODE><B><A HREF="../../../../../net/sf/saxon/expr/parser/ExpressionParser.html#parseTypePattern()">parseTypePattern</A></B>()</CODE> <BR> Parse a Type Pattern This construct is used only in XSLT patterns, so the XPath version of this method throws an error unconditionally</TD> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> <CODE>protected <A HREF="../../../../../net/sf/saxon/expr/Expression.html" title="class in net.sf.saxon.expr">Expression</A></CODE></FONT></TD> <TD><CODE><B><A HREF="../../../../../net/sf/saxon/expr/parser/ExpressionParser.html#parseTypeswitchExpression()">parseTypeswitchExpression</A></B>()</CODE> <BR> Parse a Typeswitch Expression.</TD> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> <CODE>protected <A HREF="../../../../../net/sf/saxon/expr/Expression.html" title="class in net.sf.saxon.expr">Expression</A></CODE></FONT></TD> <TD><CODE><B><A HREF="../../../../../net/sf/saxon/expr/parser/ExpressionParser.html#parseValidateExpression()">parseValidateExpression</A></B>()</CODE> <BR> Parse a Validate Expression.</TD> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> <CODE>protected <A HREF="../../../../../net/sf/saxon/expr/Expression.html" title="class in net.sf.saxon.expr">Expression</A></CODE></FONT></TD> <TD><CODE><B><A HREF="../../../../../net/sf/saxon/expr/parser/ExpressionParser.html#parseVariableReference()">parseVariableReference</A></B>()</CODE> <BR> </TD> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> <CODE> <A HREF="../../../../../net/sf/saxon/expr/Expression.html" title="class in net.sf.saxon.expr">Expression</A></CODE></FONT></TD> <TD><CODE><B><A HREF="../../../../../net/sf/saxon/expr/parser/ExpressionParser.html#reportMissingFunction(int, net.sf.saxon.om.StructuredQName, net.sf.saxon.expr.Expression[])">reportMissingFunction</A></B>(int offset, <A HREF="../../../../../net/sf/saxon/om/StructuredQName.html" title="class in net.sf.saxon.om">StructuredQName</A> functionName, <A HREF="../../../../../net/sf/saxon/expr/Expression.html" title="class in net.sf.saxon.expr">Expression</A>[] arguments)</CODE> <BR> </TD> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> <CODE>protected <A HREF="../../../../../net/sf/saxon/om/StructuredQName.html" title="class in net.sf.saxon.om">StructuredQName</A></CODE></FONT></TD> <TD><CODE><B><A HREF="../../../../../net/sf/saxon/expr/parser/ExpressionParser.html#resolveFunctionName(java.lang.String)">resolveFunctionName</A></B>(<A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A> fname)</CODE> <BR> Interpret a function name, returning it as a resolved QName</TD> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> <CODE> void</CODE></FONT></TD> <TD><CODE><B><A HREF="../../../../../net/sf/saxon/expr/parser/ExpressionParser.html#setCodeInjector(net.sf.saxon.expr.parser.CodeInjector)">setCodeInjector</A></B>(<A HREF="../../../../../net/sf/saxon/expr/parser/CodeInjector.html" title="interface in net.sf.saxon.expr.parser">CodeInjector</A> injector)</CODE> <BR> Set a CodeInjector which can be used to modify or wrap expressions on the tree as the expression is parsed and the tree is constructed.</TD> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> <CODE> void</CODE></FONT></TD> <TD><CODE><B><A HREF="../../../../../net/sf/saxon/expr/parser/ExpressionParser.html#setDefaultContainer(net.sf.saxon.expr.Container)">setDefaultContainer</A></B>(<A HREF="../../../../../net/sf/saxon/expr/Container.html" title="interface in net.sf.saxon.expr">Container</A> container)</CODE> <BR> Set the default container for newly constructed expressions</TD> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> <CODE> void</CODE></FONT></TD> <TD><CODE><B><A HREF="../../../../../net/sf/saxon/expr/parser/ExpressionParser.html#setLanguage(int, net.sf.saxon.value.DecimalValue)">setLanguage</A></B>(int language, <A HREF="../../../../../net/sf/saxon/value/DecimalValue.html" title="class in net.sf.saxon.value">DecimalValue</A> version)</CODE> <BR> Set the current language (XPath or XQuery, XSLT Pattern, or SequenceType)</TD> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> <CODE>protected void</CODE></FONT></TD> <TD><CODE><B><A HREF="../../../../../net/sf/saxon/expr/parser/ExpressionParser.html#setLocation(net.sf.saxon.expr.Expression)">setLocation</A></B>(<A HREF="../../../../../net/sf/saxon/expr/Expression.html" title="class in net.sf.saxon.expr">Expression</A> exp)</CODE> <BR> Set location information on an expression.</TD> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> <CODE> void</CODE></FONT></TD> <TD><CODE><B><A HREF="../../../../../net/sf/saxon/expr/parser/ExpressionParser.html#setLocation(net.sf.saxon.expr.Expression, int)">setLocation</A></B>(<A HREF="../../../../../net/sf/saxon/expr/Expression.html" title="class in net.sf.saxon.expr">Expression</A> exp, int offset)</CODE> <BR> Set location information on an expression.</TD> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> <CODE> void</CODE></FONT></TD> <TD><CODE><B><A HREF="../../../../../net/sf/saxon/expr/parser/ExpressionParser.html#setRangeVariables(java.util.Stack)">setRangeVariables</A></B>(<A HREF="http://download.oracle.com/javase/6/docs/api/java/util/Stack.html?is-external=true" title="class or interface in java.util">Stack</A><<A HREF="../../../../../net/sf/saxon/expr/Binding.html" title="interface in net.sf.saxon.expr">Binding</A>> variables)</CODE> <BR> Set a new stack of in-scope range variables</TD> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> <CODE> void</CODE></FONT></TD> <TD><CODE><B><A HREF="../../../../../net/sf/saxon/expr/parser/ExpressionParser.html#setRangeVariableStack(java.util.Stack)">setRangeVariableStack</A></B>(<A HREF="http://download.oracle.com/javase/6/docs/api/java/util/Stack.html?is-external=true" title="class or interface in java.util">Stack</A><<A HREF="../../../../../net/sf/saxon/expr/Binding.html" title="interface in net.sf.saxon.expr">Binding</A>> stack)</CODE> <BR> Set the range variable stack.</TD> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> <CODE> void</CODE></FONT></TD> <TD><CODE><B><A HREF="../../../../../net/sf/saxon/expr/parser/ExpressionParser.html#setScanOnly(boolean)">setScanOnly</A></B>(boolean scanOnly)</CODE> <BR> Set that we are parsing in "scan only"</TD> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> <CODE> void</CODE></FONT></TD> <TD><CODE><B><A HREF="../../../../../net/sf/saxon/expr/parser/ExpressionParser.html#undeclareRangeVariable()">undeclareRangeVariable</A></B>()</CODE> <BR> Note when the most recently declared range variable has gone out of scope</TD> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> <CODE>protected void</CODE></FONT></TD> <TD><CODE><B><A HREF="../../../../../net/sf/saxon/expr/parser/ExpressionParser.html#warning(java.lang.String)">warning</A></B>(<A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A> message)</CODE> <BR> Output a warning message</TD> </TR> </TABLE> <A NAME="methods_inherited_from_class_java.lang.Object"><!-- --></A> <TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY=""> <TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor"> <TH ALIGN="left"><B>Methods inherited from class java.lang.<A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</A></B></TH> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD><CODE><A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#clone()" title="class or interface in java.lang">clone</A>, <A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#equals(java.lang.Object)" title="class or interface in java.lang">equals</A>, <A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#finalize()" title="class or interface in java.lang">finalize</A>, <A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#getClass()" title="class or interface in java.lang">getClass</A>, <A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#hashCode()" title="class or interface in java.lang">hashCode</A>, <A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#notify()" title="class or interface in java.lang">notify</A>, <A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#notifyAll()" title="class or interface in java.lang">notifyAll</A>, <A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#toString()" title="class or interface in java.lang">toString</A>, <A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#wait()" title="class or interface in java.lang">wait</A>, <A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#wait(long)" title="class or interface in java.lang">wait</A>, <A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#wait(long, int)" title="class or interface in java.lang">wait</A></CODE></TD> </TR> </TABLE> <P> <!-- ============ FIELD DETAIL =========== --> <A NAME="field_detail"><!-- --></A> <TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY=""> <TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor"> <TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2"> <B>Field Detail</B></FONT></TH> </TR> </TABLE> <A NAME="t"><!-- --></A><H3> t</H3> <PRE> protected <A HREF="../../../../../net/sf/saxon/expr/parser/Tokenizer.html" title="class in net.sf.saxon.expr.parser">Tokenizer</A> <B>t</B></PRE> <DL> <DL> </DL> </DL> <HR> <A NAME="env"><!-- --></A><H3> env</H3> <PRE> protected <A HREF="../../../../../net/sf/saxon/expr/StaticContext.html" title="interface in net.sf.saxon.expr">StaticContext</A> <B>env</B></PRE> <DL> <DL> </DL> </DL> <HR> <A NAME="rangeVariables"><!-- --></A><H3> rangeVariables</H3> <PRE> protected <A HREF="http://download.oracle.com/javase/6/docs/api/java/util/Stack.html?is-external=true" title="class or interface in java.util">Stack</A><<A HREF="../../../../../net/sf/saxon/expr/Binding.html" title="interface in net.sf.saxon.expr">Binding</A>> <B>rangeVariables</B></PRE> <DL> <DL> </DL> </DL> <HR> <A NAME="defaultContainer"><!-- --></A><H3> defaultContainer</H3> <PRE> protected <A HREF="../../../../../net/sf/saxon/expr/Container.html" title="interface in net.sf.saxon.expr">Container</A> <B>defaultContainer</B></PRE> <DL> <DL> </DL> </DL> <HR> <A NAME="nameChecker"><!-- --></A><H3> nameChecker</H3> <PRE> protected <A HREF="../../../../../net/sf/saxon/om/NameChecker.html" title="class in net.sf.saxon.om">NameChecker</A> <B>nameChecker</B></PRE> <DL> <DL> </DL> </DL> <HR> <A NAME="allowXPath30Syntax"><!-- --></A><H3> allowXPath30Syntax</H3> <PRE> protected boolean <B>allowXPath30Syntax</B></PRE> <DL> <DL> </DL> </DL> <HR> <A NAME="scanOnly"><!-- --></A><H3> scanOnly</H3> <PRE> protected boolean <B>scanOnly</B></PRE> <DL> <DL> </DL> </DL> <HR> <A NAME="language"><!-- --></A><H3> language</H3> <PRE> protected int <B>language</B></PRE> <DL> <DL> </DL> </DL> <HR> <A NAME="XPATH"><!-- --></A><H3> XPATH</H3> <PRE> public static final int <B>XPATH</B></PRE> <DL> <DL> <DT><B>See Also:</B><DD><A HREF="../../../../../constant-values.html#net.sf.saxon.expr.parser.ExpressionParser.XPATH">Constant Field Values</A></DL> </DL> <HR> <A NAME="XSLT_PATTERN"><!-- --></A><H3> XSLT_PATTERN</H3> <PRE> public static final int <B>XSLT_PATTERN</B></PRE> <DL> <DL> <DT><B>See Also:</B><DD><A HREF="../../../../../constant-values.html#net.sf.saxon.expr.parser.ExpressionParser.XSLT_PATTERN">Constant Field Values</A></DL> </DL> <HR> <A NAME="SEQUENCE_TYPE"><!-- --></A><H3> SEQUENCE_TYPE</H3> <PRE> public static final int <B>SEQUENCE_TYPE</B></PRE> <DL> <DL> <DT><B>See Also:</B><DD><A HREF="../../../../../constant-values.html#net.sf.saxon.expr.parser.ExpressionParser.SEQUENCE_TYPE">Constant Field Values</A></DL> </DL> <HR> <A NAME="XQUERY"><!-- --></A><H3> XQUERY</H3> <PRE> public static final int <B>XQUERY</B></PRE> <DL> <DL> <DT><B>See Also:</B><DD><A HREF="../../../../../constant-values.html#net.sf.saxon.expr.parser.ExpressionParser.XQUERY">Constant Field Values</A></DL> </DL> <HR> <A NAME="languageVersion"><!-- --></A><H3> languageVersion</H3> <PRE> protected <A HREF="../../../../../net/sf/saxon/value/DecimalValue.html" title="class in net.sf.saxon.value">DecimalValue</A> <B>languageVersion</B></PRE> <DL> <DL> </DL> </DL> <!-- ========= CONSTRUCTOR DETAIL ======== --> <A NAME="constructor_detail"><!-- --></A> <TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY=""> <TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor"> <TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2"> <B>Constructor Detail</B></FONT></TH> </TR> </TABLE> <A NAME="ExpressionParser()"><!-- --></A><H3> ExpressionParser</H3> <PRE> public <B>ExpressionParser</B>()</PRE> <DL> <DD>Create an expression parser <P> </DL> <!-- ============ METHOD DETAIL ========== --> <A NAME="method_detail"><!-- --></A> <TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY=""> <TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor"> <TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2"> <B>Method Detail</B></FONT></TH> </TR> </TABLE> <A NAME="setCodeInjector(net.sf.saxon.expr.parser.CodeInjector)"><!-- --></A><H3> setCodeInjector</H3> <PRE> public void <B>setCodeInjector</B>(<A HREF="../../../../../net/sf/saxon/expr/parser/CodeInjector.html" title="interface in net.sf.saxon.expr.parser">CodeInjector</A> injector)</PRE> <DL> <DD>Set a CodeInjector which can be used to modify or wrap expressions on the tree as the expression is parsed and the tree is constructed. This is typically used to add tracing code. <P> <DD><DL> <DT><B>Parameters:</B><DD><CODE>injector</CODE> - the code injector to be used</DL> </DD> </DL> <HR> <A NAME="getCodeInjector()"><!-- --></A><H3> getCodeInjector</H3> <PRE> public <A HREF="../../../../../net/sf/saxon/expr/parser/CodeInjector.html" title="interface in net.sf.saxon.expr.parser">CodeInjector</A> <B>getCodeInjector</B>()</PRE> <DL> <DD>Set a CodeInjector which can be used to modify or wrap expressions on the tree as the expression is parsed and the tree is constructed. This is typically used to add tracing code. <P> <DD><DL> <DT><B>Returns:</B><DD>the code injector in use, if any; or null otherwise</DL> </DD> </DL> <HR> <A NAME="getTokenizer()"><!-- --></A><H3> getTokenizer</H3> <PRE> public <A HREF="../../../../../net/sf/saxon/expr/parser/Tokenizer.html" title="class in net.sf.saxon.expr.parser">Tokenizer</A> <B>getTokenizer</B>()</PRE> <DL> <DD>Get the tokenizer (the lexical analyzer) <P> <DD><DL> <DT><B>Returns:</B><DD>the tokenizer (the lexical analyzer)</DL> </DD> </DL> <HR> <A NAME="getStaticContext()"><!-- --></A><H3> getStaticContext</H3> <PRE> public <A HREF="../../../../../net/sf/saxon/expr/StaticContext.html" title="interface in net.sf.saxon.expr">StaticContext</A> <B>getStaticContext</B>()</PRE> <DL> <DD>Get the static context used by this expression parser <P> <DD><DL> <DT><B>Returns:</B><DD>the static context</DL> </DD> </DL> <HR> <A NAME="setDefaultContainer(net.sf.saxon.expr.Container)"><!-- --></A><H3> setDefaultContainer</H3> <PRE> public void <B>setDefaultContainer</B>(<A HREF="../../../../../net/sf/saxon/expr/Container.html" title="interface in net.sf.saxon.expr">Container</A> container)</PRE> <DL> <DD>Set the default container for newly constructed expressions <P> <DD><DL> <DT><B>Parameters:</B><DD><CODE>container</CODE> - the default container</DL> </DD> </DL> <HR> <A NAME="getDefaultContainer()"><!-- --></A><H3> getDefaultContainer</H3> <PRE> public <A HREF="../../../../../net/sf/saxon/expr/Container.html" title="interface in net.sf.saxon.expr">Container</A> <B>getDefaultContainer</B>()</PRE> <DL> <DD>Get the default container for newly constructed expressions <P> <DD><DL> <DT><B>Returns:</B><DD>the default container</DL> </DD> </DL> <HR> <A NAME="getNameChecker()"><!-- --></A><H3> getNameChecker</H3> <PRE> public <A HREF="../../../../../net/sf/saxon/om/NameChecker.html" title="class in net.sf.saxon.om">NameChecker</A> <B>getNameChecker</B>()</PRE> <DL> <DD>Get the name checker used by this parser <P> <DD><DL> <DT><B>Returns:</B><DD>the name checker (specific to XML 1.0o</DL> </DD> </DL> <HR> <A NAME="nextToken()"><!-- --></A><H3> nextToken</H3> <PRE> public void <B>nextToken</B>() throws <A HREF="../../../../../net/sf/saxon/trans/XPathException.html" title="class in net.sf.saxon.trans">XPathException</A></PRE> <DL> <DD>Read the next token, catching any exception thrown by the tokenizer <P> <DD><DL> <DT><B>Throws:</B> <DD><CODE><A HREF="../../../../../net/sf/saxon/trans/XPathException.html" title="class in net.sf.saxon.trans">XPathException</A></CODE> - if an invalid token is found</DL> </DD> </DL> <HR> <A NAME="expect(int)"><!-- --></A><H3> expect</H3> <PRE> public void <B>expect</B>(int token) throws <A HREF="../../../../../net/sf/saxon/trans/XPathException.html" title="class in net.sf.saxon.trans">XPathException</A></PRE> <DL> <DD>Expect a given token; fail if the current token is different. Note that this method does not read any tokens. <P> <DD><DL> <DT><B>Parameters:</B><DD><CODE>token</CODE> - the expected token <DT><B>Throws:</B> <DD><CODE><A HREF="../../../../../net/sf/saxon/trans/XPathException.html" title="class in net.sf.saxon.trans">XPathException</A></CODE> - if the current token is not the expected token</DL> </DD> </DL> <HR> <A NAME="grumble(java.lang.String)"><!-- --></A><H3> grumble</H3> <PRE> public void <B>grumble</B>(<A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A> message) throws <A HREF="../../../../../net/sf/saxon/trans/XPathException.html" title="class in net.sf.saxon.trans">XPathException</A></PRE> <DL> <DD>Report a syntax error (a static error with error code XP0003) <P> <DD><DL> <DT><B>Parameters:</B><DD><CODE>message</CODE> - the error message <DT><B>Throws:</B> <DD><CODE><A HREF="../../../../../net/sf/saxon/trans/XPathException.html" title="class in net.sf.saxon.trans">XPathException</A></CODE> - always thrown: an exception containing the supplied message</DL> </DD> </DL> <HR> <A NAME="grumble(java.lang.String, java.lang.String)"><!-- --></A><H3> grumble</H3> <PRE> public void <B>grumble</B>(<A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A> message, <A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A> errorCode) throws <A HREF="../../../../../net/sf/saxon/trans/XPathException.html" title="class in net.sf.saxon.trans">XPathException</A></PRE> <DL> <DD>Report a static error <P> <DD><DL> <DT><B>Parameters:</B><DD><CODE>message</CODE> - the error message<DD><CODE>errorCode</CODE> - the error code <DT><B>Throws:</B> <DD><CODE><A HREF="../../../../../net/sf/saxon/trans/XPathException.html" title="class in net.sf.saxon.trans">XPathException</A></CODE> - always thrown: an exception containing the supplied message</DL> </DD> </DL> <HR> <A NAME="grumble(java.lang.String, java.lang.String, int)"><!-- --></A><H3> grumble</H3> <PRE> public void <B>grumble</B>(<A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A> message, <A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A> errorCode, int offset) throws <A HREF="../../../../../net/sf/saxon/trans/XPathException.html" title="class in net.sf.saxon.trans">XPathException</A></PRE> <DL> <DD>Report a static error, with location information <P> <DD><DL> <DT><B>Parameters:</B><DD><CODE>message</CODE> - the error message<DD><CODE>errorCode</CODE> - the error code<DD><CODE>offset</CODE> - the coded location of the error, or -1 if the location of the current token should be used <DT><B>Throws:</B> <DD><CODE><A HREF="../../../../../net/sf/saxon/trans/XPathException.html" title="class in net.sf.saxon.trans">XPathException</A></CODE> - always thrown: an exception containing the supplied message</DL> </DD> </DL> <HR> <A NAME="grumble(net.sf.saxon.trans.XPathException)"><!-- --></A><H3> grumble</H3> <PRE> public void <B>grumble</B>(<A HREF="../../../../../net/sf/saxon/trans/XPathException.html" title="class in net.sf.saxon.trans">XPathException</A> error)</PRE> <DL> <DD><DL> </DL> </DD> </DL> <HR> <A NAME="grumble(java.lang.String, net.sf.saxon.om.StructuredQName, int)"><!-- --></A><H3> grumble</H3> <PRE> protected void <B>grumble</B>(<A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A> message, <A HREF="../../../../../net/sf/saxon/om/StructuredQName.html" title="class in net.sf.saxon.om">StructuredQName</A> errorCode, int offset) throws <A HREF="../../../../../net/sf/saxon/trans/XPathException.html" title="class in net.sf.saxon.trans">XPathException</A></PRE> <DL> <DD>Report a static error <P> <DD><DL> <DT><B>Parameters:</B><DD><CODE>message</CODE> - the error message<DD><CODE>errorCode</CODE> - the error code<DD><CODE>offset</CODE> - the coded location of the error, or -1 if the location of the current token should be used <DT><B>Throws:</B> <DD><CODE><A HREF="../../../../../net/sf/saxon/trans/XPathException.html" title="class in net.sf.saxon.trans">XPathException</A></CODE> - always thrown: an exception containing the supplied message</DL> </DD> </DL> <HR> <A NAME="warning(java.lang.String)"><!-- --></A><H3> warning</H3> <PRE> protected void <B>warning</B>(<A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A> message) throws <A HREF="../../../../../net/sf/saxon/trans/XPathException.html" title="class in net.sf.saxon.trans">XPathException</A></PRE> <DL> <DD>Output a warning message <P> <DD><DL> <DT><B>Parameters:</B><DD><CODE>message</CODE> - the text of the message <DT><B>Throws:</B> <DD><CODE><A HREF="../../../../../net/sf/saxon/trans/XPathException.html" title="class in net.sf.saxon.trans">XPathException</A></CODE> - if the message cannot be output</DL> </DD> </DL> <HR> <A NAME="setLanguage(int, net.sf.saxon.value.DecimalValue)"><!-- --></A><H3> setLanguage</H3> <PRE> public void <B>setLanguage</B>(int language, <A HREF="../../../../../net/sf/saxon/value/DecimalValue.html" title="class in net.sf.saxon.value">DecimalValue</A> version)</PRE> <DL> <DD>Set the current language (XPath or XQuery, XSLT Pattern, or SequenceType) <P> <DD><DL> <DT><B>Parameters:</B><DD><CODE>language</CODE> - one of the constants <A HREF="../../../../../net/sf/saxon/expr/parser/ExpressionParser.html#XPATH"><CODE>XPATH</CODE></A>, <A HREF="../../../../../net/sf/saxon/expr/parser/ExpressionParser.html#XQUERY"><CODE>XQUERY</CODE></A>, <A HREF="../../../../../net/sf/saxon/expr/parser/ExpressionParser.html#XSLT_PATTERN"><CODE>XSLT_PATTERN</CODE></A>, <A HREF="../../../../../net/sf/saxon/expr/parser/ExpressionParser.html#SEQUENCE_TYPE"><CODE>SEQUENCE_TYPE</CODE></A><DD><CODE>version</CODE> - The XPath or XQuery language version. For XQuery the value must be "1.0" or "3.0; for XPath it must be "2.0" or "3.0". Currently support for XQuery 3.0 and XPath 3.0 is incomplete: check the release notes.</DL> </DD> </DL> <HR> <A NAME="getLanguage()"><!-- --></A><H3> getLanguage</H3> <PRE> protected <A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A> <B>getLanguage</B>()</PRE> <DL> <DD>Get the current language (XPath or XQuery) <P> <DD><DL> <DT><B>Returns:</B><DD>a string representation of the language being parsed, for use in error messages</DL> </DD> </DL> <HR> <A NAME="currentTokenDisplay()"><!-- --></A><H3> currentTokenDisplay</H3> <PRE> protected <A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A> <B>currentTokenDisplay</B>()</PRE> <DL> <DD>Display the current token in an error message <P> <DD><DL> <DT><B>Returns:</B><DD>the display representation of the token</DL> </DD> </DL> <HR> <A NAME="parse(java.lang.String, int, int, int, net.sf.saxon.expr.StaticContext)"><!-- --></A><H3> parse</H3> <PRE> public <A HREF="../../../../../net/sf/saxon/expr/Expression.html" title="class in net.sf.saxon.expr">Expression</A> <B>parse</B>(<A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A> expression, int start, int terminator, int lineNumber, <A HREF="../../../../../net/sf/saxon/expr/StaticContext.html" title="interface in net.sf.saxon.expr">StaticContext</A> env) throws <A HREF="../../../../../net/sf/saxon/trans/XPathException.html" title="class in net.sf.saxon.trans">XPathException</A></PRE> <DL> <DD>Parse a string representing an expression. This will accept an XPath expression if called on an ExpressionParser, or an XQuery expression if called on a QueryParser. <P> <DD><DL> <DT><B>Parameters:</B><DD><CODE>expression</CODE> - the expression expressed as a String<DD><CODE>start</CODE> - offset within the string where parsing is to start<DD><CODE>terminator</CODE> - character to treat as terminating the expression<DD><CODE>lineNumber</CODE> - location of the start of the expression, for diagnostics<DD><CODE>env</CODE> - the static context for the expression <DT><B>Returns:</B><DD>an Expression object representing the result of parsing <DT><B>Throws:</B> <DD><CODE><A HREF="../../../../../net/sf/saxon/trans/XPathException.html" title="class in net.sf.saxon.trans">XPathException</A></CODE> - if the expression contains a syntax error</DL> </DD> </DL> <HR> <A NAME="customizeTokenizer(net.sf.saxon.expr.parser.Tokenizer)"><!-- --></A><H3> customizeTokenizer</H3> <PRE> protected void <B>customizeTokenizer</B>(<A HREF="../../../../../net/sf/saxon/expr/parser/Tokenizer.html" title="class in net.sf.saxon.expr.parser">Tokenizer</A> t)</PRE> <DL> <DD>Callback to tailor the tokenizer <P> <DD><DL> <DT><B>Parameters:</B><DD><CODE>t</CODE> - the Tokenizer to be customized</DL> </DD> </DL> <HR> <A NAME="parseSequenceType(java.lang.String, net.sf.saxon.expr.StaticContext)"><!-- --></A><H3> parseSequenceType</H3> <PRE> public <A HREF="../../../../../net/sf/saxon/value/SequenceType.html" title="class in net.sf.saxon.value">SequenceType</A> <B>parseSequenceType</B>(<A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A> input, <A HREF="../../../../../net/sf/saxon/expr/StaticContext.html" title="interface in net.sf.saxon.expr">StaticContext</A> env) throws <A HREF="../../../../../net/sf/saxon/trans/XPathException.html" title="class in net.sf.saxon.trans">XPathException</A></PRE> <DL> <DD>Parse a string representing a sequence type <P> <DD><DL> <DT><B>Parameters:</B><DD><CODE>input</CODE> - the string, which should conform to the XPath SequenceType production<DD><CODE>env</CODE> - the static context <DT><B>Returns:</B><DD>a SequenceType object representing the type <DT><B>Throws:</B> <DD><CODE><A HREF="../../../../../net/sf/saxon/trans/XPathException.html" title="class in net.sf.saxon.trans">XPathException</A></CODE> - if any error is encountered</DL> </DD> </DL> <HR> <A NAME="parseExpression()"><!-- --></A><H3> parseExpression</H3> <PRE> public <A HREF="../../../../../net/sf/saxon/expr/Expression.html" title="class in net.sf.saxon.expr">Expression</A> <B>parseExpression</B>() throws <A HREF="../../../../../net/sf/saxon/trans/XPathException.html" title="class in net.sf.saxon.trans">XPathException</A></PRE> <DL> <DD>Parse a top-level Expression: ExprSingle ( ',' ExprSingle )* <P> <DD><DL> <DT><B>Returns:</B><DD>the Expression object that results from parsing <DT><B>Throws:</B> <DD><CODE><A HREF="../../../../../net/sf/saxon/trans/XPathException.html" title="class in net.sf.saxon.trans">XPathException</A></CODE> - if the expression contains a syntax error</DL> </DD> </DL> <HR> <A NAME="parseExprSingle()"><!-- --></A><H3> parseExprSingle</H3> <PRE> public <A HREF="../../../../../net/sf/saxon/expr/Expression.html" title="class in net.sf.saxon.expr">Expression</A> <B>parseExprSingle</B>() throws <A HREF="../../../../../net/sf/saxon/trans/XPathException.html" title="class in net.sf.saxon.trans">XPathException</A></PRE> <DL> <DD>Parse an ExprSingle <P> <DD><DL> <DT><B>Returns:</B><DD>the resulting subexpression <DT><B>Throws:</B> <DD><CODE><A HREF="../../../../../net/sf/saxon/trans/XPathException.html" title="class in net.sf.saxon.trans">XPathException</A></CODE> - if any error is encountered</DL> </DD> </DL> <HR> <A NAME="parseBinaryExpression(net.sf.saxon.expr.Expression, int)"><!-- --></A><H3> parseBinaryExpression</H3> <PRE> public <A HREF="../../../../../net/sf/saxon/expr/Expression.html" title="class in net.sf.saxon.expr">Expression</A> <B>parseBinaryExpression</B>(<A HREF="../../../../../net/sf/saxon/expr/Expression.html" title="class in net.sf.saxon.expr">Expression</A> lhs, int minPrecedence) throws <A HREF="../../../../../net/sf/saxon/trans/XPathException.html" title="class in net.sf.saxon.trans">XPathException</A></PRE> <DL> <DD>Parse a binary expression, using operator precedence parsing. This is used to parse the part of the grammary consisting largely of binary operators distinguished by precedence: from "or expressions" down to "unary expressions". Algorithm for the mainstream binary operators is from Wikipedia article on precedence parsing; operator precedences are from the XQuery specification appendix B. <P> <DD><DL> <DT><B>Parameters:</B><DD><CODE>lhs</CODE> - Left-hand side "basic expression"<DD><CODE>minPrecedence</CODE> - the minimum precedence of an operator that is to be treated as not terminating the current expression <DT><B>Returns:</B><DD>the parsed expression <DT><B>Throws:</B> <DD><CODE><A HREF="../../../../../net/sf/saxon/trans/XPathException.html" title="class in net.sf.saxon.trans">XPathException</A></CODE> - if a static error is found</DL> </DD> </DL> <HR> <A NAME="parseTypeswitchExpression()"><!-- --></A><H3> parseTypeswitchExpression</H3> <PRE> protected <A HREF="../../../../../net/sf/saxon/expr/Expression.html" title="class in net.sf.saxon.expr">Expression</A> <B>parseTypeswitchExpression</B>() throws <A HREF="../../../../../net/sf/saxon/trans/XPathException.html" title="class in net.sf.saxon.trans">XPathException</A></PRE> <DL> <DD>Parse a Typeswitch Expression. This construct is XQuery-only, so the XPath version of this method throws an error unconditionally <P> <DD><DL> <DT><B>Returns:</B><DD>the expression that results from the parsing <DT><B>Throws:</B> <DD><CODE><A HREF="../../../../../net/sf/saxon/trans/XPathException.html" title="class in net.sf.saxon.trans">XPathException</A></CODE> - if a static error is found</DL> </DD> </DL> <HR> <A NAME="parseSwitchExpression()"><!-- --></A><H3> parseSwitchExpression</H3> <PRE> protected <A HREF="../../../../../net/sf/saxon/expr/Expression.html" title="class in net.sf.saxon.expr">Expression</A> <B>parseSwitchExpression</B>() throws <A HREF="../../../../../net/sf/saxon/trans/XPathException.html" title="class in net.sf.saxon.trans">XPathException</A></PRE> <DL> <DD>Parse a Switch Expression. This construct is XQuery-1.1 only, so the XPath and XQuery 1.0 versions of this method throw an error unconditionally <P> <DD><DL> <DT><B>Returns:</B><DD>the expression that results from the parsing <DT><B>Throws:</B> <DD><CODE><A HREF="../../../../../net/sf/saxon/trans/XPathException.html" title="class in net.sf.saxon.trans">XPathException</A></CODE> - if a static error is found</DL> </DD> </DL> <HR> <A NAME="parseValidateExpression()"><!-- --></A><H3> parseValidateExpression</H3> <PRE> protected <A HREF="../../../../../net/sf/saxon/expr/Expression.html" title="class in net.sf.saxon.expr">Expression</A> <B>parseValidateExpression</B>() throws <A HREF="../../../../../net/sf/saxon/trans/XPathException.html" title="class in net.sf.saxon.trans">XPathException</A></PRE> <DL> <DD>Parse a Validate Expression. This construct is XQuery-only, so the XPath version of this method throws an error unconditionally <P> <DD><DL> <DT><B>Returns:</B><DD>the parsed expression; except that this version of the method always throws an exception <DT><B>Throws:</B> <DD><CODE><A HREF="../../../../../net/sf/saxon/trans/XPathException.html" title="class in net.sf.saxon.trans">XPathException</A></CODE> - if a static error is found</DL> </DD> </DL> <HR> <A NAME="parseExtensionExpression()"><!-- --></A><H3> parseExtensionExpression</H3> <PRE> protected <A HREF="../../../../../net/sf/saxon/expr/Expression.html" title="class in net.sf.saxon.expr">Expression</A> <B>parseExtensionExpression</B>() throws <A HREF="../../../../../net/sf/saxon/trans/XPathException.html" title="class in net.sf.saxon.trans">XPathException</A></PRE> <DL> <DD>Parse an Extension Expression This construct is XQuery-only, so the XPath version of this method throws an error unconditionally <P> <DD><DL> <DT><B>Returns:</B><DD>the parsed expression; except that this version of the method always throws an exception <DT><B>Throws:</B> <DD><CODE><A HREF="../../../../../net/sf/saxon/trans/XPathException.html" title="class in net.sf.saxon.trans">XPathException</A></CODE> - if a static error is found</DL> </DD> </DL> <HR> <A NAME="parseTypePattern()"><!-- --></A><H3> parseTypePattern</H3> <PRE> protected <A HREF="../../../../../net/sf/saxon/expr/Expression.html" title="class in net.sf.saxon.expr">Expression</A> <B>parseTypePattern</B>() throws <A HREF="../../../../../net/sf/saxon/trans/XPathException.html" title="class in net.sf.saxon.trans">XPathException</A></PRE> <DL> <DD>Parse a Type Pattern This construct is used only in XSLT patterns, so the XPath version of this method throws an error unconditionally <P> <DD><DL> <DT><B>Returns:</B><DD>the parsed expression; except that this version of the method always throws an exception <DT><B>Throws:</B> <DD><CODE><A HREF="../../../../../net/sf/saxon/trans/XPathException.html" title="class in net.sf.saxon.trans">XPathException</A></CODE> - if a static error is found</DL> </DD> </DL> <HR> <A NAME="parseTryCatchExpression()"><!-- --></A><H3> parseTryCatchExpression</H3> <PRE> protected <A HREF="../../../../../net/sf/saxon/expr/Expression.html" title="class in net.sf.saxon.expr">Expression</A> <B>parseTryCatchExpression</B>() throws <A HREF="../../../../../net/sf/saxon/trans/XPathException.html" title="class in net.sf.saxon.trans">XPathException</A></PRE> <DL> <DD>Parse a try/catch Expression This construct is XQuery-1.1 only, so the XPath version of this method throws an error unconditionally <P> <DD><DL> <DT><B>Returns:</B><DD>the parsed expression; except that this version of the method always throws an exception <DT><B>Throws:</B> <DD><CODE><A HREF="../../../../../net/sf/saxon/trans/XPathException.html" title="class in net.sf.saxon.trans">XPathException</A></CODE> - if a static error is found</DL> </DD> </DL> <HR> <A NAME="parseFLWORExpression()"><!-- --></A><H3> parseFLWORExpression</H3> <PRE> protected <A HREF="../../../../../net/sf/saxon/expr/Expression.html" title="class in net.sf.saxon.expr">Expression</A> <B>parseFLWORExpression</B>() throws <A HREF="../../../../../net/sf/saxon/trans/XPathException.html" title="class in net.sf.saxon.trans">XPathException</A></PRE> <DL> <DD>Parse a FOR or LET expression: for $x in expr (',' $y in expr)* 'return' expr let $x := expr (', $y := expr)* 'return' expr This version of the method handles the subset of the FLWOR syntax allowed in XPath <P> <DD><DL> <DT><B>Returns:</B><DD>the resulting subexpression <DT><B>Throws:</B> <DD><CODE><A HREF="../../../../../net/sf/saxon/trans/XPathException.html" title="class in net.sf.saxon.trans">XPathException</A></CODE> - if any error is encountered</DL> </DD> </DL> <HR> <A NAME="parseSequenceType()"><!-- --></A><H3> parseSequenceType</H3> <PRE> public <A HREF="../../../../../net/sf/saxon/value/SequenceType.html" title="class in net.sf.saxon.value">SequenceType</A> <B>parseSequenceType</B>() throws <A HREF="../../../../../net/sf/saxon/trans/XPathException.html" title="class in net.sf.saxon.trans">XPathException</A></PRE> <DL> <DD>Parse the sequence type production. The QName must be the name of a built-in schema-defined data type. <P> <DD><DL> <DT><B>Returns:</B><DD>the resulting subexpression <DT><B>Throws:</B> <DD><CODE><A HREF="../../../../../net/sf/saxon/trans/XPathException.html" title="class in net.sf.saxon.trans">XPathException</A></CODE> - if any error is encountered</DL> </DD> </DL> <HR> <A NAME="parseItemType()"><!-- --></A><H3> parseItemType</H3> <PRE> public <A HREF="../../../../../net/sf/saxon/type/ItemType.html" title="interface in net.sf.saxon.type">ItemType</A> <B>parseItemType</B>() throws <A HREF="../../../../../net/sf/saxon/trans/XPathException.html" title="class in net.sf.saxon.trans">XPathException</A></PRE> <DL> <DD>Parse an ItemType within a SequenceType <P> <DD><DL> <DT><B>Returns:</B><DD>the ItemType after parsing <DT><B>Throws:</B> <DD><CODE><A HREF="../../../../../net/sf/saxon/trans/XPathException.html" title="class in net.sf.saxon.trans">XPathException</A></CODE> - if a static error is found</DL> </DD> </DL> <HR> <A NAME="parseFunctionItemType()"><!-- --></A><H3> parseFunctionItemType</H3> <PRE> protected <A HREF="../../../../../net/sf/saxon/type/ItemType.html" title="interface in net.sf.saxon.type">ItemType</A> <B>parseFunctionItemType</B>() throws <A HREF="../../../../../net/sf/saxon/trans/XPathException.html" title="class in net.sf.saxon.trans">XPathException</A></PRE> <DL> <DD>Get the item type used for function items (XPath 3.0 higher order functions) <P> <DD><DL> <DT><B>Returns:</B><DD>the item type representing a function item <DT><B>Throws:</B> <DD><CODE><A HREF="../../../../../net/sf/saxon/trans/XPathException.html" title="class in net.sf.saxon.trans">XPathException</A></CODE> - if a static error occurs (including the case where XPath 3.0 syntax is not enabled)</DL> </DD> </DL> <HR> <A NAME="parseMapItemType()"><!-- --></A><H3> parseMapItemType</H3> <PRE> protected <A HREF="../../../../../net/sf/saxon/type/ItemType.html" title="interface in net.sf.saxon.type">ItemType</A> <B>parseMapItemType</B>() throws <A HREF="../../../../../net/sf/saxon/trans/XPathException.html" title="class in net.sf.saxon.trans">XPathException</A></PRE> <DL> <DD>Get the item type used for map items (XPath 3.0) <P> <DD><DL> <DT><B>Returns:</B><DD>the item type of the map <DT><B>Throws:</B> <DD><CODE><A HREF="../../../../../net/sf/saxon/trans/XPathException.html" title="class in net.sf.saxon.trans">XPathException</A></CODE> - if a parsing error occurs or if the map syntax is not available</DL> </DD> </DL> <HR> <A NAME="parseParenthesizedItemType()"><!-- --></A><H3> parseParenthesizedItemType</H3> <PRE> protected <A HREF="../../../../../net/sf/saxon/type/ItemType.html" title="interface in net.sf.saxon.type">ItemType</A> <B>parseParenthesizedItemType</B>() throws <A HREF="../../../../../net/sf/saxon/trans/XPathException.html" title="class in net.sf.saxon.trans">XPathException</A></PRE> <DL> <DD>Parse a parenthesized item type (XPath 3.0) <P> <DD><DL> <DT><B>Returns:</B><DD>the item type <DT><B>Throws:</B> <DD><CODE><A HREF="../../../../../net/sf/saxon/trans/XPathException.html" title="class in net.sf.saxon.trans">XPathException</A></CODE> - if a syntax error is found</DL> </DD> </DL> <HR> <A NAME="atStartOfRelativePath()"><!-- --></A><H3> atStartOfRelativePath</H3> <PRE> protected boolean <B>atStartOfRelativePath</B>()</PRE> <DL> <DD>Test whether the current token is one that can start a RelativePathExpression <P> <DD><DL> <DT><B>Returns:</B><DD>the resulting subexpression</DL> </DD> </DL> <HR> <A NAME="disallowedAtStartOfRelativePath()"><!-- --></A><H3> disallowedAtStartOfRelativePath</H3> <PRE> protected boolean <B>disallowedAtStartOfRelativePath</B>()</PRE> <DL> <DD>Test whether the current token is one that is disallowed after a "leading lone slash". These composite tokens have been parsed as operators, but are not allowed after "/" under the rules of erratum E24 <P> <DD><DL> <DT><B>Returns:</B><DD>the resulting subexpression</DL> </DD> </DL> <HR> <A NAME="parsePathExpression()"><!-- --></A><H3> parsePathExpression</H3> <PRE> protected <A HREF="../../../../../net/sf/saxon/expr/Expression.html" title="class in net.sf.saxon.expr">Expression</A> <B>parsePathExpression</B>() throws <A HREF="../../../../../net/sf/saxon/trans/XPathException.html" title="class in net.sf.saxon.trans">XPathException</A></PRE> <DL> <DD>Parse a PathExpresssion. This includes "true" path expressions such as A/B/C, and also constructs that may start a path expression such as a variable reference $name or a parenthesed expression (A|B). Numeric and string literals also come under this heading. <P> <DD><DL> <DT><B>Returns:</B><DD>the resulting subexpression <DT><B>Throws:</B> <DD><CODE><A HREF="../../../../../net/sf/saxon/trans/XPathException.html" title="class in net.sf.saxon.trans">XPathException</A></CODE> - if any error is encountered</DL> </DD> </DL> <HR> <A NAME="parseRelativePath()"><!-- --></A><H3> parseRelativePath</H3> <PRE> protected <A HREF="../../../../../net/sf/saxon/expr/Expression.html" title="class in net.sf.saxon.expr">Expression</A> <B>parseRelativePath</B>() throws <A HREF="../../../../../net/sf/saxon/trans/XPathException.html" title="class in net.sf.saxon.trans">XPathException</A></PRE> <DL> <DD>Parse a relative path (a sequence of steps). Called when the current token immediately follows a separator (/ or //), or an implicit separator (XYZ is equivalent to ./XYZ) <P> <DD><DL> <DT><B>Returns:</B><DD>the resulting subexpression <DT><B>Throws:</B> <DD><CODE><A HREF="../../../../../net/sf/saxon/trans/XPathException.html" title="class in net.sf.saxon.trans">XPathException</A></CODE> - if any error is encountered</DL> </DD> </DL> <HR> <A NAME="parseRemainingPath(net.sf.saxon.expr.Expression)"><!-- --></A><H3> parseRemainingPath</H3> <PRE> protected <A HREF="../../../../../net/sf/saxon/expr/Expression.html" title="class in net.sf.saxon.expr">Expression</A> <B>parseRemainingPath</B>(<A HREF="../../../../../net/sf/saxon/expr/Expression.html" title="class in net.sf.saxon.expr">Expression</A> start) throws <A HREF="../../../../../net/sf/saxon/trans/XPathException.html" title="class in net.sf.saxon.trans">XPathException</A></PRE> <DL> <DD>Parse the remaining steps of an absolute path expression (one starting in "/" or "//"). Note that the token immediately after the "/" or "//" has already been read, and in the case of "/", it has been confirmed that we have a path expression starting with "/" rather than a standalone "/" expression. <P> <DD><DL> <DT><B>Parameters:</B><DD><CODE>start</CODE> - the initial implicit expression: root() in the case of "/", root()/descendant-or-self::node in the case of "//" <DT><B>Returns:</B><DD>the completed path expression <DT><B>Throws:</B> <DD><CODE><A HREF="../../../../../net/sf/saxon/trans/XPathException.html" title="class in net.sf.saxon.trans">XPathException</A></CODE> - if a static error is found</DL> </DD> </DL> <HR> <A NAME="parseStepExpression(boolean)"><!-- --></A><H3> parseStepExpression</H3> <PRE> protected <A HREF="../../../../../net/sf/saxon/expr/Expression.html" title="class in net.sf.saxon.expr">Expression</A> <B>parseStepExpression</B>(boolean firstInPattern) throws <A HREF="../../../../../net/sf/saxon/trans/XPathException.html" title="class in net.sf.saxon.trans">XPathException</A></PRE> <DL> <DD>Parse a step (including an optional sequence of predicates) <P> <DD><DL> <DT><B>Parameters:</B><DD><CODE>firstInPattern</CODE> - true only if we are parsing the first step in a RelativePathPattern in the XSLT Pattern syntax <DT><B>Returns:</B><DD>the resulting subexpression <DT><B>Throws:</B> <DD><CODE><A HREF="../../../../../net/sf/saxon/trans/XPathException.html" title="class in net.sf.saxon.trans">XPathException</A></CODE> - if any error is encountered</DL> </DD> </DL> <HR> <A NAME="parsePredicate()"><!-- --></A><H3> parsePredicate</H3> <PRE> protected <A HREF="../../../../../net/sf/saxon/expr/Expression.html" title="class in net.sf.saxon.expr">Expression</A> <B>parsePredicate</B>() throws <A HREF="../../../../../net/sf/saxon/trans/XPathException.html" title="class in net.sf.saxon.trans">XPathException</A></PRE> <DL> <DD>Parse the expression within a predicate. A separate method so it can be overridden <P> <DD><DL> <DT><B>Returns:</B><DD>the expression within the predicate <DT><B>Throws:</B> <DD><CODE><A HREF="../../../../../net/sf/saxon/trans/XPathException.html" title="class in net.sf.saxon.trans">XPathException</A></CODE> - if a static error is found</DL> </DD> </DL> <HR> <A NAME="parseBasicStep(boolean)"><!-- --></A><H3> parseBasicStep</H3> <PRE> protected <A HREF="../../../../../net/sf/saxon/expr/Expression.html" title="class in net.sf.saxon.expr">Expression</A> <B>parseBasicStep</B>(boolean firstInPattern) throws <A HREF="../../../../../net/sf/saxon/trans/XPathException.html" title="class in net.sf.saxon.trans">XPathException</A></PRE> <DL> <DD>Parse a basic step expression (without the predicates) <P> <DD><DL> <DT><B>Parameters:</B><DD><CODE>firstInPattern</CODE> - true only if we are parsing the first step in a RelativePathPattern in the XSLT Pattern syntax <DT><B>Returns:</B><DD>the resulting subexpression <DT><B>Throws:</B> <DD><CODE><A HREF="../../../../../net/sf/saxon/trans/XPathException.html" title="class in net.sf.saxon.trans">XPathException</A></CODE> - if any error is encountered</DL> </DD> </DL> <HR> <A NAME="parseNumericLiteral()"><!-- --></A><H3> parseNumericLiteral</H3> <PRE> protected <A HREF="../../../../../net/sf/saxon/expr/Expression.html" title="class in net.sf.saxon.expr">Expression</A> <B>parseNumericLiteral</B>() throws <A HREF="../../../../../net/sf/saxon/trans/XPathException.html" title="class in net.sf.saxon.trans">XPathException</A></PRE> <DL> <DD><DL> <DT><B>Throws:</B> <DD><CODE><A HREF="../../../../../net/sf/saxon/trans/XPathException.html" title="class in net.sf.saxon.trans">XPathException</A></CODE></DL> </DD> </DL> <HR> <A NAME="parseStringLiteral()"><!-- --></A><H3> parseStringLiteral</H3> <PRE> protected <A HREF="../../../../../net/sf/saxon/expr/Expression.html" title="class in net.sf.saxon.expr">Expression</A> <B>parseStringLiteral</B>() throws <A HREF="../../../../../net/sf/saxon/trans/XPathException.html" title="class in net.sf.saxon.trans">XPathException</A></PRE> <DL> <DD><DL> <DT><B>Throws:</B> <DD><CODE><A HREF="../../../../../net/sf/saxon/trans/XPathException.html" title="class in net.sf.saxon.trans">XPathException</A></CODE></DL> </DD> </DL> <HR> <A NAME="parseVariableReference()"><!-- --></A><H3> parseVariableReference</H3> <PRE> protected <A HREF="../../../../../net/sf/saxon/expr/Expression.html" title="class in net.sf.saxon.expr">Expression</A> <B>parseVariableReference</B>() throws <A HREF="../../../../../net/sf/saxon/trans/XPathException.html" title="class in net.sf.saxon.trans">XPathException</A></PRE> <DL> <DD><DL> <DT><B>Throws:</B> <DD><CODE><A HREF="../../../../../net/sf/saxon/trans/XPathException.html" title="class in net.sf.saxon.trans">XPathException</A></CODE></DL> </DD> </DL> <HR> <A NAME="makeStringLiteral(java.lang.String)"><!-- --></A><H3> makeStringLiteral</H3> <PRE> protected <A HREF="../../../../../net/sf/saxon/expr/Literal.html" title="class in net.sf.saxon.expr">Literal</A> <B>makeStringLiteral</B>(<A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A> currentTokenValue) throws <A HREF="../../../../../net/sf/saxon/trans/XPathException.html" title="class in net.sf.saxon.trans">XPathException</A></PRE> <DL> <DD>Method to make a string literal from a token identified as a string literal. This is trivial in XPath, but in XQuery the method is overridden to identify pseudo-XML character and entity references. Note that the job of handling doubled string delimiters is done by the tokenizer. <P> <DD><DL> <DT><B>Parameters:</B><DD><CODE>currentTokenValue</CODE> - the token as read (excluding quotation marks) <DT><B>Returns:</B><DD>The string value of the string literal <DT><B>Throws:</B> <DD><CODE><A HREF="../../../../../net/sf/saxon/trans/XPathException.html" title="class in net.sf.saxon.trans">XPathException</A></CODE> - if a static error is found</DL> </DD> </DL> <HR> <A NAME="parseConstructor()"><!-- --></A><H3> parseConstructor</H3> <PRE> protected <A HREF="../../../../../net/sf/saxon/expr/Expression.html" title="class in net.sf.saxon.expr">Expression</A> <B>parseConstructor</B>() throws <A HREF="../../../../../net/sf/saxon/trans/XPathException.html" title="class in net.sf.saxon.trans">XPathException</A></PRE> <DL> <DD>Parse a node constructor. This is allowed only in XQuery, so the method throws an error for XPath. <P> <DD><DL> <DT><B>Returns:</B><DD>the expression that results from the parsing <DT><B>Throws:</B> <DD><CODE><A HREF="../../../../../net/sf/saxon/trans/XPathException.html" title="class in net.sf.saxon.trans">XPathException</A></CODE> - if a static error occurs</DL> </DD> </DL> <HR> <A NAME="parseDynamicFunctionCall(net.sf.saxon.expr.Expression)"><!-- --></A><H3> parseDynamicFunctionCall</H3> <PRE> protected <A HREF="../../../../../net/sf/saxon/expr/Expression.html" title="class in net.sf.saxon.expr">Expression</A> <B>parseDynamicFunctionCall</B>(<A HREF="../../../../../net/sf/saxon/expr/Expression.html" title="class in net.sf.saxon.expr">Expression</A> functionItem) throws <A HREF="../../../../../net/sf/saxon/trans/XPathException.html" title="class in net.sf.saxon.trans">XPathException</A></PRE> <DL> <DD>Parse a dynamic function call <P> <DD><DL> <DT><B>Parameters:</B><DD><CODE>functionItem</CODE> - the expression that determines the function to be called <DT><B>Returns:</B><DD>the expression that results from the parsing <DT><B>Throws:</B> <DD><CODE><A HREF="../../../../../net/sf/saxon/trans/XPathException.html" title="class in net.sf.saxon.trans">XPathException</A></CODE> - if a static error is found</DL> </DD> </DL> <HR> <A NAME="parseNodeTest(short)"><!-- --></A><H3> parseNodeTest</H3> <PRE> protected <A HREF="../../../../../net/sf/saxon/pattern/NodeTest.html" title="class in net.sf.saxon.pattern">NodeTest</A> <B>parseNodeTest</B>(short nodeType) throws <A HREF="../../../../../net/sf/saxon/trans/XPathException.html" title="class in net.sf.saxon.trans">XPathException</A></PRE> <DL> <DD>Parse a NodeTest. One of QName, prefix:*, *:suffix, *, text(), node(), comment(), or processing-instruction(literal?), or element(~,~), attribute(~,~), etc. <P> <DD><DL> <DT><B>Parameters:</B><DD><CODE>nodeType</CODE> - the node type being sought if one is specified <DT><B>Returns:</B><DD>the resulting NodeTest object <DT><B>Throws:</B> <DD><CODE><A HREF="../../../../../net/sf/saxon/trans/XPathException.html" title="class in net.sf.saxon.trans">XPathException</A></CODE> - if any error is encountered</DL> </DD> </DL> <HR> <A NAME="isNamespaceTestAllowed()"><!-- --></A><H3> isNamespaceTestAllowed</H3> <PRE> protected boolean <B>isNamespaceTestAllowed</B>()</PRE> <DL> <DD>Ask whether the syntax namespace-node() is allowed in a node kind test. <P> <DD><DL> <DT><B>Returns:</B><DD>false (currently allowed only in XQuery 1.1)</DL> </DD> </DL> <HR> <A NAME="parseMapExpression()"><!-- --></A><H3> parseMapExpression</H3> <PRE> protected <A HREF="../../../../../net/sf/saxon/expr/Expression.html" title="class in net.sf.saxon.expr">Expression</A> <B>parseMapExpression</B>() throws <A HREF="../../../../../net/sf/saxon/trans/XPathException.html" title="class in net.sf.saxon.trans">XPathException</A></PRE> <DL> <DD>Parse a map expression. Requires XPath/XQuery 3.0 Provisional syntax map { expr := expr (, expr := expr )*} } <P> <DD><DL> <DT><B>Returns:</B><DD>the map expression <DT><B>Throws:</B> <DD><CODE><A HREF="../../../../../net/sf/saxon/trans/XPathException.html" title="class in net.sf.saxon.trans">XPathException</A></CODE> - if a static error occurs</DL> </DD> </DL> <HR> <A NAME="parseFunctionCall()"><!-- --></A><H3> parseFunctionCall</H3> <PRE> protected <A HREF="../../../../../net/sf/saxon/expr/Expression.html" title="class in net.sf.saxon.expr">Expression</A> <B>parseFunctionCall</B>() throws <A HREF="../../../../../net/sf/saxon/trans/XPathException.html" title="class in net.sf.saxon.trans">XPathException</A></PRE> <DL> <DD>Parse a function call. function-name '(' ( Expression (',' Expression )* )? ')' <P> <DD><DL> <DT><B>Returns:</B><DD>the resulting subexpression <DT><B>Throws:</B> <DD><CODE><A HREF="../../../../../net/sf/saxon/trans/XPathException.html" title="class in net.sf.saxon.trans">XPathException</A></CODE> - if any error is encountered</DL> </DD> </DL> <HR> <A NAME="reportMissingFunction(int, net.sf.saxon.om.StructuredQName, net.sf.saxon.expr.Expression[])"><!-- --></A><H3> reportMissingFunction</H3> <PRE> public <A HREF="../../../../../net/sf/saxon/expr/Expression.html" title="class in net.sf.saxon.expr">Expression</A> <B>reportMissingFunction</B>(int offset, <A HREF="../../../../../net/sf/saxon/om/StructuredQName.html" title="class in net.sf.saxon.om">StructuredQName</A> functionName, <A HREF="../../../../../net/sf/saxon/expr/Expression.html" title="class in net.sf.saxon.expr">Expression</A>[] arguments) throws <A HREF="../../../../../net/sf/saxon/trans/XPathException.html" title="class in net.sf.saxon.trans">XPathException</A></PRE> <DL> <DD><DL> <DT><B>Throws:</B> <DD><CODE><A HREF="../../../../../net/sf/saxon/trans/XPathException.html" title="class in net.sf.saxon.trans">XPathException</A></CODE></DL> </DD> </DL> <HR> <A NAME="resolveFunctionName(java.lang.String)"><!-- --></A><H3> resolveFunctionName</H3> <PRE> protected <A HREF="../../../../../net/sf/saxon/om/StructuredQName.html" title="class in net.sf.saxon.om">StructuredQName</A> <B>resolveFunctionName</B>(<A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A> fname) throws <A HREF="../../../../../net/sf/saxon/trans/XPathException.html" title="class in net.sf.saxon.trans">XPathException</A></PRE> <DL> <DD>Interpret a function name, returning it as a resolved QName <P> <DD><DL> <DT><B>Parameters:</B><DD><CODE>fname</CODE> - the lexical QName used as the function name; or an EQName presented by the tokenizer as a name in Clark notation <DT><B>Returns:</B><DD>the Structured QName obtained by resolving any prefix in the function name <DT><B>Throws:</B> <DD><CODE><A HREF="../../../../../net/sf/saxon/trans/XPathException.html" title="class in net.sf.saxon.trans">XPathException</A></CODE> - if the supplied name is not a valid QName or if its prefix is not in scope</DL> </DD> </DL> <HR> <A NAME="parseFunctionArgument()"><!-- --></A><H3> parseFunctionArgument</H3> <PRE> public <A HREF="../../../../../net/sf/saxon/expr/Expression.html" title="class in net.sf.saxon.expr">Expression</A> <B>parseFunctionArgument</B>() throws <A HREF="../../../../../net/sf/saxon/trans/XPathException.html" title="class in net.sf.saxon.trans">XPathException</A></PRE> <DL> <DD>Parse an argument to a function call. Separate method so it can be overridden. With higher-order-function syntax in XPath 3.0/XQuery 3.0, this returns null if the pseudo-argument "?" is found. <P> <DD><DL> <DT><B>Returns:</B><DD>the Expression used as the argument, or null if the argument is the place-holder "?" <DT><B>Throws:</B> <DD><CODE><A HREF="../../../../../net/sf/saxon/trans/XPathException.html" title="class in net.sf.saxon.trans">XPathException</A></CODE> - if the argument expression does not parse correctly</DL> </DD> </DL> <HR> <A NAME="parseLiteralFunctionItem()"><!-- --></A><H3> parseLiteralFunctionItem</H3> <PRE> protected <A HREF="../../../../../net/sf/saxon/expr/Expression.html" title="class in net.sf.saxon.expr">Expression</A> <B>parseLiteralFunctionItem</B>() throws <A HREF="../../../../../net/sf/saxon/trans/XPathException.html" title="class in net.sf.saxon.trans">XPathException</A></PRE> <DL> <DD>Parse a literal function item (introduced in XQuery 1.1) Syntax: QName # integer The QName and # have already been read <P> <DD><DL> <DT><B>Returns:</B><DD>an ExternalObject representing the function item <DT><B>Throws:</B> <DD><CODE><A HREF="../../../../../net/sf/saxon/trans/XPathException.html" title="class in net.sf.saxon.trans">XPathException</A></CODE> - if a static error is encountered</DL> </DD> </DL> <HR> <A NAME="parseInlineFunction()"><!-- --></A><H3> parseInlineFunction</H3> <PRE> protected <A HREF="../../../../../net/sf/saxon/expr/Expression.html" title="class in net.sf.saxon.expr">Expression</A> <B>parseInlineFunction</B>() throws <A HREF="../../../../../net/sf/saxon/trans/XPathException.html" title="class in net.sf.saxon.trans">XPathException</A></PRE> <DL> <DD>Parse an inline function "function" "(" ParamList? ")" ("as" SequenceType)? EnclosedExpr On entry, "function (" has already been read <P> <DD><DL> <DT><B>Returns:</B><DD>the parsed inline function <DT><B>Throws:</B> <DD><CODE><A HREF="../../../../../net/sf/saxon/trans/XPathException.html" title="class in net.sf.saxon.trans">XPathException</A></CODE> - if a syntax error is found</DL> </DD> </DL> <HR> <A NAME="makeCurriedFunction(int, net.sf.saxon.om.StructuredQName, net.sf.saxon.expr.Expression[], net.sf.saxon.expr.sort.IntSet)"><!-- --></A><H3> makeCurriedFunction</H3> <PRE> protected <A HREF="../../../../../net/sf/saxon/expr/Expression.html" title="class in net.sf.saxon.expr">Expression</A> <B>makeCurriedFunction</B>(int offset, <A HREF="../../../../../net/sf/saxon/om/StructuredQName.html" title="class in net.sf.saxon.om">StructuredQName</A> name, <A HREF="../../../../../net/sf/saxon/expr/Expression.html" title="class in net.sf.saxon.expr">Expression</A>[] args, <A HREF="../../../../../net/sf/saxon/expr/sort/IntSet.html" title="interface in net.sf.saxon.expr.sort">IntSet</A> placeMarkers) throws <A HREF="../../../../../net/sf/saxon/trans/XPathException.html" title="class in net.sf.saxon.trans">XPathException</A></PRE> <DL> <DD>Process a function call in which one or more of the argument positions are represented as "?" placemarkers (indicating partial application or currying) <P> <DD><DL> <DT><B>Parameters:</B><DD><CODE>offset</CODE> - the position of the expression in the source text<DD><CODE>name</CODE> - the function name (as if there were no currying)<DD><CODE>args</CODE> - the arguments (with EmptySequence in the placemarker positions)<DD><CODE>placeMarkers</CODE> - the positions of the placemarkers @return the curried function <DT><B>Returns:</B><DD>the curried function <DT><B>Throws:</B> <DD><CODE><A HREF="../../../../../net/sf/saxon/trans/XPathException.html" title="class in net.sf.saxon.trans">XPathException</A></CODE> - if a static error is found</DL> </DD> </DL> <HR> <A NAME="getRangeVariables()"><!-- --></A><H3> getRangeVariables</H3> <PRE> public <A HREF="http://download.oracle.com/javase/6/docs/api/java/util/Stack.html?is-external=true" title="class or interface in java.util">Stack</A><<A HREF="../../../../../net/sf/saxon/expr/Binding.html" title="interface in net.sf.saxon.expr">Binding</A>> <B>getRangeVariables</B>()</PRE> <DL> <DD>Get the stack of in-scope range variables <P> <DD><DL> <DT><B>Returns:</B><DD>the stack of variables</DL> </DD> </DL> <HR> <A NAME="setRangeVariables(java.util.Stack)"><!-- --></A><H3> setRangeVariables</H3> <PRE> public void <B>setRangeVariables</B>(<A HREF="http://download.oracle.com/javase/6/docs/api/java/util/Stack.html?is-external=true" title="class or interface in java.util">Stack</A><<A HREF="../../../../../net/sf/saxon/expr/Binding.html" title="interface in net.sf.saxon.expr">Binding</A>> variables)</PRE> <DL> <DD>Set a new stack of in-scope range variables <P> <DD><DL> <DT><B>Parameters:</B><DD><CODE>variables</CODE> - the stack of variables</DL> </DD> </DL> <HR> <A NAME="declareRangeVariable(net.sf.saxon.expr.Binding)"><!-- --></A><H3> declareRangeVariable</H3> <PRE> public void <B>declareRangeVariable</B>(<A HREF="../../../../../net/sf/saxon/expr/Binding.html" title="interface in net.sf.saxon.expr">Binding</A> declaration) throws <A HREF="../../../../../net/sf/saxon/trans/XPathException.html" title="class in net.sf.saxon.trans">XPathException</A></PRE> <DL> <DD>Declare a range variable (record its existence within the parser). A range variable is a variable declared within an expression, as distinct from a variable declared in the context. <P> <DD><DL> <DT><B>Parameters:</B><DD><CODE>declaration</CODE> - the variable declaration to be added to the stack <DT><B>Throws:</B> <DD><CODE><A HREF="../../../../../net/sf/saxon/trans/XPathException.html" title="class in net.sf.saxon.trans">XPathException</A></CODE> - if any error is encountered</DL> </DD> </DL> <HR> <A NAME="undeclareRangeVariable()"><!-- --></A><H3> undeclareRangeVariable</H3> <PRE> public void <B>undeclareRangeVariable</B>()</PRE> <DL> <DD>Note when the most recently declared range variable has gone out of scope <P> <DD><DL> </DL> </DD> </DL> <HR> <A NAME="findRangeVariable(net.sf.saxon.om.StructuredQName)"><!-- --></A><H3> findRangeVariable</H3> <PRE> protected <A HREF="../../../../../net/sf/saxon/expr/Binding.html" title="interface in net.sf.saxon.expr">Binding</A> <B>findRangeVariable</B>(<A HREF="../../../../../net/sf/saxon/om/StructuredQName.html" title="class in net.sf.saxon.om">StructuredQName</A> qName)</PRE> <DL> <DD>Locate a range variable with a given name. (By "range variable", we mean a variable declared within the expression where it is used.) <P> <DD><DL> <DT><B>Parameters:</B><DD><CODE>qName</CODE> - identifies the name of the range variable <DT><B>Returns:</B><DD>null if not found (this means the variable is probably a context variable); otherwise the relevant RangeVariable</DL> </DD> </DL> <HR> <A NAME="setRangeVariableStack(java.util.Stack)"><!-- --></A><H3> setRangeVariableStack</H3> <PRE> public void <B>setRangeVariableStack</B>(<A HREF="http://download.oracle.com/javase/6/docs/api/java/util/Stack.html?is-external=true" title="class or interface in java.util">Stack</A><<A HREF="../../../../../net/sf/saxon/expr/Binding.html" title="interface in net.sf.saxon.expr">Binding</A>> stack)</PRE> <DL> <DD>Set the range variable stack. Used when parsing a nested subexpression inside an attribute constructor. <P> <DD><DL> <DT><B>Parameters:</B><DD><CODE>stack</CODE> - the stack to be used for local variables declared within the expression</DL> </DD> </DL> <HR> <A NAME="makeNameCode(java.lang.String, boolean)"><!-- --></A><H3> makeNameCode</H3> <PRE> public final int <B>makeNameCode</B>(<A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A> qname, boolean useDefault) throws <A HREF="../../../../../net/sf/saxon/trans/XPathException.html" title="class in net.sf.saxon.trans">XPathException</A></PRE> <DL> <DD>Make a NameCode, using the static context for namespace resolution <P> <DD><DL> <DT><B>Parameters:</B><DD><CODE>qname</CODE> - The name as written, in the form "[prefix:]localname"; alternatively, a QName in Clark notation ({uri}local)<DD><CODE>useDefault</CODE> - Defines the action when there is no prefix. If true, use the default namespace URI for element names. If false, use no namespace URI (as for attribute names). <DT><B>Returns:</B><DD>the namecode, which can be used to identify this name in the name pool <DT><B>Throws:</B> <DD><CODE><A HREF="../../../../../net/sf/saxon/trans/XPathException.html" title="class in net.sf.saxon.trans">XPathException</A></CODE> - if the name is invalid, or the prefix undeclared</DL> </DD> </DL> <HR> <A NAME="makeNameCodeSilently(java.lang.String, boolean)"><!-- --></A><H3> makeNameCodeSilently</H3> <PRE> public final int <B>makeNameCodeSilently</B>(<A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A> qname, boolean useDefault) throws <A HREF="../../../../../net/sf/saxon/trans/XPathException.html" title="class in net.sf.saxon.trans">XPathException</A>, <A HREF="../../../../../net/sf/saxon/om/QNameException.html" title="class in net.sf.saxon.om">QNameException</A></PRE> <DL> <DD>Make a NameCode, using the static context for namespace resolution. This variant of the method does not call "grumble" to report any errors to the ErrorListener, it only reports errors by throwing exceptions. This allows the caller to control the message output. <P> <DD><DL> <DT><B>Parameters:</B><DD><CODE>qname</CODE> - The name as written, in the form "[prefix:]localname"<DD><CODE>useDefault</CODE> - Defines the action when there is no prefix. If true, use the default namespace URI for element names. If false, use no namespace URI (as for attribute names). <DT><B>Returns:</B><DD>the namecode, which can be used to identify this name in the name pool <DT><B>Throws:</B> <DD><CODE><A HREF="../../../../../net/sf/saxon/trans/XPathException.html" title="class in net.sf.saxon.trans">XPathException</A></CODE> - if the name is invalid, or the prefix undeclared <DD><CODE><A HREF="../../../../../net/sf/saxon/om/QNameException.html" title="class in net.sf.saxon.om">QNameException</A></CODE> - if the name is not a lexically valid QName</DL> </DD> </DL> <HR> <A NAME="makeStructuredQName(java.lang.String, boolean)"><!-- --></A><H3> makeStructuredQName</H3> <PRE> public final <A HREF="../../../../../net/sf/saxon/om/StructuredQName.html" title="class in net.sf.saxon.om">StructuredQName</A> <B>makeStructuredQName</B>(<A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A> qname, boolean useDefault) throws <A HREF="../../../../../net/sf/saxon/trans/XPathException.html" title="class in net.sf.saxon.trans">XPathException</A></PRE> <DL> <DD>Make a Structured QName, using the static context for namespace resolution <P> <DD><DL> <DT><B>Parameters:</B><DD><CODE>qname</CODE> - The name as written, in the form "[prefix:]localname"; alternatively, a QName in Clark format ({uri}local)<DD><CODE>useDefault</CODE> - Defines the action when there is no prefix. If true, use the default namespace URI for element names. If false, use no namespace URI (as for attribute names). <DT><B>Returns:</B><DD>the QName as an instance of StructuredQName <DT><B>Throws:</B> <DD><CODE><A HREF="../../../../../net/sf/saxon/trans/XPathException.html" title="class in net.sf.saxon.trans">XPathException</A></CODE> - if the name is invalid, or the prefix undeclared</DL> </DD> </DL> <HR> <A NAME="makeNodeName(java.lang.String, boolean)"><!-- --></A><H3> makeNodeName</H3> <PRE> public final <A HREF="../../../../../net/sf/saxon/om/NodeName.html" title="interface in net.sf.saxon.om">NodeName</A> <B>makeNodeName</B>(<A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A> qname, boolean useDefault) throws <A HREF="../../../../../net/sf/saxon/trans/XPathException.html" title="class in net.sf.saxon.trans">XPathException</A>, <A HREF="../../../../../net/sf/saxon/om/QNameException.html" title="class in net.sf.saxon.om">QNameException</A></PRE> <DL> <DD>Make a FingerprintedQName, using the static context for namespace resolution <P> <DD><DL> <DT><B>Parameters:</B><DD><CODE>qname</CODE> - The name as written, in the form "[prefix:]localname"; alternatively, a QName in Clark format ({uri}local)<DD><CODE>useDefault</CODE> - Defines the action when there is no prefix. If true, use the default namespace URI for element names. If false, use no namespace URI (as for attribute names). <DT><B>Returns:</B><DD>the fingerprinted QName <DT><B>Throws:</B> <DD><CODE><A HREF="../../../../../net/sf/saxon/trans/XPathException.html" title="class in net.sf.saxon.trans">XPathException</A></CODE> - if the name is invalid, or the prefix undeclared <DD><CODE><A HREF="../../../../../net/sf/saxon/om/QNameException.html" title="class in net.sf.saxon.om">QNameException</A></CODE> - if the supplied qname is not a lexically valid QName</DL> </DD> </DL> <HR> <A NAME="makeNameTest(short, java.lang.String, boolean)"><!-- --></A><H3> makeNameTest</H3> <PRE> public <A HREF="../../../../../net/sf/saxon/pattern/NameTest.html" title="class in net.sf.saxon.pattern">NameTest</A> <B>makeNameTest</B>(short nodeType, <A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A> qname, boolean useDefault) throws <A HREF="../../../../../net/sf/saxon/trans/XPathException.html" title="class in net.sf.saxon.trans">XPathException</A></PRE> <DL> <DD>Make a NameTest, using the static context for namespace resolution <P> <DD><DL> <DT><B>Parameters:</B><DD><CODE>nodeType</CODE> - the type of node required (identified by a constant in class Type)<DD><CODE>qname</CODE> - the lexical QName of the required node; alternatively, a QName in Clark notation ({uri}local)<DD><CODE>useDefault</CODE> - true if the default namespace should be used when the QName is unprefixed <DT><B>Returns:</B><DD>a NameTest, representing a pattern that tests for a node of a given node kind and a given name <DT><B>Throws:</B> <DD><CODE><A HREF="../../../../../net/sf/saxon/trans/XPathException.html" title="class in net.sf.saxon.trans">XPathException</A></CODE> - if the QName is invalid</DL> </DD> </DL> <HR> <A NAME="makeNamespaceTest(short, java.lang.String)"><!-- --></A><H3> makeNamespaceTest</H3> <PRE> public <A HREF="../../../../../net/sf/saxon/pattern/NamespaceTest.html" title="class in net.sf.saxon.pattern">NamespaceTest</A> <B>makeNamespaceTest</B>(short nodeType, <A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A> prefix) throws <A HREF="../../../../../net/sf/saxon/trans/XPathException.html" title="class in net.sf.saxon.trans">XPathException</A></PRE> <DL> <DD>Make a NamespaceTest (name:*) <P> <DD><DL> <DT><B>Parameters:</B><DD><CODE>nodeType</CODE> - integer code identifying the type of node required<DD><CODE>prefix</CODE> - the namespace prefix <DT><B>Returns:</B><DD>the NamespaceTest, a pattern that matches all nodes in this namespace <DT><B>Throws:</B> <DD><CODE><A HREF="../../../../../net/sf/saxon/trans/XPathException.html" title="class in net.sf.saxon.trans">XPathException</A></CODE> - if the namespace prefix is not declared</DL> </DD> </DL> <HR> <A NAME="makeLocalNameTest(short, java.lang.String)"><!-- --></A><H3> makeLocalNameTest</H3> <PRE> public <A HREF="../../../../../net/sf/saxon/pattern/LocalNameTest.html" title="class in net.sf.saxon.pattern">LocalNameTest</A> <B>makeLocalNameTest</B>(short nodeType, <A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A> localName) throws <A HREF="../../../../../net/sf/saxon/trans/XPathException.html" title="class in net.sf.saxon.trans">XPathException</A></PRE> <DL> <DD>Make a LocalNameTest (*:name) <P> <DD><DL> <DT><B>Parameters:</B><DD><CODE>nodeType</CODE> - the kind of node to be matched<DD><CODE>localName</CODE> - the requred local name <DT><B>Returns:</B><DD>a LocalNameTest, a pattern which matches all nodes of a given local name, regardless of namespace <DT><B>Throws:</B> <DD><CODE><A HREF="../../../../../net/sf/saxon/trans/XPathException.html" title="class in net.sf.saxon.trans">XPathException</A></CODE> - if the local name is invalid</DL> </DD> </DL> <HR> <A NAME="setLocation(net.sf.saxon.expr.Expression)"><!-- --></A><H3> setLocation</H3> <PRE> protected void <B>setLocation</B>(<A HREF="../../../../../net/sf/saxon/expr/Expression.html" title="class in net.sf.saxon.expr">Expression</A> exp)</PRE> <DL> <DD>Set location information on an expression. At present this consists of a simple line number. Needed mainly for XQuery. <P> <DD><DL> <DT><B>Parameters:</B><DD><CODE>exp</CODE> - the expression whose location information is to be set</DL> </DD> </DL> <HR> <A NAME="setLocation(net.sf.saxon.expr.Expression, int)"><!-- --></A><H3> setLocation</H3> <PRE> public void <B>setLocation</B>(<A HREF="../../../../../net/sf/saxon/expr/Expression.html" title="class in net.sf.saxon.expr">Expression</A> exp, int offset)</PRE> <DL> <DD>Set location information on an expression. At present only the line number is retained. Needed mainly for XQuery. This version of the method supplies an explicit offset (character position within the expression or query), which the tokenizer can convert to a line number and column number. <P> <DD><DL> <DT><B>Parameters:</B><DD><CODE>exp</CODE> - the expression whose location information is to be set<DD><CODE>offset</CODE> - the character position within the expression (ignoring newlines)</DL> </DD> </DL> <HR> <A NAME="makeTracer(int, net.sf.saxon.expr.Expression, int, net.sf.saxon.om.StructuredQName)"><!-- --></A><H3> makeTracer</H3> <PRE> public <A HREF="../../../../../net/sf/saxon/expr/Expression.html" title="class in net.sf.saxon.expr">Expression</A> <B>makeTracer</B>(int startOffset, <A HREF="../../../../../net/sf/saxon/expr/Expression.html" title="class in net.sf.saxon.expr">Expression</A> exp, int construct, <A HREF="../../../../../net/sf/saxon/om/StructuredQName.html" title="class in net.sf.saxon.om">StructuredQName</A> qName)</PRE> <DL> <DD>If tracing, wrap an expression in a trace instruction <P> <DD><DL> <DT><B>Parameters:</B><DD><CODE>startOffset</CODE> - the position of the expression in the soruce<DD><CODE>exp</CODE> - the expression to be wrapped<DD><CODE>construct</CODE> - integer constant identifying the kind of construct<DD><CODE>qName</CODE> - the name of the construct (if applicable) <DT><B>Returns:</B><DD>the expression that does the tracing</DL> </DD> </DL> <HR> <A NAME="isKeyword(java.lang.String)"><!-- --></A><H3> isKeyword</H3> <PRE> protected boolean <B>isKeyword</B>(<A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A> s)</PRE> <DL> <DD>Test whether the current token is a given keyword. <P> <DD><DL> <DT><B>Parameters:</B><DD><CODE>s</CODE> - The string to be compared with the current token <DT><B>Returns:</B><DD>true if they are the same</DL> </DD> </DL> <HR> <A NAME="normalizeEQName(java.lang.String)"><!-- --></A><H3> normalizeEQName</H3> <PRE> protected <A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A> <B>normalizeEQName</B>(<A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A> s) throws <A HREF="../../../../../net/sf/saxon/trans/XPathException.html" title="class in net.sf.saxon.trans">XPathException</A></PRE> <DL> <DD>Normalize an EQName. This is written in the source code in the form "uri":local, but by the time it gets here it has been converted to Clark format {uri}local. This method collapses whitespace within the URI <P> <DD><DL> <DT><B>Parameters:</B><DD><CODE>s</CODE> - the EQName in the form of a Clark name <DT><B>Returns:</B><DD>the normalized EQName <DT><B>Throws:</B> <DD><CODE><A HREF="../../../../../net/sf/saxon/trans/XPathException.html" title="class in net.sf.saxon.trans">XPathException</A></CODE> - so that the XQuery implementation in a subclass can do so.</DL> </DD> </DL> <HR> <A NAME="setScanOnly(boolean)"><!-- --></A><H3> setScanOnly</H3> <PRE> public void <B>setScanOnly</B>(boolean scanOnly)</PRE> <DL> <DD>Set that we are parsing in "scan only" <P> <DD><DL> <DT><B>Parameters:</B><DD><CODE>scanOnly</CODE> - true if parsing is to proceed in scan-only mode. In this mode namespace bindings are not yet known, so no attempt is made to look up namespace prefixes.</DL> </DD> </DL> <!-- ========= END OF CLASS DATA ========= --> <HR> <!-- ======= START OF BOTTOM NAVBAR ====== --> <A NAME="navbar_bottom"><!-- --></A> <A HREF="#skip-navbar_bottom" title="Skip navigation links"></A> <TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY=""> <TR> <TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A NAME="navbar_bottom_firstrow"><!-- --></A> <TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY=""> <TR ALIGN="center" VALIGN="top"> <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A> </TD> <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A> </TD> <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> <FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT> </TD> <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A> </TD> <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A> </TD> <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A> </TD> <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A> </TD> </TR> </TABLE> </TD> <TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM> </EM> </TD> </TR> <TR> <TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2"> <A HREF="../../../../../net/sf/saxon/expr/parser/ExpressionLocation.html" title="class in net.sf.saxon.expr.parser"><B>PREV CLASS</B></A> <A HREF="../../../../../net/sf/saxon/expr/parser/ExpressionParser.TemporaryContainer.html" title="class in net.sf.saxon.expr.parser"><B>NEXT CLASS</B></A></FONT></TD> <TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2"> <A HREF="../../../../../index.html?net/sf/saxon/expr/parser/ExpressionParser.html" target="_top"><B>FRAMES</B></A> <A HREF="ExpressionParser.html" target="_top"><B>NO FRAMES</B></A> <SCRIPT type="text/javascript"> <!-- if(window==top) { document.writeln('<A HREF="../../../../../allclasses-noframe.html"><B>All Classes</B></A>'); } //--> </SCRIPT> <NOSCRIPT> <A HREF="../../../../../allclasses-noframe.html"><B>All Classes</B></A> </NOSCRIPT> </FONT></TD> </TR> <TR> <TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2"> SUMMARY: <A HREF="#nested_class_summary">NESTED</A> | <A HREF="#field_summary">FIELD</A> | <A HREF="#constructor_summary">CONSTR</A> | <A HREF="#method_summary">METHOD</A></FONT></TD> <TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2"> DETAIL: <A HREF="#field_detail">FIELD</A> | <A HREF="#constructor_detail">CONSTR</A> | <A HREF="#method_detail">METHOD</A></FONT></TD> </TR> </TABLE> <A NAME="skip-navbar_bottom"></A> <!-- ======== END OF BOTTOM NAVBAR ======= --> <HR> Copyright (c) 2004-2011 Saxonica Limited. All rights reserved. </BODY> </HTML>