XML ドキュメントでエスケープする必要がある文字は何ですか? 質問する

XML ドキュメントでエスケープする必要がある文字は何ですか? 質問する

XML ドキュメントではどの文字をエスケープする必要がありますか? また、そのようなリストはどこで見つけることができますか?

ベストアンサー1

適切なクラスまたはライブラリを使用すると、エスケープ処理が自動的に行われます。多くの XML の問題は、文字列の連結によって発生します。

XMLエスケープ文字

たった 5 つしかありません:

"   "
'   '
<   &lt;
>   &gt;
&   &amp;

文字のエスケープは、特殊文字が使用される場所によって異なります。

これらの例は、W3C マークアップ検証サービス

文章

安全な方法は、テキスト内の 5 つの文字すべてをエスケープすることです。ただし、テキスト内の"、 、 の'3つの文字>はエスケープする必要はありません。

<?xml version="1.0"?>
<valid>"'></valid>

属性

安全な方法は、属性内の 5 つの文字すべてをエスケープすることです。ただし、>属性内で文字をエスケープする必要はありません。

<?xml version="1.0"?>
<valid attribute=">"/>

引用符が次の場合、属性'内で文字をエスケープする必要はありません"

<?xml version="1.0"?>
<valid attribute="'"/>

同様に、"引用符が次の場合、属性内でエスケープする必要はありません'

<?xml version="1.0"?>
<valid attribute='"'/>

コメント

コメントでは、5 つの特殊文字すべてをエスケープしないでください。

<?xml version="1.0"?>
<valid>
<!-- "'<>& -->
</valid>

CDATA

5つの特殊文字はすべてエスケープしないでください。CDATAセクション:

<?xml version="1.0"?>
<valid>
<![CDATA["'<>&]]>
</valid>

処理命令

XML 処理命令では、次の 5 つの特殊文字すべてをエスケープしないでください。

<?xml version="1.0"?>
<?process <"'&> ?>
<valid/>

XML と HTML

HTMLには独自のエスケープコードセットより多くの文字をカバーします。

おすすめ記事