Hosszabbítások | .xsl, .xslt |
---|---|
MIME típus | application/xslt+xml, text/xsl |
Fejlesztette | World Wide Web Consortium |
Formátum típusa | Stíluslap nyelve |
Alapján | Bővíthető jelölőnyelv |
Alapértelmezett |
1.0 (1999. november 16-i ajánlás) , |
Webhelyek |
www.w3.org/TR/xslt www.w3.org/TR/xslt20 www.w3.org/standards/xml/transformation |
Az XSLT ( eXtensible Stylesheet Language Transformations ), amelyet a W3C XSL ajánlása határoz meg , egy funkcionális típusú XML transzformációs nyelv . Különösen lehetővé teszi, hogy az XML dokumentumokat más formátumokká alakítsák át, például PDF- ként vagy akár HTML- ként weblapként jelenítsék meg .
A fő cél egy XML dokumentum átalakítása egy másik sémává vagy formátumba ( XHTML , XSL-FO , HTML stb.). Az XSLT nyelv azonban bármilyen más típusú dokumentumba történő transzformációt is lehetővé tesz, szöveges vagy bináris formátumban (bár ezt az natív módon nem írja elő az XSLT ajánlása). Két bemenet, egy átalakítandó XML dokumentum és egy XSLT dokumentum, az XSLT elemző ( XSLT processzor ) a kívánt formátumú kimeneti fájlt állítja elő.
Az XSLT az XPath-re (az XSL-ajánlás másik része) támaszkodik az XML-fa egy részének jelölésére. A gyakorlatban az XSLT nyelv XML dokumentum formájában van kifejezve:
<?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>Az egyik fő jellemzője, hogy adatközpontú. Az XSLT-nek XML-en kell alapulnia, ez egy kötelező pár, és csak XSLT-hurkokban hozhat létre, amelyek áthaladnak az XPath által kiválasztott adatokon .
Írja be az XML fájlt <?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> |
+ |
XSLT stíluslap <?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> |
⇒ | ||
XML eredményfájl <?xml version="1.0" encoding="UTF-8"?> <root> <name username="JS1">John</name> <name username="MI1">Morka</name> </root> |