XPathパッケージには、XPathの処理に関連のある型およびインタフェースが含まれています。
この章には、次の項が含まれます。
|
関連項目:
|
表8-1にXPathパッケージのデータ型の概要を示します。
表8-1 データ型の概要: XPathパッケージ
| データ型 | 説明 |
|---|---|
|
|
XPathコンパイラの識別子を定義します。 |
|
|
XPath 1.0に基づいた実装のオブジェクト型を定義します。 |
|
|
XPathに関連する例外コードです。 |
|
|
XPathプロセッサの識別子を定義します。 |
XPathコンパイラの識別子を定義します。
定義
typedef enum XPathCompIdType {
XvmXPathCompCXml = 1
} XPathCompIdType;
XPath 1.0に基づいた実装のオブジェクト型を定義します。
定義
typedef enum XPathObjType {
XPOBJ_TYPE_UNKNOWN = 0,
XPOBJ_TYPE_NDSET = 1,
XPOBJ_TYPE_BOOL = 2,
XPOBJ_TYPE_NUM = 3,
XPOBJ_TYPE_STR = 4
} XPathObjType;
XPathに関連する例外コードです。
定義
typedef enum XPathExceptionCode {
XPATH_UNDEFINED_ERR = 0,
XPATH_OTHER_ERR = 1
} XPathExceptionCode;
XPathプロセッサの識別子を定義します。
定義
typedef enum XPathPrIdType { XPathPrCXml = 1, XvmPrCXml = 2 } XPathPrIdType;
表8-2にCompProcessorインタフェースで使用できるメソッドの概要を示します。
表8-2 CompProcessorメソッドの概要: XPathパッケージ
| 関数 | 概要 |
|---|---|
|
|
プロセッサのIDを取得します。 |
|
|
指定したドキュメントに対してXPath式を評価します。 |
|
|
指定したドキュメントに対してコンパイルしたXPath式を評価します。 |
プロセッサIDを取得します。
構文
virtual XPathPrIdType getProcessorId() const = 0;
戻り値
(XPathPrIdType) プロセッサのID
プロセッサから継承されます。
構文
virtual XPathObject< Node>* process ( InputSource* isrc_ptr, oratext* xpath_exp) throw (XPathException) = 0;
| パラメータ | 説明 |
|---|---|
isrc_ptr |
処理するインスタンス・ドキュメント |
xpath_exp |
XPATH式 |
戻り値
(XpathGenObject*) XPathオブジェクト
指定したドキュメントに対してコンパイルしたXPath式を評価します。
構文
virtual XPathObject< Node>* processWithBinXPath ( InputSource* isrc_ptr, ub2* bin_xpath) throw (XPathException) = 0;
| パラメータ | 説明 |
|---|---|
isrc_ptr |
処理するインスタンス・ドキュメント |
bin_xpath |
コンパイルしたXPATH式 |
戻り値
(XpathGenObject*) XPathオブジェクト
表8-3にCompilerインタフェースで使用できるメソッドの概要を示します。
XPathをコンパイルし、コンパイルしたバイナリ表現を戻します。
構文
virtual ub2* compile ( oratext* xpath_exp) throw (XPathException) = 0;
| パラメータ | 説明 |
|---|---|
xpath_exp |
XPATH式 |
戻り値
(ub2) コンパイルしたバイナリ表現のXPath式。
コンパイラのIDを取得します。
構文
virtual XPathCompIdType getCompilerId() const = 0;
戻り値
(XPathCompIdType) コンパイラのID
表8-4にNodeSetインタフェースで使用できるメソッドの概要を示します。
ノードへの参照を戻します。
構文
NodeRef< Node>* getNode( ub4 idx) const;
| パラメータ | 説明 |
|---|---|
idx |
セット内のノードのインデックス |
戻り値
(NodeRef) ノードへの参照。
ノード・セットのサイズ。
構文
ub4 getSize() const;
戻り値
(ub4) ノード・セットのサイズ。
表8-5にProcessorインタフェースで使用できるメソッドの概要を示します。
プロセッサIDを取得します。
構文
virtual XPathPrIdType getProcessorId() const = 0;
戻り値
(XPathPrIdType) プロセッサのID
指定したドキュメントに対してXPath式を評価し、結果のXPathオブジェクトを戻します。
構文
virtual XPathObject< Node>* process ( InputSource* isrc_ptr, oratext* xpath_exp) throw (XPathException) = 0;
| パラメータ | 説明 |
|---|---|
isrc_ptr |
処理するインスタンス・ドキュメント |
xpath_exp |
XPath式 |
戻り値
(XpathGenObject*) XPathオブジェクト
表8-6にXPathExceptionインタフェースで使用できるメソッドの概要を示します。
表8-6 XPathExceptionメソッドの概要: XPathパッケージ
| 関数 | 概要 |
|---|---|
|
|
例外に埋め込まれたOracle XMLエラー・コードを取得します。 |
|
|
エラー・メッセージの現在の言語(エンコーディング)を取得します。 |
|
|
Oracle XMLエラー・メッセージを取得します。 |
|
|
例外に埋め込まれたXPath例外のコードを取得します。 |
XmlExceptionから継承された仮想メンバー関数です。
構文
virtual unsigned getCode() const = 0;
戻り値
(unsigned) 数値のエラー・コード(正常に終了した場合は0)。
XmlExceptionから継承された仮想メンバー関数です。
構文
virtual oratext* getMesLang() const = 0;
戻り値
(oratext*) エラー・メッセージの現在の言語(エンコーディング)。
XmlExceptionから継承された仮想メンバー関数です。
構文
virtual oratext* getMessage() const = 0;
戻り値
(oratext *) エラー・メッセージ
これは実行時の例外状況の、XPathExceptionCodeで定義されたXPathプロセッサおよびコンパイラの例外コードを戻す、実装によって定義されるメンバー関数のプロトタイプを定義する仮想メンバー関数です。
構文
virtual XPathExceptionCode getXPathCode() const = 0;
戻り値
(XPathExceptionCode) 例外コード
表8-7にXPathObjectインタフェースで使用できるメソッドの概要を示します。
表8-7 XPathObjectメソッドの概要: XPathパッケージ
| 関数 | 概要 |
|---|---|
|
|
コピー・コンストラクタです。 |
|
|
ノード・セットを取得します。 |
|
|
オブジェクトからブール値を取得します。 |
|
|
オブジェクトから数値を取得します。 |
|
|
オブジェクトから文字列を取得します。 |
|
|
オブジェクトから型を取得します。 |
コピー・コンストラクタです。
構文
XPathObject( XPathObject< Node>& src);
| パラメータ | 説明 |
|---|---|
src |
コピーするオブジェクトに対する参照 |
戻り値
(XPathObject) 新しいオブジェクト
ノード・セットを取得します。
構文
NodeSet< Node>* getNodeSet() const;
オブジェクトからブール値を取得します。
構文
boolean getObjBoolean() const;
オブジェクトから数値を取得します。
構文
double getObjNumber() const;
オブジェクトから文字列を取得します。
構文
oratext* getObjString() const;
オブジェクトから型を取得します。
構文
XPathObjType getObjType() const;