XSLT - Pada Server
- Halaman Sebelumnya XSLT di Klien
- Halaman Berikutnya Edit XML dengan XSLT
Karena bukan semua peramban mendukung XSLT, solusi lain adalah melengkapkan konversi XML ke XHTML di server.
Solusi Multi-Peramban
Pada bab sebelumnya, kami membahas bagaimana menggunakan XSLT untuk melakukan konversi XML ke XHTML di peramban. Kita membuat script JavaScript untuk melakukan konversi menggunakan parser XML. Solusi JavaScript ini tidak bekerja di peramban tanpa parser XML. agar data XML dapat digunakan di semua jenis peramban, kita harus melakukan konversi dokumen XML di server dan mengirimkannya ke peramban sebagai XHMTL.
Ini adalah kelebihan lain dari XSLT. Salah satu tujuan desain XSLT adalah untuk memungkinkan data di server untuk berubah format dari satu ke yang lain, dan mengembalikan data yang dapat dibaca untuk semua jenis peramban.
Berkas XML dan Berkas XSL
Lihat dokumen XML yang telah dipresentasikan di bab sebelumnya:
<?xml version="1.0" encoding="ISO-8859-1"?> <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>
dan gaya XSL yang disertai:
<?xml version="1.0" encoding="ISO-8859-1"?> <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> <xsl:template match="/"> <html> <body> <h2>Koleksi CD Saya</h2> <table border="1"> <tr bgcolor="#9acd32"> <th align="left">Judul</th> <th align="left">Artis</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>
Perhatikan, berkas XML ini tidak mengandung referensi ke berkas XSL.
Perhatian penting:Kalimat di atas menunjukkan bahwa berkas XML dapat diubah ke berbagai macam gaya XSL untuk konversi.
Pemecahan XML ke XHTML di server
Ini adalah kode sumber untuk mengkonversi berkas XML ke XHTML di server:
<% 'Load XML set xml = Server.CreateObject("Microsoft.XMLDOM") xml.async = false xml.load(Server.MapPath("cdcatalog.xml")) 'Load XSL set xsl = Server.CreateObject("Microsoft.XMLDOM") xsl.async = false xsl.load(Server.MapPath("cdcatalog.xsl")) 'Transform file Response.Write(xml.transformNode(xsl)) %>
Petunjuk:Jika Anda tidak mengerti bagaimana menulis ASP, Anda dapat belajar dari <Panduan ASP》。
Kode pertama menciptakan instance parser XML Microsoft, lalu memuat berkas XML ke memori. Kode kedua menciptakan instance parser lain, lalu memuat berkas XSL ke memori. Baris terakhir menggunakan dokumen XSL untuk mengkonversi dokumen XML, dan mengirimkan hasil sebagai XHTML ke browser Anda. Tugas selesai!
- Halaman Sebelumnya XSLT di Klien
- Halaman Berikutnya Edit XML dengan XSLT