一般的なXML構文エラーの発見と修正
一般的なXML構文エラーを特定し修正します:未閉じタグ、不一致要素、無効な文字、クォートの欠落、不正な属性。XMLの整形式ルールを学びます。
Validation
詳細な説明
一般的なXML構文エラー
XMLには厳格な整形式ルールがあります。HTMLとは異なり、ブラウザやパーサーはわずかな構文エラーでもXMLドキュメントを拒否します。これらのエラーを理解することで、迅速に修正できます。
1. 未閉じタグ
すべての開始タグには対応する閉じタグが必要です:
<!-- エラー:未閉じの <title> -->
<book>
<title>XML Guide
<author>Jane Doe</author>
</book>
<!-- 修正済み -->
<book>
<title>XML Guide</title>
<author>Jane Doe</author>
</book>
2. タグ名の不一致
開始タグと閉じタグは大文字小文字を含め正確に一致する必要があります:
<!-- エラー:<Title> vs </title> -->
<Title>XML Guide</title>
<!-- 修正済み -->
<title>XML Guide</title>
XMLは大文字小文字を区別します。<Book> と <book> は異なる要素です。
3. 属性クォートの欠落
すべての属性値はクォート(シングルまたはダブル)で囲む必要があります:
<!-- エラー:クォートなしの属性 -->
<book id=1>
<!-- 修正済み -->
<book id="1">
4. 無効な文字
特定の文字はXMLテキストコンテンツ内でエスケープする必要があります:
| 文字 | エスケープシーケンス |
|---|---|
< |
< |
> |
> |
& |
& |
" |
" |
' |
' |
テキストコンテンツ内で素の < や & を使用すると構文エラーになります。
5. 複数のルート要素
XMLドキュメントにはルート要素が正確に1つ必要です:
<!-- エラー:2つのルート要素 -->
<book>...</book>
<book>...</book>
<!-- 修正済み:単一のルートでラップ -->
<books>
<book>...</book>
<book>...</book>
</books>
6. 不適切なネスト
要素は適切にネストされる必要があり、重複してはいけません:
<!-- エラー:タグの重複 -->
<b><i>text</b></i>
<!-- 修正済み -->
<b><i>text</i></b>
エラーメッセージの読み方
XMLパーサーは行番号と列番号でエラーを報告します。フォーマッターは最初のエラーの正確な位置をハイライトし、問題の特定と修正を容易にします。
ユースケース
XML構文検証は、XML APIの開発または利用、設定ファイル(Maven、Spring、Android)の編集、データフィードの処理、不正なXMLに起因するビルドエラーのデバッグに不可欠です。構文エラーの早期発見により、本番システムでの実行時エラーを防止します。