XML CDATA


Todo el texto en un documento XML será analizado por el analizador.

Solo el texto en las secciones CDATA será ignorado por el analizador.


PCDATA - Datos de caracteres analizados

El analizador XML generalmente analiza todo el texto en el documento XML.

Cuando se analiza un elemento XML, el texto entre sus etiquetas también se analiza:

<message>This text is also parsed</message>

El analizador hace esto porque los elementos XML pueden contener otros elementos, como en este ejemplo, donde el elemento <name> contiene otros dos elementos (first y last):

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

Y el analizador lo descompone en subelementos como estos:

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

Los datos de caracteres analizados (PCDATA) es un término utilizado para los datos de texto que analiza el analizador XML.


CDATA - Datos de caracteres (no analizados)

El término CDATA se refiere a datos de texto que no deben ser analizados por el analizador XML.

Caracteres como "<" y "&" son ilegales en elementos XML.

"<" producirá un error porque el analizador interpretará el carácter como el comienzo de un nuevo elemento.

"&" producirá un error porque el analizador interpretará el carácter como el comienzo de una entidad de carácter.

Cierto texto, como el código JavaScript, contiene muchos caracteres "<" o "&". Para evitar errores, el código de script se puede definir como CDATA.

Todo el contenido dentro de una sección CDATA será ignorado por el analizador.

La sección CDATA comienza con "<![CDATA[" y termina con "]]>" :

<script>
<![CDATA[
function matchwo(a,b)
{
if (a < b && a < 0) then
{
return 1;
}
else
{
return 0;
}
}
]]>
</script>

En el ejemplo anterior, el analizador ignora todo el contenido dentro de la sección CDATA.

Notas sobre la sección CDATA:

La sección CDATA no puede contener la cadena "]]>". Tampoco se permiten secciones CDATA anidadas.

El "]]>" que marca el final de la sección CDATA no puede contener espacios ni saltos de línea.


Otras extensiones