Jesper Tverskov, Updated: 2011-07-01
Elements<!-- Category: instruction -->
<xsl:analyze-string select=expression regex={string} flags={string}>
<!-- Content: (xsl:matching-substring?, xsl:non-matching-substring?, xsl:fallback*) -->
</xsl:analyze-string>
<!-- Category: instruction -->
<xsl:apply-imports>
<!-- Content: xsl:with-param* -->
</xsl:apply-imports>
<!-- Category: instruction -->
<xsl:apply-templates select=expression mode=token>
<!-- Content: (xsl:sort|xsl:with-param)* -->
</xsl:apply-templates>
<!-- Category: instruction -->
<xsl:attribute name={qname} namespace={uri-reference} select=expression separator={string} type=qname validation="strict"|"lax"|"preserve"|"strip">
<!-- Content: sequence-constructor -->
</xsl:attribute>
<!-- Category: declaration -->
<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: declaration -->
<xsl:character-map name=qname use-character-maps=qnames>
<!-- Content: (xsl:output-character*) -->
</xsl:character-map>
<!-- Category: instruction -->
<xsl:choose>
<!-- Content: (xsl:when+, xsl:otherwise?) -->
</xsl:choose>
<!-- Category: instruction -->
<xsl:comment select=expression>
<!-- Content: sequence-constructor -->
</xsl:comment>
<!-- Category: instruction -->
<xsl:copy copy-namespaces="yes"|"no" inherit-namespaces="yes"|"no" use-attribute-sets=qnames type=qname validation="strict"|"lax"|"preserve"|"strip">
<!-- Content: sequence-constructor -->
</xsl:copy>
<!-- Category: instruction -->
<xsl:copy-of select=expression copy-namespaces="yes"|"no" type=qname validation="strict"|"lax"|"preserve"|"strip" />
<!-- Category: declaration -->
<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:document validation="strict"|"lax"|"preserve"|"strip" type=qname>
<!-- Content: sequence-constructor -->
</xsl:document>
<!-- Category: instruction -->
<xsl:element name={qname} namespace={uri-reference} inherit-namespaces="yes"|"no" use-attribute-sets=qnames type=qname validation="strict"|"lax"|"preserve"|"strip">
<!-- Content: sequence-constructor -->
</xsl:element>
<!-- Category: instruction -->
<xsl:fallback>
<!-- Content: sequence-constructor -->
</xsl:fallback>
<!-- Category: instruction -->
<xsl:for-each select=expression>
<!-- Content: (xsl:sort*, sequence-constructor) -->
</xsl:for-each>
<!-- Category: instruction -->
<xsl:for-each-group select=expression group-by=expression group-adjacent=expression group-starting-with=pattern group-ending-with=pattern collation={uri}>
<!-- Content: (xsl:sort*, sequence-constructor) -->
</xsl:for-each-group>
<!-- Category: declaration -->
<xsl:function name=qname as=sequence-type override="yes"|"no">
<!-- Content: (xsl:param*, sequence-constructor) -->
</xsl:function>
<!-- Category: instruction -->
<xsl:if test=expression>
<!-- Content: sequence-constructor -->
</xsl:if>
<!-- Category: declaration -->
<xsl:import href=uri-reference />
<!-- Category: declaration -->
<xsl:import-schema namespace=uri-reference schema-location=uri-reference>
<!-- Content: xs:schema? -->
</xsl:import-schema>
<!-- Category: declaration -->
<xsl:include href=uri-reference />
<!-- Category: declaration -->
<xsl:key name=qname match=pattern use=expression collation=uri>
<!-- Content: sequence-constructor -->
</xsl:key>
<!-- Category: (used inside xsl:analyze-string) -->
<xsl:matching-substring>
<!-- Content: sequence-constructor -->
</xsl:matching-substring>
<!-- Category: instruction -->
<xsl:message select=expression terminate={"yes"|"no"}>
<!-- Content: sequence-constructor -->
</xsl:message>
<!-- Category: instruction -->
<xsl:namespace name={ncname} select=expression>
<!-- Content: sequence-constructor -->
</xsl:namespace>
<!-- Category: declaration -->
<xsl:namespace-alias stylesheet-prefix=prefix|"#default" result-prefix=prefix|"#default" />
<!-- Category: instruction -->
<xsl:next-match>
<!-- Content: (xsl:with-param|xsl:fallback)* -->
</xsl:next-match>
<!-- Category: (used inside xsl:analyze-string) -->
<xsl:non-matching-substring>
<!-- Content: sequence-constructor -->
</xsl:non-matching-substring>
mk | 2.0 1.0 | ex1 ex2 ex3 ex4
<!-- Category: instruction -->
<xsl:number value=expression select=expression level="single"|"multiple"|"any" count=pattern from=pattern format={string} lang={nmtoken} letter-value={"alphabetic"|"traditional"} ordinal={string} grouping-separator={char} grouping-size={number} />
<!-- Category: (used as part of xsl:choose) -->
<xsl:otherwise>
<!-- Content: sequence-constructor -->
</xsl:otherwise>
<!-- Category: declaration -->
<xsl:output name=qname method="xml"|"html"|"xhtml"|"text"|qname-but-not-ncname byte-order-mark="yes"|"no" cdata-section-elements=qnames doctype-public=string doctype-system=string encoding=string escape-uri-attributes="yes"|"no" include-content-type="yes"|"no" indent="yes"|"no" media-type=string normalization-form="NFC"|"NFD"|"NFKC"|"NFKD"|"fully-normalized"|"none"|nmtoken omit-xml-declaration="yes"|"no" standalone="yes"|"no"|"omit" undeclare-prefixes="yes"|"no" use-character-maps=qnames version=nmtoken />
<!-- Category: (used as part of xsl:character-map) -->
<xsl:output-character character=char string=string />
<!-- Category: declaration --> <!-- Category: instruction (first child of xsl:template) -->
<xsl:param name=qname select=expression as=sequence-type required="yes"|"no" tunnel="yes"|"no">
<!-- Content: sequence-constructor -->
</xsl:param>
<!-- Category: instruction -->
<xsl:perform-sort select=expression>
<!-- Content: (xsl:sort+, sequence-constructor) -->
</xsl:perform-sort>
<!-- Category: declaration -->
<xsl:preserve-space elements=tokens />
<!-- Category: instruction -->
<xsl:processing-instruction name={ncname} select=expression>
<!-- Content: sequence-constructor -->
</xsl:processing-instruction>
<!-- Category: instruction -->
<xsl:result-document format={qname} href={uri-reference} validation="strict"|"lax"|"preserve"|"strip" type=qname method={"xml"|"html"|"xhtml"|"text"|qname-but-not-ncname} byte-order-mark={"yes"|"no"} cdata-section-elements={qnames} doctype-public={string} doctype-system={string} encoding={string} escape-uri-attributes={"yes"|"no"} include-content-type={"yes"|"no"} indent={"yes"|"no"} media-type={string} normalization-form={"NFC"|"NFD"|"NFKC"|"NFKD"|"fully-normalized"|"none"|nmtoken} omit-xml-declaration={"yes"|"no"} standalone={"yes"|"no"|"omit"} undeclare-prefixes={"yes"|"no"} use-character-maps=qnames output-version={nmtoken}>
<!-- Content: sequence-constructor -->
</xsl:result-document>
<!-- Category: instruction -->
<xsl:sequence select=expression>
<!-- Content: xsl:fallback* -->
</xsl:sequence>
<!-- Category: (used inside xsl:for-each, xsl:for-each-group, xsl:apply-templates, xsl:perform-sort) -->
<xsl:sort select=expression lang={nmtoken} order={"ascending"|"descending"} collation={uri} stable={"yes"|"no"} case-order={"upper-first"|"lower-first"} data-type={"text"|"number"|qname-but-not-ncname}>
<!-- Content: sequence-constructor -->
</xsl:sort>
<!-- Category: declaration -->
<xsl:strip-space elements=tokens />
<!-- Category: outermost element -->
<xsl:stylesheet id=id extension-element-prefixes=tokens exclude-result-prefixes=tokens version=number xpath-default-namespace=uri default-validation="preserve"|"strip" default-collation=uri-list input-type-annotations="preserve"|"strip"|"unspecified">
<!-- Content: (xsl:import*, other-declarations) -->
</xsl:stylesheet>
<!-- Category: declaration -->
<xsl:template match=pattern name=qname priority=number mode=tokens as=sequence-type>
<!-- Content: (xsl:param*, sequence-constructor) -->
</xsl:template>
<!-- Category: instruction -->
<xsl:text disable-output-escaping="yes"|"no">
<!-- Content: #PCDATA -->
</xsl:text>
[Alias for xsl:stylesheet. Almost never used.]
<!-- Category: outermost element -->
<xsl:transform id=id extension-element-prefixes=tokens exclude-result-prefixes=tokens version=number xpath-default-namespace=uri default-validation="preserve"|"strip" default-collation=uri-list input-type-annotations="preserve"|"strip"|"unspecified">
<!-- Content: (xsl:import*, other-declarations) -->
</xsl:transform>
<!-- Category: instruction -->
<xsl:value-of select=expression separator={string} disable-output-escaping="yes"|"no">
<!-- Content: sequence-constructor -->
</xsl:value-of>
<!-- Category: declaration --> <!-- Category: instruction -->
<xsl:variable name=qname select=expression as=sequence-type>
<!-- Content: sequence-constructor -->
</xsl:variable>
<!-- Category: (used as part of xsl:choose) -->
<xsl:when test=expression>
<!-- Content: sequence-constructor -->
</xsl:when>
<!-- Category: (used inside xsl:apply-templates, xsl:call:template) -->
<xsl:with-param name=qname select=expression as=sequence-type tunnel="yes"|"no">
<!-- Content: sequence-constructor -->
</xsl:with-param>
First published: 2009-03-12