Sophie

Sophie

distrib > Mageia > 7 > armv7hl > by-pkgid > b3bdfe6d859a3d6920ff2c44b38e9a6f > files > 2363

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:24 GMT 2011 -->
<TITLE>
Pattern
</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="Pattern";
    }
}
</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/pattern/NodeTest.html" title="class in net.sf.saxon.pattern"><B>PREV CLASS</B></A>&nbsp;
&nbsp;<A HREF="../../../../net/sf/saxon/pattern/PatternFinder.html" title="interface in net.sf.saxon.pattern"><B>NEXT CLASS</B></A></FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
  <A HREF="../../../../index.html?net/sf/saxon/pattern/Pattern.html" target="_top"><B>FRAMES</B></A>  &nbsp;
&nbsp;<A HREF="Pattern.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;FIELD&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;FIELD&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.pattern</FONT>
<BR>
Class Pattern</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.pattern.Pattern</B>
</PRE>
<DL>
<DT><B>All Implemented Interfaces:</B> <DD><A HREF="http://download.oracle.com/javase/6/docs/api/java/io/Serializable.html?is-external=true" title="class or interface in java.io">Serializable</A>, <A HREF="http://download.oracle.com/javase/6/docs/api/javax/xml/transform/SourceLocator.html?is-external=true" title="class or interface in javax.xml.transform">SourceLocator</A>, <A HREF="../../../../net/sf/saxon/expr/Container.html" title="interface in net.sf.saxon.expr">Container</A>, <A HREF="../../../../net/sf/saxon/pattern/PatternFinder.html" title="interface in net.sf.saxon.pattern">PatternFinder</A></DD>
</DL>
<DL>
<DT><B>Direct Known Subclasses:</B> <DD><A HREF="../../../../net/sf/saxon/pattern/AnchorPattern.html" title="class in net.sf.saxon.pattern">AnchorPattern</A>, <A HREF="../../../../net/sf/saxon/pattern/ConditionalPattern.html" title="class in net.sf.saxon.pattern">ConditionalPattern</A>, <A HREF="../../../../net/sf/saxon/pattern/ItemTypePattern.html" title="class in net.sf.saxon.pattern">ItemTypePattern</A>, <A HREF="../../../../net/sf/saxon/pattern/LocationPathPattern.html" title="class in net.sf.saxon.pattern">LocationPathPattern</A>, <A HREF="../../../../net/sf/saxon/pattern/NodeSetPattern.html" title="class in net.sf.saxon.pattern">NodeSetPattern</A>, <A HREF="../../../../net/sf/saxon/pattern/PatternWithPredicate.html" title="class in net.sf.saxon.pattern">PatternWithPredicate</A>, <A HREF="../../../../net/sf/saxon/pattern/VennPattern.html" title="class in net.sf.saxon.pattern">VennPattern</A></DD>
</DL>
<HR>
<DL>
<DT><PRE>public abstract class <B>Pattern</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><DT>implements <A HREF="../../../../net/sf/saxon/pattern/PatternFinder.html" title="interface in net.sf.saxon.pattern">PatternFinder</A>, <A HREF="http://download.oracle.com/javase/6/docs/api/java/io/Serializable.html?is-external=true" title="class or interface in java.io">Serializable</A>, <A HREF="../../../../net/sf/saxon/expr/Container.html" title="interface in net.sf.saxon.expr">Container</A></DL>
</PRE>

<P>
A Pattern represents the result of parsing an XSLT pattern string. <br>
 Patterns are created by calling the static method Pattern.make(string). <br>
 The pattern is used to test a particular node by calling match().
<P>

<P>
<DL>
<DT><B>See Also:</B><DD><A HREF="../../../../serialized-form.html#net.sf.saxon.pattern.Pattern">Serialized Form</A></DL>
<HR>

<P>

<!-- ======== 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/pattern/Pattern.html#Pattern()">Pattern</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;int</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../net/sf/saxon/pattern/Pattern.html#allocateSlots(net.sf.saxon.expr.StaticContext, net.sf.saxon.expr.instruct.SlotManager, int)">allocateSlots</A></B>(<A HREF="../../../../net/sf/saxon/expr/StaticContext.html" title="interface in net.sf.saxon.expr">StaticContext</A>&nbsp;env,
              <A HREF="../../../../net/sf/saxon/expr/instruct/SlotManager.html" title="class in net.sf.saxon.expr.instruct">SlotManager</A>&nbsp;slotManager,
              int&nbsp;nextFree)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Allocate slots to any variables used within the pattern</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/Pattern.html" title="class in net.sf.saxon.pattern">Pattern</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../net/sf/saxon/pattern/Pattern.html#analyze(net.sf.saxon.expr.parser.ExpressionVisitor, net.sf.saxon.expr.parser.ExpressionVisitor.ContextItemType)">analyze</A></B>(<A HREF="../../../../net/sf/saxon/expr/parser/ExpressionVisitor.html" title="class in net.sf.saxon.expr.parser">ExpressionVisitor</A>&nbsp;visitor,
        <A HREF="../../../../net/sf/saxon/expr/parser/ExpressionVisitor.ContextItemType.html" title="class in net.sf.saxon.expr.parser">ExpressionVisitor.ContextItemType</A>&nbsp;contextItemType)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Type-check the pattern.</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/pattern/Pattern.html#getColumnNumber()">getColumnNumber</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Get the column number (always -1)</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/pattern/Pattern.html#getContainerGranularity()">getContainerGranularity</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Get the granularity of the container.</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="../../../../net/sf/saxon/pattern/Pattern.html#getDefaultPriority()">getDefaultPriority</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Determine the default priority to use if this pattern appears as a match pattern
 for a template with no explicit priority attribute.</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/pattern/Pattern.html#getDependencies()">getDependencies</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Get the dependencies of the pattern.</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/instruct/Executable.html" title="class in net.sf.saxon.expr.instruct">Executable</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../net/sf/saxon/pattern/Pattern.html#getExecutable()">getExecutable</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Get the executable containing this pattern</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/pattern/Pattern.html#getFingerprint()">getFingerprint</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Determine the name fingerprint of nodes to which this pattern applies.</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/pattern/Pattern.html#getHostLanguage()">getHostLanguage</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Get the host language (XSLT, XQuery, XPath) used to implement the code in this container</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>abstract &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/pattern/Pattern.html#getItemType()">getItemType</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Get an ItemType that all the items matching this pattern must satisfy</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/pattern/Pattern.html#getLineNumber()">getLineNumber</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Get the line number on which the pattern was defined</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="../../../../net/sf/saxon/event/LocationProvider.html" title="interface in net.sf.saxon.event">LocationProvider</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../net/sf/saxon/pattern/Pattern.html#getLocationProvider()">getLocationProvider</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Get the LocationProvider allowing location identifiers to be resolved.</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/pattern/Pattern.html#getNodeKind()">getNodeKind</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Determine the types of nodes to which this pattern applies.</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/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/pattern/Pattern.html#getPublicId()">getPublicId</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Get the public ID (always null)</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/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/pattern/Pattern.html#getSystemId()">getSystemId</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Get the system id of the entity in which the pattern occurred</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/pattern/Pattern.html#internalMatches(net.sf.saxon.om.NodeInfo, net.sf.saxon.om.NodeInfo, net.sf.saxon.expr.XPathContext)">internalMatches</A></B>(<A HREF="../../../../net/sf/saxon/om/NodeInfo.html" title="interface in net.sf.saxon.om">NodeInfo</A>&nbsp;node,
                <A HREF="../../../../net/sf/saxon/om/NodeInfo.html" title="interface in net.sf.saxon.om">NodeInfo</A>&nbsp;anchor,
                <A HREF="../../../../net/sf/saxon/expr/XPathContext.html" title="interface in net.sf.saxon.expr">XPathContext</A>&nbsp;context)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Determine whether this Pattern matches the given Node.</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/Iterator.html?is-external=true" title="class or interface in java.util">Iterator</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../net/sf/saxon/pattern/Pattern.html#iterateSubExpressions()">iterateSubExpressions</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Iterate over the subexpressions within this pattern</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;<A HREF="../../../../net/sf/saxon/pattern/Pattern.html" title="class in net.sf.saxon.pattern">Pattern</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../net/sf/saxon/pattern/Pattern.html#make(java.lang.String, net.sf.saxon.expr.StaticContext, net.sf.saxon.expr.instruct.Executable)">make</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;pattern,
     <A HREF="../../../../net/sf/saxon/expr/StaticContext.html" title="interface in net.sf.saxon.expr">StaticContext</A>&nbsp;env,
     <A HREF="../../../../net/sf/saxon/expr/instruct/Executable.html" title="class in net.sf.saxon.expr.instruct">Executable</A>&nbsp;exec)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Static factory method to make a Pattern by parsing a String.</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="../../../../net/sf/saxon/pattern/Pattern.html#matches(net.sf.saxon.om.Item, net.sf.saxon.expr.XPathContext)">matches</A></B>(<A HREF="../../../../net/sf/saxon/om/Item.html" title="interface in net.sf.saxon.om">Item</A>&nbsp;item,
        <A HREF="../../../../net/sf/saxon/expr/XPathContext.html" title="interface in net.sf.saxon.expr">XPathContext</A>&nbsp;context)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Determine whether this Pattern matches the given item.</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="../../../../net/sf/saxon/pattern/Pattern.html#matchesBeneathAnchor(net.sf.saxon.om.NodeInfo, net.sf.saxon.om.NodeInfo, net.sf.saxon.expr.XPathContext)">matchesBeneathAnchor</A></B>(<A HREF="../../../../net/sf/saxon/om/NodeInfo.html" title="interface in net.sf.saxon.om">NodeInfo</A>&nbsp;node,
                     <A HREF="../../../../net/sf/saxon/om/NodeInfo.html" title="interface in net.sf.saxon.om">NodeInfo</A>&nbsp;anchor,
                     <A HREF="../../../../net/sf/saxon/expr/XPathContext.html" title="interface in net.sf.saxon.expr">XPathContext</A>&nbsp;context)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Determine whether this pattern matches a given Node within the subtree rooted at a given
 anchor node.</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/pattern/Pattern.html#promote(net.sf.saxon.expr.parser.PromotionOffer, net.sf.saxon.expr.Expression)">promote</A></B>(<A HREF="../../../../net/sf/saxon/expr/parser/PromotionOffer.html" title="class in net.sf.saxon.expr.parser">PromotionOffer</A>&nbsp;offer,
        <A HREF="../../../../net/sf/saxon/expr/Expression.html" title="class in net.sf.saxon.expr">Expression</A>&nbsp;parent)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Offer promotion for subexpressions within this pattern.</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="../../../../net/sf/saxon/pattern/Pattern.html#replaceSubExpression(net.sf.saxon.expr.Expression, net.sf.saxon.expr.Expression)">replaceSubExpression</A></B>(<A HREF="../../../../net/sf/saxon/expr/Expression.html" title="class in net.sf.saxon.expr">Expression</A>&nbsp;original,
                     <A HREF="../../../../net/sf/saxon/expr/Expression.html" title="class in net.sf.saxon.expr">Expression</A>&nbsp;replacement)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Replace a subexpression by a replacement subexpression</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/pattern/Pattern.html#resolveCurrent(net.sf.saxon.expr.LetExpression, net.sf.saxon.expr.parser.PromotionOffer, boolean)">resolveCurrent</A></B>(<A HREF="../../../../net/sf/saxon/expr/LetExpression.html" title="class in net.sf.saxon.expr">LetExpression</A>&nbsp;let,
               <A HREF="../../../../net/sf/saxon/expr/parser/PromotionOffer.html" title="class in net.sf.saxon.expr.parser">PromotionOffer</A>&nbsp;offer,
               boolean&nbsp;topLevel)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;If the pattern contains any calls on current(), this method is called to modify such calls
 to become variable references to a variable declared in a specially-allocated local variable</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/SequenceIterator.html" title="interface in net.sf.saxon.om">SequenceIterator</A>&lt;? extends <A HREF="../../../../net/sf/saxon/om/NodeInfo.html" title="interface in net.sf.saxon.om">NodeInfo</A>&gt;</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../net/sf/saxon/pattern/Pattern.html#selectNodes(net.sf.saxon.om.DocumentInfo, net.sf.saxon.expr.XPathContext)">selectNodes</A></B>(<A HREF="../../../../net/sf/saxon/om/DocumentInfo.html" title="interface in net.sf.saxon.om">DocumentInfo</A>&nbsp;doc,
            <A HREF="../../../../net/sf/saxon/expr/XPathContext.html" title="interface in net.sf.saxon.expr">XPathContext</A>&nbsp;context)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Select nodes in a document using this PatternFinder.</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/pattern/Pattern.html#setExecutable(net.sf.saxon.expr.instruct.Executable)">setExecutable</A></B>(<A HREF="../../../../net/sf/saxon/expr/instruct/Executable.html" title="class in net.sf.saxon.expr.instruct">Executable</A>&nbsp;executable)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Set the executable containing this pattern</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/pattern/Pattern.html#setLineNumber(int)">setLineNumber</A></B>(int&nbsp;lineNumber)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Set the line number where the pattern occurred</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/pattern/Pattern.html#setOriginalText(java.lang.String)">setOriginalText</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;text)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Set the original text of the pattern for use in diagnostics</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/pattern/Pattern.html#setSystemId(java.lang.String)">setSystemId</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;systemId)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Set the system ID where the pattern occurred</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/Pattern.html" title="class in net.sf.saxon.pattern">Pattern</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../net/sf/saxon/pattern/Pattern.html#simplify(net.sf.saxon.expr.parser.ExpressionVisitor)">simplify</A></B>(<A HREF="../../../../net/sf/saxon/expr/parser/ExpressionVisitor.html" title="class in net.sf.saxon.expr.parser">ExpressionVisitor</A>&nbsp;visitor)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Simplify the pattern by applying any context-independent optimisations.</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/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/pattern/Pattern.html#toString()">toString</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Get the original pattern text</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#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>

<!-- ========= 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="Pattern()"><!-- --></A><H3>
Pattern</H3>
<PRE>
public <B>Pattern</B>()</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="make(java.lang.String, net.sf.saxon.expr.StaticContext, net.sf.saxon.expr.instruct.Executable)"><!-- --></A><H3>
make</H3>
<PRE>
public static <A HREF="../../../../net/sf/saxon/pattern/Pattern.html" title="class in net.sf.saxon.pattern">Pattern</A> <B>make</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;pattern,
                           <A HREF="../../../../net/sf/saxon/expr/StaticContext.html" title="interface in net.sf.saxon.expr">StaticContext</A>&nbsp;env,
                           <A HREF="../../../../net/sf/saxon/expr/instruct/Executable.html" title="class in net.sf.saxon.expr.instruct">Executable</A>&nbsp;exec)
                    throws <A HREF="../../../../net/sf/saxon/trans/XPathException.html" title="class in net.sf.saxon.trans">XPathException</A></PRE>
<DL>
<DD>Static factory method to make a Pattern by parsing a String. <br>
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>pattern</CODE> - The pattern text as a String<DD><CODE>env</CODE> - An object defining the compile-time context for the expression<DD><CODE>exec</CODE> - The executable containing this pattern
<DT><B>Returns:</B><DD>The pattern 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 the pattern is invalid</DL>
</DD>
</DL>
<HR>

<A NAME="getExecutable()"><!-- --></A><H3>
getExecutable</H3>
<PRE>
public <A HREF="../../../../net/sf/saxon/expr/instruct/Executable.html" title="class in net.sf.saxon.expr.instruct">Executable</A> <B>getExecutable</B>()</PRE>
<DL>
<DD>Get the executable containing this pattern
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../net/sf/saxon/expr/Container.html#getExecutable()">getExecutable</A></CODE> in interface <CODE><A HREF="../../../../net/sf/saxon/expr/Container.html" title="interface in net.sf.saxon.expr">Container</A></CODE></DL>
</DD>
<DD><DL>

<DT><B>Returns:</B><DD>the executable</DL>
</DD>
</DL>
<HR>

<A NAME="setExecutable(net.sf.saxon.expr.instruct.Executable)"><!-- --></A><H3>
setExecutable</H3>
<PRE>
public void <B>setExecutable</B>(<A HREF="../../../../net/sf/saxon/expr/instruct/Executable.html" title="class in net.sf.saxon.expr.instruct">Executable</A>&nbsp;executable)</PRE>
<DL>
<DD>Set the executable containing this pattern
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>executable</CODE> - the executable</DL>
</DD>
</DL>
<HR>

<A NAME="getLocationProvider()"><!-- --></A><H3>
getLocationProvider</H3>
<PRE>
public <A HREF="../../../../net/sf/saxon/event/LocationProvider.html" title="interface in net.sf.saxon.event">LocationProvider</A> <B>getLocationProvider</B>()</PRE>
<DL>
<DD>Get the LocationProvider allowing location identifiers to be resolved.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../net/sf/saxon/expr/Container.html#getLocationProvider()">getLocationProvider</A></CODE> in interface <CODE><A HREF="../../../../net/sf/saxon/expr/Container.html" title="interface in net.sf.saxon.expr">Container</A></CODE></DL>
</DD>
<DD><DL>

<DT><B>Returns:</B><DD>the location provider</DL>
</DD>
</DL>
<HR>

<A NAME="getContainerGranularity()"><!-- --></A><H3>
getContainerGranularity</H3>
<PRE>
public int <B>getContainerGranularity</B>()</PRE>
<DL>
<DD>Get the granularity of the container.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../net/sf/saxon/expr/Container.html#getContainerGranularity()">getContainerGranularity</A></CODE> in interface <CODE><A HREF="../../../../net/sf/saxon/expr/Container.html" title="interface in net.sf.saxon.expr">Container</A></CODE></DL>
</DD>
<DD><DL>

<DT><B>Returns:</B><DD>0 for a temporary container created during parsing; 1 for a container
         that operates at the level of an XPath expression; 2 for a container at the level
         of a global function or template</DL>
</DD>
</DL>
<HR>

<A NAME="setOriginalText(java.lang.String)"><!-- --></A><H3>
setOriginalText</H3>
<PRE>
public void <B>setOriginalText</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;text)</PRE>
<DL>
<DD>Set the original text of the pattern for use in diagnostics
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>text</CODE> - the original text of the pattern</DL>
</DD>
</DL>
<HR>

<A NAME="simplify(net.sf.saxon.expr.parser.ExpressionVisitor)"><!-- --></A><H3>
simplify</H3>
<PRE>
public <A HREF="../../../../net/sf/saxon/pattern/Pattern.html" title="class in net.sf.saxon.pattern">Pattern</A> <B>simplify</B>(<A HREF="../../../../net/sf/saxon/expr/parser/ExpressionVisitor.html" title="class in net.sf.saxon.expr.parser">ExpressionVisitor</A>&nbsp;visitor)
                 throws <A HREF="../../../../net/sf/saxon/trans/XPathException.html" title="class in net.sf.saxon.trans">XPathException</A></PRE>
<DL>
<DD>Simplify the pattern by applying any context-independent optimisations.
 Default implementation does nothing.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>visitor</CODE> - the expression visitor
<DT><B>Returns:</B><DD>the optimised Pattern
<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="analyze(net.sf.saxon.expr.parser.ExpressionVisitor, net.sf.saxon.expr.parser.ExpressionVisitor.ContextItemType)"><!-- --></A><H3>
analyze</H3>
<PRE>
public <A HREF="../../../../net/sf/saxon/pattern/Pattern.html" title="class in net.sf.saxon.pattern">Pattern</A> <B>analyze</B>(<A HREF="../../../../net/sf/saxon/expr/parser/ExpressionVisitor.html" title="class in net.sf.saxon.expr.parser">ExpressionVisitor</A>&nbsp;visitor,
                       <A HREF="../../../../net/sf/saxon/expr/parser/ExpressionVisitor.ContextItemType.html" title="class in net.sf.saxon.expr.parser">ExpressionVisitor.ContextItemType</A>&nbsp;contextItemType)
                throws <A HREF="../../../../net/sf/saxon/trans/XPathException.html" title="class in net.sf.saxon.trans">XPathException</A></PRE>
<DL>
<DD>Type-check the pattern.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>visitor</CODE> - the expression visitor<DD><CODE>contextItemType</CODE> - the type of the context item at the point where the pattern
 is defined. Set to null if it is known that the context item is undefined.
<DT><B>Returns:</B><DD>the optimised Pattern
<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="getDependencies()"><!-- --></A><H3>
getDependencies</H3>
<PRE>
public int <B>getDependencies</B>()</PRE>
<DL>
<DD>Get the dependencies of the pattern. The only possible dependency for a pattern is
 on local variables. This is analyzed in those patterns where local variables may appear.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>

<DT><B>Returns:</B><DD>the dependencies, as a bit-significant mask</DL>
</DD>
</DL>
<HR>

<A NAME="iterateSubExpressions()"><!-- --></A><H3>
iterateSubExpressions</H3>
<PRE>
public <A HREF="http://download.oracle.com/javase/6/docs/api/java/util/Iterator.html?is-external=true" title="class or interface in java.util">Iterator</A> <B>iterateSubExpressions</B>()</PRE>
<DL>
<DD>Iterate over the subexpressions within this pattern
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>

<DT><B>Returns:</B><DD>an iterator over the subexpressions. Default implementation returns an empty sequence</DL>
</DD>
</DL>
<HR>

<A NAME="allocateSlots(net.sf.saxon.expr.StaticContext, net.sf.saxon.expr.instruct.SlotManager, int)"><!-- --></A><H3>
allocateSlots</H3>
<PRE>
public int <B>allocateSlots</B>(<A HREF="../../../../net/sf/saxon/expr/StaticContext.html" title="interface in net.sf.saxon.expr">StaticContext</A>&nbsp;env,
                         <A HREF="../../../../net/sf/saxon/expr/instruct/SlotManager.html" title="class in net.sf.saxon.expr.instruct">SlotManager</A>&nbsp;slotManager,
                         int&nbsp;nextFree)</PRE>
<DL>
<DD>Allocate slots to any variables used within the pattern
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>env</CODE> - the static context in the XSLT stylesheet<DD><CODE>slotManager</CODE> - the slot manager representing the stack frame for local variables<DD><CODE>nextFree</CODE> - the next slot that is free to be allocated
<DT><B>Returns:</B><DD>the next slot that is free to be allocated</DL>
</DD>
</DL>
<HR>

<A NAME="resolveCurrent(net.sf.saxon.expr.LetExpression, net.sf.saxon.expr.parser.PromotionOffer, boolean)"><!-- --></A><H3>
resolveCurrent</H3>
<PRE>
public void <B>resolveCurrent</B>(<A HREF="../../../../net/sf/saxon/expr/LetExpression.html" title="class in net.sf.saxon.expr">LetExpression</A>&nbsp;let,
                           <A HREF="../../../../net/sf/saxon/expr/parser/PromotionOffer.html" title="class in net.sf.saxon.expr.parser">PromotionOffer</A>&nbsp;offer,
                           boolean&nbsp;topLevel)
                    throws <A HREF="../../../../net/sf/saxon/trans/XPathException.html" title="class in net.sf.saxon.trans">XPathException</A></PRE>
<DL>
<DD>If the pattern contains any calls on current(), this method is called to modify such calls
 to become variable references to a variable declared in a specially-allocated local variable
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>let</CODE> - the expression that assigns the local variable. This returns a dummy result, and is executed
              just before evaluating the pattern, to get the value of the context item into the variable.<DD><CODE>offer</CODE> - A PromotionOffer used to process the expressions and change the call on current() into
              a variable reference<DD><CODE>topLevel</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></DL>
</DD>
</DL>
<HR>

<A NAME="promote(net.sf.saxon.expr.parser.PromotionOffer, net.sf.saxon.expr.Expression)"><!-- --></A><H3>
promote</H3>
<PRE>
public void <B>promote</B>(<A HREF="../../../../net/sf/saxon/expr/parser/PromotionOffer.html" title="class in net.sf.saxon.expr.parser">PromotionOffer</A>&nbsp;offer,
                    <A HREF="../../../../net/sf/saxon/expr/Expression.html" title="class in net.sf.saxon.expr">Expression</A>&nbsp;parent)
             throws <A HREF="../../../../net/sf/saxon/trans/XPathException.html" title="class in net.sf.saxon.trans">XPathException</A></PRE>
<DL>
<DD>Offer promotion for subexpressions within this pattern. The offer will be accepted if the subexpression
 is not dependent on the factors (e.g. the context item) identified in the PromotionOffer.
 By default the offer is not accepted - this is appropriate in the case of simple expressions
 such as constant values and variable references where promotion would give no performance
 advantage. This method is always called at compile time.

 <p>Unlike the corresponding method on <A HREF="../../../../net/sf/saxon/expr/Expression.html" title="class in net.sf.saxon.expr"><CODE>Expression</CODE></A>, this method does not return anything:
 it can make internal changes to the pattern, but cannot return a different pattern. Only certain
 kinds of promotion are applicable within a pattern: specifically, promotions affecting local
 variable references within the pattern.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>offer</CODE> - details of the offer, for example the offer to move
              expressions that don't depend on the context to an outer level in
              the containing expression<DD><CODE>parent</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> - if any error is detected</DL>
</DD>
</DL>
<HR>

<A NAME="setSystemId(java.lang.String)"><!-- --></A><H3>
setSystemId</H3>
<PRE>
public void <B>setSystemId</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;systemId)</PRE>
<DL>
<DD>Set the system ID where the pattern occurred
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>systemId</CODE> - the URI of the module containing the pattern</DL>
</DD>
</DL>
<HR>

<A NAME="setLineNumber(int)"><!-- --></A><H3>
setLineNumber</H3>
<PRE>
public void <B>setLineNumber</B>(int&nbsp;lineNumber)</PRE>
<DL>
<DD>Set the line number where the pattern occurred
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>lineNumber</CODE> - the line number of the pattern in the source module</DL>
</DD>
</DL>
<HR>

<A NAME="matches(net.sf.saxon.om.Item, net.sf.saxon.expr.XPathContext)"><!-- --></A><H3>
matches</H3>
<PRE>
public abstract boolean <B>matches</B>(<A HREF="../../../../net/sf/saxon/om/Item.html" title="interface in net.sf.saxon.om">Item</A>&nbsp;item,
                                <A HREF="../../../../net/sf/saxon/expr/XPathContext.html" title="interface in net.sf.saxon.expr">XPathContext</A>&nbsp;context)
                         throws <A HREF="../../../../net/sf/saxon/trans/XPathException.html" title="class in net.sf.saxon.trans">XPathException</A></PRE>
<DL>
<DD>Determine whether this Pattern matches the given item. This is the main external interface
 for matching patterns: it sets current() to the node being tested
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>item</CODE> - The NodeInfo representing the Element or other node to be tested against the Pattern<DD><CODE>context</CODE> - The dynamic context. Only relevant if the pattern
 uses variables, or contains calls on functions such as document() or key().
<DT><B>Returns:</B><DD>true if the node matches the Pattern, false otherwise
<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="matchesBeneathAnchor(net.sf.saxon.om.NodeInfo, net.sf.saxon.om.NodeInfo, net.sf.saxon.expr.XPathContext)"><!-- --></A><H3>
matchesBeneathAnchor</H3>
<PRE>
public boolean <B>matchesBeneathAnchor</B>(<A HREF="../../../../net/sf/saxon/om/NodeInfo.html" title="interface in net.sf.saxon.om">NodeInfo</A>&nbsp;node,
                                    <A HREF="../../../../net/sf/saxon/om/NodeInfo.html" title="interface in net.sf.saxon.om">NodeInfo</A>&nbsp;anchor,
                                    <A HREF="../../../../net/sf/saxon/expr/XPathContext.html" title="interface in net.sf.saxon.expr">XPathContext</A>&nbsp;context)
                             throws <A HREF="../../../../net/sf/saxon/trans/XPathException.html" title="class in net.sf.saxon.trans">XPathException</A></PRE>
<DL>
<DD>Determine whether this pattern matches a given Node within the subtree rooted at a given
 anchor node. This method is used when the pattern is used for streaming.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>node</CODE> - The NodeInfo representing the Element or other node to be tested against the Pattern<DD><CODE>anchor</CODE> - The anchor node, which must match any AnchorPattern subpattern<DD><CODE>context</CODE> - The dynamic context. Only relevant if the pattern
 uses variables, or contains calls on functions such as document() or key().
<DT><B>Returns:</B><DD>true if the node matches the Pattern, false otherwise
<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="internalMatches(net.sf.saxon.om.NodeInfo, net.sf.saxon.om.NodeInfo, net.sf.saxon.expr.XPathContext)"><!-- --></A><H3>
internalMatches</H3>
<PRE>
protected boolean <B>internalMatches</B>(<A HREF="../../../../net/sf/saxon/om/NodeInfo.html" title="interface in net.sf.saxon.om">NodeInfo</A>&nbsp;node,
                                  <A HREF="../../../../net/sf/saxon/om/NodeInfo.html" title="interface in net.sf.saxon.om">NodeInfo</A>&nbsp;anchor,
                                  <A HREF="../../../../net/sf/saxon/expr/XPathContext.html" title="interface in net.sf.saxon.expr">XPathContext</A>&nbsp;context)
                           throws <A HREF="../../../../net/sf/saxon/trans/XPathException.html" title="class in net.sf.saxon.trans">XPathException</A></PRE>
<DL>
<DD>Determine whether this Pattern matches the given Node. This is an internal interface used
 for matching sub-patterns; it does not alter the value of current(). The default implementation
 is identical to matches().
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>node</CODE> - The NodeInfo representing the Element or other node to be tested against the Pattern<DD><CODE>anchor</CODE> - <DD><CODE>context</CODE> - The dynamic context. Only relevant if the pattern
 uses variables, or contains calls on functions such as document() or key(). @return true if the node matches the Pattern, false otherwise
<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="selectNodes(net.sf.saxon.om.DocumentInfo, net.sf.saxon.expr.XPathContext)"><!-- --></A><H3>
selectNodes</H3>
<PRE>
public <A HREF="../../../../net/sf/saxon/om/SequenceIterator.html" title="interface in net.sf.saxon.om">SequenceIterator</A>&lt;? extends <A HREF="../../../../net/sf/saxon/om/NodeInfo.html" title="interface in net.sf.saxon.om">NodeInfo</A>&gt; <B>selectNodes</B>(<A HREF="../../../../net/sf/saxon/om/DocumentInfo.html" title="interface in net.sf.saxon.om">DocumentInfo</A>&nbsp;doc,
                                                        <A HREF="../../../../net/sf/saxon/expr/XPathContext.html" title="interface in net.sf.saxon.expr">XPathContext</A>&nbsp;context)
                                                 throws <A HREF="../../../../net/sf/saxon/trans/XPathException.html" title="class in net.sf.saxon.trans">XPathException</A></PRE>
<DL>
<DD>Select nodes in a document using this PatternFinder.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../net/sf/saxon/pattern/PatternFinder.html#selectNodes(net.sf.saxon.om.DocumentInfo, net.sf.saxon.expr.XPathContext)">selectNodes</A></CODE> in interface <CODE><A HREF="../../../../net/sf/saxon/pattern/PatternFinder.html" title="interface in net.sf.saxon.pattern">PatternFinder</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>doc</CODE> - the document node at the root of a tree<DD><CODE>context</CODE> - the dynamic evaluation context
<DT><B>Returns:</B><DD>an iterator over the selected nodes in the document.
<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="getNodeKind()"><!-- --></A><H3>
getNodeKind</H3>
<PRE>
public int <B>getNodeKind</B>()</PRE>
<DL>
<DD>Determine the types of nodes to which this pattern applies. Used for optimisation.
 For patterns that match nodes of several types, return Type.NODE. For patterns that
 do not match nodes, return -1.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>

<DT><B>Returns:</B><DD>the type of node matched by this pattern. e.g. Type.ELEMENT or Type.TEXT</DL>
</DD>
</DL>
<HR>

<A NAME="getFingerprint()"><!-- --></A><H3>
getFingerprint</H3>
<PRE>
public int <B>getFingerprint</B>()</PRE>
<DL>
<DD>Determine the name fingerprint of nodes to which this pattern applies. Used for
 optimisation.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>

<DT><B>Returns:</B><DD>A fingerprint that the nodes must match, or -1 if it can match multiple fingerprints,
 or it if matches atomic values</DL>
</DD>
</DL>
<HR>

<A NAME="getItemType()"><!-- --></A><H3>
getItemType</H3>
<PRE>
public abstract <A HREF="../../../../net/sf/saxon/type/ItemType.html" title="interface in net.sf.saxon.type">ItemType</A> <B>getItemType</B>()</PRE>
<DL>
<DD>Get an ItemType that all the items matching this pattern must satisfy
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>

<DT><B>Returns:</B><DD>an ItemType, as specific as possible, which all the matching items satisfy</DL>
</DD>
</DL>
<HR>

<A NAME="getDefaultPriority()"><!-- --></A><H3>
getDefaultPriority</H3>
<PRE>
public double <B>getDefaultPriority</B>()</PRE>
<DL>
<DD>Determine the default priority to use if this pattern appears as a match pattern
 for a template with no explicit priority attribute.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>

<DT><B>Returns:</B><DD>the default priority for the pattern</DL>
</DD>
</DL>
<HR>

<A NAME="getSystemId()"><!-- --></A><H3>
getSystemId</H3>
<PRE>
public <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>getSystemId</B>()</PRE>
<DL>
<DD>Get the system id of the entity in which the pattern occurred
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="http://download.oracle.com/javase/6/docs/api/javax/xml/transform/SourceLocator.html?is-external=true#getSystemId()" title="class or interface in javax.xml.transform">getSystemId</A></CODE> in interface <CODE><A HREF="http://download.oracle.com/javase/6/docs/api/javax/xml/transform/SourceLocator.html?is-external=true" title="class or interface in javax.xml.transform">SourceLocator</A></CODE></DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>

<A NAME="getLineNumber()"><!-- --></A><H3>
getLineNumber</H3>
<PRE>
public int <B>getLineNumber</B>()</PRE>
<DL>
<DD>Get the line number on which the pattern was defined
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="http://download.oracle.com/javase/6/docs/api/javax/xml/transform/SourceLocator.html?is-external=true#getLineNumber()" title="class or interface in javax.xml.transform">getLineNumber</A></CODE> in interface <CODE><A HREF="http://download.oracle.com/javase/6/docs/api/javax/xml/transform/SourceLocator.html?is-external=true" title="class or interface in javax.xml.transform">SourceLocator</A></CODE></DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>

<A NAME="getColumnNumber()"><!-- --></A><H3>
getColumnNumber</H3>
<PRE>
public int <B>getColumnNumber</B>()</PRE>
<DL>
<DD>Get the column number (always -1)
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="http://download.oracle.com/javase/6/docs/api/javax/xml/transform/SourceLocator.html?is-external=true#getColumnNumber()" title="class or interface in javax.xml.transform">getColumnNumber</A></CODE> in interface <CODE><A HREF="http://download.oracle.com/javase/6/docs/api/javax/xml/transform/SourceLocator.html?is-external=true" title="class or interface in javax.xml.transform">SourceLocator</A></CODE></DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>

<A NAME="getPublicId()"><!-- --></A><H3>
getPublicId</H3>
<PRE>
public <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>getPublicId</B>()</PRE>
<DL>
<DD>Get the public ID (always null)
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="http://download.oracle.com/javase/6/docs/api/javax/xml/transform/SourceLocator.html?is-external=true#getPublicId()" title="class or interface in javax.xml.transform">getPublicId</A></CODE> in interface <CODE><A HREF="http://download.oracle.com/javase/6/docs/api/javax/xml/transform/SourceLocator.html?is-external=true" title="class or interface in javax.xml.transform">SourceLocator</A></CODE></DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>

<A NAME="toString()"><!-- --></A><H3>
toString</H3>
<PRE>
public <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>toString</B>()</PRE>
<DL>
<DD>Get the original pattern text
<P>
<DD><DL>
<DT><B>Overrides:</B><DD><CODE><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></CODE> in class <CODE><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></CODE></DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>

<A NAME="getHostLanguage()"><!-- --></A><H3>
getHostLanguage</H3>
<PRE>
public int <B>getHostLanguage</B>()</PRE>
<DL>
<DD>Get the host language (XSLT, XQuery, XPath) used to implement the code in this container
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../net/sf/saxon/expr/Container.html#getHostLanguage()">getHostLanguage</A></CODE> in interface <CODE><A HREF="../../../../net/sf/saxon/expr/Container.html" title="interface in net.sf.saxon.expr">Container</A></CODE></DL>
</DD>
<DD><DL>

<DT><B>Returns:</B><DD>typically <A HREF="../../../../net/sf/saxon/Configuration.html#XSLT"><CODE>Configuration.XSLT</CODE></A> or <A HREF="../../../../net/sf/saxon/Configuration.html#XQUERY"><CODE>Configuration.XQUERY</CODE></A></DL>
</DD>
</DL>
<HR>

<A NAME="replaceSubExpression(net.sf.saxon.expr.Expression, net.sf.saxon.expr.Expression)"><!-- --></A><H3>
replaceSubExpression</H3>
<PRE>
public boolean <B>replaceSubExpression</B>(<A HREF="../../../../net/sf/saxon/expr/Expression.html" title="class in net.sf.saxon.expr">Expression</A>&nbsp;original,
                                    <A HREF="../../../../net/sf/saxon/expr/Expression.html" title="class in net.sf.saxon.expr">Expression</A>&nbsp;replacement)</PRE>
<DL>
<DD>Replace a subexpression by a replacement subexpression
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>original</CODE> - the expression to be replaced<DD><CODE>replacement</CODE> - the new expression to be inserted in its place
<DT><B>Returns:</B><DD>true if the replacement was carried out</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/pattern/NodeTest.html" title="class in net.sf.saxon.pattern"><B>PREV CLASS</B></A>&nbsp;
&nbsp;<A HREF="../../../../net/sf/saxon/pattern/PatternFinder.html" title="interface in net.sf.saxon.pattern"><B>NEXT CLASS</B></A></FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
  <A HREF="../../../../index.html?net/sf/saxon/pattern/Pattern.html" target="_top"><B>FRAMES</B></A>  &nbsp;
&nbsp;<A HREF="Pattern.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;FIELD&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;FIELD&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>