XSLT中文入門(2)_動易Cms教程
教程Tag:暫無Tag,歡迎添加,賺取U幣!
1.4 什么是XPath
XPath是XSLT的重要組成部分,我們將在第四章講解它的具體語法。那么XPath是什么呢?我們首先來了解一下XSL系列的"家族"關系。如下圖:
XSL在轉換XML文檔時分為明顯的兩個過程,第一轉換文檔結構;其次將文檔格式化輸出。這兩步可以分離開來并單獨處理,因此XSL在發展過程中逐漸分裂為XSLT(結構轉換)和XSL-FO(formatting objects)(格式化輸出)兩種分支語言,其中XSL-FO的作用就類似CSS在HTML中的作用。而我們這里重點討論的是第一步的轉換過程,也就是XSLT。
另外,在學習XML時我們已經知道XML是一個完整的樹結構文檔。在轉換XML文檔時可能需要處理其中的一部分(節點)數據,那么如何查找和定位XML文檔中的信息呢,XPath就是一種專門用來在XML文檔中查找信息的語言。XPath隸屬XSLT,因此我們通常會將XSLT語法和XPath語法混在一起說。
用一種比較好理解的解釋:假如將XML文檔看作一個數據庫,XPath就是SQL查詢語言;假如將XML文檔看成DOS目錄結構,XPath就是cd,dir等目錄操作命令的集合。
1.5 XSLT和CSS的比較
CSS同樣可以格式化XML文檔,那么有了CSS為什么還需要XSLT呢?因為CSS雖然能夠很好的控制輸出的樣式,比如色彩,字體,大小等,但是它有嚴重的局限性,就是:
(1) CSS不能重新排序文檔中的元素;
(2) CSS不能判定和控制哪個元素被顯示,哪個不被顯示;
(3) CSS不能統計計算元素中的數據;
換句話說,CSS只適合用于輸出比較固定的最終文檔。CSS的優點是簡潔,消耗系統資源少;而XSLT雖然功能強大,但因為要重新索引XML結構樹,所以消耗內存比較多。
因此,我們經常將它們結合起來使用,比如在服務器端用XSLT處理文檔,在客戶端用CSS來控制顯示。可以減少響應時間。
1.6 XSLT和IE5
在XSLT草案發布不久,微軟就在IE4中提供了支持XSL功能的預覽版本,到IE5.0發布時,正式全面支持XSLT,可是由于IE5發布的比XSLT1.0標準時間早,因此在IE5.0中支持的XSTL功能和XSLT 1.0略有不同。(呵呵~~XML推行的主要原因之一就是解決HTML過分依靠瀏覽器的問題,現在微軟又想標新立異?)。好在微軟的IE5.5中執行的標準已經和W3C的XSLT1.0基本相近。但令人頭疼的是IE5.0已經發行了幾百萬套,您使用的XSLT很可能不能被客戶的瀏覽器正確執行。目前XSLT 1.1仍在發展中,W3C及有關組織也在和微軟協商爭取獲得統一。呵呵~~故事還遠遠沒有結束噢。
注重:本文中提到的語法都是根據XSLT 1.0的標準來講的,沒有任何微軟的"方言"。
XSLT輕松入門第二章:XSLT的實例
作者: 阿捷
2.XSLT的實例
2.1 XSLT如何轉換XML
2.2 一個實例
2.3 過程解析
2.4 XSLT的用途
2.1 XSLT如何轉換XML
我們打個有趣的比方,你玩過橡皮泥吧,用不同的模子按上去,就可以做出需要的外形。假如我們假設XML數據文檔是一塊大橡皮泥,XSLT就象是一個模子,用力一按,就做出需要的外形來---符合不同需要的HTML文檔。
具體看下面的過程示意圖:
我們將XML原文檔輸入,用XSL作為模板,通過轉換引擎,最終輸出需要的HTML文檔。其中的轉換引擎就是比喻中"用力一按"的過程。在具體應用中,有專門的軟件來實現這個轉換過程,名為XML Processor。目前已經有很多 Processor 軟件(下面將具體提到),在IE5.5中也已經內嵌了XML Processor。
2.2 一個實例
現在我們來看一個簡單的XSLT實際應用例子,獲得一些感官上的熟悉。很多網頁設計師看到類似HTML的代碼才會放心,代碼是那樣的親切和熟悉。
例子1: "Hello, world!"
hello world作為第一個教程已經是程序語言中的慣例了。我們也遵守這個慣例,看看如何利用XSLT來顯示"hello world"。雖然這個例子沒有什么實際用途,但是請大家不要急,后面還有更具體的例子。
相關動易Cms教程:
- MAC錯誤的解決方法
- 如何屏蔽動易后臺導航里的某個功能菜單?
- 動易.NET版本留言自動選定欄目方法
- 動易SiteFactoty整合Discuz!NT3.0
- 在任意位置獲取根節點ID標簽
- 如何開啟SiteWeaver6.8的支持,反對功能
- Windows 2008安裝動易.NET系統之四----動易系統安裝篇
- Windows 2008安裝動易.NET系統之三----數據庫篇
- Windows 2008安裝動易.NET系統之二----IIS、目錄環境配置篇
- 數據庫修復,SQL Server 2005內部操作不一致的處理
- 如何安裝動易.net程序權限配置
- 為什么提示對Windows系統文件夾下的Temp目錄沒有訪問權限?
- 相關鏈接:
- 教程說明:
動易Cms教程-XSLT中文入門(2)。