XML 文書中のエラーの処理

XML 文書中のエラーを処理するには、以下の機能を使用してくださ い。

XML パーサーが XML 文書中にエラーを検出すると、XML 例外イベントを生成します。 パーサーは、処理プロシージャーに、以下の情報とともに制御を渡すことで、 この例外イベントを戻します。

エラー・コードの値が以下の範囲のいずれかのうちにある場合は、

例外をユーザーの処理プロシージャー中で処理し、構文解析を継続することが可能なことがあります。 エラー・コードが他の非ゼロ値を持っている場合は、構文解析を継続することはできません。 エンコード方式の矛盾に関する例外 (50 〜 99 および 300 〜 499) は、文 書の構文解析が始まる前に通知されます。 これの例外に関しては、XML-TEXT は長さ 0 であるか、 文書のエンコード宣言の値のみを含みます。

1 〜 49 の範囲の例外は、XML 仕様に規定された致命的エラーなので、 ユーザーが例外を処理した場合でもパーサーは構文解析を継続しません。 ただし、パーサーは、文書の終端に達するか、継続不能なエラーを検出 するまで、追加のエラーの走査は続けます。 これらの例外に関しては、パーサーはそれ以降の通常イベントは、 END-OF-DOCUMENT イベントを除いて通知しません。

次の図は、パーサーと処理プロシージャーの間の制御のフローを理解するためのものです。 特定の例外を処理する方法と、 XML-CODE を使用して例外を識別する方法を示しています。 画像説明の開始。他ページへのフローチャート接続記号。画像説明終了。などの他ペー ジへの接続記号は、この章の複数の図表を接続しています。 特に、次の図の 画像記述開始。他ページへのフローチャート接続記号 C。画像記述終了。 は、図表『XML CCSID 例外のフロー制御』に接続します。 この図中では、 画像記述開始。他ページへの接続記号 E。 画像記述終了。 他ページへのフローチャート接続記号 C。画像記述終了。 は、他ページへの接続記号と、同ページ中の接続記号 の両方の働きを持ちます。

図 69. XML 例外の制御フロー

画像記述開始。 この画像は、周囲のテキストで説明されている XML 例外のフローチャートを示します。 画像記述終了。