blob: 00d42c31bf343e28b5207a29d424784020b5640b [file] [log] [blame]
<!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.5.0_18) on Sun Apr 01 21:18:39 PDT 2012 -->
<TITLE>
Expression
</TITLE>
<META NAME="keywords" CONTENT="org.apache.xpath.Expression class">
<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../stylesheet.css" TITLE="Style">
<SCRIPT type="text/javascript">
function windowTitle()
{
parent.document.title="Expression";
}
</SCRIPT>
<NOSCRIPT>
</NOSCRIPT>
</HEAD>
<BODY BGCOLOR="white" onload="windowTitle();">
<!-- ========= 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="class-use/Expression.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&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="../../../org/apache/xpath/CachedXPathAPI.html" title="class in org.apache.xpath"><B>PREV CLASS</B></A>&nbsp;
&nbsp;<A HREF="../../../org/apache/xpath/ExpressionNode.html" title="interface in org.apache.xpath"><B>NEXT CLASS</B></A></FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
<A HREF="../../../index.html?org/apache/xpath/Expression.html" target="_top"><B>FRAMES</B></A> &nbsp;
&nbsp;<A HREF="Expression.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;NESTED&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">
org.apache.xpath</FONT>
<BR>
Class Expression</H2>
<PRE>
java.lang.Object
<IMG SRC="../../../resources/inherit.gif" ALT="extended by "><B>org.apache.xpath.Expression</B>
</PRE>
<DL>
<DT><B>All Implemented Interfaces:</B> <DD>java.io.Serializable, javax.xml.transform.SourceLocator, <A HREF="../../../org/apache/xpath/ExpressionNode.html" title="interface in org.apache.xpath">ExpressionNode</A>, <A HREF="../../../org/apache/xpath/XPathVisitable.html" title="interface in org.apache.xpath">XPathVisitable</A></DD>
</DL>
<DL>
<DT><B>Direct Known Subclasses:</B> <DD><A HREF="../../../org/apache/xpath/functions/Function.html" title="class in org.apache.xpath.functions">Function</A>, <A HREF="../../../org/apache/xpath/patterns/NodeTest.html" title="class in org.apache.xpath.patterns">NodeTest</A>, <A HREF="../../../org/apache/xpath/operations/Operation.html" title="class in org.apache.xpath.operations">Operation</A>, <A HREF="../../../org/apache/xpath/operations/UnaryOperation.html" title="class in org.apache.xpath.operations">UnaryOperation</A>, <A HREF="../../../org/apache/xpath/patterns/UnionPattern.html" title="class in org.apache.xpath.patterns">UnionPattern</A>, <A HREF="../../../org/apache/xpath/operations/Variable.html" title="class in org.apache.xpath.operations">Variable</A>, <A HREF="../../../org/apache/xpath/objects/XObject.html" title="class in org.apache.xpath.objects">XObject</A></DD>
</DL>
<HR>
<DL>
<DT><PRE>public abstract class <A HREF="../../../src-html/org/apache/xpath/Expression.html#line.45"><B>Expression</B></A><DT>extends java.lang.Object<DT>implements java.io.Serializable, <A HREF="../../../org/apache/xpath/ExpressionNode.html" title="interface in org.apache.xpath">ExpressionNode</A>, <A HREF="../../../org/apache/xpath/XPathVisitable.html" title="interface in org.apache.xpath">XPathVisitable</A></DL>
</PRE>
<P>
This abstract class serves as the base for all expression objects. An
Expression can be executed to return a <A HREF="../../../org/apache/xpath/objects/XObject.html" title="class in org.apache.xpath.objects"><CODE>XObject</CODE></A>,
normally has a location within a document or DOM, can send error and warning
events, and normally do not hold state and are meant to be immutable once
construction has completed. An exception to the immutibility rule is iterators
and walkers, which must be cloned in order to be used -- the original must
still be immutable.
<P>
<P>
<DL>
<DT><B>See Also:</B><DD><A HREF="../../../serialized-form.html#org.apache.xpath.Expression">Serialized Form</A></DL>
<HR>
<P>
<!-- =========== 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>private &nbsp;<A HREF="../../../org/apache/xpath/ExpressionNode.html" title="interface in org.apache.xpath">ExpressionNode</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../org/apache/xpath/Expression.html#m_parent">m_parent</A></B></CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The location where this expression was built from.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>(package private) static&nbsp;long</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../org/apache/xpath/Expression.html#serialVersionUID">serialVersionUID</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="../../../org/apache/xpath/Expression.html#Expression()">Expression</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</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>&nbsp;<A HREF="../../../org/apache/xml/dtm/DTMIterator.html" title="interface in org.apache.xml.dtm">DTMIterator</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../org/apache/xpath/Expression.html#asIterator(org.apache.xpath.XPathContext, int)">asIterator</A></B>(<A HREF="../../../org/apache/xpath/XPathContext.html" title="class in org.apache.xpath">XPathContext</A>&nbsp;xctxt,
int&nbsp;contextNode)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Given an select expression and a context, evaluate the XPath
and return the resulting iterator.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="../../../org/apache/xml/dtm/DTMIterator.html" title="interface in org.apache.xml.dtm">DTMIterator</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../org/apache/xpath/Expression.html#asIteratorRaw(org.apache.xpath.XPathContext, int)">asIteratorRaw</A></B>(<A HREF="../../../org/apache/xpath/XPathContext.html" title="class in org.apache.xpath">XPathContext</A>&nbsp;xctxt,
int&nbsp;contextNode)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Given an select expression and a context, evaluate the XPath
and return the resulting iterator, but do not clone.</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="../../../org/apache/xpath/Expression.html#asNode(org.apache.xpath.XPathContext)">asNode</A></B>(<A HREF="../../../org/apache/xpath/XPathContext.html" title="class in org.apache.xpath">XPathContext</A>&nbsp;xctxt)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Return the first node out of the nodeset, if this expression is
a nodeset 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="../../../org/apache/xpath/Expression.html#assertion(boolean, java.lang.String)">assertion</A></B>(boolean&nbsp;b,
java.lang.String&nbsp;msg)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Tell the user of an assertion error, and probably throw an
exception.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;boolean</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../org/apache/xpath/Expression.html#bool(org.apache.xpath.XPathContext)">bool</A></B>(<A HREF="../../../org/apache/xpath/XPathContext.html" title="class in org.apache.xpath">XPathContext</A>&nbsp;xctxt)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Evaluate expression to a boolean.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;boolean</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../org/apache/xpath/Expression.html#canTraverseOutsideSubtree()">canTraverseOutsideSubtree</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Tell if this expression or it's subexpressions can traverse outside
the current subtree.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>abstract &nbsp;boolean</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../org/apache/xpath/Expression.html#deepEquals(org.apache.xpath.Expression)">deepEquals</A></B>(<A HREF="../../../org/apache/xpath/Expression.html" title="class in org.apache.xpath">Expression</A>&nbsp;expr)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Compare this object with another object and see
if they are equal, include the sub heararchy.</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="../../../org/apache/xpath/Expression.html#error(org.apache.xpath.XPathContext, java.lang.String, java.lang.Object[])">error</A></B>(<A HREF="../../../org/apache/xpath/XPathContext.html" title="class in org.apache.xpath">XPathContext</A>&nbsp;xctxt,
java.lang.String&nbsp;msg,
java.lang.Object[]&nbsp;args)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Tell the user of an error, and probably throw an
exception.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>abstract &nbsp;<A HREF="../../../org/apache/xpath/objects/XObject.html" title="class in org.apache.xpath.objects">XObject</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../org/apache/xpath/Expression.html#execute(org.apache.xpath.XPathContext)">execute</A></B>(<A HREF="../../../org/apache/xpath/XPathContext.html" title="class in org.apache.xpath">XPathContext</A>&nbsp;xctxt)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Execute an expression in the XPath runtime context, and return the
result of the expression.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="../../../org/apache/xpath/objects/XObject.html" title="class in org.apache.xpath.objects">XObject</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../org/apache/xpath/Expression.html#execute(org.apache.xpath.XPathContext, boolean)">execute</A></B>(<A HREF="../../../org/apache/xpath/XPathContext.html" title="class in org.apache.xpath">XPathContext</A>&nbsp;xctxt,
boolean&nbsp;destructiveOK)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Execute an expression in the XPath runtime context, and return the
result of the expression, but tell that a "safe" object doesn't have
to be returned.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="../../../org/apache/xpath/objects/XObject.html" title="class in org.apache.xpath.objects">XObject</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../org/apache/xpath/Expression.html#execute(org.apache.xpath.XPathContext, int)">execute</A></B>(<A HREF="../../../org/apache/xpath/XPathContext.html" title="class in org.apache.xpath">XPathContext</A>&nbsp;xctxt,
int&nbsp;currentNode)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Execute an expression in the XPath runtime context, and return the
result of the expression.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="../../../org/apache/xpath/objects/XObject.html" title="class in org.apache.xpath.objects">XObject</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../org/apache/xpath/Expression.html#execute(org.apache.xpath.XPathContext, int, org.apache.xml.dtm.DTM, int)">execute</A></B>(<A HREF="../../../org/apache/xpath/XPathContext.html" title="class in org.apache.xpath">XPathContext</A>&nbsp;xctxt,
int&nbsp;currentNode,
<A HREF="../../../org/apache/xml/dtm/DTM.html" title="interface in org.apache.xml.dtm">DTM</A>&nbsp;dtm,
int&nbsp;expType)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Execute an expression in the XPath runtime context, and return the
result of the 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="../../../org/apache/xpath/Expression.html#executeCharsToContentHandler(org.apache.xpath.XPathContext, org.xml.sax.ContentHandler)">executeCharsToContentHandler</A></B>(<A HREF="../../../org/apache/xpath/XPathContext.html" title="class in org.apache.xpath">XPathContext</A>&nbsp;xctxt,
org.xml.sax.ContentHandler&nbsp;handler)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Execute an expression in the XPath runtime context, and return the
result of the 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="../../../org/apache/xpath/Expression.html#exprAddChild(org.apache.xpath.ExpressionNode, int)">exprAddChild</A></B>(<A HREF="../../../org/apache/xpath/ExpressionNode.html" title="interface in org.apache.xpath">ExpressionNode</A>&nbsp;n,
int&nbsp;i)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;This method tells the node to add its argument to the node's
list of children.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="../../../org/apache/xpath/ExpressionNode.html" title="interface in org.apache.xpath">ExpressionNode</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../org/apache/xpath/Expression.html#exprGetChild(int)">exprGetChild</A></B>(int&nbsp;i)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;This method returns a child node.</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="../../../org/apache/xpath/Expression.html#exprGetNumChildren()">exprGetNumChildren</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Return the number of children the node has.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="../../../org/apache/xpath/ExpressionNode.html" title="interface in org.apache.xpath">ExpressionNode</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../org/apache/xpath/Expression.html#exprGetParent()">exprGetParent</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;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../org/apache/xpath/Expression.html#exprSetParent(org.apache.xpath.ExpressionNode)">exprSetParent</A></B>(<A HREF="../../../org/apache/xpath/ExpressionNode.html" title="interface in org.apache.xpath">ExpressionNode</A>&nbsp;n)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;This pair of methods are used to inform the node of its
parent.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>abstract &nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../org/apache/xpath/Expression.html#fixupVariables(java.util.Vector, int)">fixupVariables</A></B>(java.util.Vector&nbsp;vars,
int&nbsp;globalsSize)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;This function is used to fixup variables from QNames to stack frame
indexes at stylesheet build time.</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="../../../org/apache/xpath/Expression.html#getColumnNumber()">getColumnNumber</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Return the character position where the current document event ends.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="../../../org/apache/xpath/ExpressionNode.html" title="interface in org.apache.xpath">ExpressionNode</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../org/apache/xpath/Expression.html#getExpressionOwner()">getExpressionOwner</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Get the first non-Expression parent of this node.</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="../../../org/apache/xpath/Expression.html#getLineNumber()">getLineNumber</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Return the line number where the current document event ends.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;java.lang.String</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../org/apache/xpath/Expression.html#getPublicId()">getPublicId</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Return the public identifier for the current document event.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;java.lang.String</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../org/apache/xpath/Expression.html#getSystemId()">getSystemId</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Return the system identifier for the current document event.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;boolean</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../org/apache/xpath/Expression.html#isNodesetExpr()">isNodesetExpr</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Tell if the expression is a nodeset expression.</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="../../../org/apache/xpath/Expression.html#isSameClass(org.apache.xpath.Expression)">isSameClass</A></B>(<A HREF="../../../org/apache/xpath/Expression.html" title="class in org.apache.xpath">Expression</A>&nbsp;expr)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;This is a utility method to tell if the passed in
class is the same class as this.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;boolean</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../org/apache/xpath/Expression.html#isStableNumber()">isStableNumber</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Tell if this expression returns a stable number that will not change during
iterations within the expression.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;double</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../org/apache/xpath/Expression.html#num(org.apache.xpath.XPathContext)">num</A></B>(<A HREF="../../../org/apache/xpath/XPathContext.html" title="class in org.apache.xpath">XPathContext</A>&nbsp;xctxt)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Evaluate expression to a number.</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="../../../org/apache/xpath/Expression.html#warn(org.apache.xpath.XPathContext, java.lang.String, java.lang.Object[])">warn</A></B>(<A HREF="../../../org/apache/xpath/XPathContext.html" title="class in org.apache.xpath">XPathContext</A>&nbsp;xctxt,
java.lang.String&nbsp;msg,
java.lang.Object[]&nbsp;args)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Warn the user of an problem.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="../../../org/apache/xml/utils/XMLString.html" title="interface in org.apache.xml.utils">XMLString</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../org/apache/xpath/Expression.html#xstr(org.apache.xpath.XPathContext)">xstr</A></B>(<A HREF="../../../org/apache/xpath/XPathContext.html" title="class in org.apache.xpath">XPathContext</A>&nbsp;xctxt)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Cast result object to a string.</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.Object</B></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE>clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait</CODE></TD>
</TR>
</TABLE>
&nbsp;<A NAME="methods_inherited_from_class_org.apache.xpath.XPathVisitable"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
<TH ALIGN="left"><B>Methods inherited from interface org.apache.xpath.<A HREF="../../../org/apache/xpath/XPathVisitable.html" title="interface in org.apache.xpath">XPathVisitable</A></B></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE><A HREF="../../../org/apache/xpath/XPathVisitable.html#callVisitors(org.apache.xpath.ExpressionOwner, org.apache.xpath.XPathVisitor)">callVisitors</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="serialVersionUID"><!-- --></A><H3>
serialVersionUID</H3>
<PRE>
static final long <A HREF="../../../src-html/org/apache/xpath/Expression.html#line.47"><B>serialVersionUID</B></A></PRE>
<DL>
<DL>
<DT><B>See Also:</B><DD><A HREF="../../../constant-values.html#org.apache.xpath.Expression.serialVersionUID">Constant Field Values</A></DL>
</DL>
<HR>
<A NAME="m_parent"><!-- --></A><H3>
m_parent</H3>
<PRE>
private <A HREF="../../../org/apache/xpath/ExpressionNode.html" title="interface in org.apache.xpath">ExpressionNode</A> <A HREF="../../../src-html/org/apache/xpath/Expression.html#line.53"><B>m_parent</B></A></PRE>
<DL>
<DD>The location where this expression was built from. Need for diagnostic
messages. May be null.
<P>
<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="Expression()"><!-- --></A><H3>
Expression</H3>
<PRE>
public <A HREF="../../../src-html/org/apache/xpath/Expression.html#line.45"><B>Expression</B></A>()</PRE>
<DL>
</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="canTraverseOutsideSubtree()"><!-- --></A><H3>
canTraverseOutsideSubtree</H3>
<PRE>
public boolean <A HREF="../../../src-html/org/apache/xpath/Expression.html#line.61"><B>canTraverseOutsideSubtree</B></A>()</PRE>
<DL>
<DD>Tell if this expression or it's subexpressions can traverse outside
the current subtree.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
<DT><B>Returns:</B><DD>true if traversal outside the context node's subtree can occur.</DL>
</DD>
</DL>
<HR>
<A NAME="execute(org.apache.xpath.XPathContext, int)"><!-- --></A><H3>
execute</H3>
<PRE>
public <A HREF="../../../org/apache/xpath/objects/XObject.html" title="class in org.apache.xpath.objects">XObject</A> <A HREF="../../../src-html/org/apache/xpath/Expression.html#line.91"><B>execute</B></A>(<A HREF="../../../org/apache/xpath/XPathContext.html" title="class in org.apache.xpath">XPathContext</A>&nbsp;xctxt,
int&nbsp;currentNode)
throws javax.xml.transform.TransformerException</PRE>
<DL>
<DD>Execute an expression in the XPath runtime context, and return the
result of the expression.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>xctxt</CODE> - The XPath runtime context.<DD><CODE>currentNode</CODE> - The currentNode.
<DT><B>Returns:</B><DD>The result of the expression in the form of a <code>XObject</code>.
<DT><B>Throws:</B>
<DD><CODE>javax.xml.transform.TransformerException</CODE> - if a runtime exception
occurs.</DL>
</DD>
</DL>
<HR>
<A NAME="execute(org.apache.xpath.XPathContext, int, org.apache.xml.dtm.DTM, int)"><!-- --></A><H3>
execute</H3>
<PRE>
public <A HREF="../../../org/apache/xpath/objects/XObject.html" title="class in org.apache.xpath.objects">XObject</A> <A HREF="../../../src-html/org/apache/xpath/Expression.html#line.114"><B>execute</B></A>(<A HREF="../../../org/apache/xpath/XPathContext.html" title="class in org.apache.xpath">XPathContext</A>&nbsp;xctxt,
int&nbsp;currentNode,
<A HREF="../../../org/apache/xml/dtm/DTM.html" title="interface in org.apache.xml.dtm">DTM</A>&nbsp;dtm,
int&nbsp;expType)
throws javax.xml.transform.TransformerException</PRE>
<DL>
<DD>Execute an expression in the XPath runtime context, and return the
result of the expression.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>xctxt</CODE> - The XPath runtime context.<DD><CODE>currentNode</CODE> - The currentNode.<DD><CODE>dtm</CODE> - The DTM of the current node.<DD><CODE>expType</CODE> - The expanded type ID of the current node.
<DT><B>Returns:</B><DD>The result of the expression in the form of a <code>XObject</code>.
<DT><B>Throws:</B>
<DD><CODE>javax.xml.transform.TransformerException</CODE> - if a runtime exception
occurs.</DL>
</DD>
</DL>
<HR>
<A NAME="execute(org.apache.xpath.XPathContext)"><!-- --></A><H3>
execute</H3>
<PRE>
public abstract <A HREF="../../../org/apache/xpath/objects/XObject.html" title="class in org.apache.xpath.objects">XObject</A> <A HREF="../../../src-html/org/apache/xpath/Expression.html#line.135"><B>execute</B></A>(<A HREF="../../../org/apache/xpath/XPathContext.html" title="class in org.apache.xpath">XPathContext</A>&nbsp;xctxt)
throws javax.xml.transform.TransformerException</PRE>
<DL>
<DD>Execute an expression in the XPath runtime context, and return the
result of the expression.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>xctxt</CODE> - The XPath runtime context.
<DT><B>Returns:</B><DD>The result of the expression in the form of a <code>XObject</code>.
<DT><B>Throws:</B>
<DD><CODE>javax.xml.transform.TransformerException</CODE> - if a runtime exception
occurs.</DL>
</DD>
</DL>
<HR>
<A NAME="execute(org.apache.xpath.XPathContext, boolean)"><!-- --></A><H3>
execute</H3>
<PRE>
public <A HREF="../../../org/apache/xpath/objects/XObject.html" title="class in org.apache.xpath.objects">XObject</A> <A HREF="../../../src-html/org/apache/xpath/Expression.html#line.152"><B>execute</B></A>(<A HREF="../../../org/apache/xpath/XPathContext.html" title="class in org.apache.xpath">XPathContext</A>&nbsp;xctxt,
boolean&nbsp;destructiveOK)
throws javax.xml.transform.TransformerException</PRE>
<DL>
<DD>Execute an expression in the XPath runtime context, and return the
result of the expression, but tell that a "safe" object doesn't have
to be returned. The default implementation just calls execute(xctxt).
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>xctxt</CODE> - The XPath runtime context.<DD><CODE>destructiveOK</CODE> - true if a "safe" object doesn't need to be returned.
<DT><B>Returns:</B><DD>The result of the expression in the form of a <code>XObject</code>.
<DT><B>Throws:</B>
<DD><CODE>javax.xml.transform.TransformerException</CODE> - if a runtime exception
occurs.</DL>
</DD>
</DL>
<HR>
<A NAME="num(org.apache.xpath.XPathContext)"><!-- --></A><H3>
num</H3>
<PRE>
public double <A HREF="../../../src-html/org/apache/xpath/Expression.html#line.168"><B>num</B></A>(<A HREF="../../../org/apache/xpath/XPathContext.html" title="class in org.apache.xpath">XPathContext</A>&nbsp;xctxt)
throws javax.xml.transform.TransformerException</PRE>
<DL>
<DD>Evaluate expression to a number.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>xctxt</CODE> - The XPath runtime context.
<DT><B>Returns:</B><DD>The expression evaluated as a double.
<DT><B>Throws:</B>
<DD><CODE>javax.xml.transform.TransformerException</CODE></DL>
</DD>
</DL>
<HR>
<A NAME="bool(org.apache.xpath.XPathContext)"><!-- --></A><H3>
bool</H3>
<PRE>
public boolean <A HREF="../../../src-html/org/apache/xpath/Expression.html#line.183"><B>bool</B></A>(<A HREF="../../../org/apache/xpath/XPathContext.html" title="class in org.apache.xpath">XPathContext</A>&nbsp;xctxt)
throws javax.xml.transform.TransformerException</PRE>
<DL>
<DD>Evaluate expression to a boolean.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>xctxt</CODE> - The XPath runtime context.
<DT><B>Returns:</B><DD>false
<DT><B>Throws:</B>
<DD><CODE>javax.xml.transform.TransformerException</CODE></DL>
</DD>
</DL>
<HR>
<A NAME="xstr(org.apache.xpath.XPathContext)"><!-- --></A><H3>
xstr</H3>
<PRE>
public <A HREF="../../../org/apache/xml/utils/XMLString.html" title="interface in org.apache.xml.utils">XMLString</A> <A HREF="../../../src-html/org/apache/xpath/Expression.html#line.198"><B>xstr</B></A>(<A HREF="../../../org/apache/xpath/XPathContext.html" title="class in org.apache.xpath">XPathContext</A>&nbsp;xctxt)
throws javax.xml.transform.TransformerException</PRE>
<DL>
<DD>Cast result object to a string.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>xctxt</CODE> - The XPath runtime context.
<DT><B>Returns:</B><DD>The string this wraps or the empty string if null
<DT><B>Throws:</B>
<DD><CODE>javax.xml.transform.TransformerException</CODE></DL>
</DD>
</DL>
<HR>
<A NAME="isNodesetExpr()"><!-- --></A><H3>
isNodesetExpr</H3>
<PRE>
public boolean <A HREF="../../../src-html/org/apache/xpath/Expression.html#line.209"><B>isNodesetExpr</B></A>()</PRE>
<DL>
<DD>Tell if the expression is a nodeset expression. In other words, tell
if you can execute <A HREF="../../../org/apache/xpath/Expression.html#asNode(org.apache.xpath.XPathContext)"><CODE>asNode</CODE></A> without an exception.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
<DT><B>Returns:</B><DD>true if the expression can be represented as a nodeset.</DL>
</DD>
</DL>
<HR>
<A NAME="asNode(org.apache.xpath.XPathContext)"><!-- --></A><H3>
asNode</H3>
<PRE>
public int <A HREF="../../../src-html/org/apache/xpath/Expression.html#line.222"><B>asNode</B></A>(<A HREF="../../../org/apache/xpath/XPathContext.html" title="class in org.apache.xpath">XPathContext</A>&nbsp;xctxt)
throws javax.xml.transform.TransformerException</PRE>
<DL>
<DD>Return the first node out of the nodeset, if this expression is
a nodeset expression.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>xctxt</CODE> - The XPath runtime context.
<DT><B>Returns:</B><DD>the first node out of the nodeset, or DTM.NULL.
<DT><B>Throws:</B>
<DD><CODE>javax.xml.transform.TransformerException</CODE></DL>
</DD>
</DL>
<HR>
<A NAME="asIterator(org.apache.xpath.XPathContext, int)"><!-- --></A><H3>
asIterator</H3>
<PRE>
public <A HREF="../../../org/apache/xml/dtm/DTMIterator.html" title="interface in org.apache.xml.dtm">DTMIterator</A> <A HREF="../../../src-html/org/apache/xpath/Expression.html#line.244"><B>asIterator</B></A>(<A HREF="../../../org/apache/xpath/XPathContext.html" title="class in org.apache.xpath">XPathContext</A>&nbsp;xctxt,
int&nbsp;contextNode)
throws javax.xml.transform.TransformerException</PRE>
<DL>
<DD>Given an select expression and a context, evaluate the XPath
and return the resulting iterator.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>xctxt</CODE> - The execution context.<DD><CODE>contextNode</CODE> - The node that "." expresses.
<DT><B>Returns:</B><DD>A valid DTMIterator.
<DT><B>Throws:</B>
<DD><CODE>javax.xml.transform.TransformerException</CODE> - thrown if the active ProblemListener decides
the error condition is severe enough to halt processing.
<DD><CODE>javax.xml.transform.TransformerException</CODE></DL>
</DD>
</DL>
<HR>
<A NAME="asIteratorRaw(org.apache.xpath.XPathContext, int)"><!-- --></A><H3>
asIteratorRaw</H3>
<PRE>
public <A HREF="../../../org/apache/xml/dtm/DTMIterator.html" title="interface in org.apache.xml.dtm">DTMIterator</A> <A HREF="../../../src-html/org/apache/xpath/Expression.html#line.275"><B>asIteratorRaw</B></A>(<A HREF="../../../org/apache/xpath/XPathContext.html" title="class in org.apache.xpath">XPathContext</A>&nbsp;xctxt,
int&nbsp;contextNode)
throws javax.xml.transform.TransformerException</PRE>
<DL>
<DD>Given an select expression and a context, evaluate the XPath
and return the resulting iterator, but do not clone.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>xctxt</CODE> - The execution context.<DD><CODE>contextNode</CODE> - The node that "." expresses.
<DT><B>Returns:</B><DD>A valid DTMIterator.
<DT><B>Throws:</B>
<DD><CODE>javax.xml.transform.TransformerException</CODE> - thrown if the active ProblemListener decides
the error condition is severe enough to halt processing.
<DD><CODE>javax.xml.transform.TransformerException</CODE></DL>
</DD>
</DL>
<HR>
<A NAME="executeCharsToContentHandler(org.apache.xpath.XPathContext, org.xml.sax.ContentHandler)"><!-- --></A><H3>
executeCharsToContentHandler</H3>
<PRE>
public void <A HREF="../../../src-html/org/apache/xpath/Expression.html#line.307"><B>executeCharsToContentHandler</B></A>(<A HREF="../../../org/apache/xpath/XPathContext.html" title="class in org.apache.xpath">XPathContext</A>&nbsp;xctxt,
org.xml.sax.ContentHandler&nbsp;handler)
throws javax.xml.transform.TransformerException,
org.xml.sax.SAXException</PRE>
<DL>
<DD>Execute an expression in the XPath runtime context, and return the
result of the expression.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>xctxt</CODE> - The XPath runtime context.
NEEDSDOC @param handler
<DT><B>Throws:</B>
<DD><CODE>javax.xml.transform.TransformerException</CODE> - if a runtime exception
occurs.
<DD><CODE>org.xml.sax.SAXException</CODE></DL>
</DD>
</DL>
<HR>
<A NAME="isStableNumber()"><!-- --></A><H3>
isStableNumber</H3>
<PRE>
public boolean <A HREF="../../../src-html/org/apache/xpath/Expression.html#line.327"><B>isStableNumber</B></A>()</PRE>
<DL>
<DD>Tell if this expression returns a stable number that will not change during
iterations within the expression. This is used to determine if a proximity
position predicate can indicate that no more searching has to occur.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
<DT><B>Returns:</B><DD>true if the expression represents a stable number.</DL>
</DD>
</DL>
<HR>
<A NAME="fixupVariables(java.util.Vector, int)"><!-- --></A><H3>
fixupVariables</H3>
<PRE>
public abstract void <A HREF="../../../src-html/org/apache/xpath/Expression.html#line.343"><B>fixupVariables</B></A>(java.util.Vector&nbsp;vars,
int&nbsp;globalsSize)</PRE>
<DL>
<DD>This function is used to fixup variables from QNames to stack frame
indexes at stylesheet build time.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>vars</CODE> - List of QNames that correspond to variables. This list
should be searched backwards for the first qualified name that
corresponds to the variable reference qname. The position of the
QName in the vector from the start of the vector will be its position
in the stack frame (but variables above the globalsTop value will need
to be offset to the current stack frame).
NEEDSDOC @param globalsSize</DL>
</DD>
</DL>
<HR>
<A NAME="deepEquals(org.apache.xpath.Expression)"><!-- --></A><H3>
deepEquals</H3>
<PRE>
public abstract boolean <A HREF="../../../src-html/org/apache/xpath/Expression.html#line.354"><B>deepEquals</B></A>(<A HREF="../../../org/apache/xpath/Expression.html" title="class in org.apache.xpath">Expression</A>&nbsp;expr)</PRE>
<DL>
<DD>Compare this object with another object and see
if they are equal, include the sub heararchy.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>expr</CODE> - Another expression object.
<DT><B>Returns:</B><DD>true if this objects class and the expr
object's class are the same, and the data contained
within both objects are considered equal.</DL>
</DD>
</DL>
<HR>
<A NAME="isSameClass(org.apache.xpath.Expression)"><!-- --></A><H3>
isSameClass</H3>
<PRE>
protected final boolean <A HREF="../../../src-html/org/apache/xpath/Expression.html#line.365"><B>isSameClass</B></A>(<A HREF="../../../org/apache/xpath/Expression.html" title="class in org.apache.xpath">Expression</A>&nbsp;expr)</PRE>
<DL>
<DD>This is a utility method to tell if the passed in
class is the same class as this. It is to be used by
the deepEquals method. I'm bottlenecking it here
because I'm not totally confident that comparing the
class objects is the best way to do this.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
<DT><B>Returns:</B><DD>true of the passed in class is the exact same
class as this class.</DL>
</DD>
</DL>
<HR>
<A NAME="warn(org.apache.xpath.XPathContext, java.lang.String, java.lang.Object[])"><!-- --></A><H3>
warn</H3>
<PRE>
public void <A HREF="../../../src-html/org/apache/xpath/Expression.html#line.388"><B>warn</B></A>(<A HREF="../../../org/apache/xpath/XPathContext.html" title="class in org.apache.xpath">XPathContext</A>&nbsp;xctxt,
java.lang.String&nbsp;msg,
java.lang.Object[]&nbsp;args)
throws javax.xml.transform.TransformerException</PRE>
<DL>
<DD>Warn the user of an problem.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>xctxt</CODE> - The XPath runtime context.<DD><CODE>msg</CODE> - An error msgkey that corresponds to one of the conststants found
in <A HREF="../../../org/apache/xpath/res/XPATHErrorResources.html" title="class in org.apache.xpath.res"><CODE>XPATHErrorResources</CODE></A>, which is
a key for a format string.<DD><CODE>args</CODE> - An array of arguments represented in the format string, which
may be null.
<DT><B>Throws:</B>
<DD><CODE>javax.xml.transform.TransformerException</CODE> - if the current ErrorListoner determines to
throw an exception.
<DD><CODE>javax.xml.transform.TransformerException</CODE></DL>
</DD>
</DL>
<HR>
<A NAME="assertion(boolean, java.lang.String)"><!-- --></A><H3>
assertion</H3>
<PRE>
public void <A HREF="../../../src-html/org/apache/xpath/Expression.html#line.414"><B>assertion</B></A>(boolean&nbsp;b,
java.lang.String&nbsp;msg)</PRE>
<DL>
<DD>Tell the user of an assertion error, and probably throw an
exception.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>b</CODE> - If false, a runtime exception will be thrown.<DD><CODE>msg</CODE> - The assertion message, which should be informative.
<DT><B>Throws:</B>
<DD><CODE>java.lang.RuntimeException</CODE> - if the b argument is false.
<DD><CODE>javax.xml.transform.TransformerException</CODE></DL>
</DD>
</DL>
<HR>
<A NAME="error(org.apache.xpath.XPathContext, java.lang.String, java.lang.Object[])"><!-- --></A><H3>
error</H3>
<PRE>
public void <A HREF="../../../src-html/org/apache/xpath/Expression.html#line.443"><B>error</B></A>(<A HREF="../../../org/apache/xpath/XPathContext.html" title="class in org.apache.xpath">XPathContext</A>&nbsp;xctxt,
java.lang.String&nbsp;msg,
java.lang.Object[]&nbsp;args)
throws javax.xml.transform.TransformerException</PRE>
<DL>
<DD>Tell the user of an error, and probably throw an
exception.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>xctxt</CODE> - The XPath runtime context.<DD><CODE>msg</CODE> - An error msgkey that corresponds to one of the constants found
in <A HREF="../../../org/apache/xpath/res/XPATHErrorResources.html" title="class in org.apache.xpath.res"><CODE>XPATHErrorResources</CODE></A>, which is
a key for a format string.<DD><CODE>args</CODE> - An array of arguments represented in the format string, which
may be null.
<DT><B>Throws:</B>
<DD><CODE>javax.xml.transform.TransformerException</CODE> - if the current ErrorListoner determines to
throw an exception.
<DD><CODE>javax.xml.transform.TransformerException</CODE></DL>
</DD>
</DL>
<HR>
<A NAME="getExpressionOwner()"><!-- --></A><H3>
getExpressionOwner</H3>
<PRE>
public <A HREF="../../../org/apache/xpath/ExpressionNode.html" title="interface in org.apache.xpath">ExpressionNode</A> <A HREF="../../../src-html/org/apache/xpath/Expression.html#line.462"><B>getExpressionOwner</B></A>()</PRE>
<DL>
<DD>Get the first non-Expression parent of this node.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
<DT><B>Returns:</B><DD>null or first ancestor that is not an Expression.</DL>
</DD>
</DL>
<HR>
<A NAME="exprSetParent(org.apache.xpath.ExpressionNode)"><!-- --></A><H3>
exprSetParent</H3>
<PRE>
public void <A HREF="../../../src-html/org/apache/xpath/Expression.html#line.474"><B>exprSetParent</B></A>(<A HREF="../../../org/apache/xpath/ExpressionNode.html" title="interface in org.apache.xpath">ExpressionNode</A>&nbsp;n)</PRE>
<DL>
<DD>This pair of methods are used to inform the node of its
parent.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../org/apache/xpath/ExpressionNode.html#exprSetParent(org.apache.xpath.ExpressionNode)">exprSetParent</A></CODE> in interface <CODE><A HREF="../../../org/apache/xpath/ExpressionNode.html" title="interface in org.apache.xpath">ExpressionNode</A></CODE></DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="exprGetParent()"><!-- --></A><H3>
exprGetParent</H3>
<PRE>
public <A HREF="../../../org/apache/xpath/ExpressionNode.html" title="interface in org.apache.xpath">ExpressionNode</A> <A HREF="../../../src-html/org/apache/xpath/Expression.html#line.480"><B>exprGetParent</B></A>()</PRE>
<DL>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../org/apache/xpath/ExpressionNode.html#exprGetParent()">exprGetParent</A></CODE> in interface <CODE><A HREF="../../../org/apache/xpath/ExpressionNode.html" title="interface in org.apache.xpath">ExpressionNode</A></CODE></DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="exprAddChild(org.apache.xpath.ExpressionNode, int)"><!-- --></A><H3>
exprAddChild</H3>
<PRE>
public void <A HREF="../../../src-html/org/apache/xpath/Expression.html#line.487"><B>exprAddChild</B></A>(<A HREF="../../../org/apache/xpath/ExpressionNode.html" title="interface in org.apache.xpath">ExpressionNode</A>&nbsp;n,
int&nbsp;i)</PRE>
<DL>
<DD>This method tells the node to add its argument to the node's
list of children.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../org/apache/xpath/ExpressionNode.html#exprAddChild(org.apache.xpath.ExpressionNode, int)">exprAddChild</A></CODE> in interface <CODE><A HREF="../../../org/apache/xpath/ExpressionNode.html" title="interface in org.apache.xpath">ExpressionNode</A></CODE></DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="exprGetChild(int)"><!-- --></A><H3>
exprGetChild</H3>
<PRE>
public <A HREF="../../../org/apache/xpath/ExpressionNode.html" title="interface in org.apache.xpath">ExpressionNode</A> <A HREF="../../../src-html/org/apache/xpath/Expression.html#line.494"><B>exprGetChild</B></A>(int&nbsp;i)</PRE>
<DL>
<DD>This method returns a child node. The children are numbered
from zero, left to right.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../org/apache/xpath/ExpressionNode.html#exprGetChild(int)">exprGetChild</A></CODE> in interface <CODE><A HREF="../../../org/apache/xpath/ExpressionNode.html" title="interface in org.apache.xpath">ExpressionNode</A></CODE></DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="exprGetNumChildren()"><!-- --></A><H3>
exprGetNumChildren</H3>
<PRE>
public int <A HREF="../../../src-html/org/apache/xpath/Expression.html#line.500"><B>exprGetNumChildren</B></A>()</PRE>
<DL>
<DD>Return the number of children the node has.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../org/apache/xpath/ExpressionNode.html#exprGetNumChildren()">exprGetNumChildren</A></CODE> in interface <CODE><A HREF="../../../org/apache/xpath/ExpressionNode.html" title="interface in org.apache.xpath">ExpressionNode</A></CODE></DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="getPublicId()"><!-- --></A><H3>
getPublicId</H3>
<PRE>
public java.lang.String <A HREF="../../../src-html/org/apache/xpath/Expression.html#line.518"><B>getPublicId</B></A>()</PRE>
<DL>
<DD>Return the public identifier for the current document event.
<p>The return value is the public identifier of the document
entity or of the external parsed entity in which the markup that
triggered the event appears.</p>
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE>getPublicId</CODE> in interface <CODE>javax.xml.transform.SourceLocator</CODE></DL>
</DD>
<DD><DL>
<DT><B>Returns:</B><DD>A string containing the public identifier, or
null if none is available.<DT><B>See Also:</B><DD><A HREF="../../../org/apache/xpath/Expression.html#getSystemId()"><CODE>getSystemId()</CODE></A></DL>
</DD>
</DL>
<HR>
<A NAME="getSystemId()"><!-- --></A><H3>
getSystemId</H3>
<PRE>
public java.lang.String <A HREF="../../../src-html/org/apache/xpath/Expression.html#line.539"><B>getSystemId</B></A>()</PRE>
<DL>
<DD>Return the system identifier for the current document event.
<p>The return value is the system identifier of the document
entity or of the external parsed entity in which the markup that
triggered the event appears.</p>
<p>If the system identifier is a URL, the parser must resolve it
fully before passing it to the application.</p>
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE>getSystemId</CODE> in interface <CODE>javax.xml.transform.SourceLocator</CODE></DL>
</DD>
<DD><DL>
<DT><B>Returns:</B><DD>A string containing the system identifier, or null
if none is available.<DT><B>See Also:</B><DD><A HREF="../../../org/apache/xpath/Expression.html#getPublicId()"><CODE>getPublicId()</CODE></A></DL>
</DD>
</DL>
<HR>
<A NAME="getLineNumber()"><!-- --></A><H3>
getLineNumber</H3>
<PRE>
public int <A HREF="../../../src-html/org/apache/xpath/Expression.html#line.561"><B>getLineNumber</B></A>()</PRE>
<DL>
<DD>Return the line number where the current document event ends.
<p><strong>Warning:</strong> The return value from the method
is intended only as an approximation for the sake of error
reporting; it is not intended to provide sufficient information
to edit the character content of the original XML document.</p>
<p>The return value is an approximation of the line number
in the document entity or external parsed entity where the
markup that triggered the event appears.</p>
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE>getLineNumber</CODE> in interface <CODE>javax.xml.transform.SourceLocator</CODE></DL>
</DD>
<DD><DL>
<DT><B>Returns:</B><DD>The line number, or -1 if none is available.<DT><B>See Also:</B><DD><A HREF="../../../org/apache/xpath/Expression.html#getColumnNumber()"><CODE>getColumnNumber()</CODE></A></DL>
</DD>
</DL>
<HR>
<A NAME="getColumnNumber()"><!-- --></A><H3>
getColumnNumber</H3>
<PRE>
public int <A HREF="../../../src-html/org/apache/xpath/Expression.html#line.583"><B>getColumnNumber</B></A>()</PRE>
<DL>
<DD>Return the character position where the current document event ends.
<p><strong>Warning:</strong> The return value from the method
is intended only as an approximation for the sake of error
reporting; it is not intended to provide sufficient information
to edit the character content of the original XML document.</p>
<p>The return value is an approximation of the column number
in the document entity or external parsed entity where the
markup that triggered the event appears.</p>
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE>getColumnNumber</CODE> in interface <CODE>javax.xml.transform.SourceLocator</CODE></DL>
</DD>
<DD><DL>
<DT><B>Returns:</B><DD>The column number, or -1 if none is available.<DT><B>See Also:</B><DD><A HREF="../../../org/apache/xpath/Expression.html#getLineNumber()"><CODE>getLineNumber()</CODE></A></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="class-use/Expression.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&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="../../../org/apache/xpath/CachedXPathAPI.html" title="class in org.apache.xpath"><B>PREV CLASS</B></A>&nbsp;
&nbsp;<A HREF="../../../org/apache/xpath/ExpressionNode.html" title="interface in org.apache.xpath"><B>NEXT CLASS</B></A></FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
<A HREF="../../../index.html?org/apache/xpath/Expression.html" target="_top"><B>FRAMES</B></A> &nbsp;
&nbsp;<A HREF="Expression.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;NESTED&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>
</BODY>
</HTML>