Genişletilebilir Stil Sayfası Dil Dönüşümleri

XSLT
XSL Dönüşümleri Özellikler
Uzantılar .xsl, .xslt
MIME türü application/xslt+xml, text/xsl
Tarafından geliştirildi World Wide Web Konsorsiyumu
Biçim türü Stil sayfası dili
Dayalı Genişletilebilir İşaretleme Dili
Standart

1.0 (16 Kasım 1999 tarihli Tavsiye Kararı) ,
2.0 (23 Ocak 2007 tarihli Tavsiye Kararı) ,

3.0 (8 Haziran 2017 tarihli Tavsiye Kararı)
Web siteleri www.w3.org/TR/xslt
www.w3.org/TR/xslt20
www.w3.org/standards/xml/transformation

XSLT ( Genişletilebilir Stil Sayfası Dili Dönüşümleri içinde tanımlanmış), XSL önerisi ait W3C , bir olan fonksiyonel tip XML dönüşüm dili . Özellikle, bir XML belgesinin PDF gibi başka bir biçime dönüştürülmesine veya hatta HTML'nin bir web sayfası olarak görüntülenmesine izin verir .

Açıklama

Ana amaç, bir XML belgesinin başka bir şema veya biçime ( XHTML , XSL-FO , HTML , vb.) Dönüştürülmesidir . Bununla birlikte, XSLT dili, metin biçiminde veya ikili biçimde başka herhangi bir belge türüne dönüşümlere de izin verir (ancak bu, XSLT tavsiyesi tarafından yerel olarak sağlanmamaktadır). İki girdi verildiğinde, dönüştürülecek bir XML belgesi ve bir XSLT belgesi, bir XSLT ayrıştırıcı ( XSLT işlemci ) istenen formatta bir çıktı dosyası üretir.

XSLT , XML ağacının bir kısmını belirtmek için XPath'e (XSL önerisinin başka bir parçası) güvenir . Uygulamada, XSLT dilinin kendisi bir XML belgesi biçiminde ifade edilir:

<?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>

Ana özelliklerinden biri veri merkezli olmasıdır. Bir XSLT, bir XML'e dayanmalıdır, bu zorunlu bir çifttir ve yalnızca XPath tarafından seçilen verileri çapraz geçen XSLT döngülerinde oluşturabilirsiniz .

Misal

XML dosyasını girin

<?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 stil sayfası

<?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 sonuç dosyası

<?xml version="1.0" encoding="UTF-8"?> <root> <name username="JS1">John</name> <name username="MI1">Morka</name> </root>

XSLT ayrıştırıcı uygulamaları

  • AltovaXML: Altova tarafından , XSLT 1.0 ve XSLT 2.0 uygulaması
  • DIXml: bir Delphi kitaplığı
  • Gestalt: Colin Paul Adams, içinde uygulanmasıyla Eiffel XSLT 2.0
  • Libxslt  (en)  : GNOME tarafından XSLT 1.0'ın C uygulaması ; xsltproc komut satırı yardımcı programı bunu kullanır.
  • MSXML DOM  : Microsoft tarafından Windows altında DCOM'da kullanım içindir ve bu nedenle vbScript ve jScript gibi komut dosyası dilleri tarafından erişilebilir
  • php_xsl. dll  : PHP 5'ten beri dahil
  • QuiXSLT: Innovimax ve INRIA tarafından Java'da XSLT 3.0 için Streaming ile
  • Saxon XSLT  (en)  : Michael Kay tarafından, Saxon , XSLT 2.0 ve 3.0 için Java ve .Net'te mevcuttur ( XML Şemasının doğrulanmasıyla )
  • System.Xml.Xsl: .NET Framework'ün farklı uygulamaları için Microsoft ve Novell tarafından paralel olarak
  • Xalan  : tarafından Apache vakıf , var olan Java , C ve Perl ve destekler 1.0 XSLT

Ayrıca görün

İlgili Makaleler

Referanslar

  1. "  PHP: XSL - Manual  " , php.net'te
  2. "  QuiXSLT  " ,Kasım 15, 2013

Dış bağlantılar