.NET Framework の XPathNavigator
XPath には、ノードまたはノード セットのデータ ストアを照会する機能が用意されています。XPathNavigator クラスは、『XPath (XML Path Language) 1.0 Recommendation (www.w3.org/TR/xpath.html)』に規定されているデータ モデルに基づいており、データ ストアに対する XPath クエリを実装するのに必要なメソッドを提供します。データ ストアは、ファイル システム、データベース、System.Xml.XmlDocument や System.Data.Dataset などのオブジェクトにデータとして定義されます。XPathNavigator は、前方向および後方向への移動を可能にするカーソル モデルを使用してデータ ストアからデータを読み取ります。これは読み取り専用のカーソルであり、編集はできません。編集機能が必要な場合は、XML ドキュメント オブジェクト モデル (DOM) を使用します。
XPathNavigator は XPath クエリの実行に便利です。ノードのセットは、IXPathNavigable クラスを実装しているいずれのストアからでも選択できます。IXPathNavigable に定義されているように CreateNavigator メソッドを呼び出して XPathNavigator を返し、これを XPath クエリに使用します。IXPathNavigable を既に実装しているクラスには、XPathDocument、XmlDocument、XmlDataDocument、および XmlNode があります。
このセクションでは、XPathNavigator、およびノード セット内を移動するカーソルのようなランダム アクセス メソッドを提供するこのクラスの機能について説明します。
XPathNavigator は System.Xml.XPath 名前空間で提供されています。System.Xml.XPath 名前空間で利用可能なすべてのクラス、その名前空間で定義されているクラス、それらの使用方法、参照ドキュメントへのリンクに関する情報を次の表に示します。
クラス | 説明 |
---|---|
XPathNavigator クラス | ストアに対する読み取り専用のランダム アクセス カーソル モデルを定義します。XPath データ モデルをサポートし、この抽象クラスを実装するストアに対する高性能な XSLT を実現します。 |
XPathNodeIterator クラス | Select メソッドなど、XPath クエリを実行するメソッドを呼び出して選択したノードのセットを反復処理するために使用します。 |
IXPathNavigable インターフェイス | XPathNavigator クラスを作成するために使用します。IXPathNavigable を実装するクラスは、CreateNavigator メソッドを使用してナビゲータを作成する機能を提供します。 |
XPathDocument クラス | XSLT を使用して XML ドキュメント処理の高速で高性能なキャッシュを提供します。 |
XPathExpression クラス | コンパイルされた XPath 式をカプセル化します。このクラスは、Compile メソッドを呼び出した結果として返され、Select、Evaluate、Matches の各メソッドによって使用されます。 |
参照
XPath クエリで認識されるノード タイプ | XPathNavigator を使用するノード セットのナビゲーション | XPathNavigator を使用する属性と名前空間のナビゲーション | XPath および XPathExpressions によるコンパイル、選択、評価、および一致 | 異なるストアに対する XPathNavigator