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>