2000
Die folgende Liste ist die Zusammenstellung aller XSLT-Elemente, die auch Teil der Spezifikastion für XSLT ist (dort: Anhang B).
<!-- Category: instruction -->
<xsl:apply-imports />
<!-- Category: instruction -->
<xsl:apply-templates
select = node-set-expression
mode = qname>
<!-- Content: (xsl:with-param)* -->
</xsl:apply-templates>
<!-- Category: instruction -->
<xsl:attribute
name = { qname }
namespace = { uri-reference }>
<!-- Content: template -->
</xsl:attribute>
<!-- Category: top-level-element -->
<xsl:attribute-set
name = qname
use-attribute-sets = qnames>
<!-- Content: xsl:attribute* -->
</xsl:attribute-set>
<!-- Category: instruction -->
<xsl:call-template
name = qname>
<!-- Content: xsl:with-param* -->
</xsl:call-template>
<!-- Category: instruction -->
<xsl:choose>
<!-- Content: (xsl:when+, xsl:otherwise?) -->
</xsl:choose>
<!-- Category: instruction -->
<xsl:comment>
<!-- Content: template -->
</xsl:comment>
<!-- Category: instruction -->
<xsl:copy
use-attribute-sets = qnames>
<!-- Content: template -->
</xsl:copy>
<!-- Category: instruction -->
<xsl:copy-of
select = expression />
<!-- Category: top-level-element -->
<xsl:decimal-format
name = qname
decimal-separator = char
grouping-separator = char
infinity = string
minus-sign = char
NaN = string
percent = char
per-mille = char
zero-digit = char
digit = char
pattern-separator = char />
<!-- Category: instruction -->
<xsl:element
name = { qname }
namespace = { uri-reference }
use-attribute-sets = qnames>
<!-- Content: template -->
</xsl:element>
<!-- Category: instruction -->
<xsl:fallback>
<!-- Content: template -->
</xsl:fallback>
<!-- Category: instruction -->
<xsl:for-each
select = node-set-expression>
<!-- Content: (xsl:sort*, template) -->
</xsl:for-each>
<!-- Category: instruction -->
<xsl:if
test = boolean-expression>
<!-- Content: template -->
</xsl:if>
<xsl:import
href = uri-reference />
<!-- Category: top-level-element -->
<xsl:include
href = uri-reference />
<!-- Category: top-level-element -->
<xsl:key
name = qname
match = pattern
use = expression />
<!-- Category: instruction -->
<xsl:message
terminate = "yes" | "no">
<!-- Content: template -->
</xsl:message>
<!-- Category: top-level-element -->
<xsl:namespace-alias
stylesheet-prefix = prefix | "#default"
result-prefix = prefix | "#default" />
<!-- Category: instruction -->
<xsl:number
level = "single" | "multiple" | "any"
count = pattern
from = pattern
value = number-expression
format = { string }
lang = { nmtoken }
letter-value = { "alphabetic" | "traditional" }
grouping-separator = { char }
grouping-size = { number } />
<xsl:otherwise>
<!-- Content: template -->
</xsl:otherwise>
<!-- Category: top-level-element -->
<xsl:output
method = "xml" | "html" | "text" | qname-but-not-ncname
version = nmtoken
encoding = string
omit-xml-declaration = "yes" | "no"
standalone = "yes" | "no"
doctype-public = string
doctype-system = string
cdata-section-elements = qnames
indent = "yes" | "no"
media-type = string />
<!-- Category: top-level-element -->
<xsl:param
name = qname
select = expression>
<!-- Content: template -->
</xsl:param>
<!-- Category: top-level-element -->
<xsl:preserve-space
elements = tokens />
<!-- Category: instruction -->
<xsl:processing-instruction
name = { ncname }>
<!-- Content: template -->
</xsl:processing-instruction>
<xsl:sort
select = string-expression
lang = { nmtoken }
data-type = { "text" | "number" | qname-but-not-ncname }
order = { "ascending" | "descending" }
case-order = { "upper-first" | "lower-first" } />
<!-- Category: top-level-element -->
<xsl:strip-space
elements = tokens />
<xsl:stylesheet
id = id
extension-element-prefixes = tokens
exclude-result-prefixes = tokens
version = number>
<!-- Content: (xsl:import*, top-level-elements) -->
</xsl:stylesheet>
<!-- Category: top-level-element -->
<xsl:template
match = pattern
name = qname
priority = number
mode = qname>
<!-- Content: (xsl:param*, template) -->
</xsl:template>
<!-- Category: instruction -->
<xsl:text
disable-output-escaping = "yes" | "no">
<!-- Content: #PCDATA -->
</xsl:text>
<xsl:transform
id = id
extension-element-prefixes = tokens
exclude-result-prefixes = tokens
version = number>
<!-- Content: (xsl:import*, top-level-elements) -->
</xsl:transform>
<!-- Category: instruction -->
<xsl:value-of
select = string-expression
disable-output-escaping = "yes" | "no" />
<!-- Category: top-level-element -->
<!-- Category: instruction -->
<xsl:variable
name = qname
select = expression>
<!-- Content: template -->
</xsl:variable>
<xsl:when
test = boolean-expression>
<!-- Content: template -->
</xsl:when>
<xsl:with-param
name = qname
select = expression>
<!-- Content: template -->
</xsl:with-param>