Banner

Kamis, 17 November 2011

PENGERTIAN XSLT

EXTENSIBLE STYLESHEET LANGUAGE TRANSFORMATIO
(XSLT)


            XSL merupakan suatu bahasa pedoman transformasi dokumen-dokumen XML menjadi bentuk lainnya, seperti HTML. Proses transformasi ini disebut XSL Transformation (XSLT). Transformasi dilakukan dengan mencocokkan pola-pola dalam file XSL dengan elemen-elemen pada struktur XML. Pola-pola XSL ini kemudian membangkitkan template-template untuk membuat bagian-bagian dari file output.



Contoh pola XSL :
<xsl:template match="para">               pola (pattern)
 <B>
    <xsl:apply-templates/>                                template
 </B>
</xsl:template>

Dari contoh di atas, pola memberikan persyaratan bahwa yang akan diproses adalah elemen para dari file inputnya. Ketika elemen tersebut ditemukan, maka diterapkan template yang telah didefinisikan yaitu setiap elemen para ditulis dengan huruf tebal (diapit dengan tag <B></B> yang merupakan tag HTML untuk menebalkan tulisan).


Contoh lain dari pola-pola di atas adalah :
·        <xsl:template match="*"> : dicocokkan dengan semua elemen.
·        <xsl:template match="bab/bagian"> : dicocokkan dengan elemen bagian yang mempunyai elemen induk bab
·        <xsl:template match="bab|bagian"> : dicocokkan dengan elemen bab dan elemen bagian
·        <xsl:template match="bab//para"> : dicocokkan dengan setiap elemen para yang berada satu level atau beberapa level di bawah elemen bab
·        <xsl:template match="bab[@id=’2’]"> : dicocokkan dengan elemen bab yang memiliki atribut bernilai 2

Namespace


Setiap file XSL harus memiliki dan menyebutkan Namespace. Namespace ini diperlukan agar prosesor mengenal elemen-elemen dan atribut-atribut yang didefinisikan oleh namespace ini. Dalam contoh dipakai elemen-elemen dan atribut-atribut yang telah didefinisikan oleh World Wide Web Consortium (W3C). Namespace dari W3C adalah : http://www.w3.org/1999/XSL/Transform.
Penyebutan Namespace dalam XSL ini adalah sebagai berikut :

<xsl:stylesheet version=”1.0”
xmlns:xsl=”http://www.w3.org/1999/XSL/Transform”>
…………(template dan pola-pola XSL)
</xsl:stylesheet>

Kita dapat menggunakan definisi tambahan (extension) dengan menyebutkan namespace dari pembuatnya. Definisi ini tidak boleh merubah definisi yang telah ditetapkan oleh W3C, serta namespace dari W3C tidak dapat dihilangkan.
          Contohnya :
<xsl:stylesheet version=”1.0”
xmlns:xsl=”http://www.w3.org/1999/XSL/Transform”
xmlns:”http://www.apacoba.com/XSL”>
…………(template dan pola-pola XSL)
</xsl:stylesheet>

Bila namespace ini tidak disebutkan, maka prosesor transformasi tidak dapat mengetahui definisi mana yang dipakai. Pada XALAN, pesan kesalahannya berupa :

The prefix “xsl” for element “xsl:stylesheet” is not bound

berarti, stylesheet didefinisikan secara tak terbatas, maka tidak dapat diproses.
Definisi-definisi tambahan (extension) dari namespace, seperti disebutkan di atas, tidak boleh mengubah aturan-aturan dasar dari W3C. Tambahan yang dapat didefinisikan dalam hal ini dapat berupa:
-         informasi yang digunakan oleh elemen-elemen dan/atau fungsi-fungsi tambahan
-         informasi tentang apa yang akan dilakukan dengan file hasil
-         informasi tentang bagaimana memperoleh file input
-         metadata XSL
-         dokumentasi terstruktur XSL

0 komentar:

Posting Komentar