CDATA セクション
純粋な文字
実体参照を用いれば、事実上、基本的なテキストは全て表現できます
しかし、XML 文書に C 言語のソースプログラムを載せたい時はどうでしょうか
プログラムの中には if (a < b && b > c) {... という文などがあるでしょう
これを、わざわざ探して、実体参照に書きかえるのは大変な作業です
もし、それが Linux ソースであれば、全てを書きかえるに、多くの時間を必要とします
できることならば、コピー & ペーストですませておきたいと思うものです
XML のソースを XML 文書に貼りつけるのも大変です
XML ソースで使われている全てのタグを、実体参照に変換しなければいけません
プログラマであれば、変換用のマクロプログラムを作ることができるかもしれませんが
プログラム技術のない Web デザイナーであれば、頭の痛い作業になります
そこで、このような場合は CDATA セクションを使います
CDATA セクションは <![CDATA[ で始まり ]]> で終わります
CDATA セクション内の文書は、全てが単純な文字列であると理解されます
XML パーサーは、実体参照やタグなどをテキストとして扱います
ただし、CDATA セクションでも ]]> だけは扱えません
CDATA セクションを入れ子にすることはできないので
XML 文書内で CDATA セクションを表すには、実体参照を使うしかありません
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<object>
<![CDATA[
<?xml version="1.0"?>
<document>
Kitty on your lap & Tokyo mew mew
</document>
]]>
</object>
サンプルを見る
サンプルを見れば CDATA セクション内のタグなどが
XML ではなく、通常のテキストとして扱われていることがわかります