XML extensible Markup Language
Namespace Namespaces adalah dengan penambahan suatu string pada suatu elemen. Tujuan namespaces adalah untuk membedakan antara nama elemen dan nama atribut yang sama namun memiliki arti yang berbeda.
Sintaks Namespace Misal: <kayu> <jenis>mahoni</jenis> <panjang>2</panjang> </kayu> <kayu> <banyak>246</banyak> <harga>200</harga> </kayu> <data> <n_satu:kayu xmlns:n_satu='namespace1'> <n_satu:jenis>mahoni</n_satu:jenis> <n_satu:panjang>2m</n_satu:panjang> </n_satu:kayu> <n_dua:kayu xmlns:n_dua='namespace2'> <n_dua:banyak>246</n_dua:banyak> <n_dua:harga>300</n_dua:harga> </n_dua:kayu> </data>
XML di Web XML sangat menarik untuk gunakan didalam halaman web karena sifat dokumen XML harus well-formed dan parser akan menolaknya jika dokumen salah. tag XML dan nama atribut dapat menjelaskan sifat konten.
XHTML XHTML adalah dokumen yang mendefinisikan XMLcompatible versi HTML, atau sebaliknya. XHTML dapat mengubah HTML sebagai aplikasi XML. XHTML merupakan standard dalam menyusun kode-kode HTML yang baik dan terstruktur.
XHTML Dalam mengubah dokumen HTML menjadi dokumen XHTML adalah dengan membuat dokumen menjadi well-formed. Misalnya perubahan yang akan dilakukan : Menambahkan end-tag seperti </p> dan </li> jika pada dokumen tidak ada end-tag-nya. Menulis kembali dokumen yang tag-nya saling tumpang tindih, misalnya <b><i>apa</b></i> menjadi <b><i>apa</i></b> Meletakkan tanda petik pada nilai atribut. Jika dalam HTML sering menggunakan nilai atribut tanpa tanda petik. Misalnya <p align=center> menjadi <p align="center">.
XHTML Menambahkan nilai pada atribut yang memiliki nilai boolean dengan namanya sendiri. Misalnya <input type="checkbox" checked> menjadi <input type="checkbox" checked="checked">. Mengganti karakter & atau < dalam data atau atribut dengan nilainilai & atau <. Misalnya ubah A&P menjadi A&P. Mengubah empty elemen. Misalnya <hr> menjadi <hr/> atau <hr></hr> Menambahkan hyphens kedalam komentar. Misalnya <! this is a comment> menjadi <!-- this is a comment --> Encode kedalam UTF-8 atau UTF-16.
XML dengan CSS Dalam menampilkan sebuah dokumen pada browser, kita dapat mengambil pengaturan tampilannya dari file lain atau yang sering disebut dengan direct display. Contoh yang sering digunakan adalah CSS (Casecading Style Sheet).
data{ color:#ff0000; font-family:arial; font-weight:bold; text-decoration:underline; } <?xml version="1.0"?> <?xml-stylesheet href="css.css" type="text/css"?> <data> Menampilkan Data XML dengan CSS </data>
XSL Transformations (XSLT) XSLT merupakan bahasa pemrograman berdasar XML yang digunakan untuk mentransformasi dokumen XML menjadi dokumen XML atau format lainnya. Transformasi tersebut tidak mengubah dokumen asli, tapi menghasilkan dokumen baru berdasarkan isi dokumen asli.
XSL Transformations (XSLT) Dokumen XSLT yaitu, sebuah XSLT stylesheet berisi template-rule, dimana masing-masing template memiliki aturan dan pola tersendiri.
xsl:stylesheet XSLT stylesheet merupakan dokumen XML, dan umumnya harus meggunakan deklarasi XML atau paling tidak stylesheets. <?xml version="1.0"?> <xsl:stylesheet version="1.0" xmlns:xsl= "http://www.w3.org/1999/xsl/transform"> </xsl:stylesheet>
Templates dan Template Rules Untuk mengontrol hasil output, kita dapat menambahkan template rule atau aturan template kedalam XSLT stylesheet. Setiap template direpresentasikan dengan elemen xsl:template. Elemen xsl:template bukan bukan template untuk dirinya sendiri.
<?xml version="1.0" encoding="utf-8"?> <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/xsl/trans form xmlns="http://www.w3.org/1999/xhtml"> <xsl:output method="html"/> <xsl:template match= data"> sebuah tulisan </xsl:template> </xsl:stylesheet> <?xml version="1.0"?> <?xml-stylesheet type="text/xsl" href="xsl.xsl"?> <data> Menampilkan data XML dengan XSL </data>
Elemen dengan xsl:value-of Elemen xsl:value-of digunakan untuk mengambil nilai dari elemen. Misal: <?xml version="1.0"?> <?xml-stylesheet type="text/xsl" href="xsl.xsl"?> <data> <kalimat> Menampilkan data XML dengan XSL </kalimat> </data> <?xml version="1.0"?> <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/xsl/trans form"> <xsl:template match="data"> <xsl:value-of select="kalimat"/> </xsl:template> </xsl:stylesheet>
Element dengan xsl:apply-templates apply - templates berfungsi menempakan isi dari elemennya ke elemen dokumen XML yang sesuai. Misal:
<?xml version="1.0" encoding="utf-8"?> <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/xsl/transform" xmlns="http://www.w3.org/1999/xhtml"> <xsl:output method="html"/> <xsl:template match= /data"> <html> <head> <title>menampilkan XML dengan XSL</title> </head> <body> <h3>data Siswa</h3> <table border="1"> <tr><th>nis</th><th>nama</th></tr> <xsl:apply-templates select="siswa"> </xsl:apply-templates> </table> </body> </html> </xsl:template> <xsl:template match="siswa"> <tr> <td> <xsl:value-of select="nis"/> </td> <td> <xsl:value-of select="nama"/> </td></tr> </xsl:template> </xsl:stylesheet> <?xml version="1.0"?> <?xml-stylesheet type="text/xsl" href="xsl1.xsl"?> <data> <siswa> <nis>9876</nis> <nama>salanura Amini</nama> </siswa> <siswa> <nis>5432</nis> <nama>puspa Kirana</nama> </siswa> </data>
Referensi http://www.nesc.ac.uk/talks/tox2/xtalk_matt1.pdf http://homepages.inf.ed.ac.uk/wadler/papers/xquerytutorial/xquery-tutorial.pdf dan berbagai sumber lainnya.