Sophie

Sophie

distrib > Mageia > 7 > i586 > by-pkgid > b3bdfe6d859a3d6920ff2c44b38e9a6f > files > 1963

saxon-manual-9.4.0.9-2.mga7.noarch.rpm

<!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>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
  </TR>
</TABLE>
</TD>
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
</EM>
</TD>
</TR>

<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
&nbsp;<A HREF="../../../../../net/sf/saxon/expr/parser/ExpressionLocation.html" title="class in net.sf.saxon.expr.parser"><B>PREV CLASS</B></A>&nbsp;
&nbsp;<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>  &nbsp;
&nbsp;<A HREF="ExpressionParser.html" target="_top"><B>NO FRAMES</B></A>  &nbsp;
&nbsp;<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:&nbsp;<A HREF="#nested_class_summary">NESTED</A>&nbsp;|&nbsp;<A HREF="#field_summary">FIELD</A>&nbsp;|&nbsp;<A HREF="#constructor_summary">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
DETAIL:&nbsp;<A HREF="#field_detail">FIELD</A>&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&nbsp;|&nbsp;<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&nbsp;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>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;A Container used on a temporary basis to hold an expression while it is being parsed</TD>
</TR>
</TABLE>
&nbsp;<!-- =========== 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 &nbsp;boolean</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../net/sf/saxon/expr/parser/ExpressionParser.html#allowXPath30Syntax">allowXPath30Syntax</A></B></CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>protected &nbsp;<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>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>protected &nbsp;<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>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>protected &nbsp;int</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../net/sf/saxon/expr/parser/ExpressionParser.html#language">language</A></B></CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>protected &nbsp;<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>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>protected &nbsp;<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>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>protected &nbsp;<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>&lt;<A HREF="../../../../../net/sf/saxon/expr/Binding.html" title="interface in net.sf.saxon.expr">Binding</A>&gt;</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../net/sf/saxon/expr/parser/ExpressionParser.html#rangeVariables">rangeVariables</A></B></CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>protected &nbsp;boolean</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../net/sf/saxon/expr/parser/ExpressionParser.html#scanOnly">scanOnly</A></B></CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;int</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../net/sf/saxon/expr/parser/ExpressionParser.html#SEQUENCE_TYPE">SEQUENCE_TYPE</A></B></CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>protected &nbsp;<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>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;int</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../net/sf/saxon/expr/parser/ExpressionParser.html#XPATH">XPATH</A></B></CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;int</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../net/sf/saxon/expr/parser/ExpressionParser.html#XQUERY">XQUERY</A></B></CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;int</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../net/sf/saxon/expr/parser/ExpressionParser.html#XSLT_PATTERN">XSLT_PATTERN</A></B></CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
</TABLE>
&nbsp;
<!-- ======== 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>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Create an expression parser</TD>
</TR>
</TABLE>
&nbsp;
<!-- ========== 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 &nbsp;boolean</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../net/sf/saxon/expr/parser/ExpressionParser.html#atStartOfRelativePath()">atStartOfRelativePath</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;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 &nbsp;<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>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;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 &nbsp;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>&nbsp;t)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Callback to tailor the tokenizer</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;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>&nbsp;declaration)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;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 &nbsp;boolean</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../net/sf/saxon/expr/parser/ExpressionParser.html#disallowedAtStartOfRelativePath()">disallowedAtStartOfRelativePath</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;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>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../net/sf/saxon/expr/parser/ExpressionParser.html#expect(int)">expect</A></B>(int&nbsp;token)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;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 &nbsp;<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>&nbsp;qName)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;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>&nbsp;<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>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;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>&nbsp;<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>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;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 &nbsp;<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>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;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>&nbsp;<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>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;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>&nbsp;<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>&lt;<A HREF="../../../../../net/sf/saxon/expr/Binding.html" title="interface in net.sf.saxon.expr">Binding</A>&gt;</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../net/sf/saxon/expr/parser/ExpressionParser.html#getRangeVariables()">getRangeVariables</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;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>&nbsp;<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>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;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>&nbsp;<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>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Get the tokenizer (the lexical analyzer)</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;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>&nbsp;message)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;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>&nbsp;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>&nbsp;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>&nbsp;errorCode)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Report a static error</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;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>&nbsp;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>&nbsp;errorCode,
        int&nbsp;offset)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;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 &nbsp;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>&nbsp;message,
        <A HREF="../../../../../net/sf/saxon/om/StructuredQName.html" title="class in net.sf.saxon.om">StructuredQName</A>&nbsp;errorCode,
        int&nbsp;offset)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Report a static error</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;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>&nbsp;error)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>protected &nbsp;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>&nbsp;s)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;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 &nbsp;boolean</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../net/sf/saxon/expr/parser/ExpressionParser.html#isNamespaceTestAllowed()">isNamespaceTestAllowed</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;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 &nbsp;<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&nbsp;offset,
                    <A HREF="../../../../../net/sf/saxon/om/StructuredQName.html" title="class in net.sf.saxon.om">StructuredQName</A>&nbsp;name,
                    <A HREF="../../../../../net/sf/saxon/expr/Expression.html" title="class in net.sf.saxon.expr">Expression</A>[]&nbsp;args,
                    <A HREF="../../../../../net/sf/saxon/expr/sort/IntSet.html" title="interface in net.sf.saxon.expr.sort">IntSet</A>&nbsp;placeMarkers)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;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>&nbsp;<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&nbsp;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>&nbsp;localName)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Make a LocalNameTest (*:name)</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;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>&nbsp;qname,
             boolean&nbsp;useDefault)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;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>&nbsp;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>&nbsp;qname,
                     boolean&nbsp;useDefault)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;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>&nbsp;<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&nbsp;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>&nbsp;prefix)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Make a NamespaceTest (name:*)</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<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&nbsp;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>&nbsp;qname,
             boolean&nbsp;useDefault)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;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>&nbsp;<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>&nbsp;qname,
             boolean&nbsp;useDefault)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;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 &nbsp;<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>&nbsp;currentTokenValue)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;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>&nbsp;<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>&nbsp;qname,
                    boolean&nbsp;useDefault)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;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>&nbsp;<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&nbsp;startOffset,
           <A HREF="../../../../../net/sf/saxon/expr/Expression.html" title="class in net.sf.saxon.expr">Expression</A>&nbsp;exp,
           int&nbsp;construct,
           <A HREF="../../../../../net/sf/saxon/om/StructuredQName.html" title="class in net.sf.saxon.om">StructuredQName</A>&nbsp;qName)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;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>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../net/sf/saxon/expr/parser/ExpressionParser.html#nextToken()">nextToken</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;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 &nbsp;<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>&nbsp;s)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Normalize an EQName.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<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>&nbsp;expression,
      int&nbsp;start,
      int&nbsp;terminator,
      int&nbsp;lineNumber,
      <A HREF="../../../../../net/sf/saxon/expr/StaticContext.html" title="interface in net.sf.saxon.expr">StaticContext</A>&nbsp;env)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;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 &nbsp;<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&nbsp;firstInPattern)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;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>&nbsp;<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>&nbsp;lhs,
                      int&nbsp;minPrecedence)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;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 &nbsp;<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>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Parse a node constructor.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>protected &nbsp;<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>&nbsp;functionItem)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Parse a dynamic function call</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<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>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;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>&nbsp;<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>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Parse an ExprSingle</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>protected &nbsp;<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>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;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 &nbsp;<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>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;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>&nbsp;<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>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;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 &nbsp;<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>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Parse a function call.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>protected &nbsp;<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>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;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 &nbsp;<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>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;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>&nbsp;<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>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;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 &nbsp;<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>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;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 &nbsp;<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>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Parse a map expression.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>protected &nbsp;<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>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;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 &nbsp;<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&nbsp;nodeType)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Parse a NodeTest.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>protected &nbsp;<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>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>protected &nbsp;<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>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;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 &nbsp;<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>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Parse a PathExpresssion.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>protected &nbsp;<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>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;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 &nbsp;<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>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;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 &nbsp;<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>&nbsp;start)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;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>&nbsp;<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>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Parse the sequence type production.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<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>&nbsp;input,
                  <A HREF="../../../../../net/sf/saxon/expr/StaticContext.html" title="interface in net.sf.saxon.expr">StaticContext</A>&nbsp;env)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;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 &nbsp;<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&nbsp;firstInPattern)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;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 &nbsp;<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>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>protected &nbsp;<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>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Parse a Switch Expression.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>protected &nbsp;<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>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;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 &nbsp;<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>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;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 &nbsp;<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>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Parse a Typeswitch Expression.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>protected &nbsp;<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>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Parse a Validate Expression.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>protected &nbsp;<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>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<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&nbsp;offset,
                      <A HREF="../../../../../net/sf/saxon/om/StructuredQName.html" title="class in net.sf.saxon.om">StructuredQName</A>&nbsp;functionName,
                      <A HREF="../../../../../net/sf/saxon/expr/Expression.html" title="class in net.sf.saxon.expr">Expression</A>[]&nbsp;arguments)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>protected &nbsp;<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>&nbsp;fname)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;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>&nbsp;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>&nbsp;injector)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;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>&nbsp;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>&nbsp;container)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;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>&nbsp;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&nbsp;language,
            <A HREF="../../../../../net/sf/saxon/value/DecimalValue.html" title="class in net.sf.saxon.value">DecimalValue</A>&nbsp;version)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;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 &nbsp;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>&nbsp;exp)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Set location information on an expression.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;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>&nbsp;exp,
            int&nbsp;offset)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Set location information on an expression.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;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>&lt;<A HREF="../../../../../net/sf/saxon/expr/Binding.html" title="interface in net.sf.saxon.expr">Binding</A>&gt;&nbsp;variables)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;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>&nbsp;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>&lt;<A HREF="../../../../../net/sf/saxon/expr/Binding.html" title="interface in net.sf.saxon.expr">Binding</A>&gt;&nbsp;stack)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Set the range variable stack.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../net/sf/saxon/expr/parser/ExpressionParser.html#setScanOnly(boolean)">setScanOnly</A></B>(boolean&nbsp;scanOnly)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;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>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../net/sf/saxon/expr/parser/ExpressionParser.html#undeclareRangeVariable()">undeclareRangeVariable</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;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 &nbsp;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>&nbsp;message)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Output a warning message</TD>
</TR>
</TABLE>
&nbsp;<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>
&nbsp;
<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>&lt;<A HREF="../../../../../net/sf/saxon/expr/Binding.html" title="interface in net.sf.saxon.expr">Binding</A>&gt; <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>&nbsp;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>&nbsp;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&nbsp;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>&nbsp;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>&nbsp;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>&nbsp;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>&nbsp;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>&nbsp;errorCode,
                    int&nbsp;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>&nbsp;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>&nbsp;message,
                       <A HREF="../../../../../net/sf/saxon/om/StructuredQName.html" title="class in net.sf.saxon.om">StructuredQName</A>&nbsp;errorCode,
                       int&nbsp;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>&nbsp;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&nbsp;language,
                        <A HREF="../../../../../net/sf/saxon/value/DecimalValue.html" title="class in net.sf.saxon.value">DecimalValue</A>&nbsp;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>&nbsp;expression,
                        int&nbsp;start,
                        int&nbsp;terminator,
                        int&nbsp;lineNumber,
                        <A HREF="../../../../../net/sf/saxon/expr/StaticContext.html" title="interface in net.sf.saxon.expr">StaticContext</A>&nbsp;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>&nbsp;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>&nbsp;input,
                                      <A HREF="../../../../../net/sf/saxon/expr/StaticContext.html" title="interface in net.sf.saxon.expr">StaticContext</A>&nbsp;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>&nbsp;lhs,
                                        int&nbsp;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>&nbsp;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&nbsp;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&nbsp;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>&nbsp;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>&nbsp;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&nbsp;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&nbsp;offset,
                                        <A HREF="../../../../../net/sf/saxon/om/StructuredQName.html" title="class in net.sf.saxon.om">StructuredQName</A>&nbsp;functionName,
                                        <A HREF="../../../../../net/sf/saxon/expr/Expression.html" title="class in net.sf.saxon.expr">Expression</A>[]&nbsp;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>&nbsp;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&nbsp;offset,
                                         <A HREF="../../../../../net/sf/saxon/om/StructuredQName.html" title="class in net.sf.saxon.om">StructuredQName</A>&nbsp;name,
                                         <A HREF="../../../../../net/sf/saxon/expr/Expression.html" title="class in net.sf.saxon.expr">Expression</A>[]&nbsp;args,
                                         <A HREF="../../../../../net/sf/saxon/expr/sort/IntSet.html" title="interface in net.sf.saxon.expr.sort">IntSet</A>&nbsp;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>&lt;<A HREF="../../../../../net/sf/saxon/expr/Binding.html" title="interface in net.sf.saxon.expr">Binding</A>&gt; <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>&lt;<A HREF="../../../../../net/sf/saxon/expr/Binding.html" title="interface in net.sf.saxon.expr">Binding</A>&gt;&nbsp;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>&nbsp;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>&nbsp;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>&lt;<A HREF="../../../../../net/sf/saxon/expr/Binding.html" title="interface in net.sf.saxon.expr">Binding</A>&gt;&nbsp;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>&nbsp;qname,
                              boolean&nbsp;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>&nbsp;qname,
                                      boolean&nbsp;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>&nbsp;qname,
                                                 boolean&nbsp;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>&nbsp;qname,
                                   boolean&nbsp;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&nbsp;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>&nbsp;qname,
                             boolean&nbsp;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&nbsp;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>&nbsp;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&nbsp;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>&nbsp;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>&nbsp;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>&nbsp;exp,
                        int&nbsp;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&nbsp;startOffset,
                             <A HREF="../../../../../net/sf/saxon/expr/Expression.html" title="class in net.sf.saxon.expr">Expression</A>&nbsp;exp,
                             int&nbsp;construct,
                             <A HREF="../../../../../net/sf/saxon/om/StructuredQName.html" title="class in net.sf.saxon.om">StructuredQName</A>&nbsp;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>&nbsp;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>&nbsp;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&nbsp;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>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
  </TR>
</TABLE>
</TD>
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
</EM>
</TD>
</TR>

<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
&nbsp;<A HREF="../../../../../net/sf/saxon/expr/parser/ExpressionLocation.html" title="class in net.sf.saxon.expr.parser"><B>PREV CLASS</B></A>&nbsp;
&nbsp;<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>  &nbsp;
&nbsp;<A HREF="ExpressionParser.html" target="_top"><B>NO FRAMES</B></A>  &nbsp;
&nbsp;<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:&nbsp;<A HREF="#nested_class_summary">NESTED</A>&nbsp;|&nbsp;<A HREF="#field_summary">FIELD</A>&nbsp;|&nbsp;<A HREF="#constructor_summary">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
DETAIL:&nbsp;<A HREF="#field_detail">FIELD</A>&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&nbsp;|&nbsp;<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>