Package org.apache.xalan.templates
Class ElemTemplate
- java.lang.Object
-
- org.apache.xml.utils.UnImplNode
-
- org.apache.xalan.templates.ElemTemplateElement
-
- org.apache.xalan.templates.ElemTemplate
-
- All Implemented Interfaces:
java.io.Serializable
,javax.xml.transform.SourceLocator
,XSLTVisitable
,PrefixResolver
,ExpressionNode
,WhitespaceStrippingElementMatcher
,org.w3c.dom.Document
,org.w3c.dom.Element
,org.w3c.dom.Node
,org.w3c.dom.NodeList
- Direct Known Subclasses:
ElemExsltFunction
,WhiteSpaceInfo
public class ElemTemplate extends ElemTemplateElement
Implement xsl:template.
-
-
Field Summary
Fields Modifier and Type Field Description int
m_frameSize
The stack frame size for this template, which is equal to the maximum number of params and variables that can be declared in the template at one time.-
Fields inherited from interface org.w3c.dom.Node
ATTRIBUTE_NODE, CDATA_SECTION_NODE, COMMENT_NODE, DOCUMENT_FRAGMENT_NODE, DOCUMENT_NODE, DOCUMENT_POSITION_CONTAINED_BY, DOCUMENT_POSITION_CONTAINS, DOCUMENT_POSITION_DISCONNECTED, DOCUMENT_POSITION_FOLLOWING, DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC, DOCUMENT_POSITION_PRECEDING, DOCUMENT_TYPE_NODE, ELEMENT_NODE, ENTITY_NODE, ENTITY_REFERENCE_NODE, NOTATION_NODE, PROCESSING_INSTRUCTION_NODE, TEXT_NODE
-
-
Constructor Summary
Constructors Constructor Description ElemTemplate()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
compose(StylesheetRoot sroot)
This function is called after everything else has been recomposed, and allows the template to set remaining values that may be based on some other property that depends on recomposition.void
endCompose(StylesheetRoot sroot)
This after the template's children have been composed.void
execute(TransformerImpl transformer)
Copy the template contents into the result tree.XPath
getMatch()
Get the "match" attribute.QName
getMode()
Get the "mode" attribute.QName
getName()
Get the "name" attribute.java.lang.String
getNodeName()
Return the node name.double
getPriority()
Get the "priority" attribute.java.lang.String
getPublicId()
Return the public identifier for the current document event.Stylesheet
getStylesheet()
Get the owning stylesheet.StylesheetComposed
getStylesheetComposed()
Get the stylesheet composed (resolves includes and imports and has methods on it that return "composed" properties.StylesheetRoot
getStylesheetRoot()
Get the root stylesheet.java.lang.String
getSystemId()
Return the system identifier for the current document event.int
getXSLToken()
Get an int constant identifying the type of element.void
recompose(StylesheetRoot root)
This function is called during recomposition to control how this element is composed.void
setLocaterInfo(javax.xml.transform.SourceLocator locator)
Set the location information for this element.void
setMatch(XPath v)
Set the "match" attribute.void
setMode(QName v)
Set the "mode" attribute.void
setName(QName v)
Set the "name" attribute.void
setPriority(double v)
Set the "priority" attribute.void
setStylesheet(Stylesheet sheet)
Set the owning stylesheet.-
Methods inherited from class org.apache.xalan.templates.ElemTemplateElement
appendChild, appendChild, callVisitors, canAcceptVariables, canStripWhiteSpace, compareTo, containsExcludeResultPrefix, error, error, exprAddChild, exprGetChild, exprGetNumChildren, exprGetParent, exprSetParent, getBaseIdentifier, getChildNodes, getColumnNumber, getDeclaredPrefixes, getDOMBackPointer, getEndColumnNumber, getEndLineNumber, getFirstChild, getFirstChildElem, getLastChild, getLastChildElem, getLength, getLineNumber, getLocalName, getNamespaceForPrefix, getNamespaceForPrefix, getNextSibling, getNextSiblingElem, getNodeType, getOwnerDocument, getOwnerXSLTemplate, getParentElem, getParentNode, getParentNodeElem, getPreviousSibling, getPreviousSiblingElem, getTagName, getUid, getXmlSpace, handlesNullPrefixes, hasChildNodes, hasTextLitOnly, hasVariableDecl, insertBefore, isCompiledTemplate, item, removeChild, replaceChild, replaceChild, resolvePrefixTables, runtimeInit, setDOMBackPointer, setEndLocaterInfo, setParentElem, setPrefixes, setPrefixes, setUid, setXmlSpace, shouldStripWhiteSpace
-
Methods inherited from class org.apache.xml.utils.UnImplNode
adoptNode, appendData, cloneNode, compareDocumentPosition, createAttribute, createAttributeNS, createCDATASection, createComment, createDocumentFragment, createElement, createElementNS, createEntityReference, createProcessingInstruction, createTextNode, deleteData, getActualEncoding, getAttribute, getAttributeNode, getAttributeNodeNS, getAttributeNS, getAttributes, getBaseURI, getDoctype, getDocumentElement, getDocumentURI, getDomConfig, getElementById, getElementsByTagName, getElementsByTagNameNS, getFeature, getImplementation, getInputEncoding, getNamespaceURI, getNodeValue, getOwnerElement, getPrefix, getSchemaTypeInfo, getSpecified, getStrictErrorChecking, getTextContent, getUserData, getWholeText, getXmlEncoding, getXmlStandalone, getXmlVersion, hasAttribute, hasAttributeNS, hasAttributes, importNode, insertData, isDefaultNamespace, isEqualNode, isId, isSameNode, isSupported, isWhitespaceInElementContent, lookupNamespaceURI, lookupPrefix, normalize, normalizeDocument, removeAttribute, removeAttributeNode, removeAttributeNS, removeChild, renameNode, replaceData, replaceWholeText, setActualEncoding, setAttribute, setAttributeNode, setAttributeNodeNS, setAttributeNS, setData, setDocumentURI, setIdAttribute, setIdAttribute, setIdAttributeNode, setIdAttributeNS, setInputEncoding, setNodeValue, setPrefix, setStrictErrorChecking, setTextContent, setUserData, setValue, setXmlEncoding, setXmlStandalone, setXmlVersion, splitText, substringData
-
-
-
-
Method Detail
-
getPublicId
public java.lang.String getPublicId()
Return the public identifier for the current document event.This will be the public identifier
- Specified by:
getPublicId
in interfacejavax.xml.transform.SourceLocator
- Overrides:
getPublicId
in classElemTemplateElement
- Returns:
- A string containing the public identifier, or null if none is available.
- See Also:
getSystemId()
-
getSystemId
public java.lang.String getSystemId()
Return the system identifier for the current document event.If the system identifier is a URL, the parser must resolve it fully before passing it to the application.
- Specified by:
getSystemId
in interfacejavax.xml.transform.SourceLocator
- Overrides:
getSystemId
in classElemTemplateElement
- Returns:
- A string containing the system identifier, or null if none is available.
- See Also:
getPublicId()
-
setLocaterInfo
public void setLocaterInfo(javax.xml.transform.SourceLocator locator)
Set the location information for this element.- Overrides:
setLocaterInfo
in classElemTemplateElement
- Parameters:
locator
- SourceLocator holding location information
-
getStylesheetComposed
public StylesheetComposed getStylesheetComposed()
Get the stylesheet composed (resolves includes and imports and has methods on it that return "composed" properties.- Overrides:
getStylesheetComposed
in classElemTemplateElement
- Returns:
- The stylesheet composed.
-
getStylesheet
public Stylesheet getStylesheet()
Get the owning stylesheet.- Overrides:
getStylesheet
in classElemTemplateElement
- Returns:
- The owning stylesheet.
-
setStylesheet
public void setStylesheet(Stylesheet sheet)
Set the owning stylesheet.- Parameters:
sheet
- The owning stylesheet for this element
-
getStylesheetRoot
public StylesheetRoot getStylesheetRoot()
Get the root stylesheet.- Overrides:
getStylesheetRoot
in classElemTemplateElement
- Returns:
- The root stylesheet for this element
-
setMatch
public void setMatch(XPath v)
Set the "match" attribute. The match attribute is a Pattern that identifies the source node or nodes to which the rule applies. The match attribute is required unless the xsl:template element has a name attribute (see [6 Named Templates]). It is an error for the value of the match attribute to contain a VariableReference.- Parameters:
v
- Value to set for the "match" attribute- See Also:
- patterns in XSLT Specification
-
getMatch
public XPath getMatch()
Get the "match" attribute. The match attribute is a Pattern that identifies the source node or nodes to which the rule applies. The match attribute is required unless the xsl:template element has a name attribute (see [6 Named Templates]). It is an error for the value of the match attribute to contain a VariableReference.- Returns:
- Value of the "match" attribute
- See Also:
- patterns in XSLT Specification
-
setName
public void setName(QName v)
Set the "name" attribute. An xsl:template element with a name attribute specifies a named template. If an xsl:template element has a name attribute, it may, but need not, also have a match attribute.- Parameters:
v
- Value to set the "name" attribute- See Also:
- named-templates in XSLT Specification
-
getName
public QName getName()
Get the "name" attribute. An xsl:template element with a name attribute specifies a named template. If an xsl:template element has a name attribute, it may, but need not, also have a match attribute.- Returns:
- Value of the "name" attribute
- See Also:
- named-templates in XSLT Specification
-
setMode
public void setMode(QName v)
Set the "mode" attribute. Modes allow an element to be processed multiple times, each time producing a different result. If xsl:template does not have a match attribute, it must not have a mode attribute.- Parameters:
v
- Value to set the "mode" attribute- See Also:
- modes in XSLT Specification
-
getMode
public QName getMode()
Get the "mode" attribute. Modes allow an element to be processed multiple times, each time producing a different result. If xsl:template does not have a match attribute, it must not have a mode attribute.- Returns:
- Value of the "mode" attribute
- See Also:
- modes in XSLT Specification
-
setPriority
public void setPriority(double v)
Set the "priority" attribute. The priority of a template rule is specified by the priority attribute on the template rule. The value of this must be a real number (positive or negative), matching the production Number with an optional leading minus sign (-).- Parameters:
v
- The value to set for the "priority" attribute- See Also:
- conflict in XSLT Specification
-
getPriority
public double getPriority()
Get the "priority" attribute. The priority of a template rule is specified by the priority attribute on the template rule. The value of this must be a real number (positive or negative), matching the production Number with an optional leading minus sign (-).- Returns:
- The value of the "priority" attribute
- See Also:
- conflict in XSLT Specification
-
getXSLToken
public int getXSLToken()
Get an int constant identifying the type of element.- Overrides:
getXSLToken
in classElemTemplateElement
- Returns:
- The token ID for the element
- See Also:
Constants
-
getNodeName
public java.lang.String getNodeName()
Return the node name.- Specified by:
getNodeName
in interfaceorg.w3c.dom.Node
- Overrides:
getNodeName
in classElemTemplateElement
- Returns:
- The element's name
-
compose
public void compose(StylesheetRoot sroot) throws javax.xml.transform.TransformerException
This function is called after everything else has been recomposed, and allows the template to set remaining values that may be based on some other property that depends on recomposition.- Overrides:
compose
in classElemTemplateElement
- Throws:
javax.xml.transform.TransformerException
-
endCompose
public void endCompose(StylesheetRoot sroot) throws javax.xml.transform.TransformerException
This after the template's children have been composed.- Overrides:
endCompose
in classElemTemplateElement
- Throws:
javax.xml.transform.TransformerException
-
execute
public void execute(TransformerImpl transformer) throws javax.xml.transform.TransformerException
Copy the template contents into the result tree. The content of the xsl:template element is the template that is instantiated when the template rule is applied.- Overrides:
execute
in classElemTemplateElement
- Parameters:
transformer
- non-null reference to the the current transform-time state.- Throws:
javax.xml.transform.TransformerException
-
recompose
public void recompose(StylesheetRoot root)
This function is called during recomposition to control how this element is composed.- Overrides:
recompose
in classElemTemplateElement
- Parameters:
root
- The root stylesheet for this transformation.
-
-