[Review]XPath

什麼是XPath?

XPath提供有效而且有效率的找出XML文件裡面特定部分的語法,XPath不像XML是一個結構化的語言,XPath
是一種以字串為基礎的呈現語言,讓其他的XML技術使用

XPath節點

在XPath裡,如果把每個XML文件想成一棵樹,而文件裡的每個部份都想成一個節點,這樣的數就很像電腦
裡的檔案和資料夾結構,所以在XPath裡就是把XML文件呈現成一種可以搜尋的結構,用這些節點所形成的
階層式架構。

XPath有七種節點:根、元素、屬性、內文、註解、處理指示和命名空間。

一個XPath樹只有一個根節點,根節點包含了樹上所有的節點,根節點和元素節點包含了有順序的子節點
列表,除了根節點之外的每個節點都有一個父節點,而任何一個父節點可以有很多一層或一層以上的子節
點。只有元素、註解、內文、處理指示這些節點可以當子節點。屬性節點和命名空間節點是用來描述他們
的父節點的。

定位路徑

定位路徑是用來具體的指定如何在XPath樹上的節點之間搜尋的一種陳述句。定位路徑由"軸部"和"節點測
試"和選擇性的"述部"等定位步驟所組成

軸部

在XML文件上搜尋要從XPath樹上的內容節點開始,是在XPath樹上搜尋是從內容節點產生關聯性。軸部指
出哪些相對於內容節點應該被包含在搜尋中,也指出節點在集合中的順序,挑選在文件順序中內容節點
之後節點的軸部叫作正向軸部,反向軸部就是挑選在文件順序中內容節點之前節點的軸部。軸部具有和
選取的節點型態一樣的首要節點型態,對於屬性軸部而言,首要節點型態就是attribute,對命名空間軸部
而言,首要節點型態就是namespace,其他所有的軸部具有的首要節點型態是element。

節點測試

軸部選擇了文件樹上部份的節點,選取的節點集合會經由節點測試重新擷取。而節點測試倚賴在定位路徑
中對於選取節點的軸部首要節點型態。  
  
  
  
  
 資料整理來源:XML課本