首頁  >  文章  >  後端開發  >  在XPath查詢中指定軸(轉自MSSQL手冊)

在XPath查詢中指定軸(轉自MSSQL手冊)

黄舟
黄舟原創
2017-03-01 16:48:381945瀏覽

以下範例顯示如何在 XPath 查詢中指定軸。這些範例中的 XPath 查詢都在 SampleSchema1.xml 中所包含的對應架構上指定。有關此範例架構的信息,請參閱範例 XPath 查詢。
範例 
A. 擷取上下文節點的子元素 
此XPath 查詢選取上下文節點的所有c214b1127c801bd6a2a45c5b466f54b2 子元素: 
/child::Employee 
在此查詢中, child 是軸,Customer 是節點測試(如果Customer 是1dd643d91c792abd0a34d1b312e2f207 節點,則該測試為TRUE,因為1dd643d91c792abd0a34d1b312e2f207 是與child 軸相關聯的主要節點類型)。  
child 是預設軸。因此,可將該查詢編寫為: 
/Employee 
在映射架構上測試XPath 查詢 
建立下方的範本 (MyTemplate.xml) 並將其儲存在與template 虛擬名稱關聯的目錄中。  

<ROOT xmlns:sql="urn:schemas-microsoft-com:xml-sql"> 
  <sql:xpath-query mapping-schema="SampleSchema2.xml"> 
    /Employee 
  </sql:xpath-query> 
</ROOT>

下面的 URL 執行範本:  

http://IISServer/VirtualRoot/template/MyTemplate.xml

可直接在 URL 中指定 XPath 查詢: 

#
http://IISServer/nwind/schema/SampleSchema1.xml/child::Customer?root=root

虛擬名稱 schema 是 schema 類型。架構檔案儲存在與 schema 類型虛擬名稱相關聯的目錄下。 root 參數用於為所得到的 XML 文件指定頂層元素(root 可為任意值)。
下面是模板執行的部分結果集: 

<ROOT xmlns:sql="urn:schemas-microsoft-com:xml-sql">  
  <Employee EmployeeID="1" LastName="Davolio"  
            FirstName="Nancy" Title="Sales RePResentative" />  
  <Employee EmployeeID="2" LastName="Fuller"  
            FirstName="Andrew" Title="Vice President, Sales" />  
   ... 
</ROOT>

B. 檢索上下文節點的孫節點 
此XPath 查詢選取上下文節點的c214b1127c801bd6a2a45c5b466f54b2 子元素的所有< ;Order> 子元素: 
/child::Customer/child::Order 
在此查詢中,child 是軸,Customer 和Order 是節點測試(如果Customer 和Order 是1dd643d91c792abd0a34d1b312e2f207 節點,則這些節點測試為TRUE,因為1dd643d91c792abd0a34d1b312e2f207 節點是child 軸的主要節點)。對於每個符合 c214b1127c801bd6a2a45c5b466f54b2 的節點,將符合 100fdf8091fa655ad847e46c0cb82106 的節點加入結果。結果集中只回傳 7e7d629a61e1c649d53a7e569305f73a。 
child 是預設軸。因此,此查詢可指定為: 
/Customer/Order 
在映射架構上測試XPath 查詢 
建立下面的範本(MyTemplate.xml) 並將其儲存在與template 虛擬名稱關聯的目錄中。

<ROOT xmlns:sql="urn:schemas-microsoft-com:xml-sql"> 
  <sql:xpath-query mapping-schema="SampleSchema1.xml"> 
    /Customer/Order 
  </sql:xpath-query> 
</ROOT>

 以上就是在XPath查詢中指定軸(轉自MSSQL手冊)的內容,更多相關內容請關注PHP中文網(www.php.cn)!


#
陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn