<!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:12 GMT 2011 --> <TITLE> Template </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="Template"; } } </SCRIPT> <NOSCRIPT> </NOSCRIPT> </HEAD> <BODY BGCOLOR="white" onload="windowTitle();"> <HR> <!-- ========= START OF TOP NAVBAR ======= --> <A NAME="navbar_top"><!-- --></A> <A HREF="#skip-navbar_top" title="Skip navigation links"></A> <TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY=""> <TR> <TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A NAME="navbar_top_firstrow"><!-- --></A> <TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY=""> <TR ALIGN="center" VALIGN="top"> <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A> </TD> <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A> </TD> <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> <FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT> </TD> <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A> </TD> <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A> </TD> <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A> </TD> <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A> </TD> </TR> </TABLE> </TD> <TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM> </EM> </TD> </TR> <TR> <TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2"> <A HREF="../../../../../net/sf/saxon/expr/instruct/TailCallReturner.html" title="interface in net.sf.saxon.expr.instruct"><B>PREV CLASS</B></A> <A HREF="../../../../../net/sf/saxon/expr/instruct/TerminationException.html" title="class in net.sf.saxon.expr.instruct"><B>NEXT CLASS</B></A></FONT></TD> <TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2"> <A HREF="../../../../../index.html?net/sf/saxon/expr/instruct/Template.html" target="_top"><B>FRAMES</B></A> <A HREF="Template.html" target="_top"><B>NO FRAMES</B></A> <SCRIPT type="text/javascript"> <!-- if(window==top) { document.writeln('<A HREF="../../../../../allclasses-noframe.html"><B>All Classes</B></A>'); } //--> </SCRIPT> <NOSCRIPT> <A HREF="../../../../../allclasses-noframe.html"><B>All Classes</B></A> </NOSCRIPT> </FONT></TD> </TR> <TR> <TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2"> SUMMARY: NESTED | <A HREF="#fields_inherited_from_class_net.sf.saxon.expr.instruct.Procedure">FIELD</A> | <A HREF="#constructor_summary">CONSTR</A> | <A HREF="#method_summary">METHOD</A></FONT></TD> <TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2"> DETAIL: FIELD | <A HREF="#constructor_detail">CONSTR</A> | <A HREF="#method_detail">METHOD</A></FONT></TD> </TR> </TABLE> <A NAME="skip-navbar_top"></A> <!-- ========= END OF TOP NAVBAR ========= --> <HR> <!-- ======== START OF CLASS DATA ======== --> <H2> <FONT SIZE="-1"> net.sf.saxon.expr.instruct</FONT> <BR> Class Template</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 "><A HREF="../../../../../net/sf/saxon/expr/instruct/Procedure.html" title="class in net.sf.saxon.expr.instruct">net.sf.saxon.expr.instruct.Procedure</A> <IMG SRC="../../../../../resources/inherit.gif" ALT="extended by "><B>net.sf.saxon.expr.instruct.Template</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/event/LocationProvider.html" title="interface in net.sf.saxon.event">LocationProvider</A>, <A HREF="../../../../../net/sf/saxon/event/SaxonLocator.html" title="interface in net.sf.saxon.event">SaxonLocator</A>, <A HREF="../../../../../net/sf/saxon/expr/Container.html" title="interface in net.sf.saxon.expr">Container</A>, <A HREF="../../../../../net/sf/saxon/trace/InstructionInfo.html" title="interface in net.sf.saxon.trace">InstructionInfo</A>, <A HREF="../../../../../net/sf/saxon/trans/RuleTarget.html" title="interface in net.sf.saxon.trans">RuleTarget</A>, <A HREF="http://download.oracle.com/javase/6/docs/api/org/xml/sax/Locator.html?is-external=true" title="class or interface in org.xml.sax">Locator</A></DD> </DL> <HR> <DL> <DT><PRE>public class <B>Template</B><DT>extends <A HREF="../../../../../net/sf/saxon/expr/instruct/Procedure.html" title="class in net.sf.saxon.expr.instruct">Procedure</A><DT>implements <A HREF="../../../../../net/sf/saxon/trans/RuleTarget.html" title="interface in net.sf.saxon.trans">RuleTarget</A></DL> </PRE> <P> The runtime object corresponding to an xsl:template element in the stylesheet. Note that the Template object no longer has precedence information associated with it; this is now only in the Rule object that references this Template. This allows two rules to share the same template, with different precedences. This occurs when a stylesheet module is imported more than once, from different places, with different import precedences. <P> <P> <DL> <DT><B>See Also:</B><DD><A HREF="../../../../../serialized-form.html#net.sf.saxon.expr.instruct.Template">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> </TABLE> <A NAME="fields_inherited_from_class_net.sf.saxon.expr.instruct.Procedure"><!-- --></A> <TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY=""> <TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor"> <TH ALIGN="left"><B>Fields inherited from class net.sf.saxon.expr.instruct.<A HREF="../../../../../net/sf/saxon/expr/instruct/Procedure.html" title="class in net.sf.saxon.expr.instruct">Procedure</A></B></TH> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD><CODE><A HREF="../../../../../net/sf/saxon/expr/instruct/Procedure.html#body">body</A></CODE></TD> </TR> </TABLE> <!-- ======== CONSTRUCTOR SUMMARY ======== --> <A NAME="constructor_summary"><!-- --></A> <TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY=""> <TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor"> <TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2"> <B>Constructor Summary</B></FONT></TH> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD><CODE><B><A HREF="../../../../../net/sf/saxon/expr/instruct/Template.html#Template()">Template</A></B>()</CODE> <BR> Create a template</TD> </TR> </TABLE> <!-- ========== METHOD SUMMARY =========== --> <A NAME="method_summary"><!-- --></A> <TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY=""> <TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor"> <TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2"> <B>Method Summary</B></FONT></TH> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> <CODE> void</CODE></FONT></TD> <TD><CODE><B><A HREF="../../../../../net/sf/saxon/expr/instruct/Template.html#apply(net.sf.saxon.expr.XPathContextMajor)">apply</A></B>(<A HREF="../../../../../net/sf/saxon/expr/XPathContextMajor.html" title="class in net.sf.saxon.expr">XPathContextMajor</A> context)</CODE> <BR> Process the template, without returning any tail calls.</TD> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> <CODE> <A HREF="../../../../../net/sf/saxon/expr/instruct/TailCall.html" title="interface in net.sf.saxon.expr.instruct">TailCall</A></CODE></FONT></TD> <TD><CODE><B><A HREF="../../../../../net/sf/saxon/expr/instruct/Template.html#applyLeavingTail(net.sf.saxon.expr.XPathContextMajor)">applyLeavingTail</A></B>(<A HREF="../../../../../net/sf/saxon/expr/XPathContextMajor.html" title="class in net.sf.saxon.expr">XPathContextMajor</A> context)</CODE> <BR> Process this template, with the possibility of returning a tail call package if the template contains any tail calls that are to be performed by the caller.</TD> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> <CODE> <A HREF="../../../../../net/sf/saxon/expr/instruct/TailCall.html" title="interface in net.sf.saxon.expr.instruct">TailCall</A></CODE></FONT></TD> <TD><CODE><B><A HREF="../../../../../net/sf/saxon/expr/instruct/Template.html#expand(net.sf.saxon.expr.XPathContext)">expand</A></B>(<A HREF="../../../../../net/sf/saxon/expr/XPathContext.html" title="interface in net.sf.saxon.expr">XPathContext</A> context)</CODE> <BR> Expand the template.</TD> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> <CODE> void</CODE></FONT></TD> <TD><CODE><B><A HREF="../../../../../net/sf/saxon/expr/instruct/Template.html#explain(net.sf.saxon.trace.ExpressionPresenter)">explain</A></B>(<A HREF="../../../../../net/sf/saxon/trace/ExpressionPresenter.html" title="class in net.sf.saxon.trace">ExpressionPresenter</A> presenter)</CODE> <BR> Output diagnostic explanation to an ExpressionPresenter</TD> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> <CODE> int</CODE></FONT></TD> <TD><CODE><B><A HREF="../../../../../net/sf/saxon/expr/instruct/Template.html#getConstructType()">getConstructType</A></B>()</CODE> <BR> Get the type of construct.</TD> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> <CODE> <A HREF="../../../../../net/sf/saxon/expr/instruct/LocalParam.html" title="class in net.sf.saxon.expr.instruct">LocalParam</A></CODE></FONT></TD> <TD><CODE><B><A HREF="../../../../../net/sf/saxon/expr/instruct/Template.html#getLocalParam(int)">getLocalParam</A></B>(int id)</CODE> <BR> Get the local parameter with a given parameter id</TD> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> <CODE> <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/expr/instruct/Template.html#getMatchPattern()">getMatchPattern</A></B>()</CODE> <BR> Get the match pattern used with this template</TD> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> <CODE> <A HREF="../../../../../net/sf/saxon/om/StructuredQName.html" title="class in net.sf.saxon.om">StructuredQName</A></CODE></FONT></TD> <TD><CODE><B><A HREF="../../../../../net/sf/saxon/expr/instruct/Template.html#getObjectName()">getObjectName</A></B>()</CODE> <BR> Get a name identifying the object of the expression, for example a function name, template name, variable name, key name, element name, etc.</TD> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> <CODE> <A HREF="../../../../../net/sf/saxon/value/SequenceType.html" title="class in net.sf.saxon.value">SequenceType</A></CODE></FONT></TD> <TD><CODE><B><A HREF="../../../../../net/sf/saxon/expr/instruct/Template.html#getRequiredType()">getRequiredType</A></B>()</CODE> <BR> Get the required type to be returned by this template</TD> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> <CODE> <A HREF="../../../../../net/sf/saxon/om/StructuredQName.html" title="class in net.sf.saxon.om">StructuredQName</A></CODE></FONT></TD> <TD><CODE><B><A HREF="../../../../../net/sf/saxon/expr/instruct/Template.html#getTemplateName()">getTemplateName</A></B>()</CODE> <BR> Get the name of the template (if it is named)</TD> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> <CODE> boolean</CODE></FONT></TD> <TD><CODE><B><A HREF="../../../../../net/sf/saxon/expr/instruct/Template.html#hasRequiredParams()">hasRequiredParams</A></B>()</CODE> <BR> Ask whether this template has one or more required parameters</TD> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> <CODE> boolean</CODE></FONT></TD> <TD><CODE><B><A HREF="../../../../../net/sf/saxon/expr/instruct/Template.html#isStreamable()">isStreamable</A></B>()</CODE> <BR> Ask whether or not this template is declared as streamable</TD> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> <CODE> void</CODE></FONT></TD> <TD><CODE><B><A HREF="../../../../../net/sf/saxon/expr/instruct/Template.html#setBody(net.sf.saxon.expr.Expression)">setBody</A></B>(<A HREF="../../../../../net/sf/saxon/expr/Expression.html" title="class in net.sf.saxon.expr">Expression</A> body)</CODE> <BR> Set the expression that forms the body of the template</TD> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> <CODE> void</CODE></FONT></TD> <TD><CODE><B><A HREF="../../../../../net/sf/saxon/expr/instruct/Template.html#setHasRequiredParams(boolean)">setHasRequiredParams</A></B>(boolean has)</CODE> <BR> Set whether this template has one or more required parameters</TD> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> <CODE> void</CODE></FONT></TD> <TD><CODE><B><A HREF="../../../../../net/sf/saxon/expr/instruct/Template.html#setMatchPattern(net.sf.saxon.pattern.Pattern)">setMatchPattern</A></B>(<A HREF="../../../../../net/sf/saxon/pattern/Pattern.html" title="class in net.sf.saxon.pattern">Pattern</A> pattern)</CODE> <BR> Set the match pattern used with this template</TD> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> <CODE> void</CODE></FONT></TD> <TD><CODE><B><A HREF="../../../../../net/sf/saxon/expr/instruct/Template.html#setRequiredType(net.sf.saxon.value.SequenceType)">setRequiredType</A></B>(<A HREF="../../../../../net/sf/saxon/value/SequenceType.html" title="class in net.sf.saxon.value">SequenceType</A> type)</CODE> <BR> Set the required type to be returned by this template</TD> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> <CODE> void</CODE></FONT></TD> <TD><CODE><B><A HREF="../../../../../net/sf/saxon/expr/instruct/Template.html#setStreamable(boolean)">setStreamable</A></B>(boolean streamable)</CODE> <BR> Say whether or not this template is declared as streamable</TD> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> <CODE> void</CODE></FONT></TD> <TD><CODE><B><A HREF="../../../../../net/sf/saxon/expr/instruct/Template.html#setTemplateName(net.sf.saxon.om.StructuredQName)">setTemplateName</A></B>(<A HREF="../../../../../net/sf/saxon/om/StructuredQName.html" title="class in net.sf.saxon.om">StructuredQName</A> templateName)</CODE> <BR> Initialize the template</TD> </TR> </TABLE> <A NAME="methods_inherited_from_class_net.sf.saxon.expr.instruct.Procedure"><!-- --></A> <TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY=""> <TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor"> <TH ALIGN="left"><B>Methods inherited from class net.sf.saxon.expr.instruct.<A HREF="../../../../../net/sf/saxon/expr/instruct/Procedure.html" title="class in net.sf.saxon.expr.instruct">Procedure</A></B></TH> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD><CODE><A HREF="../../../../../net/sf/saxon/expr/instruct/Procedure.html#getBody()">getBody</A>, <A HREF="../../../../../net/sf/saxon/expr/instruct/Procedure.html#getColumnNumber()">getColumnNumber</A>, <A HREF="../../../../../net/sf/saxon/expr/instruct/Procedure.html#getColumnNumber(long)">getColumnNumber</A>, <A HREF="../../../../../net/sf/saxon/expr/instruct/Procedure.html#getContainerGranularity()">getContainerGranularity</A>, <A HREF="../../../../../net/sf/saxon/expr/instruct/Procedure.html#getExecutable()">getExecutable</A>, <A HREF="../../../../../net/sf/saxon/expr/instruct/Procedure.html#getHostLanguage()">getHostLanguage</A>, <A HREF="../../../../../net/sf/saxon/expr/instruct/Procedure.html#getLineNumber()">getLineNumber</A>, <A HREF="../../../../../net/sf/saxon/expr/instruct/Procedure.html#getLineNumber(long)">getLineNumber</A>, <A HREF="../../../../../net/sf/saxon/expr/instruct/Procedure.html#getLocationProvider()">getLocationProvider</A>, <A HREF="../../../../../net/sf/saxon/expr/instruct/Procedure.html#getProperties()">getProperties</A>, <A HREF="../../../../../net/sf/saxon/expr/instruct/Procedure.html#getProperty(java.lang.String)">getProperty</A>, <A HREF="../../../../../net/sf/saxon/expr/instruct/Procedure.html#getPublicId()">getPublicId</A>, <A HREF="../../../../../net/sf/saxon/expr/instruct/Procedure.html#getStackFrameMap()">getStackFrameMap</A>, <A HREF="../../../../../net/sf/saxon/expr/instruct/Procedure.html#getSystemId()">getSystemId</A>, <A HREF="../../../../../net/sf/saxon/expr/instruct/Procedure.html#getSystemId(long)">getSystemId</A>, <A HREF="../../../../../net/sf/saxon/expr/instruct/Procedure.html#setExecutable(net.sf.saxon.expr.instruct.Executable)">setExecutable</A>, <A HREF="../../../../../net/sf/saxon/expr/instruct/Procedure.html#setHostLanguage(int)">setHostLanguage</A>, <A HREF="../../../../../net/sf/saxon/expr/instruct/Procedure.html#setLineNumber(int)">setLineNumber</A>, <A HREF="../../../../../net/sf/saxon/expr/instruct/Procedure.html#setStackFrameMap(net.sf.saxon.expr.instruct.SlotManager)">setStackFrameMap</A>, <A HREF="../../../../../net/sf/saxon/expr/instruct/Procedure.html#setSystemId(java.lang.String)">setSystemId</A></CODE></TD> </TR> </TABLE> <A NAME="methods_inherited_from_class_java.lang.Object"><!-- --></A> <TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY=""> <TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor"> <TH ALIGN="left"><B>Methods inherited from class java.lang.<A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</A></B></TH> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD><CODE><A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#clone()" title="class or interface in java.lang">clone</A>, <A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#equals(java.lang.Object)" title="class or interface in java.lang">equals</A>, <A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#finalize()" title="class or interface in java.lang">finalize</A>, <A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#getClass()" title="class or interface in java.lang">getClass</A>, <A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#hashCode()" title="class or interface in java.lang">hashCode</A>, <A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#notify()" title="class or interface in java.lang">notify</A>, <A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#notifyAll()" title="class or interface in java.lang">notifyAll</A>, <A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#toString()" title="class or interface in java.lang">toString</A>, <A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#wait()" title="class or interface in java.lang">wait</A>, <A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#wait(long)" title="class or interface in java.lang">wait</A>, <A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#wait(long, int)" title="class or interface in java.lang">wait</A></CODE></TD> </TR> </TABLE> <P> <!-- ========= 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="Template()"><!-- --></A><H3> Template</H3> <PRE> public <B>Template</B>()</PRE> <DL> <DD>Create a template <P> </DL> <!-- ============ METHOD DETAIL ========== --> <A NAME="method_detail"><!-- --></A> <TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY=""> <TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor"> <TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2"> <B>Method Detail</B></FONT></TH> </TR> </TABLE> <A NAME="setTemplateName(net.sf.saxon.om.StructuredQName)"><!-- --></A><H3> setTemplateName</H3> <PRE> public void <B>setTemplateName</B>(<A HREF="../../../../../net/sf/saxon/om/StructuredQName.html" title="class in net.sf.saxon.om">StructuredQName</A> templateName)</PRE> <DL> <DD>Initialize the template <P> <DD><DL> </DL> </DD> <DD><DL> <DT><B>Parameters:</B><DD><CODE>templateName</CODE> - the name of the template (if any) performed by apply-imports</DL> </DD> </DL> <HR> <A NAME="setMatchPattern(net.sf.saxon.pattern.Pattern)"><!-- --></A><H3> setMatchPattern</H3> <PRE> public void <B>setMatchPattern</B>(<A HREF="../../../../../net/sf/saxon/pattern/Pattern.html" title="class in net.sf.saxon.pattern">Pattern</A> pattern)</PRE> <DL> <DD>Set the match pattern used with this template <P> <DD><DL> </DL> </DD> <DD><DL> <DT><B>Parameters:</B><DD><CODE>pattern</CODE> - the match pattern (may be null for a named template)</DL> </DD> </DL> <HR> <A NAME="getMatchPattern()"><!-- --></A><H3> getMatchPattern</H3> <PRE> public <A HREF="../../../../../net/sf/saxon/pattern/Pattern.html" title="class in net.sf.saxon.pattern">Pattern</A> <B>getMatchPattern</B>()</PRE> <DL> <DD>Get the match pattern used with this template <P> <DD><DL> </DL> </DD> <DD><DL> <DT><B>Returns:</B><DD>the match pattern, or null if this is a named template with no match pattern</DL> </DD> </DL> <HR> <A NAME="setBody(net.sf.saxon.expr.Expression)"><!-- --></A><H3> setBody</H3> <PRE> public void <B>setBody</B>(<A HREF="../../../../../net/sf/saxon/expr/Expression.html" title="class in net.sf.saxon.expr">Expression</A> body)</PRE> <DL> <DD>Set the expression that forms the body of the template <P> <DD><DL> <DT><B>Overrides:</B><DD><CODE><A HREF="../../../../../net/sf/saxon/expr/instruct/Procedure.html#setBody(net.sf.saxon.expr.Expression)">setBody</A></CODE> in class <CODE><A HREF="../../../../../net/sf/saxon/expr/instruct/Procedure.html" title="class in net.sf.saxon.expr.instruct">Procedure</A></CODE></DL> </DD> <DD><DL> <DT><B>Parameters:</B><DD><CODE>body</CODE> - the body of the template</DL> </DD> </DL> <HR> <A NAME="getTemplateName()"><!-- --></A><H3> getTemplateName</H3> <PRE> public <A HREF="../../../../../net/sf/saxon/om/StructuredQName.html" title="class in net.sf.saxon.om">StructuredQName</A> <B>getTemplateName</B>()</PRE> <DL> <DD>Get the name of the template (if it is named) <P> <DD><DL> </DL> </DD> <DD><DL> <DT><B>Returns:</B><DD>the template name, or null if unnamed</DL> </DD> </DL> <HR> <A NAME="getObjectName()"><!-- --></A><H3> getObjectName</H3> <PRE> public <A HREF="../../../../../net/sf/saxon/om/StructuredQName.html" title="class in net.sf.saxon.om">StructuredQName</A> <B>getObjectName</B>()</PRE> <DL> <DD>Get a name identifying the object of the expression, for example a function name, template name, variable name, key name, element name, etc. This is used only where the name is known statically. <P> <DD><DL> <DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../net/sf/saxon/trace/InstructionInfo.html#getObjectName()">getObjectName</A></CODE> in interface <CODE><A HREF="../../../../../net/sf/saxon/trace/InstructionInfo.html" title="interface in net.sf.saxon.trace">InstructionInfo</A></CODE></DL> </DD> <DD><DL> <DT><B>Returns:</B><DD>the QName of the object declared or manipulated by this instruction or expression</DL> </DD> </DL> <HR> <A NAME="setHasRequiredParams(boolean)"><!-- --></A><H3> setHasRequiredParams</H3> <PRE> public void <B>setHasRequiredParams</B>(boolean has)</PRE> <DL> <DD>Set whether this template has one or more required parameters <P> <DD><DL> </DL> </DD> <DD><DL> <DT><B>Parameters:</B><DD><CODE>has</CODE> - true if the template has at least one required parameter</DL> </DD> </DL> <HR> <A NAME="hasRequiredParams()"><!-- --></A><H3> hasRequiredParams</H3> <PRE> public boolean <B>hasRequiredParams</B>()</PRE> <DL> <DD>Ask whether this template has one or more required parameters <P> <DD><DL> </DL> </DD> <DD><DL> <DT><B>Returns:</B><DD>true if this template has at least one required parameter</DL> </DD> </DL> <HR> <A NAME="setRequiredType(net.sf.saxon.value.SequenceType)"><!-- --></A><H3> setRequiredType</H3> <PRE> public void <B>setRequiredType</B>(<A HREF="../../../../../net/sf/saxon/value/SequenceType.html" title="class in net.sf.saxon.value">SequenceType</A> type)</PRE> <DL> <DD>Set the required type to be returned by this template <P> <DD><DL> </DL> </DD> <DD><DL> <DT><B>Parameters:</B><DD><CODE>type</CODE> - the required type as defined in the "as" attribute on the xsl:template element</DL> </DD> </DL> <HR> <A NAME="getRequiredType()"><!-- --></A><H3> getRequiredType</H3> <PRE> public <A HREF="../../../../../net/sf/saxon/value/SequenceType.html" title="class in net.sf.saxon.value">SequenceType</A> <B>getRequiredType</B>()</PRE> <DL> <DD>Get the required type to be returned by this template <P> <DD><DL> </DL> </DD> <DD><DL> <DT><B>Returns:</B><DD>the required type as defined in the "as" attribute on the xsl:template element</DL> </DD> </DL> <HR> <A NAME="setStreamable(boolean)"><!-- --></A><H3> setStreamable</H3> <PRE> public void <B>setStreamable</B>(boolean streamable)</PRE> <DL> <DD>Say whether or not this template is declared as streamable <P> <DD><DL> </DL> </DD> <DD><DL> <DT><B>Parameters:</B><DD><CODE>streamable</CODE> - true if the template belongs to a streamable mode</DL> </DD> </DL> <HR> <A NAME="isStreamable()"><!-- --></A><H3> isStreamable</H3> <PRE> public boolean <B>isStreamable</B>()</PRE> <DL> <DD>Ask whether or not this template is declared as streamable <P> <DD><DL> </DL> </DD> <DD><DL> <DT><B>Returns:</B><DD>true if the template belongs to a streamable mode</DL> </DD> </DL> <HR> <A NAME="getLocalParam(int)"><!-- --></A><H3> getLocalParam</H3> <PRE> public <A HREF="../../../../../net/sf/saxon/expr/instruct/LocalParam.html" title="class in net.sf.saxon.expr.instruct">LocalParam</A> <B>getLocalParam</B>(int id)</PRE> <DL> <DD>Get the local parameter with a given parameter id <P> <DD><DL> </DL> </DD> <DD><DL> <DT><B>Parameters:</B><DD><CODE>id</CODE> - the parameter id <DT><B>Returns:</B><DD>the local parameter with this id if found, otherwise null</DL> </DD> </DL> <HR> <A NAME="apply(net.sf.saxon.expr.XPathContextMajor)"><!-- --></A><H3> apply</H3> <PRE> public void <B>apply</B>(<A HREF="../../../../../net/sf/saxon/expr/XPathContextMajor.html" title="class in net.sf.saxon.expr">XPathContextMajor</A> context) throws <A HREF="../../../../../net/sf/saxon/trans/XPathException.html" title="class in net.sf.saxon.trans">XPathException</A></PRE> <DL> <DD>Process the template, without returning any tail calls. This path is used by xsl:apply-imports and xsl:next-match <P> <DD><DL> </DL> </DD> <DD><DL> <DT><B>Parameters:</B><DD><CODE>context</CODE> - The dynamic context, giving access to the current node, <DT><B>Throws:</B> <DD><CODE><A HREF="../../../../../net/sf/saxon/trans/XPathException.html" title="class in net.sf.saxon.trans">XPathException</A></CODE> - if a dynamic error occurs while evaluating the template</DL> </DD> </DL> <HR> <A NAME="applyLeavingTail(net.sf.saxon.expr.XPathContextMajor)"><!-- --></A><H3> applyLeavingTail</H3> <PRE> public <A HREF="../../../../../net/sf/saxon/expr/instruct/TailCall.html" title="interface in net.sf.saxon.expr.instruct">TailCall</A> <B>applyLeavingTail</B>(<A HREF="../../../../../net/sf/saxon/expr/XPathContextMajor.html" title="class in net.sf.saxon.expr">XPathContextMajor</A> context) throws <A HREF="../../../../../net/sf/saxon/trans/XPathException.html" title="class in net.sf.saxon.trans">XPathException</A></PRE> <DL> <DD>Process this template, with the possibility of returning a tail call package if the template contains any tail calls that are to be performed by the caller. <P> <DD><DL> </DL> </DD> <DD><DL> <DT><B>Parameters:</B><DD><CODE>context</CODE> - the XPath dynamic context <DT><B>Returns:</B><DD>null if the template exited normally; but if it was a tail call, details of the call that hasn't been made yet and needs to be made by the caller <DT><B>Throws:</B> <DD><CODE><A HREF="../../../../../net/sf/saxon/trans/XPathException.html" title="class in net.sf.saxon.trans">XPathException</A></CODE> - if a dynamic error occurs while evaluating the template</DL> </DD> </DL> <HR> <A NAME="expand(net.sf.saxon.expr.XPathContext)"><!-- --></A><H3> expand</H3> <PRE> public <A HREF="../../../../../net/sf/saxon/expr/instruct/TailCall.html" title="interface in net.sf.saxon.expr.instruct">TailCall</A> <B>expand</B>(<A HREF="../../../../../net/sf/saxon/expr/XPathContext.html" title="interface in net.sf.saxon.expr">XPathContext</A> context) throws <A HREF="../../../../../net/sf/saxon/trans/XPathException.html" title="class in net.sf.saxon.trans">XPathException</A></PRE> <DL> <DD>Expand the template. Called when the template is invoked using xsl:call-template. Invoking a template by this method does not change the current template. <P> <DD><DL> </DL> </DD> <DD><DL> <DT><B>Parameters:</B><DD><CODE>context</CODE> - the XPath dynamic context <DT><B>Returns:</B><DD>null if the template exited normally; but if it was a tail call, details of the call that hasn't been made yet and needs to be made by the caller <DT><B>Throws:</B> <DD><CODE><A HREF="../../../../../net/sf/saxon/trans/XPathException.html" title="class in net.sf.saxon.trans">XPathException</A></CODE> - if a dynamic error occurs while evaluating the template</DL> </DD> </DL> <HR> <A NAME="getConstructType()"><!-- --></A><H3> getConstructType</H3> <PRE> public int <B>getConstructType</B>()</PRE> <DL> <DD>Get the type of construct. This will either be the fingerprint of a standard XSLT instruction name (values in <A HREF="../../../../../net/sf/saxon/om/StandardNames.html" title="class in net.sf.saxon.om"><CODE>StandardNames</CODE></A>: all less than 1024) or it will be a constant in class <A HREF="../../../../../net/sf/saxon/trace/Location.html" title="class in net.sf.saxon.trace"><CODE>Location</CODE></A>. <P> <DD><DL> <DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../net/sf/saxon/trace/InstructionInfo.html#getConstructType()">getConstructType</A></CODE> in interface <CODE><A HREF="../../../../../net/sf/saxon/trace/InstructionInfo.html" title="interface in net.sf.saxon.trace">InstructionInfo</A></CODE></DL> </DD> <DD><DL> <DT><B>Returns:</B><DD>an integer identifying the kind of construct</DL> </DD> </DL> <HR> <A NAME="explain(net.sf.saxon.trace.ExpressionPresenter)"><!-- --></A><H3> explain</H3> <PRE> public void <B>explain</B>(<A HREF="../../../../../net/sf/saxon/trace/ExpressionPresenter.html" title="class in net.sf.saxon.trace">ExpressionPresenter</A> presenter)</PRE> <DL> <DD>Output diagnostic explanation to an ExpressionPresenter <P> <DD><DL> <DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../net/sf/saxon/trans/RuleTarget.html#explain(net.sf.saxon.trace.ExpressionPresenter)">explain</A></CODE> in interface <CODE><A HREF="../../../../../net/sf/saxon/trans/RuleTarget.html" title="interface in net.sf.saxon.trans">RuleTarget</A></CODE></DL> </DD> <DD><DL> </DL> </DD> </DL> <!-- ========= END OF CLASS DATA ========= --> <HR> <!-- ======= START OF BOTTOM NAVBAR ====== --> <A NAME="navbar_bottom"><!-- --></A> <A HREF="#skip-navbar_bottom" title="Skip navigation links"></A> <TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY=""> <TR> <TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A NAME="navbar_bottom_firstrow"><!-- --></A> <TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY=""> <TR ALIGN="center" VALIGN="top"> <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A> </TD> <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A> </TD> <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> <FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT> </TD> <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A> </TD> <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A> </TD> <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A> </TD> <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A> </TD> </TR> </TABLE> </TD> <TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM> </EM> </TD> </TR> <TR> <TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2"> <A HREF="../../../../../net/sf/saxon/expr/instruct/TailCallReturner.html" title="interface in net.sf.saxon.expr.instruct"><B>PREV CLASS</B></A> <A HREF="../../../../../net/sf/saxon/expr/instruct/TerminationException.html" title="class in net.sf.saxon.expr.instruct"><B>NEXT CLASS</B></A></FONT></TD> <TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2"> <A HREF="../../../../../index.html?net/sf/saxon/expr/instruct/Template.html" target="_top"><B>FRAMES</B></A> <A HREF="Template.html" target="_top"><B>NO FRAMES</B></A> <SCRIPT type="text/javascript"> <!-- if(window==top) { document.writeln('<A HREF="../../../../../allclasses-noframe.html"><B>All Classes</B></A>'); } //--> </SCRIPT> <NOSCRIPT> <A HREF="../../../../../allclasses-noframe.html"><B>All Classes</B></A> </NOSCRIPT> </FONT></TD> </TR> <TR> <TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2"> SUMMARY: NESTED | <A HREF="#fields_inherited_from_class_net.sf.saxon.expr.instruct.Procedure">FIELD</A> | <A HREF="#constructor_summary">CONSTR</A> | <A HREF="#method_summary">METHOD</A></FONT></TD> <TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2"> DETAIL: FIELD | <A HREF="#constructor_detail">CONSTR</A> | <A HREF="#method_detail">METHOD</A></FONT></TD> </TR> </TABLE> <A NAME="skip-navbar_bottom"></A> <!-- ======== END OF BOTTOM NAVBAR ======= --> <HR> Copyright (c) 2004-2011 Saxonica Limited. All rights reserved. </BODY> </HTML>