Rozšíření | .xsl, .xslt |
---|---|
Typ MIME | application/xslt+xml, text/xsl |
Vyvinul | World Wide Web Consortium |
Typ formátu | Jazyk šablony stylů |
Na základě | Rozšiřitelný značkovací jazyk |
Standard |
1.0 (doporučení ze dne 16. listopadu 1999) , |
Webové stránky |
www.w3.org/TR/xslt www.w3.org/TR/xslt20 www.w3.org/standards/xml/transformation |
XSLT ( Extensible Stylesheet Language Transformations ), které jsou definovány v rámci XSL doporučením z W3C , je funkční typ transformace XML jazyk . Zejména umožňuje transformovat dokument XML do jiného formátu, například PDF nebo dokonce HTML, který se zobrazí jako webová stránka .
Hlavním cílem je transformace dokumentu XML do jiného schématu nebo formátu ( XHTML , XSL-FO , HTML atd.). Jazyk XSLT však také umožňuje transformace na jakýkoli jiný typ dokumentu, v textovém formátu nebo v binárním formátu (ačkoli to doporučení XSLT nativně neposkytuje). Vzhledem k dvěma vstupům, dokumentu XML k transformaci a dokumentu XSLT, analyzátor XSLT ( procesor XSLT ) vytvoří výstupní soubor v požadovaném formátu.
XSLT spoléhá na XPath (další část doporučení XSL) k označení části stromu XML. V praxi je jazyk XSLT sám vyjádřen ve formě dokumentu XML:
<?xml version="1.0" ?> <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="2.0"> <xsl:output method="xml" indent="yes"/> <xsl:template match="person"> <name username="{@username}"> <xsl:value-of select="name" /> </name> </xsl:template> </xsl:stylesheet>Jednou z jeho hlavních funkcí je, že je datově orientovaný. XSLT musí být založen na XML, je to povinný pár a můžete vytvořit pouze v XSLT smyčkách procházejících dat vybranými XPath .
Vstupní soubor XML <?xml version="1.0" ?> <persons> <person username="JS1"> <name>John</name> <family-name>Smith</family-name> </person> <person username="MI1"> <name>Morka</name> <family-name>Ismincius</family-name> </person> </persons> |
+ |
Šablona stylů XSLT <?xml version="1.0" encoding="UTF-8"?> <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0"> <xsl:output method="xml" indent="yes"/> <xsl:template match="/persons"> <root> <xsl:apply-templates select="person"/> </root> </xsl:template> <xsl:template match="person"> <name username="{@username}"> <xsl:value-of select="name" /> </name> </xsl:template> </xsl:stylesheet> |
⇒ | ||
Výsledný soubor XML <?xml version="1.0" encoding="UTF-8"?> <root> <name username="JS1">John</name> <name username="MI1">Morka</name> </root> |