10 C++用のXsl APIパッケージ
C++用のXsl
パッケージには、XSL変換に関連のある型およびメソッドが含まれています。これには、Xsl
のデータ型、Compiler
メソッド、CompTransformer
メソッド、Transformer
メソッド、XSLException
メソッドが含まれます。
10.1 Xslのデータ型
表10-1にXsl
パッケージのデータ型の概要を示します。
表10-1 データ型の概要: Xslパッケージ
データ型 | 説明 |
---|---|
XSLコンパイラの識別子を定義します。 |
|
XSLTに関連のある例外を定義します。 |
|
XSLトランスフォーマの識別子を定義します。 |
10.1.1 XslCompIdType
XSLコンパイラの識別子を定義します。
定義
typedef enum XslCompIdType { XvmCompCXml = 1 } XslCompIdType;
10.1.2 XslExceptionCode
XSLTに関連のある例外を定義します。
定義
typedef typedef enum XslExceptionCode { XSL_UNDEFINED_ERR = 0, XSL_OTHER_ERR = 1 } XslExceptionCode;
10.2 Compilerインタフェース
表10-2にCompiler
インタフェースで使用できるメソッドの概要を示します。
表10-2 Compilerメソッドの概要: Xslパッケージ
関数 | 概要 |
---|---|
Xslをコンパイルし、コンパイルしたバイナリ表現を戻します。 |
|
コンパイラのIDを取得します。 |
|
コンパイルしたXSL文書の長さを取得します。 |
10.2.1 compile()
Xslをコンパイルし、コンパイルしたバイナリ表現を戻します。
構文
virtual ub2* compile( InputSource* isrc_ptr) throw (XslException) = 0;
パラメータ | 説明 |
---|---|
isrc_ptr |
Xsl文書 |
戻り値
(InputSource)
コンパイルしたバイナリ表現のXsl文書。
10.2.2 getCompilerId()
コンパイラのIDを取得します。
構文
virtual XslCompIdType getCompilerId() const = 0;
戻り値
(XslCompIdType)
コンパイラのID
10.3 CompTransformerインタフェース
表10-3にCompTransformer
インタフェースで使用できるメソッドの概要を示します。
表10-3 CompTransformerメソッドの概要: Xslパッケージ
関数 | 概要 |
---|---|
トランスフォーマのIDを取得します。 |
|
コンパイルしたXslを設定します。 |
|
SAXハンドラを設定します。 |
|
このトランスフォーマにXSLT文書を設定します。 |
|
文書を変換します。 |
10.3.1 getTransformerId()
トランスフォーマのIDを取得します。
構文
virtual XslTrIdType getTransformerId() const = 0;
戻り値
(XslTrIdType)
トランスフォーマのID
10.3.2 setBinXsl()
コンパイルしたXslを設定します。
構文
virtual void setBinXsl ( ub2* binxsl_ptr) throw (XslException) = 0;
パラメータ | 説明 |
---|---|
binxsl_ptr |
コンパイルしたXsl文書 |
10.3.3 setSAXHandler()
トランスフォーマから継承されます。
構文
virtual void setSAXHandler( SAXHandlerRoot* hdlr_ptr) = 0;
パラメータ | 説明 |
---|---|
hdlr_ptr |
SAXハンドラ・ポインタ |
10.3.4 setXSL()
このトランスフォーマにXSLT文書を設定します。transformメンバー関数がコールされる前にコールする必要があります。これは、Transformから継承されます。
構文
virtual void setXSL ( InputSource* isrc_ptr) throw (XslException) = 0;
パラメータ | 説明 |
---|---|
isrc_ptr |
処理するインスタンス・ドキュメント |
10.3.5 transform()
文書を変換します。setXSLコールによってあらかじめXSLT文書が設定されていない場合、例外をスローします。これは、Transformから継承されます。
構文 | 説明 |
---|---|
virtual NodeRef< Node>* transform( nputSource* isrc_ptr) throw (XslException) = 0; |
ドキュメントを変換し、DOMを戻します。 |
virtual void transform( InputSource* isrc_ptr, SAXHandlerRoot* hdlr_ptr) throw (XslException) = 0; |
ドキュメントを変換し、SAXイベントを戻します。 |
パラメータ | 説明 |
---|---|
isrc_ptr |
処理するインスタンス・ドキュメント |
hdlr_ptr |
SAXハンドラ・ポインタ |
戻り値
(DocumentRef)
新しいドキュメントのドキュメント・ツリー。
10.4 Transformerインタフェース
表10-4にTransformer
インタフェースで使用できるメソッドの概要を示します。
表10-4 Transformerメソッドの概要: Xslパッケージ
関数 | 概要 |
---|---|
トランスフォーマのIDを取得します。 |
|
SAXハンドラを設定します。 |
|
このトランスフォーマにXSLT文書を設定します。 |
|
ドキュメントを変換し、SAXイベントを戻します。 |
10.4.1 getTransformerId()
トランスフォーマのIDを取得します。
構文
virtual XslTrIdType getTransformerId() const = 0;
戻り値
(XslTrIdType)
トランスフォーマのID
10.4.2 setSAXHandler()
SAXハンドラを設定します。
構文
virtual void setSAXHandler( SAXHandlerRoot* hdlr_ptr) = 0;
パラメータ | 説明 |
---|---|
hdlr_ptr |
SAXハンドラ・ポインタ |
10.4.3 setXSL()
このトランスフォーマにXSLT文書を設定します。transformメンバー関数がコールされる前にコールする必要があります。
構文
virtual void setXSL ( InputSource* isrc_ptr) throw (XslException) = 0;
パラメータ | 説明 |
---|---|
isrc_ptr |
処理するインスタンス・ドキュメント |
10.4.4 transform()
文書を変換します。setXSLコールによってあらかじめXSLT文書が設定されていない場合、例外をスローします。
構文 | 説明 |
---|---|
virtual NodeRef< Node>* transform( nputSource* isrc_ptr) throw (XslException) = 0; |
ドキュメントを変換し、DOMを戻します。 |
virtual void transform( InputSource* isrc_ptr, SAXHandlerRoot* hdlr_ptr) throw (XslException) = 0; |
ドキュメントを変換し、SAXイベントを戻します。 |
パラメータ | 説明 |
---|---|
isrc_ptr |
処理するインスタンス・ドキュメント |
hdlr_ptr |
SAXハンドラ・ポインタ |
戻り値
(DocumentRef)
新しいドキュメントのドキュメント・ツリー。
10.5 XSLExceptionインタフェース
表10-5にXSLException
インタフェースで使用できるメソッドの概要を示します。
表10-5 XSLExceptionメソッドの概要: Xslパッケージ
関数 | 概要 |
---|---|
例外に埋め込まれたOracle XMLエラー・コードを取得します。 |
|
エラー・メッセージの現在の言語(エンコーディング)を取得します。 |
|
Oracle XMLエラー・メッセージを取得します。 |
|
実装するプロトタイプを定義します。 |
10.5.1 getCode()
例外に埋め込まれたOracle XMLエラー・コードを取得します。XmlException
から継承された仮想メンバー関数です。
構文
virtual unsigned getCode() const = 0;
戻り値
(unsigned)
数値のエラー・コード(正常に終了した場合は0
)。
10.5.2 getMesLang()
XmlException
から継承された仮想メンバー関数です。
構文
virtual oratext* getMesLang() const = 0;
戻り値
(oratext*)
エラー・メッセージの現在の言語(エンコーディング)。
10.5.3 getMessage()
XmlException
から継承された仮想メンバー関数です
構文
virtual oratext* getMessage() const = 0;
戻り値
(oratext *)
エラー・メッセージ