การเปลี่ยนแปลง XSLT
- หน้าก่อน เบราเซอร์ XSLT
- หน้าต่อไป XSLT <template>
การศึกษาตัวอย่าง: วิธีใช้ XSLT ในการเปลี่ยนแปลง XML ให้เป็น XHTML。
พวกเราจะอธิบายละเอียดของตัวอย่างนี้ในช่วงต่อไป。
ประกาศสไตล์เซตต์ที่ถูกต้อง
ประกาศเอกสารเป็นองค์ประกอบรากของ XSL สไตล์เซตต์คือ <xsl:stylesheet> หรือ <xsl:transform>。
หมายเหตุ: <xsl:stylesheet> และ <xsl:transform> มีความหมายเดียวกัน และสามารถใช้ได้ทั้งหมด!
ตามมาตราฐาน XSLT ของ W3C วิธีที่ถูกต้องในการประกาศ XSL สไตล์เซตต์คือ:
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
หรือ:
<xsl:transform version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
เพื่อเข้าถึงองค์ประกอบ คุณสมบัติ และเลือกของ XSLT พวกเราต้องประกาศชื่อพื้นที่ XSLT ที่ด้านบนของเอกสาร。
xmlns:xsl="http://www.w3.org/1999/XSL/Transform" บอกไปที่ชื่อพื้นที่ W3C XSLT ทางการ。หากคุณใช้ชื่อพื้นที่นี้ คุณจำเป็นต้องมีคุณสมบัติ version="1.0"。
จากเอกสาร XML แบบเดิม
เราต้องการที่จะแปลงเอกสาร XML ต่อไปนี้ ("cdcatalog.xml")เป็น XHTML:
<?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>
ตรวจสอบเอกสาร XML ใน Internet Explorer และ Firefox:
เปิดเอกสาร XML (มักผ่านการคลิกลิงก์) - ข้อมูลของ XML จะแสดงเป็นรูปแบบเขียนโค้ดที่มีสีเงาเล็กน้อย คลิกที่ด้านซ้ายขององค์ประกอบเพื่อเปิดหรือปิดโครงสร้างขององค์ประกอบ ถ้าต้องการดูแบบแหล่งของ XML ไม่มีเครื่องหมายเพิ่มหรือลด คลิกที่เมนู "View Page Source" ของเบราเซอร์
ตรวจสอบเอกสาร XML ใน Netscape 6:
เปิดเอกสาร XML แล้วคลิกขวาบนเอกสาร XML แล้วเลือก "View Page Source" ของ XML จะแสดงเอกสารเป็นรูปแบบเขียนโค้ดที่มีสีเงาเล็กน้อย
ตรวจสอบเอกสาร XML ใน Opera 7:
เปิดเอกสาร XML แล้วคลิกขวาบนเอกสาร XML แล้วเลือก "Frame"/"View Source" ของ XML จะแสดงข้อมูลเป็นข้อความสะอาด
สร้าง XSL สไตล์เชิงภาพ
เรียบร้อยแล้วสร้าง XSL สไตล์เชิงภาพที่มีตัวแบบแปลง ("cdcatalog.xsl"):
<?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>My CD Collection</h2> <table border="1"> <tr bgcolor="#9acd32"> <th align="left">Title</th> <th align="left">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>
เชื่อมโยง XSL สไตล์เชิงภาพกับเอกสาร XML
เพิ่มการอ้างอิง XSL สไตล์เชิงภาพในเอกสาร XML ("cdcatalog.xml"):
<?xml version="1.0" encoding="ISO-8859-1"?> <?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>
ถ้าเบราเซอร์ที่คุณใช้สนับสนุน XSLT มันจะทำงานได้ดีกับ XML ของคุณ แปลงเป็น XHTML。
เราจะอธิบายรายละเอียดของตัวอย่างด้านบนในบทต่อไป
- หน้าก่อน เบราเซอร์ XSLT
- หน้าต่อไป XSLT <template>