Convertir JSON a XML: raíz, atributos y arreglos

XML necesita una raíz única y representa las listas como elementos repetidos. Mapea claves con prefijo @ a atributos y #text al texto del elemento para una conversión reversible.

Elegir un elemento raíz

XML solo admite una raíz. Si el JSON tiene una única clave de nivel superior, úsala como elemento raíz; en caso contrario, envuelve todo en un elemento raíz sintético.

Atributos y texto

Las claves con prefijo @ se convierten en atributos y una clave #text se convierte en el contenido textual del elemento, siguiendo la convención estándar de XML a JSON para que la conversión sea reversible.

Los arrays se convierten en elementos repetidos

Un array JSON no se convierte en un único elemento — cada ítem se convierte en un elemento independiente con el mismo nombre de etiqueta, porque XML representa las listas por repetición.

Escapado

Escapa & y <, > en el texto (y las comillas dobles dentro de los atributos) y antepón la declaración XML para que la salida sea un documento completo.

Espacios de nombres y prefijos

Los namespaces XML aparecen como atributos xmlns o xmlns:prefijo y cualifican los nombres de elementos y atributos. En una forma cómoda para JSON, trátalos como simples claves de atributo @xmlns / @xmlns:prefijo y conserva los nombres con prefijo, como soap:Envelope, como clave — la mayoría de los convertidores mantiene el prefijo tal cual.

Autoclausurados frente a vacíos explícitos

Un valor JSON vacío puede convertirse en una etiqueta autoclausurada (<note/>) o en una pareja de etiquetas vacía (<note></note>). Ambas formas son equivalentes en XML, pero algunos parsers downstream tratan mal una de ellas — prefiere la autoclausurada para una salida compacta y la pareja explícita cuando sepas que el consumidor es estricto.

Consideraciones de ida y vuelta

Algunos detalles de XML no tienen equivalente en JSON: el orden de los atributos, los comentarios, las instrucciones de procesamiento y la diferencia entre un elemento vacío y uno ausente. Si conviertes a JSON, modificas y vuelves, espera que esos artefactos se pierdan — nunca uses XML que ha pasado por una ida y vuelta cuando importa la canonicalización para firmas.

Formatear XML, embellecer XML, validar XML

El mismo convertidor hace de formateador, embellecedor y validador de XML: pega cualquier XML, pulsa To JSON para validar que está bien formado y luego pulsa To XML para reescribirlo con una indentación consistente. Es la forma más sencilla de formatear XML sin instalar una herramienta local — útil cuando tu editor no trae un visor o un plugin de pretty-print de XML.