XML技術マニュアルlogin
XML技術マニュアル
著者:php.cn  更新時間:2022-04-14 15:57:53

XML CDATA



XML ドキュメント内のすべてのテキストはパーサーによって解析されます。

CDATA セクション内のテキストのみがパーサーによって無視されます。


PCDATA - 解析された文字データ

XML パーサーは通常、XML ドキュメント内のすべてのテキストを解析します。

XML 要素が解析されると、そのタグ間のテキストも解析されます:

<message>このテキストも解析されます</message>

パーサーがこれを行う理由この例のように、XML 要素には他の要素を含めることができます。ここでは、<name> 要素に他の 2 つの要素 (最初と最後) が含まれます:

<name><first>Bill</first><last>Gates< ;/last></name>

そして、パーサーはそれを次のようなサブ要素に分割します:

<name>
​ <first>請求書</first>
​ <last>Gates</last>
</name>

解析済み文字データ (PCDATA) は、XML パーサーによって解析されたテキスト データに使用される用語です。


CDATA - (解析されていない) 文字データ

CDATA という用語は、XML パーサーによって解析されるべきではないテキスト データです。

「<」や「&」のような文字は XML 要素では無効です。

「<」は、パーサーがこの文字を新しい要素の始まりとして解釈するため、エラーが生成されます。

「&」は、パーサーがこの文字を文字エンティティの先頭として解釈するため、エラーが生成されます。

JavaScript コードなどの一部のテキストには、「<」または「&」文字が多く含まれています。エラーを回避するために、スクリプト コードを CDATA として定義できます。

CDATA セクション内のすべてはパーサーによって無視されます。

CDATA 部分は "<![CDATA[" で始まり、"]]>" で終わります:

<script>
<![CDATA[
function matchwo(a,b )
{
if (a < b && a < 0) then
​ {
​ 1 を返します;
​ }
その他
​ {
​ 0 を返す;
​ }
}
]]>
</script>

上記の例では、パーサーは CDATA セクション内のすべてを無視します。

CDATA 部分に関する注意:

CDATA 部分には文字列「]]>」を含めることはできません。ネストされた CDATA セクションも許可されません。

CDATA セクションの終わりを示す「]]> にはスペースや改行を含めることはできません。


PHP中国語ウェブサイト