2.3 過(guò)程解析 如果你成功的看到效果,你也許想知道這些代碼的具體含義,我們來(lái)詳細(xì)解說(shuō):看hello.xsl文件 <?xml version="1.0" encoding="iso-8859-1"?> 這是標(biāo)準(zhǔn)的XML文檔的首行代碼,因?yàn)閄SLT本身也是XML文檔。encoding屬性用來(lái)定義文檔使用的編碼形式,iso-8859-1主要支持西歐和北美的語(yǔ)言編碼。如果你想使用簡(jiǎn)體中文,那么就應(yīng)該寫成: <?xml version="1.0" encoding="GB2312"?> 接下去的代碼是: <xsl:stylesheet 這是標(biāo)準(zhǔn)的XSLT文件首行代碼。xsl:stylesheet代碼的意思是將文檔作為一個(gè)樣式表來(lái)(stylesheet)處理。xmlns:xsl屬性是一個(gè)名字空間聲明,和XML中的名字空間使用方法一樣,用來(lái)防止元素名稱重復(fù)和混亂。其中前綴xsl的意思是文檔中使用的元素遵守W3C的XSLT規(guī)范。最后的version屬性說(shuō)明樣式表只采用XSLT <xsl:template match="/"> 一個(gè)<xsl:template>元素定義一個(gè)模板規(guī)則。屬性match="/"說(shuō)明XML源文檔中,這個(gè)模板規(guī)則作用的起點(diǎn)。"/"是一種XPath語(yǔ)法,我們?cè)诤竺鎸⒃敿?xì)講述,這里的"/"代表XML結(jié)構(gòu)樹(shù)的根(root)。 接下去的代碼是: <html> 說(shuō)明:當(dāng)模板規(guī)則被觸發(fā),模板的內(nèi)容就會(huì)控制輸出的結(jié)果。例子中,模板大部分內(nèi)容由HTML元素和文本構(gòu)成。只有<xsl:value-of>元素是XSLT語(yǔ)法,這里<xsl:value-of>的作用是拷貝原文檔中的一個(gè)節(jié)點(diǎn)的值到輸出文檔。而select屬性則詳細(xì)指定要處理的節(jié)點(diǎn)名稱。這是XPath語(yǔ)法,"greeting"的意思就是尋找根節(jié)點(diǎn)名為greeting的元素,并用模板來(lái)處理這個(gè)節(jié)點(diǎn)。具體的就是找到<greeting>元素,然后將元素的值"hello 最后關(guān)閉所有元素: </xsl:template> 好,例子解說(shuō)完畢。你是否想過(guò)為什么要用這么復(fù)雜的方法來(lái)顯示"hello world"呢? 2.4 XSLT的用途 XSLT的主要用途就是數(shù)據(jù)轉(zhuǎn)換應(yīng)用。 |
溫馨提示:喜歡本站的話,請(qǐng)收藏一下本站!