An xsl:stylesheet or xsl:transform element in the stylesheet.
Note this element represents a stylesheet module, not necessarily
the whole stylesheet.
allocateLocalSlots
public void allocateLocalSlots(int n)
Ensure there is enuogh space for local variables or parameters in any template
allocateSlotNumber
public int allocateSlotNumber()
Allocate a slot number for a global variable or parameter
gatherOutputProperties
public void gatherOutputProperties(Properties details)
Update an output properties object using the xsl:output elements in the stylesheet.
This method can be called before the source document is available; all properties
will be returned as written, with attribute value templates and namespace prefixes
unexpanded, and no validation performed.
getDecimalFormatManager
public DecimalFormatManager getDecimalFormatManager()
Get the DecimalFormatManager which handles decimal-format definitions
getExternalJavaClass
public Class getExternalJavaClass(String uri)
throws TransformerException
Get a Java class for a given namespace URI, if possible.
return null if none is found.
getImporter
public XSLStyleSheet getImporter()
Get the StyleSheet that included or imported this one.
- null if this is the principal stylesheet
getKeyManager
public KeyManager getKeyManager()
Get the KeyManager which handles key definitions
getMinImportPrecedence
public int getMinImportPrecedence()
Get the minimum import precedence of this stylesheet, that is, the lowest precedence
of any stylesheet imported by this one
getNamespaceAlias
protected short getNamespaceAlias(short uriCode)
Get the declared namespace alias for a given namespace URI code if there is one.
If there is more than one, we get the last.
uriCode
- The code of the uri used in the stylesheet.
- The code of the result uri to be used: return the stylesheet uri unchanged
if no alias is defined
getPreviewManager
public PreviewManager getPreviewManager()
Get the PreviewManager which handles saxon:preview element definitions
- null if there are no saxon:preview elements
getRuleManager
public RuleManager getRuleManager()
Get the RuleManager which handles template rules
getStripperRules
protected Mode getStripperRules()
Get the rules determining which nodes are to be stripped from the tree
getTopLevel
public Vector getTopLevel()
Get the top level elements in this stylesheet, after applying include/import
hasNamespaceAliases
protected boolean hasNamespaceAliases()
initialiseBindery
public void initialiseBindery(Bindery bindery)
Allocate space in bindery for all the variables needed
This has to be done early to accommodate preview mode
newStripper
public Stripper newStripper()
Create a Stripper which handles whitespace stripping definitions
prepareAttributes
public void prepareAttributes()
throws TransformerConfigurationException
Prepare the attributes on the stylesheet element
- prepareAttributes in interface StyleElement
preprocess
public void preprocess()
throws TransformerConfigurationException
Preprocess does all the processing possible before the source document is available.
It is done once per stylesheet, so the stylesheet can be reused for multiple source
documents.
- preprocess in interface StyleElement
process
public void process(Context context)
throws TransformerException
Process() is called once the source document is available. It activates those top-level
stylesheet elements that were not dealt with at preprocessing stage, notably
global variables and parameters, and xsl:output elements
- process in interface StyleElement
processAllAttributes
public void processAllAttributes()
throws TransformerConfigurationException
Process the attributes of every node in the stylesheet
- processAllAttributes in interface StyleElement
processVersionAttribute
protected void processVersionAttribute(int nc)
Process the version attribute - mandatory on this element (but checked elsewhere)
- processVersionAttribute in interface StyleElement
setImporter
public void setImporter(XSLStyleSheet importer)
Set the StyleSheet that included or imported this one.
setMinImportPrecedence
public void setMinImportPrecedence(int precedence)
Set the minimum import precedence of this stylesheet, that is, the lowest precedence
of any stylesheet imported by this one
setPrecedence
public void setPrecedence(int prec)
Set the import precedence of this stylesheet
setPreparedStyleSheet
public void setPreparedStyleSheet(PreparedStyleSheet sheet)
Create link to the owning PreparedStyleSheet object
setPreviewManager
public void setPreviewManager(PreviewManager pm)
Set the preview manager
setWasIncluded
public void setWasIncluded()
Indicate that this stylesheet was included (by its "importer") using an xsl:include
statement as distinct from xsl:import
spliceIncludes
public void spliceIncludes()
throws TransformerConfigurationException
Process xsl:include and xsl:import elements.
stripsWhitespace
public boolean stripsWhitespace()
Determine whether this stylesheet does any whitespace stripping
updateOutputProperties
public void updateOutputProperties(Properties details,
Context context)
throws TransformerException
Update an output properties object using the xsl:output elements in the stylesheet.
Note, as xsl:output now allows attribute value templates, this cannot be called until
the source document is available.
validate
public void validate()
throws TransformerConfigurationException
Validate this element
- validate in interface StyleElement
wasIncluded
public boolean wasIncluded()
Determine whether this stylesheet was included (by its "importer") using an xsl:include
statement as distinct from xsl:import.