Formateador y validador de XML
Indenta, valida y minifica XML, consulta el documento con XPath y conviértelo a JSON sin salir del navegador.
XML bien formado
<?xml version="1.0" encoding="UTF-8"?>
<catalog xmlns:dc="http://purl.org/dc/elements/1.1/">
<book id="bk101" lang="es">
<dc:title>Guía de XML & XPath</dc:title>
<author>Ada Lovelace</author>
<price currency="EUR">29.95</price>
<tags>
<tag>xml</tag>
<tag>datos</tag>
</tags>
<!-- edición revisada -->
</book>
<book id="bk102" lang="en">
<dc:title>Clean Feeds</dc:title>
<author>Alan Turing</author>
<price currency="USD">19.5</price>
<summary><![CDATA[Uses <rss> & <atom>]]></summary>
</book>
</catalog>
Qué comprueba y límites
- Comprueba que el XML esté bien formado (cierres, raíz única, comillas, atributos repetidos, entidades y comentarios). No valida contra un DTD o XSD.
- El contenido mixto (texto y etiquetas juntas), el CDATA y los elementos con xml:space="preserve" se dejan tal cual para no alterar los datos. Los elementos que solo contienen espacios se vacían.
- El tester usa el motor XPath 1.0 de tu navegador.
- Todo ocurre en tu navegador: el XML no se envía a ningún servidor.
Hecho por
Miguel Ángel Colorado Marin (MACM)
Hecho por
Miguel Ángel Colorado Marin (MACM)
Full-Stack Developer · Guadalajara, España
Desarrollo aplicaciones web, herramientas digitales y proyectos completos — desde el diseño hasta el despliegue.
XML sigue en todas partes: feeds RSS, sitemaps, SVG, facturas electrónicas, configuraciones de Android y .NET o respuestas SOAP. Cuando llega en una sola línea o con un error, localizarlo a ojo es imposible. Este formateador analiza el documento con un parser propio que comprueba que esté bien formado e indica la línea y la columna exactas de cada fallo con una explicación. Al indentar respeta lo que en XML sí importa: el contenido mixto, los bloques CDATA y los elementos marcados con xml:space="preserve" se dejan intactos. Además puedes minificarlo, probar expresiones XPath sobre el propio documento y convertirlo a JSON.
Características
- ✓Validación de XML bien formado con mensaje claro, línea y columna del error
- ✓Formateo con 2, 4 espacios o tabulador, atributos en líneas y ancho configurable
- ✓Contenido mixto, CDATA y xml:space="preserve" intactos para no alterar datos
- ✓Elementos vacíos como <a/> o <a></a>, orden de atributos, comillas dobles y quitar comentarios
- ✓Minificado que conserva el árbol de datos y muestra el ahorro en bytes
- ✓Tester de XPath 1.0 con prefijos de namespace del propio documento
- ✓Conversión de XML a JSON con prefijo de atributos, clave de texto y arrays configurables
- ✓Entidades del DTD interno reconocidas y soporte para SVG, RSS, Atom, sitemaps y plist
¿Cómo formatear y validar un XML?
- 1
Pega o abre el XML
Pega el documento o abre un .xml, .svg, .rss o similar. Verás al instante si está bien formado.
- 2
Elige la acción
Formatear, minificar, convertir a JSON o probar una expresión XPath.
- 3
Ajusta las opciones
Indentación, atributos, elementos vacíos, comentarios o convención de JSON.
- 4
Copia o descarga
Copia el resultado o descárgalo como archivo.
Preguntas frecuentes
¿Qué significa que un XML esté bien formado?
Que cumple la sintaxis de XML: un único elemento raíz, todas las etiquetas cerradas y bien anidadas, atributos entre comillas y sin repetir, y los caracteres & y < escapados. Es distinto de ser válido, que exige cumplir un esquema DTD o XSD concreto.
¿Por qué falla en XML?
XML solo define cinco entidades: &, <, >, " y '. es de HTML. Usa la referencia numérica   o declara la entidad en el DTD del documento.
¿Por qué no se indenta el contenido de algunas etiquetas?
Si una etiqueta mezcla texto y elementos, añadir saltos de línea cambiaría los datos. Lo mismo ocurre con CDATA y con xml:space="preserve". El formateador los deja exactamente como estaban.
¿Cómo uso XPath con namespaces?
Los prefijos declarados en el documento, como xmlns:dc, se pueden usar directamente: //dc:title. Para elementos del namespace por defecto usa el prefijo d: (//d:item) o local-name(): //*[local-name()='item'].
¿Cómo se convierte XML a JSON?
Cada elemento se convierte en una clave. Los atributos llevan un prefijo (por defecto @), el texto junto a atributos o hijos va en #text y los hijos repetidos se agrupan en arrays. Puedes cambiar el prefijo, la clave de texto o forzar arrays siempre.
¿Se sube mi XML?
No. El análisis, el formateo, XPath y la conversión se ejecutan en tu navegador.
Herramientas relacionadas
Incrusta Formateador y Validador XML en tu web
Integra Formateador y Validador XML en cualquier página web con un simple iframe. Gratis, con atribución a miguelacm.es.
<iframe
src="https://miguelacm.es/embed/xml-formatter"
width="100%"
height="700"
frameborder="0"
title="Formateador y Validador XML — miguelacm.es"
></iframe>Ver embed en nueva pestaña →