Escapar / desescapar XML
Pega texto para que sea seguro dentro de un elemento o atributo XML, o pega XML escapado para convertir las entidades de nuevo en caracteres legibles. Los resultados se actualizan mientras escribes y nada sale de tu navegador.
Última actualización:
Cómo usar Escapar / desescapar XML
- Elige Escapar, Desescapar o Envolver en CDATA.
- Pega tu texto en el cuadro de la izquierda (o haz clic en Ejemplo).
- Elige dónde irá el texto: texto de elemento o un atributo, y cómo tratar los caracteres no ASCII.
- Consulta el resultado a la derecha, con el recuento de cada sustitución.
- Copia o descarga el resultado, o haz clic en Intercambiar para invertirlo.
Caracteres especiales de XML
| Carácter | Entidad | Referencia numérica | Debe escaparse |
|---|---|---|---|
| & | & | & | Siempre (texto y atributos) |
| < | < | < | Siempre (texto y atributos) |
| > | > | > | Solo en "]]>" dentro del texto; escaparlo en todas partes es habitual e inofensivo |
| " | " | " | Dentro de atributos delimitados por comillas dobles |
| ' | ' | ' | Dentro de atributos delimitados por comillas simples |
Escapar según el contexto
| Dónde va el texto | Entrada | Escapado |
|---|---|---|
| Texto de elemento | 5 < 7 & "ok" | <n>5 < 7 & "ok"</n> |
| Atributo entre comillas dobles | say "hi" | title="say "hi"" |
| Atributo entre comillas simples | it's | title='it's' |
| Sección CDATA | a < b && c | <![CDATA[a < b && c]]> |
Consejos
- Escapa exactamente una vez. Escapar dos veces convierte & en &amp;, un error habitual cuando el texto pasa por dos capas de código.
- En el código, usa preferiblemente el serializador de tu biblioteca XML (por ejemplo, las API DOM, ElementTree o System.Xml) en lugar de reemplazar cadenas a mano: escapa correctamente según el contexto de forma automática.
- XML no es HTML: las únicas entidades con nombre son las cinco de arriba. Para texto HTML usa el Codificador / decodificador de entidades HTML.
Preguntas frecuentes
¿Qué caracteres hay que escapar en XML?
El ampersand (&) y el signo menor que (<) siempre deben escaparse en el texto y en los valores de atributos. El signo mayor que debe escaparse cuando aparece en la secuencia ]]> dentro del texto, y las comillas deben escaparse dentro de un atributo delimitado por el mismo tipo de comillas. Escapar los cinco siempre es seguro.
¿Cuáles son las cinco entidades XML predefinidas?
& para &, < para <, > para >, " para " y ' para '. Son las únicas entidades con nombre que XML define sin una DTD.
¿Por qué da error en XML?
y otros nombres como © son entidades HTML, no XML. En XML escribe la referencia numérica:   para un espacio de no separación o © para ©, o simplemente usa el propio carácter en UTF-8.
¿Debo usar CDATA o escapar?
Ambos producen los mismos datos. CDATA es cómodo para bloques grandes con muchos caracteres < y &, como fragmentos de código. Escapar funciona en todas partes, incluidos los atributos, donde CDATA no está permitido.
¿Por qué se escapan las tabulaciones y los saltos de línea en los atributos?
Los analizadores XML normalizan los valores de los atributos y convierten las tabulaciones y los saltos de línea literales en espacios. Escribirlos como 	, y los mantiene intactos.
¿Qué caracteres no están permitidos en absoluto en XML?
XML 1.0 prohíbe los caracteres de control de U+0000 a U+001F excepto la tabulación, el salto de línea y el retorno de carro, además de U+FFFE, U+FFFF y los sustitutos sin pareja. No pueden aparecer ni siquiera como referencias numéricas, así que esta herramienta los elimina por defecto.
¿Se prueban todas las herramientas de FreeToolCabin para comprobar su calidad y precisión?
Sí. Cada herramienta del sitio pasa pruebas automáticas en navegadores reales para comprobar que el resultado es correcto y que no hay errores. Si encuentras un fallo o tienes una sugerencia, escríbenos a [email protected] y lo revisaremos.