什麼是XSL,它有什麼用途

2021-04-13 01:53:18 字數 1532 閱讀 9726

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 還可以拆分為國家和城市,如下圖所示 這樣改造之後,上面的表就滿足第一正規化了。第二正規化是在滿足第一正規化的基礎上,規定表中的非主鍵列不存在對主鍵的部...