この章の内容は次のとおりです。
注意: 新規のXDKアプリケーションには、xml.hpp にある新規の統合C++ APIを使用してください。oraxml.hpp にある以前のC++ APIは使用できません。下位互換性のみを目的としてサポートされていますが、今後は拡張されません。これは、将来のリリースでは削除される予定です。
|
XSLT for C++は、データベースおよびApplication Serverに付属しています。これは、OTNサイト(http://www.oracle.com/technology/tech/xml
)からダウンロードして入手することもできます。
サンプル・ファイルはxdk/demo/cpp/new
にあります。
ソフトウェア・アーカイブのルート・ディレクトリにあるreadme.html
ファイルには、不具合の修正や追加のAPIなどのリリース固有の情報が含まれています。
これは、XSLTコンパイラおよびトランスフォーマの名前空間です。
XslException
インタフェース: XSLTに関連するすべての例外のルート・インタフェースです。
Transformer
インタフェース: 基本的なXSLTプロセッサです。このインタフェースを使用して全XSLTプロセッサを起動できます。
CompTransformer
インタフェース: 拡張したXSLTプロセッサです。このインタフェースは、中間バイナリ・バイトコード(現行のXVMベースのプロセッサ専用)を作成するプロセッサとのみ併用できます。
Compiler
インタフェース: XSLTコンパイラです。これは、XSLTをバイナリ・バイトコードにコンパイルするコンパイラに対して使用されます。
関連資料: 『Oracle XML APIリファレンス』 |
XMLParser.xmlparse()
には、次の2つの入力があります。
XML文書
XML文書に適用するスタイルシート
ツール・ファクトリをコールして特定のXSLTトランスフォーマまたはコンパイラを作成すると、XSLTプロセッサが起動します。
setXSL()
メンバー関数をコールすると、スタイルシートが任意のトランスフォーマに指定されます。
XMLインスタンス・ドキュメントがメンバー関数を変換するパラメータとして指定されます。
結果のドキュメント(XML、HTML、VMLなど)は、通常、アプリケーションに送られ、さらに処理されます。このドキュメントは、DOMツリーまたは一連のSAXイベントとして送られます。ユーザーがSAXイベント・ハンドラを指定すると、SAXイベントが生成されます。
デストラクタを起動すると、アプリケーションではXSLTプロセッサが終了します。
XSLT for C++は、次の2つの方法で起動できます。
コマンドラインで実行可能ファイルを起動する
C++コードを記述し、提供されるAPIを使用する
$ORACLE_HOME/xdk/demo/c/parser/
ディレクトリには、XSLT for C++の使用方法を示すいくつかのXMLアプリケーションがあります。
表20-1に、サンプル・ファイルを示します。