xsl:transform

Element Information

Model

xsl:import* , (xsl:declaration | xsl:variable | xsl:param | ANY element from ANY namespace OTHER than 'http://www.w3.org/1999/XSL/Transform')

Attributes

QName Type Fixed Default Use Inheritable Annotation
default-collation xsl:uri-list optional
default-validation xsl:validation-strip-or-preserve strip optional
exclude-result-prefixes xsl:prefix-list-or-all optional
extension-element-prefixes xsl:prefix-list optional
id xs:ID optional
input-type-annotations xsl:input-type-annotations-type unspecified optional
use-when xsl:expression optional
version xs:decimal required
xpath-default-namespace xs:anyURI optional
Wildcard: ANY attribute from ANY namespace OTHER than 'http://www.w3.org/1999/XSL/Transform'

Source

<xs:element name="transform">
  <xs:complexType>
    <xs:complexContent>
      <xs:extension base="xsl:transform-element-base-type">
        <xs:sequence>
          <xs:element ref="xsl:import" minOccurs="0" maxOccurs="unbounded"/>
          <xs:choice minOccurs="0" maxOccurs="unbounded">
            <xs:element ref="xsl:declaration"/>
            <xs:element ref="xsl:variable"/>
            <xs:element ref="xsl:param"/>
            <xs:any namespace="##other" processContents="lax"/>
            <!-- weaker than XSLT 1.0 -->
          </xs:choice>
        </xs:sequence>
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="default-validation" type="xsl:validation-strip-or-preserve" default="strip"/>
        <xs:attribute name="input-type-annotations" type="xsl:input-type-annotations-type" default="unspecified"/>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
</xs:element>

Sample