Caracteres especiales en XML

4. Caracteres especiales en XML
En XML y HTML, algunos caracteres tienen un significado especial (special characters) y no pueden ser usados directamente en el contenido del documento. En su lugar, se deben utilizar entidades (entities) o referencias (references) de caracteres para representar estos caracteres especiales.
- Entidades: Las entidades son secuencias de caracteres que representan símbolos especiales. Comienzan con un ampersand (&), seguido de un nombre o número y terminan con un punto y coma (;). Las entidades son fáciles de leer y entender.
- Códigos decimales (decimal codes): Los códigos decimales son valores numéricos que representan símbolos en la tabla ASCII. Estos códigos se escriben en la forma
&#n;
, donde «n» es el número decimal correspondiente al símbolo. - Códigos hexadecimales (hexadecimal codes): Los códigos hexadecimales son valores numéricos en base 16 que representan símbolos en la tabla ASCII. Los códigos hexadecimales son similares a los códigos decimales, pero utilizan una representación en base 16 en lugar de base 10. Estos códigos se escriben en la forma
&#xn;
, donde «n» es el valor hexadecimal correspondiente al símbolo.
En la tabla siguiente tienes algunos ejemplos de caracteres especiales en XML y su representación en entidad y referencia en decimal y hexadecimal:
Carácter | Entidad | Decimal | Hexadecimal |
---|---|---|---|
« | " | " | " |
& | & | & | & |
‘ | ' | ' | ' |
< | < | < | < |
> | > | > | > |
© | © | © | © |
€ | € | € | € |
Estas referencias se utilizan para evitar conflictos con la sintaxis XML y asegurar que los caracteres especiales sean interpretados correctamente. En el siguiente ejemplo el carácter <
se mostrará correctamente en el contenido del elemento sin causar errores en el análisis del documento XML.:
<ejemplo>Este es un ejemplo de uso del carácter < en XML.</ejemplo>
En el ejemplo que se muestra a continuación se representa el símbolo €
de las tres formas explicadas en la tabla 1:
<!-- Utilizando el código Unicode hexadecimal --> <texto>€</texto> <!-- Utilizando el código Unicode decimal --> <texto>€</texto> <!-- Utilizando el nombre de entidad predefinida --> <texto>€</texto>
En la siguiente sección veremos cómo asociar un archivo CSS a XML para mejorar su presentación visual.