Home » XML » XML XSLT: Transformasi – Code dan Contohnya

XML XSLT: Transformasi – Code dan Contohnya

by Hanifah Nurbaeti
by Hanifah Nurbaeti

Contoh studi: Bagaimana mengubah XML menjadi XHTML menggunakan XSLT?

Deklarasi Style Sheet yang Benar

Elemen root yang mendeklarasikan dokumen sebagai lembar gaya XSL adalah <xsl:stylesheet> atau <xsl:transform> .

Catatan: <xsl:stylesheet> dan <xsl:transform> sepenuhnya sama dan keduanya dapat digunakan!

Cara yang benar untuk menyatakan lembar gaya XSL menurut Rekomendasi XSLT W3C adalah:

<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">

atau

<xsl:transform version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">

Untuk mendapatkan akses ke elemen XSLT, atribut dan fitur kita harus mendeklarasikan namespace XSLT di bagian atas dokumen.

Xmlns: xsl = “http://www.w3.org/1999/XSL/Transform” menunjuk ke namespace resmi W3C XSLT. Jika kita gunakan namespace ini, kita juga harus menyertakan atribut version = “1.0”.

Mulai dengan Dokumen XML Mentah

Kita akan mengubah dokumen XML berikut (“cdcatalog.xml”) menjadi XHTML:

<?xml version="1.0" encoding="UTF-8"?>
<catalog>
  <cd>
    <title>Empire Burlesque</title>
    <artist>Bob Dylan</artist>
    <country>USA</country>
    <company>Columbia</company>
    <price>10.90</price>
    <year>1985</year>
  </cd>
  <cd>
    <title>Hide your heart</title>
    <artist>Bonnie Tyler</artist>
    <country>UK</country>
    <company>CBS Records</company>
    <price>9.90</price>
    <year>1988</year>
  </cd>
  <cd>
    <title>Greatest Hits</title>
    <artist>Dolly Parton</artist>
    <country>USA</country>
    <company>RCA</company>
    <price>9.90</price>
    <year>1982</year>
  </cd>
  <cd>
    <title>Still got the blues</title>
    <artist>Gary Moore</artist>
    <country>UK</country>
    <company>Virgin records</company>
    <price>10.20</price>
    <year>1990</year>
  </cd>
  <cd>
    <title>Eros</title>
    <artist>Eros Ramazzotti</artist>
    <country>EU</country>
    <company>BMG</company>
    <price>9.90</price>
    <year>1997</year>
  </cd>
</catalog>

Lihat File XML di IE, Chrome, Firefox, Safari, dan Opera: Buka file XML – Dokumen XML akan ditampilkan dengan root berkode warna dan elemen anak (kecuali di Safari). Seringkali, ada tanda plus (+) atau minus (-) di sebelah kiri elemen yang dapat diklik untuk membuka atau menutup struktur elemen.

Tip: Untuk melihat sumber XML mentah, klik kanan di file XML dan pilih “View Source”!

Outputnya kurang lebih akan seperti berikut :

Buat Style Sheet XSL

Kemudian kita buat Style Sheet XSL (“cdcatalog.xsl”) dengan template transformasi:

<?xml version="1.0" encoding="UTF-8"?>

<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">

<xsl:template match="/">
  <html>
  <body>
  <h2>My CD Collection</h2>
  <table border="1">
    <tr bgcolor="#9acd32">
      <th>Title</th>
      <th>Artist</th>
    </tr>
    <xsl:for-each select="catalog/cd">
    <tr>
      <td><xsl:value-of select="title"/></td>
      <td><xsl:value-of select="artist"/></td>
    </tr>
    </xsl:for-each>
  </table>
  </body>
  </html>
</xsl:template>

</xsl:stylesheet>

Output :

Beri Link Style Sheet XSL ke Dokumen XML

Tambahkan referensi style sheet XSL ke dokumen XML (“cdcatalog.xml”):

<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="cdcatalog.xsl"?>
<catalog>
  <cd>
    <title>Empire Burlesque</title>
    <artist>Bob Dylan</artist>
    <country>USA</country>
    <company>Columbia</company>
    <price>10.90</price>
    <year>1985</year>
  </cd>
.
.
</catalog>

Jika browser kita mendukung XSLT, XML kita akan diubah menjadi XHTML dengan baik. Seperti berikut hasilnya jika XML kita diubah menjadi XHTML :

You may also like