xsl 之於 xml 就像 css 之於 html。它是指可擴充套件樣式表語言 (extensible stylesheet language)。這是一種用於以可讀格式呈現 xml 資料的語言。xsl 實際上包含兩個部分:
* xslt – 用於轉換 xml 文件的語言
* xpath – 用於在 xml 文件中導航的語言
xslt 是指 xsl 轉換 (xsl transformation),它是 xsl 最重要的部分。
xslt 可以將 xml 文件轉換為其它 xml 文件、xhtml 輸出或簡單的文字。這通常是通過將每個 xml 元素轉換為 html 元素來完成的。由於 xml 標籤是使用者定義的,瀏覽器不知道如何解釋或呈現每個標籤,因此必須使用 xsl。xml 標籤的意義是為了方便使用者(而不是計算機)理解。
xslt 還可以對 xml 樹進行下列操作:
* 新增和刪除元素
* 新增和刪除屬性
* 對元素進行重新排列或排序
* 隱藏或顯示某些元素
* 查詢或選擇特定元素
xsl 語法
您可能還記得 xml 概述文章中提到過,所有 xml 文件都是以 xml 宣告開頭。xsl 樣式表也是一樣。任何 xsl 文件的第一行實際上都是 xml 宣告:
<?xml version="1.0" encoding="iso-8859-1"?>
xsl 是否與 xml 相同?
既是又不是。說是,是因為它們遵循相同的語法規則(只有少許差異,下面我將會講到)。說不是,是因為它們的用途不同:xml 用於承載資料,而 xsl 則用於設定資料的格式。
在 xml 宣告之後,就是 xsl 宣告,例如:
或 但是,在大多數實際情況下,xsl 宣告看起來要稍微複雜一些:
這是因為,根據 w3c 聯盟的建議,它還包含命名空間和 xsl 規範的版本。
xsl 宣告與 xml 宣告的不同之處在於,xml 宣告只寫一行,而且沒有結束標籤,而 xsl 宣告必須包含結束標籤,該標籤表示 xsl 樣式表結束:
請注意,這並不與 xml 語法規則衝突:xsl 樣式表是完全有效的 xml 文件,因為它有乙個根元素,由 標籤指定。
在什麼情況下應該使用 xsl?
xsl 在設計時有幾個目標用途,這些用途使它成為某些開發情況下的完美解決方案,而對另一些開發情況則毫無用處。
xsl 專門用於處理 xml 文件,並且遵循 xml 語法。因此,它只能在支援 xml 的應用程式中與 xml 結合使用。最合適使用 xml 和 xsl 的情況是:web 門戶、新聞聚合器、社群**或其它任何需要向各種裝置及大量客戶端提供資訊的 web 應用程式。
xsl 不能代替或補充 css。它不應(也不能)用於設定 html 的樣式。但是,您可以將其用於需要頻繁重新設計視覺化效果、頻繁更換布局以及以靈活格式處理資料的**。
xsl 不是內容管理工具。它不應(也不能)用於更改 xml 文件的內容或者編輯資訊。但是,您可以將 xml 和 xsl 用於需要處理幾種不同格式文件的內容管理系統。
什麼是流式SQL,它有什麼用?
流式sql是指採用用於編寫資料庫查詢的相同的宣告式sql,而在快速變化的資料流上執行。這很有用,因為。當你能迅速採取行動時,資料往往更有價值 現有的從資料流中獲得實時洞察力的工具過於複雜。sql的 宣告 性質在解決第二點方面發揮了重要作用,因為它允許使用者專注於他們想要什麼,而讓底層引擎擔心如何完成...
什麼是映象?映象有什麼用途?
source 映象就是像照鏡子一樣。我們一般說的映象是指給系統作個ghost映象。這樣可以在很短時間,很方便的還原出乙個完整的系統來。映象可以說是一種檔案,比如iso,gho都屬於映象檔案,映象檔案可以直接燒錄到光碟中,也可以用虛擬光碟機開啟 什麼是映象?有什麼用途?映象就是像照鏡子一樣。我們一般說...
面試突擊52 什麼是三正規化?它有什麼用?
第一正規化規定表中的每個列都應該是不可分割的最小單元。比如以下表中的 address 欄位就不是不可分割的最小單元,如下圖所示 其中 address 還可以拆分為國家和城市,如下圖所示 這樣改造之後,上面的表就滿足第一正規化了。第二正規化是在滿足第一正規化的基礎上,規定表中的非主鍵列不存在對主鍵的部...