tomai
Entrar
Gratis · Herramientas para desarrolladores

XML a JSON

Convierte documentos XML en JSON limpio y predecible

Entrada XML
Salida JSON

¿Qué es un conversor de XML a JSON?

XML fue el formato de datos por defecto de los años 2000 y sobrevive en fuentes RSS, APIs bancarias, servicios SOAP y archivos de configuración heredados. JavaScript, Python y Go modernos leen JSON con mucha más naturalidad. Un conversor de XML a JSON traduce un documento a objetos simples con un esquema predecible: cada elemento se vuelve un objeto, los atributos se prefijan con "@@" para que el atributo "id" nunca choque con un elemento hijo llamado "id", el contenido de texto vive bajo "@text" y los hermanos repetidos colapsan en arrays.

Qué puede hacer

  • Analizar elementos anidados en objetos JSON
  • Separar atributos (prefijo @@) de texto (@text) de hijos
  • Agrupar hermanos repetidos en arrays automáticamente
  • Manejar secciones CDATA, comentarios, declaraciones y etiquetas autocerradas
  • Reportar etiquetas mal emparejadas o sin cerrar con un error claro
  • Formatear el JSON con sangría legible

Cuándo usarlo

  • Leer feeds RSS/Atom o respuestas tipo SOAP
  • Migrar configuración XML a canalizaciones basadas en JSON
  • Inspeccionar qué devuelve realmente una API XML heredada
  • Construir fixtures JSON de prueba a partir de datos XML de referencia

Privacidad: la conversión ocurre por completo en tu navegador; nada de lo que pegues se sube jamás.

La correspondencia que utiliza este conversor

  • Los atributos XML se convierten en claves con prefijo @ (price currency="EUR"{"@currency":"EUR"}), para evitar colisiones con los elementos secundarios.
  • Un elemento que combina texto e hijos conserva su texto bajo la clave #text; un elemento que contiene únicamente texto se mapea directamente a una cadena simple.
  • Los elementos hermanos repetidos se agrupan en matrices; la declaración XML, los comentarios y las instrucciones de procesamiento se descartan.

Los atributos y los nodos de texto requieren una convención

Atributos y texto, nunca mezclados

Los atributos se vuelven claves con prefijo "@@id" y el texto vive bajo "@text", así un atributo y un elemento con el mismo nombre jamás se sobrescriben.

🔒

Las listas siguen siendo listas

Los hermanos repetidos colapsan automáticamente en un array JSON: un catálogo de cinco libros se vuelve un array de cinco objetos, no un libro sobrescrito.

🎯

Tolerante con XML real

CDATA, comentarios, DOCTYPE y etiquetas autocerradas se analizan limpiamente, mientras que XML realmente mal formado falla con un mensaje descriptivo.

Preguntas frecuentes

¿Cómo se representan los atributos?

Los atributos se vuelven claves con prefijo "@@", p. ej. <book id="5"> se convierte en {"@@id":"5"}. Esto evita la clásica colisión entre un atributo llamado "id" y un elemento hijo del mismo nombre.

¿Qué pasa con los elementos repetidos?

Los hermanos repetidos con el mismo nombre se agrupan automáticamente en un array JSON. Una única aparición sigue siendo un objeto; varias se vuelven array, y ambos casos se leen de forma intuitiva.

¿Se sube mi XML a algún lugar?

No. Todo se ejecuta en tu navegador con JavaScript puro; nada se transmite ni se almacena.

¿Dónde fue a parar mi atributo en la salida JSON?

Busque la clave con prefijo @ en el mismo objeto que su elemento. Si solo ve #text, el elemento tenía atributos Y contenido; si esperaba un atributo y no encuentra ninguno, este se encontraba en un nodo padre: expanda el árbol un nivel hacia arriba.

Herramientas relacionadas

Herramientas relacionadas