ここでは、次の新機能について説明します。
XMLノードへのDOMストリーム・アクセスは、PL/SQLおよびJavaのAPIによって実行されます。XML文書内のノードは64Kバイトを大幅に超えます。
新しくXDKにコンパクトなバイナリXMLプロセッサが追加されたことにより、エンコーダ、デコーダおよびトークン・マネージャが提供され、スキーマ・ベースまたはスキーマ・ベースでないストリームをXML1.0テキストおよびSAXイベントに、およびXML1.0テキストおよびSAXイベントから変換できます。形式は『Oracle XML DB開発者ガイド』で使用されているものと同一です。
バイナリXMLは、データベースの永続XMLに関する3番目の格納モデルであるバイナリXMLを追加します。JavaおよびCのAPIおよびPL/SQLパッケージに影響します。C APIでのバイナリXMLサポートは、XML Developer's KitとXML DBの両方で使用されます。
Javaでのプラグ可能な拡張性のあるDOMにもサポートが提供されます。
拡張性のあるDOMのJavaサポートには、DOMノードの遅延ロード、DOMによるバイナリXMLの更新、同一のDOMソースを共有する複数のアプリケーション、出力としてのバイナリXML、およびDOMにおけるシャドウ・コピーが含まれます。
プラグ可能なDOMは、DOM実装を2つのレイヤー(DOM APIレイヤーおよびデータ・レイヤー)に分割します。データは内部またはプラグインのいずれかで、InfosetReaderインタフェースの実装によりアクセスされます。
Java DOMに対して構成可能なサポートも提供されます。
統合Java API for XMLにより、接続管理のセッション・プール・モデルを使用して、中間層のJavaプログラムがすべてのXMLTypeのメリットを利用できます。これにより、XMLTypeオブジェクトは、作成に使用されるデータベース・セッションから切断可能になります。
JAXP 1.3の拡張XPathへのサポートにより、JavaのXSLTのパフォーマンスも向上します。サポートは静的および動的コンテキストに関するもので、ユーザーは実行時のコンテキストを登録できます。
HTTP server for SOAが有効です。データベースは、PL/SQLパッケージ、プロシージャおよび機能をWebサービスとしてエクスポーズできます。データベースは、XQueryおよびSQL問合せを実行できます。
SOAP for Java and C++の各章は削除されました。
XmlDiff for Cは、2つのXML文書間の差分を検出し、XMLに差分を表示します。XmlPatchは差分を出力し、ターゲットXML文書に変更を適用します。
JSR 170標準がサポートされています。
The C Pull Parserは、SAXモデルと比較してメモリーのオーバーヘッドを削減します。
ストリーミング・バリデータによるCのサポートでXML処理が改善されます。
Document Updates For DLF/TransXが拡張されました。