Saltar al contenido principal

CDATA

CDATA (Parsed Character Data) es cualquier cadena de texto, incluso con caracteres no permitidos en XML (<, >, &, etc.). El único caracter que no se puede utilizar es aquel que se ha utilizado para delimitar el valor del atributo (" o ').

<!ATTLIST producto ean CDATA #IMPLIED>

La regla anterior valida el siguiente XML:

<producto ean="4-006381-438650">Rotuladores Stabilo</producto>

En el caso anterior, se podría utilizar cualquier caracter excepto el " porque es que se ha utilizado para almacenar el valor del atributo.

Si queremos utilizar " dentro del contenido, podemos utilizar ' para almacenar el valor del atributo:

<producto ean='4-006381-438650'>Rotuladores Stabilo</producto>

El elemento podría también no tener ningún atributo:

<producto>Rotuladores Stabilo</producto>

Un ejemplo compelto sería el siguiente:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE productos [
<!ELEMENT productos (producto*)>
<!ELEMENT producto (#PCDATA)>
<!ATTLIST producto ean CDATA #IMPLIED>
]>
<productos>
<producto ean="4-006381-438650">Rotuladores Stabilo</producto>
<producto>Goma MILAN</producto>
</productos>