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;