UltKit

Convertitore da XML a JSON

Trasferire i dati di una risposta SOAP, di un feed RSS, di un file di configurazione o di un export da un sistema legacy nel JSON che JavaScript, Python o uno strumento no-code leggono nativamente, senza scrivere un parser a mano.

Convertitore di dati

oppure trascina qui File CSV, TSV, TXT … ·

Max 95 MB per file· Fino a 20 file· Eliminati dopo 30 minuti

Output

I file vengono elaborati sui nostri server ed eliminati dopo 30 minuti.

Come usare questo strumento

  1. 1

    Caricare il file XML

    Trascina i file .xml nell'area di caricamento, fino a 20 per lotto e 95 MB ciascuno. Ogni file viene convertito separatamente.

  2. 2

    Scegliere tra leggibile e compatto

    Formattazione leggibile è attiva: indenta il JSON per facilitarne la lettura e la revisione del codice. Disattivala in Impostazioni avanzate per ottenere l'output più compatto, su una sola riga, adatto al payload di un'API.

  3. 3

    Convertire e usare il JSON

    Premi Converti in JSON, scarica il file .json e caricalo nel tuo codice o nel tuo strumento.

Carica l'XML e premi Converti in JSON: gli elementi diventano chiavi, quelli ripetuti diventano array e gli attributi restano come chiavi con prefisso @, così nei tag non si perde nessuna informazione.

A chi serve un convertitore da XML a JSON

L'XML 1.0 è diventato una Raccomandazione W3C nel febbraio 1998 e per il decennio successivo è stato il linguaggio con cui comunicavano i sistemi: servizi web SOAP, feed RSS e Atom, documenti Office, messaggi bancari, cataloghi prodotti. Molti di questi sistemi sono ancora in funzione. Il JSON, specificato nella RFC 8259, ha conquistato le nuove API web perché JavaScript lo legge senza librerie di parsing e perché corrisponde direttamente a liste e dizionari in quasi tutti i linguaggi.

Chi converte, di solito, fa da ponte tra le due epoche. Uno sviluppatore front-end riceve la risposta SOAP di un fornitore di pagamenti o spedizioni e vuole un semplice oggetto. Chi crea automazioni in Zapier o Make porta il feed XML di un fornitore in un flusso che funziona meglio con il JSON. Un data engineer migra i file di configurazione di una vecchia applicazione Java, oppure uno studente ha bisogno di un feed RSS in JSON per un progetto. Tutti vogliono la stessa struttura, senza le parentesi angolari.

Convertire XML in JSON: come vengono mappati tag, attributi e testo

Input XML: un ordine con un attributo, un cliente e due articoli
<order id="A-77">
  <customer>Lena Ortiz</customer>
  <total currency="EUR">59.90</total>
  <item sku="0042">Lampada da scrivania</item>
  <item sku="0108">Lampadina LED</item>
</order>
Come appare nel JSON ogni parte dell'ordine qui sopra
Costrutto XMLEsempioRisultato JSON
Elemento radice<order>Chiave di primo livello order
Attributoid="A-77""@id": "A-77"
Elemento con solo testo<customer>"customer": "Lena Ortiz"
Testo più attributo<total currency="EUR"> con testo{"@currency": "EUR", "#text": "59.90"}
Elemento ripetutodue tag <item>array "item": [ … , … ]
Commento<!-- note -->Scartato; il JSON non ha commenti

XML

Extensible Markup Language

XML è un linguaggio di markup per dati strutturati pubblicato dal W3C nel 1998. Usa tag annidati con attributi e supporta schemi, namespace e validazione, il che lo rende solido per documenti complessi. Sta alla base di feed RSS, SVG, documenti Office, sitemap e di molti scambi di dati aziendali e istituzionali. L'XML è prolisso rispetto a JSON, ma ogni linguaggio di programmazione e molti strumenti per fogli di calcolo sono in grado di leggerlo.

Compressione
–
Trasparenza
–
Animazione
–
Introdotto
1998 · W3C
Convertitore XML

JSON

JavaScript Object Notation

JSON è un formato di testo leggero per dati strutturati, reso popolare da Douglas Crockford all'inizio degli anni 2000 e standardizzato come RFC 8259 ed ECMA-404. Rappresenta oggetti, array, stringhe, numeri, booleani e null con una sintassi semplice e leggibile. È il formato predefinito per le API web, i file di configurazione e lo scambio di dati tra app in quasi tutti i linguaggi di programmazione. Non prevede commenti, date o schemi integrati e i file annidati di grandi dimensioni sono difficili da leggere senza un visualizzatore.

Compressione
–
Trasparenza
–
Animazione
–
Introdotto
2001 · Douglas Crockford
Convertitore JSON

L'XML passa a JSON quando i dati di un sistema datato o aziendale devono arrivare a una web app, a uno script o a uno strumento di automazione: il JSON si legge in modo nativo in JavaScript e corrisponde direttamente ai dizionari di Python.

Elementi dell'XML che in JSON non trovano posto

Entrambi i formati descrivono alberi, ma l'XML include elementi extra che il JSON non ha mai avuto. I namespace, definiti dal W3C nel 1999, permettono a un documento di mescolare vocabolari come soap: e xsi:; nel JSON sopravvivono solo come parte dei nomi delle chiavi. Commenti e istruzioni di elaborazione non hanno una collocazione e vengono scartati. Il contenuto misto, cioè testo alternato a tag figli come in un paragrafo XHTML con una parola in grassetto, è XML valido ma diventa scomodo in JSON, quindi l'XML in stile documento si converte meglio in HTML o Markdown che in JSON.

L'ordine è l'aspetto più sottile. L'XML mantiene in sequenza gli elementi fratelli e uno schema può dipenderne; le chiavi di un oggetto JSON, per standard, non sono ordinate. Gli elementi ripetuti mantengono l'ordine all'interno del loro array, il che copre la maggior parte dei dati reali. Se l'XML è un semplice elenco di record da portare in un foglio di calcolo e non nel codice, da XML a Excel ti dà direttamente righe e colonne, mentre da XML a CSV produce un file per l'importazione in un database.

Domande sul convertitore da XML a JSON

Perché lo stesso elemento è un array in un file e un oggetto in un altro?

Il convertitore vede solo ciò che c'è nel documento. Se un ordine contiene tre tag item, items diventa un array; se ne contiene uno solo, non c'è nulla da ripetere e diventa un singolo oggetto. Il codice che legge il JSON dovrebbe accettare entrambe le forme, oppure racchiudere il singolo oggetto in un array prima di scorrerlo.

Come vengono scritti gli attributi XML nel JSON?

Ogni attributo diventa una chiave con una @ davanti al nome, quindi currency="EUR" diventa "@currency": "EUR". Quando un elemento ha sia attributi sia testo, il testo finisce in una chiave #text accanto agli attributi. Questa convenzione evita collisioni tra attributi ed elementi figli con lo stesso nome.

I numeri presenti nell'XML diventano numeri JSON?

L'XML non ha tipi di dati propri: 42 e "42" in un tag sono identici. I valori risultano quindi stringhe, il che protegge CAP e ID come 007. Dopo l'analisi, converti in numeri i campi che servono al tuo codice.

Che fine fanno i prefissi di namespace come soap:Envelope?

Il prefisso resta parte del nome della chiave: l'envelope appare come soap:Envelope e la dichiarazione del namespace come chiave @xmlns:soap. In questo modo gli elementi di vocabolari diversi restano distinti; se ne usi uno solo, rimuovi i prefissi nel tuo codice.

È possibile riconvertire il JSON in XML in seguito?

Sì, con da JSON a XML. Seguendo la stessa convenzione di @ e #text, gli attributi tornano a essere attributi. I commenti e l'indentazione originale non tornano, perché il JSON non li conteneva.