public interface XPath
XPath
は XPath 評価環境および式へのアクセスを提供します。
XPath 式の評価。 | |
---|---|
コンテキスト | コンテキスト項目がない式を評価する要求が行われた場合、コンテキストには空のドキュメントノードが使用される。XPath 式を評価するため、DocumentFragment がドキュメントノードと同様に扱われる。 |
変数 |
式に変数の参照が含まれる場合、setXPathVariableResolver(XPathVariableResolver resolver) で設定された XPathVariableResolver によってその値が見つけられる。変数リゾルバが定義されていないか、リゾルバから変数に対して null が返された場合、XPathExpressionException が生成される。変数の値は、1 回の評価の過程を通じて不変でなければならない。
|
関数 |
式に関数の参照が含まれる場合、setXPathFunctionResolver(XPathFunctionResolver resolver) で設定された XPathFunctionResolver によって関数が見つけられる。関数リゾルバが定義されていないか、関数リゾルバから関数に対して null が返された場合、XPathExpressionException が生成される。
|
QName |
式の中の QName は setNamespaceContext(NamespaceContext nsContext) で設定された XPath 名前空間コンテキストと照らして解決される。
|
結果 |
式の評価の結果は目的の戻り値の型のインスタンスに変換される。有効な戻り値の型は、XPathConstants に定義する。戻り値の型への変換は XPath 変換規則に従う。
|
XPath オブジェクトはスレッドに対して安全ではなく、再入不可能です。つまり、アプリケーション側で、どのような場合でも 1 つの XPath
オブジェクトが複数のスレッドから使用されることがないようにする必要があります。また、evaluate
メソッドが呼び出されている間、アプリケーションは再帰的に evaluate
メソッドを呼び出すことができません。
修飾子と型 | メソッドと説明 |
---|---|
XPathExpression |
compile(String expression)
あとで評価するため、Xpath 式をコンパイルします。
|
String |
evaluate(String expression, InputSource source)
指定された
InputSource のコンテキストで XPath 式を評価し、結果を String として返します。 |
Object |
evaluate(String expression, InputSource source, QName returnType)
指定された
InputSource のコンテキストで XPath 式を評価し、結果を指定された型として返します。 |
String |
evaluate(String expression, Object item)
指定されたコンテキストで XPath 式を評価し、結果を
String として返します。 |
Object |
evaluate(String expression, Object item, QName returnType)
指定されたコンテキストで
XPath 式を評価し、結果を指定された型として返します。 |
NamespaceContext |
getNamespaceContext()
現在の名前空間コンテキストを返します。
|
XPathFunctionResolver |
getXPathFunctionResolver()
現在の関数リゾルバを返します。
|
XPathVariableResolver |
getXPathVariableResolver()
現在の変数リゾルバを返します。
|
void |
reset()
この
XPath を元の構成にリセットします。 |
void |
setNamespaceContext(NamespaceContext nsContext)
名前空間コンテキストを設定します。
|
void |
setXPathFunctionResolver(XPathFunctionResolver resolver)
関数リゾルバを設定します。
|
void |
setXPathVariableResolver(XPathVariableResolver resolver)
変数リゾルバを設定します。
|
void reset()
この XPath
を元の構成にリセットします。
XPath
は、XPathFactory.newXPath()
で作成された時点の状態にリセットされます。reset()
は、既存の XPath
の再使用を許可するように設計されているため、新しい XPath
の作成に関連するリソースを節約できます。
XPath
をリセットした場合、同じ XPathFunctionResolver
、XPathVariableResolver
、または NamespaceContext
Object
を持つことは保証されません。たとえば、Object.equals(Object obj)
などです。機能的に同じ XPathFunctionResolver
、XPathVariableResolver
、および NamespaceContext
を持つことは保証されます。
void setXPathVariableResolver(XPathVariableResolver resolver)
変数リゾルバを設定します。
resolver
が null
の場合、NullPointerException
がスローされます。
resolver
- 変数リゾルバ。NullPointerException
- resolver
が null
の場合。XPathVariableResolver getXPathVariableResolver()
現在の変数リゾルバを返します。
有効な変数リゾルバがない場合、null
が返されます。
void setXPathFunctionResolver(XPathFunctionResolver resolver)
関数リゾルバを設定します。
resolver
が null
の場合、NullPointerException
がスローされます。
resolver
- XPath 関数リゾルバ。NullPointerException
- resolver
が null
の場合。XPathFunctionResolver getXPathFunctionResolver()
現在の関数リゾルバを返します。
有効な関数リゾルバがない場合、null
が返されます。
void setNamespaceContext(NamespaceContext nsContext)
名前空間コンテキストを設定します。
nsContext
が null
の場合、NullPointerException
がスローされます。
nsContext
- 使用する名前空間コンテキスト。NullPointerException
- nsContext
が null
の場合。NamespaceContext getNamespaceContext()
現在の名前空間コンテキストを返します。
有効な名前空間コンテキストがない場合、null
が返されます。
XPathExpression compile(String expression) throws XPathExpressionException
あとで評価するため、Xpath 式をコンパイルします。
expression
に XPathFunction
が含まれている場合は、XPathFunctionResolver
で使用可能である必要があります。XPathFunction
が XPathFunctionResolver
で解決できない場合、XPathExpressionException
がスローされます。
expression
に変数が含まれている場合は、コンパイル時に有効な XPathVariableResolver
を使用してそれらを解決します。
expression
が null
の場合、NullPointerException
がスローされます。
expression
- XPath 式。XPathExpressionException
- expression
をコンパイルできない場合。NullPointerException
- expression
が null
の場合。Object evaluate(String expression, Object item, QName returnType) throws XPathExpressionException
指定されたコンテキストで XPath
式を評価し、結果を指定された型として返します。
コンテキスト項目の評価、変数、関数、および QName
の解決と戻り値の型の変換については「XPath 式の評価」を参照してください。
returnType
が XPathConstants
に定義された型でない場合 (NUMBER
、STRING
、BOOLEAN
、NODE
、または NODESET
)、IllegalArgumentException
がスローされます。
item
に null
値が指定される場合、コンテキストには空のドキュメントが使用されます。expression
または returnType
が null
の場合、NullPointerException
がスローされます。
expression
- XPath 式。item
- 開始コンテキスト (ノードなど)。returnType
- 目的の戻り値の型。returnType
の Object
としての XPath 式の評価の結果。XPathExpressionException
- expression
を評価できない場合。IllegalArgumentException
- returnType
が XPathConstants
に定義された型でない場合。NullPointerException
- expression
または returnType
が null
の場合。String evaluate(String expression, Object item) throws XPathExpressionException
指定されたコンテキストで XPath 式を評価し、結果を String
として返します。
このメソッドは、XPathConstants.STRING
の returnType
を指定して evaluate(String expression, Object item, QName returnType)
を呼び出します。
コンテキスト項目の評価、変数、関数、および QName の解決と戻り値の型の変換については「XPath 式の評価」を参照してください。
item
に null
値が指定される場合、コンテキストには空のドキュメントが使用されます。expression
が null
の場合、NullPointerException
がスローされます。
expression
- XPath 式。item
- 開始コンテキスト (ノードなど)。String
に変換した結果である String
。XPathExpressionException
- expression
を評価できない場合。NullPointerException
- expression
が null
の場合。Object evaluate(String expression, InputSource source, QName returnType) throws XPathExpressionException
指定された InputSource
のコンテキストで XPath 式を評価し、結果を指定された型として返します。
このメソッドは InputSource
のデータモデルを構築し、結果として得られるドキュメントオブジェクトに対して evaluate(String expression, Object item, QName returnType)
を呼び出します。
コンテキスト項目の評価、変数、関数、および QName の解決と戻り値の型の変換については「XPath 式の評価」を参照してください。
returnType
が XPathConstants
に定義された型でない場合、IllegalArgumentException
がスローされます。
expression
、source
、または returnType
が null
の場合、NullPointerException
がスローされます。
expression
- XPath 式。source
- 評価するドキュメントの入力ソース。returnType
- 目的の戻り値の型。Object
。XPathExpressionException
- expression を評価できない場合。IllegalArgumentException
- returnType
が XPathConstants
に定義された型でない場合。NullPointerException
- expression
、source
、または returnType
が null
の場合。String evaluate(String expression, InputSource source) throws XPathExpressionException
指定された InputSource
のコンテキストで XPath 式を評価し、結果を String
として返します。
このメソッドは、XPathConstants.STRING
の returnType
を指定して evaluate(String expression, InputSource source, QName returnType)
を呼び出します。
コンテキスト項目の評価、変数、関数、および QName の解決と戻り値の型の変換については「XPath 式の評価」を参照してください。
expression
または source
が null
の場合、NullPointerException
がスローされます。
expression
- XPath 式。source
- 評価するドキュメントの InputSource
。String
に変換した結果である String
。XPathExpressionException
- expression を評価できない場合。NullPointerException
- expression
または source
が null
の場合。 バグまたは機能を送信
詳細な API リファレンスおよび開発者ドキュメントについては、Java SE のドキュメントを参照してください。そのドキュメントには、概念的な概要、用語の定義、回避方法、有効なコード例などの、開発者を対象にしたより詳細な説明が含まれています。
Copyright © 1993, 2013, Oracle and/or its affiliates. All rights reserved.