XML與XSLT
??????首先,我們來看看由W3C制定的XML轉換標準?XSL(eXtansible?Style?Language,擴展樣式表語言)。它的作用就是讓XML看上去像現有的HTML一樣多姿多彩。在此基礎上,發展了三種XML應用:XSLT、Xpath和XSL-SOXSLT(XSL?Transformation)負責將XML文檔動態地轉換為HTML格式,并發送給瀏覽器。后兩種也具備類似功能,由于應用不及XSLT廣泛,就不再介紹。?
??????要使用XSLT,必須在XML文檔中指出。例如,要使一篇XML文檔被瀏覽器請求時呈現類似于HTML的效果,必須在XML文檔前面指定相應的XSL文件,如下所示:?
<?xml?version=“1.0”> <?xml-stylesheet?type=“text/xml”?href=“../xslt/normal.xsl”> <article> <name>whoami</name ……?xml?數據?…… </article> |
??????在相應路徑中,應當有一個合適的normal.xsl文檔。?
??????XSLT使用模板完成XML到HTML的轉換。例如,想要將文檔中的<name>節點提取出來,并顯示為加粗字符,這樣的XSLT可以滿足要求:
//?文件名:normal.xsl <?xml?version=“1.0”?> <xsl:stylesheet?version=“1.0”xmlnsxsl=http://www.w3.org/1999/XSL/Transform> <!-由于MS一貫的作風,該名稱空間的定義并不適合MS?IE瀏覽器,它必須使用 ?xmlnsxsl=http://www.w3.org/TR/WD-xsl,注意區分大小寫?//--> <xsl:template?match=“/”> <div><style=“font-weight:bold”/> <xsl:value-of?select=“article/name”/> </div> <xsl:apply-templates/> </xsl:template> </xsl:stylesheet> |
??????正像前面說的那樣,XML非常嚴格,XSLT作為一種XML應用同樣要遵守這種規則,因此,除了前兩行以外,所有的標記都必須有對應的結束標記。?
??????當能夠識別XSLT的瀏覽器(如IE?5.0及以上)獲取這一XML文檔后,會調用相應的XSL文檔進行解釋,那么,XSLT是如何工作的呢?它首先創建一個模板,匹配整個文檔,然后在其中尋找article/name節點,并用value-of元素輸出該值,于是,我們通過瀏覽器看到的XML文檔就是:whoami。?
??????不會顯示任何其它XML元素。注意XSL文檔中加粗的部分,那些是普通的HTML文本,只是用來強調我們的輸出。
????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????文章來源:
http://www.jspcn.net
posted on 2006-07-04 13:06
Black&White JavaWorld 閱讀(88)
評論(0) 編輯 收藏