com.icl.saxon.style

Class XSLTemplate

public class XSLTemplate extends StyleElement implements NodeHandler

An xsl:template element in the style sheet.
Field Summary
protected Patternmatch
protected intmodeNameCode
protected booleanneedsStackFrame
protected doublepriority
protected booleanprioritySpecified
protected Procedureprocedure
protected inttemplateFingerprint
Method Summary
BindingbindVariable(int fingerprint)
Disallow variable references in the match pattern
protected voidexpand(Context context)
Expand the template.
intgetMinImportPrecedence()
ProceduregetProcedure()
Get associated Procedure (for details of stack frame)
intgetTemplateFingerprint()
Return the fingerprint for the name of this template
booleanmayContainTemplateBody()
Determine whether this type of element is allowed to contain a template-body
booleanneedsStackFrame()
voidprepareAttributes()
voidpreprocess()
Preprocess: this registers the template with the rule manager, and ensures space is available for local variables
voidprocess(Context context)
Process template.
voidstart(NodeInfo e, Context context)
Process a node in the source document.
protected voidtraceExpand(Context context)
Expand the template, with tracing.
voidvalidate()

Field Detail

match

protected Pattern match

modeNameCode

protected int modeNameCode

needsStackFrame

protected boolean needsStackFrame

priority

protected double priority

prioritySpecified

protected boolean prioritySpecified

procedure

protected Procedure procedure

templateFingerprint

protected int templateFingerprint

Method Detail

bindVariable

public Binding bindVariable(int fingerprint)
Disallow variable references in the match pattern

expand

protected void expand(Context context)
Expand the template. Called when the template is invoked either by xsl:apply-templates or from xsl:call-template

getMinImportPrecedence

public int getMinImportPrecedence()

getProcedure

public Procedure getProcedure()
Get associated Procedure (for details of stack frame)

getTemplateFingerprint

public int getTemplateFingerprint()
Return the fingerprint for the name of this template

mayContainTemplateBody

public boolean mayContainTemplateBody()
Determine whether this type of element is allowed to contain a template-body

Returns: true: yes, it may contain a template-body

needsStackFrame

public boolean needsStackFrame()

prepareAttributes

public void prepareAttributes()

preprocess

public void preprocess()
Preprocess: this registers the template with the rule manager, and ensures space is available for local variables

process

public void process(Context context)
Process template. This is called while all the top-level nodes are being processed in order, so it does nothing.

start

public void start(NodeInfo e, Context context)
Process a node in the source document. This is called when the template is invoked using xsl:apply-templates.

traceExpand

protected void traceExpand(Context context)
Expand the template, with tracing. Called when the template is invoked either by xsl:apply-templates or from xsl:call-template

validate

public void validate()