Struktura celého XSLT stylu

Kořenový element xsl:transform nebo xsl:stylesheet uzavírá celý XSLT styl a specifikuje NS prefix pro XSLT elementy.

V kořenovém elementu je:

  • Deklarace parametrů (a jejich implic. hodnoty) - elt. xsl:param. Parametry lze nastavit při volání XSLT procesoru - např. java net.sf.saxon.Transform -o outfile.xml infile.xml style.xsl -Dparam=paramvalue

  • Deklarace a inicializace proměnných - elt. xsl:variable - proměnné jsou de facto totéž, co parametry, ale nejsou nastavitelné zvenčí.

  • Je třeba si uvědomit, že XSLT (bez procesorově-specifických rozšíření) je čistý funkcionální jazyk, tj. aplikace šablony nemá vedlejší efekt -> proměnné lze přiřadit jednou, pak už jen číst!

  • Deklarace (formátu) výstupu - elt. xsl:output

  • ...kromě toho tam mohou být další, méně používané XSL elementy - viz např. dokumentace SAXONu

  • pak následují vlastní šablony - elt. xsl:template