xsl:attribute-set¶
Used to declare a named collection of attributes, which will often be used together to define an output style. It is declared at the top level (subordinate to xsl:stylesheet).
Available in XSLT 1.0 and later versions. Available in all Saxon editions.
- Category: declaration
- Content:
xsl:attribute* - Permitted parent elements:
xsl:package;xsl:stylesheet;xsl:transform;xsl:override
Attributes¶
name- eqname
- The name of the attribute set.
use-attribute-sets?- eqnames
- Used to define this attribute set in terms of other named attribute sets, provided as a space-separated list.
visibility?"public" | "private" | "final" | "abstract"- New in XSLT 3.0. Determines the potential visibility of the component corresponding to this attribute set; the default is
private. All the declarations for an attribute set must have the same value for this attribute. streamable?- boolean
- New in XSLT 3.0. The value
yesdesignates the attribute set as streamable. Requires Saxon-EE.
Details¶
An attribute-set contains a collection of xsl:attribute elements.
The attributes in an attribute-set can be used in several ways:
- They can be added to a literal result element by specifying
xsl:use-attribute-setsin the list of attributes for the element. The value is a space-separated list of attribute-set names. Attributes specified explicitly on the literal result element, or added usingxsl:attribute, override any that are specified in the attribute-set definition. - They can be added to an element created using
xsl:element, by specifyinguse-attribute-setsin the list of attributes for thexsl:elementelement. The value is a space-separated list of attribute-set names. Attributes specified explicitly on the literal result element, or added usingxsl:attribute, override any that are specified in the attribute-set definition. - One attribute set can be based on another by specifying
use-attribute-setsin the list of attributes for thexsl:attribute-setelement. Again, attributes defined explicitly in the attribute set override any that are included implicitly from another attribute set.
Attribute sets named in the xsl:use-attribute-sets or use-attribute-sets attribute are applied in the order given: if the same attribute is generated more than once, the later value always takes precedence.