xml學習筆記(第三篇XSL)

XSL 指擴展樣式表語言(EXtensible Stylesheet Language)
CSS = HTML 樣式表(HTML 使用預先定義的標籤,標籤的意義很容易被理解)
XSL = XML 樣式表(XML 不使用預先定義的標籤(我們可以使用任何喜歡的標籤名),並且這些標籤的意義並不都那麼容易被理解。)
XSL - 不僅僅是樣式表語言(包括三部分):
XSLT:一種用於轉換 XML 文檔的語言。
XPath:一種用於在 XML 文檔中導航的語言。
XSL-FO:一種用於格式化 XML 文檔的語言。

XPath 是一門在 XML 文檔中查找信息的語言。XPath 可用來在 XML 文檔中對元素和屬性進行遍歷。XPath 用於在 XML 文檔中通過元素和屬性進行導航。XPath 被設計供 XSLT、XPointer 以及其他 XML 解析軟件使用。
什麼是 XPath?
XPath 使用路徑表達式在 XML 文檔中進行導航
XPath 包含一個標準函數庫
XPath 是 XSLT 中的主要元素
XPath 是一個 W3C 標準

在 XPath 中,有七種類型的節點:元素、屬性、文本、命名空間、處理指令、註釋以及文檔節點(或成爲根節點)。
<bookstore> (文檔節點)
<author>J K. Rowling</author> (元素節點)
lang="en" (屬性節點)

XPath 術語:
節點(Node):元素、屬性、文本、命名空間、處理指令、註釋以及文檔(根)節點。
基本值(或稱原子值,Atomic value):基本值是無父或無子的節點。
項目(Item):項目是基本值或者節點。

節點關係:
父(Parent):每個元素以及屬性都有一個父。
子(Children):元素節點可有零個、一個或多個子。
同胞(Sibling):擁有相同的父的節點。
先輩(Ancestor):某節點的父、父的父,等等。
後代(Descendant):某個節點的子,子的子,等等。

XPath 使用路徑表達式來選取 XML 文檔中的節點或節點集。節點是通過沿着路徑 (path) 或者步 (steps) 來選取的。
下面列出了最有用的路徑表達式:
表達式 描述
nodename 選取此節點的所有子節點
/ 從根節點選取
// 從匹配選擇的當前節點選擇文檔中的節點,而不考慮它們的位置
. 選取當前節點
.. 選取當前節點的父節點
@ 選取屬性

bookstore 選取 bookstore 元素的所有子節點
/bookstore 選取根元素 bookstore註釋:假如路徑起始於正斜槓( / ),則此路徑始終代表到某元素的絕對路徑!
bookstore/book 選取所有屬於 bookstore 的子元素的 book 元素。
//book 選取所有 book 子元素,而不管它們在文檔中的位置。
bookstore//book 選擇所有屬於 bookstore 元素的後代的 book 元素,而不管它們位於 bookstore 之下的什麼位置。
//@lang 選取所有名爲 lang 的屬性。

謂語(Predicates)
謂語用來查找某個特定的節點或者包含某個指定的值的節點

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章