COBOL for Windows に組み込まれている XML パーサーは、「XML 仕様」の定義に従った規格合致 XML プロセッサーではありません。 XML パーサーは、構文解析する XML 文書の妥当性検査を 行いません。XML パーサーは、各種の整形式性エラーの検査は行いますが、妥当性検証をしない XML プロセッサーに必要とされるアクションのすべてを行うわけではありません。
特に、XML パーサーは、内部文書タイプ定義 (DTD 内部サブセット) を 処理しません。したがって、XML パーサーは、デフォルト属性値の提供、属性値の正規化、および事前定義エンティティーを除く、内部エンティティーの置換テキストの組み込みを行いません。ただし、XML パーサーは、文書タイプ宣言全体を DOCUMENT-TYPE-DESCRIPTOR XML イベントの XML-TEXT または XML-NTEXT の内容として渡します。したがって、アプリケーションは、必要に応じて、これらのアクションを実行することができます。
オプションとして、パーサーを使用すると、プログラムはエラー後に XML 文書の処理を続行することができます。処理の続行を可能にする目的は、XML 文書および処理プロシージャーのデバッグを容易にすることです。
「XML 仕様」での定義を要約すると、以下の場合に、 テキスト・オブジェクトは整形式 XML 文書です。
COBOL XML パーサーでは、文書タイプ宣言を除き、文書が XML 文法に準拠しているかを検査します。文書タイプ宣言は、 チェックされない状態でそのままアプリケーションに渡されます。
| 以下の資料は、
「XML 仕様」からの注釈です。オリジナル URL (www.w3.org/TR/REC-xml) に
存在しない内容については、W3C は責任を負いません。注釈はすべて、仕様には含まれておらず、イタリック体 で記述されています。
Copyright (C) 1994-2002 W3C (R) (マサチューセッツ工科大学、フランス国立情報学自動制御研究所、慶応義塾大学)、All Rights Reserved. W3C の責任、商標、文書使用、およびソフトウェア・ライセンスの規則が適用されます。 (www.w3.org/Consortium/Legal/ipr-notice-20000612) |
また、「XML 仕様」には、12 事項の明示的な整形式性制約が記述されています。COBOL XML パーサーが部分的または全面的に検査する制約事項は太字で 記述されています。
パーサーは内部 DTD サブセットを処理しないので、この制約を強制しません。
パーサーは外部サブセットを処理しないので、この制約を強制しません。
パーサーは内部 DTD サブセットを処理しないので、この制約を強制しません。
パーサーはこの制約を強制します。
パーサーで、一意性について、指定したエレメント内の最大 10 までの属性名が検査され、この制約は部分的にサポートされます。アプリケーションは、この限度を超える属性名を検査できます。
パーサーはこの制約を強制しません。
パーサーはこの制約を強制しません。
パーサーはこの制約を強制します。
エンティティーが外部サブセットまたは外部パラメーター・エンティティーで宣言されている場合、妥当性検査をしないプロセッサーは、それらの宣言を読み取って処理するよう強制されないことに注意してください。そのような文書の場合、エンティティーを宣言しなければならないという規則は、standalone='yes' の場合にのみ 整形式制約です。
パーサーはこの制約を強制しません。
パーサーはこの制約を強制しません。
パーサーはこの制約を強制しません。
このエラーは起こらないので、パーサーはこの制約を強制しません。
| 上記の資料は、 「XML 仕様」からの注釈です。オリジナル URL (www.w3.org/TR/REC-xml) に 存在しない内容については、W3C は責任を負いません。上記の注釈はすべて、仕様には含まれていません。本文書は、W3C メンバーや他の関係者による校閲を受け、ディレクターによって W3C 推奨文書として承認されています。本文書は継続的に提供される文書であり、参照資料として使用されたり、別文書で仕様に含まれる資料として引用される可能性があります。仕様の正規版は英語バージョンで、W3C のサイトで確認することができます。翻訳文書については、翻訳上の誤りが含まれる可能性があります。 |
関連概念
COBOL での XML パーサー
関連参照
Extensible Markup Language (XML)
2.8 Prolog および文書タイプ宣言 (「XML 仕様」)