org.apache.xalan.templates
Class ElemUse
java.lang.Object
org.apache.xml.utils.UnImplNode
org.apache.xalan.templates.ElemTemplateElement
org.apache.xalan.templates.ElemUse
- All Implemented Interfaces:
- org.w3c.dom.Document, org.w3c.dom.Element, ExpressionNode, org.w3c.dom.Node, org.w3c.dom.NodeList, PrefixResolver, Serializable, javax.xml.transform.SourceLocator, WhitespaceStrippingElementMatcher, XSLTVisitable
- Direct Known Subclasses:
- ElemAttributeSet, ElemCopy, ElemElement, ElemLiteralResult
- public class ElemUse
- extends ElemTemplateElement
Implement xsl:use.
This acts as a superclass for ElemCopy, ElemAttributeSet,
ElemElement, and ElemLiteralResult, on order to implement
shared behavior the use-attribute-sets attribute.
- See Also:
- attribute-sets in XSLT Specification,
Serialized Form
Fields inherited from interface org.w3c.dom.Node |
ATTRIBUTE_NODE, CDATA_SECTION_NODE, COMMENT_NODE, DOCUMENT_FRAGMENT_NODE, DOCUMENT_NODE, DOCUMENT_TYPE_NODE, ELEMENT_NODE, ENTITY_NODE, ENTITY_REFERENCE_NODE, NOTATION_NODE, PROCESSING_INSTRUCTION_NODE, TEXT_NODE |
Methods inherited from class org.apache.xalan.templates.ElemTemplateElement |
accept, addOrReplaceDecls, appendChild, appendChild, callChildVisitors, callChildVisitors, callVisitors, canAcceptVariables, canStripWhiteSpace, compareTo, compose, containsExcludeResultPrefix, endCompose, error, error, executeNSDecls, executeNSDecls, exprAddChild, exprGetChild, exprGetNumChildren, exprGetParent, exprSetParent, getBaseIdentifier, getChildNodes, getColumnNumber, getDeclaredPrefixes, getDOMBackPointer, getFirstChild, getFirstChildElem, getLastChild, getLastChildElem, getLength, getLineNumber, getLocalName, getNamespaceForPrefix, getNamespaceForPrefix, getNextSibling, getNextSiblingElem, getNodeName, getNodeType, getOwnerDocument, getOwnerXSLTemplate, getParentElem, getParentNode, getParentNodeElem, getPrefixes, getPreviousSibling, getPreviousSiblingElem, getPublicId, getStylesheet, getStylesheetComposed, getStylesheetRoot, getSystemId, getTagName, getUid, getXmlSpace, getXSLToken, handlesNullPrefixes, hasChildNodes, hasTextLitOnly, hasVariableDecl, insertBefore, isCompiledTemplate, isValidNCName, item, needToCheckExclude, recompose, removeChild, replaceChild, replaceChild, resolvePrefixTables, runtimeInit, setDOMBackPointer, setLocaterInfo, setParentElem, setPrefixes, setPrefixes, setUid, setXmlSpace, shouldStripWhiteSpace, unexecuteNSDecls, unexecuteNSDecls |
Methods inherited from class org.apache.xml.utils.UnImplNode |
adoptNode, appendData, cloneNode, createAttribute, createAttributeNS, createCDATASection, createComment, createDocumentFragment, createElement, createElementNS, createEntityReference, createProcessingInstruction, createTextNode, deleteData, getAttribute, getAttributeNode, getAttributeNodeNS, getAttributeNS, getAttributes, getDoctype, getDocumentElement, getElementById, getElementsByTagName, getElementsByTagNameNS, getEncoding, getImplementation, getNamespaceURI, getNodeValue, getOwnerElement, getPrefix, getSpecified, getStandalone, getStrictErrorChecking, getVersion, hasAttribute, hasAttributeNS, hasAttributes, importNode, insertData, isSupported, normalize, removeAttribute, removeAttributeNode, removeAttributeNS, removeChild, replaceData, setAttribute, setAttributeNode, setAttributeNodeNS, setAttributeNS, setData, setEncoding, setNodeValue, setPrefix, setStandalone, setStrictErrorChecking, setValue, setVersion, splitText, substringData |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
m_attributeSetsNames
private QName[] m_attributeSetsNames
- The value of the "use-attribute-sets" attribute.
ElemUse
public ElemUse()
setUseAttributeSets
public void setUseAttributeSets(Vector v)
- Set the "use-attribute-sets" attribute.
Attribute sets are used by specifying a use-attribute-sets
attribute on xsl:element, xsl:copy (see [7.5 Copying]) or
xsl:attribute-set elements. The value of the use-attribute-sets
attribute is a whitespace-separated list of names of attribute
sets. Each name is specified as a QName, which is expanded as
described in [2.4 Qualified Names].
- Parameters:
v
- The value to set for the "use-attribute-sets" attribute.
setUseAttributeSets
public void setUseAttributeSets(QName[] v)
- Set the "use-attribute-sets" attribute.
Attribute sets are used by specifying a use-attribute-sets
attribute on xsl:element, xsl:copy (see [7.5 Copying]) or
xsl:attribute-set elements. The value of the use-attribute-sets
attribute is a whitespace-separated list of names of attribute
sets. Each name is specified as a QName, which is expanded as
described in [2.4 Qualified Names].
- Parameters:
v
- The value to set for the "use-attribute-sets" attribute.
getUseAttributeSets
public QName[] getUseAttributeSets()
- Get the "use-attribute-sets" attribute.
Attribute sets are used by specifying a use-attribute-sets
attribute on xsl:element, xsl:copy (see [7.5 Copying]) or
xsl:attribute-set elements, or a xsl:use-attribute-sets attribute on
Literal Result Elements.
The value of the use-attribute-sets
attribute is a whitespace-separated list of names of attribute
sets. Each name is specified as a QName, which is expanded as
described in [2.4 Qualified Names].
- Returns:
- The value of the "use-attribute-sets" attribute.
applyAttrSets
public void applyAttrSets(TransformerImpl transformer,
StylesheetRoot stylesheet)
throws javax.xml.transform.TransformerException
- Add the attributes from the named attribute sets to the attribute list.
TODO: Error handling for: "It is an error if there are two attribute sets
with the same expanded-name and with equal import precedence and that both
contain the same attribute unless there is a definition of the attribute
set with higher import precedence that also contains the attribute."
- Parameters:
transformer
- non-null reference to the the current transform-time state.stylesheet
- The owning root stylesheet
- Throws:
javax.xml.transform.TransformerException
applyAttrSets
private void applyAttrSets(TransformerImpl transformer,
StylesheetRoot stylesheet,
QName[] attributeSetsNames)
throws javax.xml.transform.TransformerException
- Add the attributes from the named attribute sets to the attribute list.
TODO: Error handling for: "It is an error if there are two attribute sets
with the same expanded-name and with equal import precedence and that both
contain the same attribute unless there is a definition of the attribute
set with higher import precedence that also contains the attribute."
- Parameters:
transformer
- non-null reference to the the current transform-time state.stylesheet
- The owning root stylesheetattributeSetsNames
- List of attribute sets names to apply
- Throws:
javax.xml.transform.TransformerException
execute
public void execute(TransformerImpl transformer)
throws javax.xml.transform.TransformerException
- Copy attributes specified by use-attribute-sets to the result tree.
Specifying a use-attribute-sets attribute is equivalent to adding
xsl:attribute elements for each of the attributes in each of the
named attribute sets to the beginning of the content of the element
with the use-attribute-sets attribute, in the same order in which
the names of the attribute sets are specified in the use-attribute-sets
attribute. It is an error if use of use-attribute-sets attributes
on xsl:attribute-set elements causes an attribute set to directly
or indirectly use itself.
- Overrides:
execute
in class ElemTemplateElement
- Parameters:
transformer
- non-null reference to the the current transform-time state.
- Throws:
javax.xml.transform.TransformerException