客戶端 XML+XSLT轉換輸出HTML

[b]XML(extensible markup language):[/b]是一種簡單的數據存儲語言,使用一系列簡單的標記描述數據.
XML與HTML的設計區別是:XML是用來存儲數據的,重在數據本身。而HTML是用來定義數據的,重在數據的顯示模式。
[b]XSL():[/b]是一種用於以可讀格式呈現 XML 數據的語言,XSL對於XML,就像CSS對於HTML一樣格式化顯示的數據。
[i]
看下面的小實例:[/i]

XML文件people.xml
<?xml version="1.0" encoding="ISO-8859-1"?>
<?xml:stylesheet type="text/xsl" href="person.xsl"?>
<people>
<person id="1">
<first-name>Michael</first-name>
<last-name>Yintel</last-name>
<telephone>15888888888</telephone>
</person>
<person id="2">
<first-name>Jane</first-name>
<last-name>Smith</last-name>
<telephone>910-521-1211</telephone>
</person>
<person id="3">
<first-name>James</first-name>
<last-name>NroBu</last-name>
<telephone>222-111-3333</telephone>
</person>
</people>

XSL文件person.xsl,類似html中的CSS,主要是對XML中數據顯示方式進行定義:
<?xml version="1.0"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template match="people">
<table border="1" width="100%">
<tr>
<th>ID</th>
<th>Name</th>
<th>Phone</th>
</tr>
<xsl:for-each select="person">
<tr>
<td align="center">
<xsl:value-of select="@id"/>
</td>
<td align="center">
<xsl:value-of select="last-name"/>,
<xsl:value-of select="first-name"/>
</td>
<td align="center">
<xsl:value-of select="telephone"/>
</td>
</tr>
</xsl:for-each>
</table>
</xsl:template>
</xsl:stylesheet>

在瀏覽器支持XML的情況下,
在people.xml文件中刪除<?xml:stylesheet type="text/xsl" href="person.xsl"?>這句,頁面將直接輸出xml語言;
而添加<?xml:stylesheet type="text/xsl" href="person.xsl"?>,可以看到頁面顯示了格式化後的html頁面。

另外XSL包含兩部分: * XSLT – 用於轉換 XML 文檔的語言
   * XPath – 用於在 XML 文檔中導航的語言
[b]XSLT(EXtensible Stylesheet Language Trasform)[/b]:是一種用於將 XML 文檔轉換爲 XHTML 文檔或其他 XML 文檔的語言。
[b]XPath:[/b] 是一種用於在 XML 文檔中進行導航的語言。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章