深入XSLT第一章序言—什么是XSL
序言—什么是XSL
XSL是XML的樣式表語言
CSS:HTML的樣式表語言?
由于HTML使用預先確定的標記,因此這些標記的含義都很好理解:<p>元素定義一段,<h1>元素定義一個標題。瀏覽器知?道如何顯示這些元素。使用CSS向HTML元素增加顯示格式是一個簡單的過程:很容易告訴瀏覽器用某種特殊字體或顏色來顯示各個元素,瀏覽器也很容易理?解。?
XSL:XML的樣式表?
由于XML不使用預先確定的標記(我們可以根據需要使用任意標記),因此標記的含義并不能被直接理解:<table>可以表示一個?HTML表格,也可以表示一件家具。由于XML的特性,瀏覽器不知道如何顯示一個XML文檔。為了顯示XML文檔,必須要有一個機制來描述如何顯示文檔。?這些機制之一是CSS,但是XSL(可擴展的樣式表語言)是XML的首選樣式表語言,它要比HTML使用的CSS復雜得多。?
XSL:不僅僅是一個樣式表?
XSL包含3部分:一個轉換XML文檔的方法;?一個定義XML部分和模式的方法;一個格式化XML文檔的方法。?
如果對此還不能理解,那么可以先將XSL理解成:一種將XML轉換成HTML的語言,一種可以過濾和分類XML數據的語言,一種可以對一個XML文檔?的部分進行尋址的語言,一種可以基于數據值格式化XML數據的語言(如用紅色顯示負數),一種向不同設備輸出XML數據的語言(如屏幕、紙或聲音)。?
XSL是一種WWW標準?
XSL是WWW協會推薦的一種標準。這種語言的前兩部分在1999年11月已經成為W3C推薦標準。2000年,包括XSL格式化部分的完整XSL推薦標準成為W3C的候選標準。?
XSL語言?
?XSL實際上包含三種語言,其中最重要的是XSLT。XSL是三種語言的結合體上面提到,XSL實際上包含三種語言,具體是:XSLT是一種轉換XML的語言;XPath是一種定義XML部分或模式的語言;XSL格式化對象是一種定義XML顯示方式的語言。?
XSLT是一種用來將XML文檔轉換成其他類型文檔或其它XML文檔的語言。XPath是一種對XML文檔的部分進行尋址的語言。設計XPath是要讓XSLT使用的。格式化是將一個XSL轉換的結果變成適于讀者或聽眾使用的輸出格式的過程。?
1999年11月16日,XSLT和XPath被作為兩個單獨的W3C推薦標準發布。目前對于XSL格式化對象還沒有單獨的W3C文檔,但是在XSL1.0推薦標準內有一個描述。?
XSLT:XSL轉換?
XSLT是XSL標準中最重要的部分,它用于將一個XML文檔轉換成另一個XML文檔或另一種類型的文檔,也就是將一個XML文檔轉換成瀏覽器所能識別的一種格式。這其中之一就是HTML。通常,XSLT將每個XML元素都轉換成一個HTML元素。?
XSLT還可以向輸出文件中增加全新的元素,或去掉一些元素。它可以重新安排這些元素并對元素進行分類,測試并確定顯示哪些元素等等。?
描述這種轉換過程的一個常用說法是:XSL用XSLT將一個XML來源樹轉換成另一個XML結果樹(或將一個XML源文檔轉換成另一個XML結果文檔)。
XSLT的英文標準名稱為eXtensible?Stylesheet?Language?Transformation。根據W3C的規范說明書(http://www.w3.org/TR/xslt),最早設計XSLT的用意是幫助XML文檔(document)轉換為其它文檔。但是隨著發展,XSLT已不僅僅用于將XML轉換為HTML或其它文本格式,更全面的定義應該是:?
XSLT是一種用來轉換XML文檔結構的語言。?
--------------------------------------------------------?
CSS同樣可以格式化XML文檔,那么有了CSS為什么還需要XSLT呢?因為CSS雖然能夠很好的控制輸出的樣式,比如色彩,字體,大小等,但是它有嚴重的局限性,就是:?
(1)?CSS不能重新排序文檔中的元素;?
(2)?CSS不能判斷和控制哪個元素被顯示,哪個不被顯示;?
(3)?CSS不能統計計算元素中的數據;?
換句話說,CSS只適合用于輸出比較固定的最終文檔。CSS的優點是簡潔,消耗系統資源少;而XSLT雖然功能強大,但因為要重新索引XML結構樹,所以消耗內存比較多。?
因此,我們常常將它們結合起來使用,比如在服務器端用XSLT處理文檔,在客戶端用CSS來控制顯示。可以減少響應時間。
總結
以上是生活随笔為你收集整理的深入XSLT第一章序言—什么是XSL的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 分享一个Maven依赖查询网址
- 下一篇: scala集合层次图