ホームページ  >  記事  >  バックエンド開発  >  XPathクエリでの軸指定(MSSQLマニュアルより転載)

XPathクエリでの軸指定(MSSQLマニュアルより転載)

黄舟
黄舟オリジナル
2017-03-01 16:48:381936ブラウズ

次の例は、XPath クエリで軸を指定する方法を示しています。これらの例の XPath クエリは、SampleSchema1.xml に含まれるマッピング スキーマで指定されています。このサンプル スキーマの詳細については、「サンプル XPath クエリ」を参照してください。

A. コンテキスト ノードの子要素の取得
この XPath は、選択したコンテキスト ノードのすべての 子要素をクエリします:
/child::Employee
このクエリでは、child が軸で、Customer がノード テストです。 (Customer が ノードの場合、 は子軸に関連付けられたプライマリ ノード タイプであるため、テストは TRUE になります)。
child はデフォルトの軸です。したがって、クエリは次のように記述できます。
/Employee
マッピング スキーマで XPath クエリをテストする
次のテンプレート (MyTemplate.xml) を作成し、テンプレートの仮想名に関連付けられたディレクトリに保存します。

<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

XPath クエリは URL で直接指定できます:

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

仮想名スキーマはスキーマ タイプです。スキーマ ファイルは、スキーマ タイプの仮想名に関連付けられたディレクトリに保存されます。 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 子要素のすべての 7e7d629a61e1c649d53a7e569305f73a 子要素をクエリします。 :
/child: :Customer/child::Order
このクエリでは、child が軸で、Customer と Order がノード テストです (Customer と Order が 1dd643d91c792abd0a34d1b312e2f207 ノードの場合、1dd643d91c792abd0a34d1b312e2f207 が存在するため、これらのノード テストは TRUE になります) ; ノードは軸の子メインノードです)。 c214b1127c801bd6a2a45c5b466f54b2 に一致するノードごとに、100fdf8091fa655ad847e46c0cb82106 に一致するノードが結果に追加されます。 7e7d629a61e1c649d53a7e569305f73a のみが結果セットで返されます。
child はデフォルトの軸です。したがって、このクエリは次のように指定できます:
/Customer/Order
マッピング スキーマで XPath クエリをテストする
次のテンプレート (MyTemplate.xml) を作成し、テンプレートの仮想名に関連付けられたディレクトリに保存します。

<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 までご連絡ください。