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:
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):
Y el analizador lo descompone en subelementos como estos:
<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 "]]>" :
<![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