public interface XPathEvaluator
XPath式の評価は、
XPathEvaluatorによって行われます。 上記のように、XPath 3.0の機能をサポートするDOM実装では、XPathEvaluatorインタフェースは、Documentインタフェースを実装する同じオブジェクトに実装され、キャスティングやDOMを使用する通常のバインディング固有のメソッドによって取得されますレベル3のgetInterfaceメソッド。 この場合、Documentから取得された実装はXPath DOMモジュールをサポートしており、XPath 1.0仕様と互換性があります。 
 特殊な拡張関数または変数を使用した式の評価は、すべての実装で機能しない可能性があるため、移植性がありません。 XPathEvaluatorの実装は、他の仕様で定義されているように、特殊な拡張関数または変数を特定のサポートを提供できる他のソースから入手できます。 
 
「ドキュメント・オブジェクト・モデル(DOM)レベル3 XPath仕様」も参照してください。
- 
メソッドのサマリー修飾子と型メソッド説明createExpression(String expression, XPathNSResolver resolver)解決されたネームスペースを持つ解析済みXPath式を作成します。createNSResolver(Node nodeResolver)任意のDOMノードをネームスペースを解決するように修正し、XPath式がドキュメント内に現れたノードのコンテキストに対して容易に評価できるようにします。evaluate(String expression, Node contextNode, XPathNSResolver resolver, short type, Object result)XPath式の文字列を評価し、可能であれば指定された型の結果を返します。
- 
メソッドの詳細- 
createExpressionXPathExpression createExpression(String expression, XPathNSResolver resolver) throws XPathException, DOMException解決されたネームスペースを持つ解析済みXPath式を作成します。 これは、式の文字列をより効率的な内部形式にコンパイルし、式内で発生するすべてのネームスペース・プレフィクスを事前に解決できるようにするため、式をアプリケーションで再利用する場合に便利です。- パラメータ:
- expression- 解析されるXPath式文字列。
- resolver-- resolverは、XPath式内のプレフィクスを適切なネームスペースURIに変換することを許可します。 これが- nullとして指定されている場合、式内の任意のネームスペース・プレフィクスは、- DOMExceptionがコード- NAMESPACE_ERRでスローされる結果になります。
- 戻り値:
- コンパイルされたXPath式の形式。
- 例外:
- XPathException- INVALID_EXPRESSION_ERR: 式が- XPathEvaluatorのルールに従って合法でない場合に発生
- DOMException- NAMESPACE_ERR: 式に指定された- XPathNSResolverで解決できないネームスペース・プレフィクスが含まれている場合に発生します。
 
- 
createNSResolverXPathNSResolver createNSResolver(Node nodeResolver)任意のDOMノードをネームスペースを解決するように修正し、XPath式がドキュメント内に現れたノードのコンテキストに対して容易に評価できるようにします。 このアダプタは、lookupNamespaceURIが呼び出されたときにノード階層で利用可能な現在の情報を使用して、指定されたプレフィクスからnamespaceURIを解決する際に、ノード上のDOM Level 3メソッドlookupNamespaceURIのように機能します。暗黙のxmlプレフィクスも正しく解決されます。- パラメータ:
- nodeResolver- ネームスペース解決のコンテキストとして使用されるノード。
- 戻り値:
- XPathNSResolverは、指定されたノードのスコープ内の定義に関するネームスペースを解決します。
 
- 
evaluateObject evaluate(String expression, Node contextNode, XPathNSResolver resolver, short type, Object result) throws XPathException, DOMExceptionXPath式の文字列を評価し、可能であれば指定された型の結果を返します。- パラメータ:
- expression- 解析され評価されるXPath式文字列。
- contextNode-- contextは、このXPath式の評価用のコンテキスト・ノードです。- DocumentをキャストしてXPathEvaluatorを取得した場合、これは同じ文書が所有し、- Document、- Element、- Attribute、- Text、- CDATASection、- Comment、- ProcessingInstruction、または- XPathNamespaceノードである必要があります。 コンテキスト・ノードが- Textまたは- CDATASectionの場合、ノードが空の場合を除いて、コンテキストはXPathに見られる論理テキスト・ノード全体として解釈されます。この場合、ノードが空の場合はXPathコンテキストとして機能しません。
- resolver-- resolverは、XPath式内のプレフィクスを適切なネームスペースURIに変換することを許可します。 これが- nullとして指定されている場合、式内の任意のネームスペース・プレフィクスは、- DOMExceptionがコード- NAMESPACE_ERRでスローされる結果になります。
- type- 特定の- typeが指定されている場合、結果は対応するtype.For XPath 1.0結果として返されます。これは- XPathResultインタフェースのコードの1つでなければなりません。
- result-- resultは、このメソッドによって再利用され、返される特定の結果オブジェクトを指定します。 これが- nullとして指定されているか、または実装が指定された結果を再利用しない場合、新しい結果オブジェクトが構築され、returned.For XPath 1.0が結果として生成され、このオブジェクトは型- XPathResultになります。
- 戻り値:
- XPath expression.For XPath 1.0結果の評価の結果、このオブジェクトは型XPathResultになります。
- 例外:
- XPathException- INVALID_EXPRESSION_ERR: 式が- XPathEvaluatorのルールに従って合法でない場合に発生
 TYPE_ERR: 指定された型を返すために結果を変換できない場合に発生します。
- DOMException- NAMESPACE_ERR: 式に指定された- XPathNSResolverで解決できないネームスペース・プレフィクスが含まれている場合に発生します。
 WRONG_DOCUMENT_ERR: ノードは、この- XPathEvaluatorでサポートされていないドキュメントからのものです。
 NOT_SUPPORTED_ERR: ノードはXPathコンテキスト・ノードとして許可された型ではないか、この- XPathEvaluatorによってリクエストの型が許可されていません。
 
 
-