29 XSLT Processor for C++の使用
Extensible Stylesheet Language Transformation (XSLT) Processor for C++の使用方法について説明します。
注意:
Oracle XML Developer's Kit (XDK)アプリケーションには、xml.hpp
に統合されたC++アプリケーション・プログラミング・インタフェース(API)を使用してください。oraxml.hpp
内の非統合の旧C++ APIは非推奨で、下位互換性のためにのみサポートされています。これは、将来のリリースでは削除される予定です。
29.1 XSLT for C++の入手方法
Extensible Stylesheet Language Transformation (XSLT) for C++は、Oracle Databaseに付属しています。
サンプル・ファイルはxdk/demo/cpp/new
にあります。
ソフトウェア・アーカイブのルート・ディレクトリにあるreadme.html
ファイルには、不具合の修正や追加のAPIなどのリリース固有の情報が含まれています。
関連項目
29.2 XSLネームスペース
これは、XSLTコンパイラおよびトランスフォーマの名前空間です。
29.2.1 XSLインタフェース
XSLインタフェースについて説明します。
XslException
インタフェース: XSLTに関連するすべての例外のルート・インタフェースです。
Transformer
インタフェース: 基本的なXSLTプロセッサです。このインタフェースを使用して全XSLTプロセッサを起動できます。
CompTransformer
インタフェース: 拡張XSLTプロセッサです。このインタフェースは、中間バイナリ・バイトコードを作成するプロセッサ(現行ではXVMベースのプロセッサのみ)とのみ併用できます。
Compiler
インタフェース: XSLTコンパイラです。これは、XSLTをバイナリ・バイトコードにコンパイルするコンパイラに対して使用されます。
関連項目:
『Oracle Database XML C++ APIリファレンス』のパッケージXSL API for C++に関する項
29.3 XSLT for C++のDOMインタフェースの使用方法
XSLT for C++ DOMの基本的な使用方法について説明します。
XMLParser.xmlparse()
には、次の2つの入力があります。
-
Extensible Markup Language (XML)文書
-
XML文書に適用するXSLTスタイルシート
ツール・ファクトリを起動して特定のXSLTトランスフォーマまたはコンパイラを作成すると、XSLTプロセッサが起動します。
setXSL()
メンバー関数を起動すると、XSLTスタイルシートが任意のトランスフォーマに指定されます。
XMLインスタンス・ドキュメントがメンバー関数を変換するパラメータとして指定されます。
結果のドキュメント(XML、HTML、Vector Markup Language (VML)など)は、通常、アプリケーションに送られ、さらに処理されます。これは、Document Object Model (DOM)ツリーまたは一連のSimple API for XML (SAX)イベントとして送られます。ユーザーがSAXイベント・ハンドラを指定すると、SAXイベントが生成されます。
デストラクタを起動すると、アプリケーションではXSLTプロセッサが終了します。
29.5 ソフトウェアに含まれるサンプル・ファイルの使用
ディレクトリ$ORACLE_HOME/xdk/demo/cpp/parser/
には、XSLT for C++の使用方法を示す複数のXMLアプリケーションがあります。
表29-1 XSLT for C++のサンプル・ファイル
サンプル・ファイル名 | 説明 |
---|---|
|
サンプルのXSLT使用プログラムのソース。 |
|
サンプルXSLT Virtual Machine (XVM)使用プログラムのソース。 |