Powered By Blogger

30 September 2005

ตัวอย่าง XML / XSL / DTD

แสดงการใช้งาน XML ด้วย DTD และ XSL โดย
ทำเพื่อแยก Presentation Layer กับ Data Layer
แม้จะไม่สามารถแสดงรูปแบบซับซ้อนได้แต่ก็เป็นตัวอย่างเบื้องต้น
แต่ถ้าต้องการทำให้ซับซ้อน ก็อาจจะใช้ JavaScript + DOM แทน ครับ

เนื่องจากมีข้อผิดพลาดบางประการระหว่างโพส ข้อมูล
ผมอาจต้องตรวสสอบ อีกครั้งนะครับ
อยุ่ระหว่างการแก้ไขข้อมูลครับ


File a.xml
<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="a.xsl"?>

<links>
<link>
<id>1</id>
<url>www.google.co.th</url>

</link>
<link>
<id>2</id>
<url>www.hotmail.com</url>

</link>
<link>
<id>3</id>
<url>www.pantip.com</url>

</link>
</links></p><p>
File a.xsl

<?xml version='1.0'?>
<?xml:namespace prefix = xsl /><xsl:stylesheet xsl="http://www.w3.org/TR/WD-xsl">
<xsl:template match="/">


<table bgcolor="yellow" border="2">
<tbody><tr>
<th>Title</th>
<th>Artist</th>
</tr>
<xsl:for-each select="links/link">
<tr>
<td><xsl:value-of select="title" /></td>
<td><xsl:value-of select="url" /></td>
<td><xsl:value-of select="url" /></td>
</tr>
</xsl:for-each>
</tbody></table>


</xsl:template>
</xsl:stylesheet></p><p>

File a.dtd
<?xml version="1.0"?>
<!ELEMENT links (id, ishttp? ,url ,title ,note?)>
<!ELEMENT id (#PCDATA)>
<!ELEMENT url (#PCDATA)>
<!ELEMENT ishttp (YN) >
<!ELEMENT title (#PCDATA)>
<!ELEMENT note (#PCDATA)>

No comments: