宣言していない接頭辞を使った
x:b と書いたのに、xmlns:x の宣言がない壊れた入力の例です。宣言漏れをエラーで指摘し、宣言が 1 つもないことを情報で知らせることを確かめます。
入力
XML
<a> <x:b/> </a>
結果
エラー 1 件・警告 0 件・情報 1 件
指摘(エラー・警告・情報)
- エラー 2 行目 <x:b> 接頭辞「x」が宣言されていません。使う要素か祖先の要素に xmlns:x="…" が必要です(5 節 NSC: Prefix Declared)。
- 情報 XML 名前空間の宣言(xmlns)がありません。すべての要素は名前空間なしです。
| 要素の数 | 2 個 |
|---|---|
| 宣言の数 | 0 件 |
| 使われていない宣言 | 0 件 |
名前空間の宣言
出力はありません(指摘の一覧をご覧ください)。
検算(この結果になる理由)
Namespaces in XML 5 節では、接頭辞は使う要素か祖先で宣言されていなければなりません。x:b の x はどこにも宣言されていないためエラー 1 件です。宣言(xmlns)が 1 つもないので、表は出さず情報を 1 件出します。
判定の根拠は仕様と根拠に、仕様の出典とともにまとめています。自分の入力で試すにはツールをお使いください。
このツールの制約
- タグを走査する簡易の処理です。DTD の内部定義、実体参照による要素の展開、文字コードの宣言の検査はしません。
- XML としての完全な整形式検査(タグの入れ子の厳密な検査や属性の重複)は行いません。閉じ忘れは警告するだけです。
- スキーマ(XSD・DTD)に沿っているかの検証、名前空間の URI が実在するかの確認はしません。
- 属性値の中の文字は、標準の 5 つの実体参照(& など)だけを読み替えます。数値参照や独自の実体は読み替えません。
ご利用にあたって
- 一覧は貼り付けた XML の見かけの宣言です。実際の処理系の解釈と食い違う場合は、処理系のエラーメッセージを優先してください。