IBM は、XML 構文解析開発リソースを、Xerces パーサー上で動作するように変更しています。 その目的は、Xerces コード・ベースを XML4J および XML4C の 基礎として使用することです。このバージョンの XML4J は、Apache Xerces2 コードベースに基づいています。
1999 年 11 月 9 日、The Apache Software Foundation は、オープン・ ソース Extensible Markup Language (XML) ソリューションを 対象とした xml.apache.org プロジェクトの設立を発表しました。 その発表の中で、IBM は、 同社の XML4J、XML4C、 および LotusXSL テクノロジーを xml.apache.org プロジェクトに提供していることを明らかにしました。 構文解析テクノロジーは Xerces に、 LotusXSL テクノロジーは Xalan に名前変更されました。
IBM は、xml.apache.org プロジェクトによって行われたテストのほかに、 このバージョンの XML4J をテストしました。 主要な Java アーカイブ (JAR) ファイルの名前は、 xml4j.jar から xmlParserAPIs.jar および xercesImpl.jar に、xml4jSamples.jar から xercesSamples.jar に変更されました。
このバージョンの XML4J では、 前回の主要なリリースから、主要な API の変更が 1 つと、いくつかの比較的マイナーな API の変更が行われています。 その主要なフィーチャーは、多くのバグ修正とパフォーマンスの向上であり、 さらにいくつかのフィーチャーも追加されています。
XML4J 4.2.x は、正式な W3C DOM HTML 勧告 API に同梱されています。 この API に対する主要な変更点は、HTMLOptionElement インターフェースから setSelected が除外されている点です。 XML4J 4.1.x から変更されたこの点についての次善策は、 HTMLOptionElement インターフェースの setAttribute および removeAttribute を使用して、選択された属性を変更することです。
API 状況 | API コンテンツ (パッケージ、インターフェース、クラス、およびメソッド) | コメント |
---|---|---|
パブリック | DOM Level 1 インターフェース (org.w3c.dom、org.w3c.dom.html 内にある)
および DOM Level 2 (DOM2) インターフェース (org.w3c.dom およびサブパッケージ内にある)
DOM2 インターフェースは、DOM1 と同じインターフェースで、新規メソッドとしてインプリメントされています。 SAX Level 1 インターフェース (org.xml.sax. およびサブパッケージ内にある) および SAX Level 2 (SAX2) インターフェース (org.xml.sax. およびサブパッケージ内にある) |
DOM L1、DOM L2、SAX1、および SAX2 インターフェースは安定しています。 |
実験的 | DOM Level 3 (DOM3) および Core DOM Level 3 (DOM3) 抽象スキーマと、ロードおよび保管 (org.apache.xerces.dom3 およびサブパッケージ内にある)。 | DOM L3 は作業ドラフト状況にあります。XML4J は 、DOM L3 サポートのサブセットを提供します。 |
内部 | 他のすべてのパッケージは、内部的なものです。 | 内部 Xerces アーキテクチャーは変更される場合があります。 |
詳しくは、XML4J Information を参照してください。
Apache Open Source プロジェクトとして、Xerces コミュニティーは、 パブリックとして指定した部分だけでなく、API 全体に関する質問およびフィードバックに興味があります。
Xerces API またはコードに関して、特定の質問、パッチ、またはフィードバックをお持ちの場合は、Apache Web サイトを訪問し、メーリング・リストにご登録ください。 基本的な質問または XML4J に関する特定の質問は、 AlphaWorks ディスカッション・フォーラムまでお寄せください。
org.apache.xerces.parsers.SAXParser org.apache.xerces.parsers.DOMParser
検証制御がこのパーサーのフィーチャーになったので、 別々のクラスは必要なくなります。
パーサー・インスタンス化クラスの将来の方向はパーサー・インスタンス化 API で、 これは、現在進められている W3C DOM Level 3 の取り組みの結果となります。
ご使用のコードを確実にできるだけ安定させるため、 可能な場合は必ず、前の表の「パブリック」セクションで指定されたインターフェース (例えば、 DOM1 および SAX1) を使用します。 表を定期的に更新して、「パブリック」状況に指定された新規インターフェースおよびクラス (例えば、 DOM2 および SAX2) を反映してください。
IBM は、 XML4J に関する追加サポート保証を行っていません。具体的に言うと 、IBM は、XML4J が Y2K 準拠であることを保証していません。XML4J は、内部日付計算を行いません。
Java API for XML Processing (JAXP) 仕様は、 javax.xml.parsers API を使用して、SAX または DOM パーサーのプラグ可能メカニズムを定義します。 変換プログラムは、Javax.xml.transform API 経由でプラグ可能です。
バージョン 6.0.x にバンドルされている IBM SDK 1.4.1 には、XML4J 4.2.2 パーサーおよび XSLT4J 2.5.4 変換プログラムが含まれています。アプリケーションで 、JAXP の異なるインプリメンテーションを使用することができます。 このアプリケーションにパーサーと変換プログラムをパッケージします。
アプリケーションを変更して、 以前のバージョンの WebSphere Application Server から、以前のバージョンのパーサーまたは 変換プログラムの API 上の依存関係を取り除くことができます。アプリケーションに JAR ファイルをパッケージします。
いずれの場合も、 アプリケーションまたは Web モジュールには PARENT_LAST にクラス・ローダー代行モードを設定します。
推奨: アプリケーションでは、 パーサーまたは変換プログラム・インプリメンテーション API を直接使用するのではなく JAXP API を使用するようにしてください。
V4.0.x XML アプリケーションまたは V5.x XML アプリケーションをバージョン 6.0.x レベルにマイグレーションするには、 それを再コンパイルする必要があります。