Cosminexus V9 アプリケーションサーバ Cosminexus XML Processor ユーザーズガイド

[目次][用語][索引][前へ][次へ]

付録A.1 DOMパーサ,およびSAXパーサ共通の動作の差異

DOMパーサ,およびSAXパーサ共通の動作の差異を次の表に示します。

表A-1 DOMパーサ,およびSAXパーサ共通の動作の差異

項番 条件 XML Processorの動作
バージョン06-00の場合 バージョン07-00以降の場合
1 パーサがInputSourceオブジェクトを使用してバイトストリームを読み込む場合 XML仕様のアルゴリズムを用いて文字エンコーディングを自動検出します。 setEncodingメソッドで指定されたエンコーディングを優先します。
2 「EUCで保存されているがXML宣言にencoding指定が存在しないXML文書」など,エンコーディングが不正な状態で解析した場合 IOException例外が発生します。 SAXException例外が発生します。
3 parseメソッドの引数uriまたは引数systemIdに空文字列を指定した場合 IOException例外が発生します。 SAXException例外が発生します。
4 XML文書のDOCTYPE宣言のシステム識別子に空文字列を指定した場合 IOException例外が発生します。 SAXException例外が発生します。
5 DTDでEMPTYと宣言した要素の内容がコメントだけの場合 妥当性検証時にエラーになりません。 妥当性検証時にエラーになります。
6 U+D800〜U+DFFFを含み,属性値またはテキストに指定できないXML文書をパースした場合(ただし,サロゲートペアは除く) エラーになります。

J2SE 5.0の場合
エラーになります。

Java SE 6の場合
正常終了します。
ただし,処理結果は不正となるため,注意してください。
7 DTDによる妥当性検証で,子要素に定義していない要素を指定した場合 KECX01165-Eのエラーを通知します。 KECX01164-Eのエラーを通知します。
8 UTF-8で記述したXML文書の中のXML宣言のencoding属性値として,「UTF-16」を指定した場合 KECX01083-Eのエラーを通知します。 KECX01024-Eのエラーを通知します。