Paritian

Programación

Conversor de XML a JSON

Convierta un documento XML, un feed RSS, una ruta GPX o cualquier archivo XML a JSON, con atributos, elementos repetidos y texto tratados de la forma habitual.

Resultados

JSON { "library": { "@name": "City", "book": [ { "@id": "1", "@available": "true", "title": "Dom Casmurro", "year": "1899" }, { "@id": "2", "@available": "false", "title": "Os Maias", "year": "1888" } ], "link": "https://example.org" } }
Elementos leídos 8
Atributos 5
Profundidad 3

Qué hace esta herramienta

XML y JSON describen el mismo tipo de árbol, pero XML tiene cosas que JSON no tiene, así que todo conversor debe elegir una convención. Este usa la más común: los atributos pasan a ser claves que empiezan por @, los elementos repetidos con el mismo nombre forman una lista, un elemento que solo contiene texto pasa a ser ese texto, y el texto junto a elementos hijos va a #text. Por defecto todos los valores quedan como texto, la única opción sin pérdidas, porque XML no sabe decir si 007 es un número; cambie a valores con tipo si quiere números y true/false como valores JSON. Los comentarios y la declaración <?xml?> se descartan, y los prefijos de espacio de nombres se conservan como parte de los nombres.

Fórmula

atributo → "@nombre" ; texto junto a hijos → "#text" ; hijos con el mismo nombre → lista ; elemento vacío → null

Variables

SímboloSignificadoUnidad
textXML—
typesValores—
indentEspacios de sangría—
OUTJSON—
ELElementos leídos—
ATAtributos—
DPProfundidad—

Ejemplo resuelto

  • XML<?xml version="1.0" encoding="UTF-8"?> <library name="City"> <book id="1" available="true"> <title>Dom Casmurro</title> <year>1899</year> </book> <book id="2" available="false"> <title>Os Maias</title> <year>1888</year> </book> <link>https://example.org</link> </library>
  • Valores0
  • Espacios de sangría2
  • JSON{ "library": { "@name": "City", "book": [ { "@id": "1", "@available": "true", "title": "Dom Casmurro", "year": "1899" }, { "@id": "2", "@available": "false", "title": "Os Maias", "year": "1888" } ], "link": "https://example.org" } }
  • Elementos leídos8
  • Atributos5
  • Profundidad3

Limitaciones

  • El cálculo se realiza íntegramente en su navegador. Los valores introducidos nunca se envían a un servidor.