Cómo usar el formateador de XML
- Pega tu XML en el cuadro de entrada: un sobre SOAP, un feed RSS, un sitemap, un archivo SVG o un archivo de configuración.
- Haz clic en Formatear para darle formato legible, con un elemento por línea y una sangría uniforme.
- Haz clic en Minificar para eliminar los espacios en blanco entre etiquetas y obtener la versión más compacta.
- Si el documento no está bien formado, el validador indica qué ha fallado y dónde, para que vayas directamente al problema.
- Copia el resultado en tu editor o en tu petición.
El análisis se hace localmente en tu navegador. El XML que pegas nunca se sube ni se guarda, así que puedes trabajar con seguridad con cargas útiles de API internas y archivos de configuración.
¿Qué es XML y para qué sirve formatearlo?
XML (Extensible Markup Language, lenguaje de marcado extensible) es un estándar del W3C para representar datos estructurados como elementos anidados con nombre y atributos opcionales. Sigue estando en todas partes: los servicios web SOAP, los feeds RSS y Atom, los sitemaps XML, los archivos de Microsoft Office, los layouts de Android, los archivos pom.xml de Maven y los gráficos SVG son todos XML.
El XML generado por software suele escribirse en una sola línea o con una sangría irregular. Formatearlo hace visible la jerarquía, de modo que puedes seguir qué elemento pertenece a qué padre y localizar un valor que está en el sitio equivocado. Minificarlo es útil cuando necesitas incrustar XML en otra carga útil o reducir su tamaño.
XML bien formado frente a XML válido
Estos dos términos se confunden a menudo:
- Un XML bien formado sigue las reglas de sintaxis de la especificación XML: un único elemento raíz, etiquetas correctamente anidadas y cerradas, valores de atributo entre comillas y caracteres especiales escapados. Todo analizador XML lo exige.
- Un XML válido está bien formado y además cumple un esquema (una DTD, un XSD o RELAX NG) que define qué elementos y atributos están permitidos.
Esta herramienta comprueba que el documento esté bien formado. La validación con un esquema necesita el archivo del esquema y suele hacerse en tus herramientas de compilación o en tu IDE.
Errores habituales de XML y cómo corregirlos
Más de un elemento raíz. Un documento XML debe tener exactamente un elemento de nivel superior:
<item>A</item>
<item>B</item>
Envuelve los elementos hermanos en un único padre:
<items>
<item>A</item>
<item>B</item>
</items>
Etiquetas que no coinciden o mal anidadas. Las etiquetas deben cerrarse en orden inverso y los nombres distinguen entre mayúsculas y minúsculas, así que <Name>…</name> es un error, igual que <b><i>text</b></i>.
Caracteres especiales sin escapar. Un < o un & sueltos dentro del texto rompen el análisis. Usa las entidades predefinidas:
| Carácter | Entidad | Cuándo es obligatoria |
|---|---|---|
< | < | Siempre en el texto y en los valores de atributo |
& | & | Siempre en el texto y en los valores de atributo |
> | > | Recomendada; obligatoria en la secuencia ]]> |
" | " | Dentro de valores de atributo entre comillas dobles |
' | ' | Dentro de valores de atributo entre comillas simples |
Por ejemplo, una URL en un sitemap debe escribirse como <loc>https://example.com/?a=1&b=2</loc>. Otra opción es envolver los bloques grandes de texto en una sección <![CDATA[ … ]]>, donde los caracteres de marcado no se interpretan.
Atributos sin comillas. A diferencia de HTML, XML exige comillas alrededor de cada valor de atributo: <user id="42">, no <user id=42>.
Contenido antes de la declaración XML. Si existe, <?xml version="1.0" encoding="UTF-8"?> debe ser lo primero del archivo. Basta un solo espacio o una línea en blanco delante para que el documento esté mal formado.
Consejos y buenas prácticas
- Declara la codificación y guarda los archivos en UTF-8 para evitar problemas con los caracteres acentuados.
- Ten cuidado al formatear documentos en los que los espacios en blanco importan, como el contenido mixto o los elementos que usan
xml:space="preserve"; añadir saltos de línea puede cambiar el valor del texto. - Usa los espacios de nombres de forma coherente: un prefijo como
soap:debe declararse con un atributoxmlns:soapen el elemento o en un ancestro. - ¿Necesitas incrustar XML en una URL o en una cadena JSON? Codifícalo primero con el codificador de URL o el codificador Base64.
Preguntas frecuentes
¿HTML es lo mismo que XML?
No. HTML es más permisivo: admite elementos sin cerrar como <br>, atributos sin comillas y nombres de etiqueta que no distinguen mayúsculas de minúsculas. XHTML es la variante de HTML que sigue las reglas de XML. Para ordenar páginas web normales, usa mejor el formateador de HTML.
¿Formatear cambia mis datos?
Formatear añade espacios en blanco entre los elementos, y minificar los elimina. Los nombres de los elementos, los atributos y el contenido de texto no cambian, pero en documentos en los que los espacios dentro del texto son significativos, la sangría añadida puede importar.
¿Esta herramienta valida con un esquema XSD?
No. Comprueba que el documento esté bien formado. La validación con una DTD o un XSD requiere el esquema y un analizador con validación.
¿Por qué falla mi XML con un ampersand?
En XML, & siempre inicia una referencia a entidad. Un ampersand suelto, habitual en URL y nombres de empresas, debe escribirse como & o colocarse dentro de una sección CDATA.
Actualizado