Converti JSON in XML Online
Converti JSON in XML valido nel tuo browser. Perfetto per integrare API REST con servizi SOAP, risorse Android e configurazioni basate su XML.
<?xml version="1.0" encoding="UTF-8"?>
<root>
<users>
<user id="1">
<name>John</name>
<age>30</age>
</user>
<user id="2">
<name>Maria</name>
<age>25</age>
</user>
</users>
</root>Principali casi d'uso
JSON in XML: integra le API moderne con i sistemi legacy
REST verso SOAP
Integra le risposte delle API REST moderne con i servizi web SOAP enterprise che richiedono XML.
Risorse Android
Genera strings.xml, arrays.xml e configurazioni di layout XML dai dati JSON della tua API.
100% privato
Il tuo JSON viene convertito nel tuo browser. I dati della tua API non lasciano mai il tuo dispositivo.
XML ben formato
Genera XML valido secondo W3C XML 1.0 con dichiarazione di codifica, escape corretto e struttura annidata.
Come funziona
Tre passaggi, senza complicazioni
Incolla il tuo JSON
Incolla il JSON dalla tua API REST, dalla risposta di un servizio web o da qualsiasi oggetto JSON che devi rappresentare in XML.
Conversione istantanea
Il convertitore genera XML ben formato secondo lo standard W3C XML 1.0, con indentazione leggibile.
Copia il risultato XML
Copia il XML per usarlo nella tua integrazione SOAP, nel file di risorse Android, nel file di configurazione o in qualsiasi sistema basato su XML.
FAQ
Hai delle domande?
Gli array JSON non hanno un equivalente diretto in XML, perche XML non ha il concetto di array come tipo nativo, solo elementi e attributi. La convenzione piu usata consiste nel ripetere l'elemento contenitore per ogni elemento dell'array. Ad esempio, i valori a, b, c sotto la chiave item generano tre elementi XML item con quei valori. Per gli array di oggetti, ogni oggetto diventa un elemento figlio con le sue proprieta come elementi annidati o attributi. Questa convenzione e adottata da xml2js (Node.js), JAXB (Java) e dalla maggior parte dei framework di serializzazione XML.
Si, usando la convenzione del prefisso @. Nella convenzione BadgerFish (documentata su badgerfish.de e ampiamente adottata), le chiavi JSON che iniziano con @ diventano attributi XML dell'elemento padre. Ad esempio, un oggetto con @id uguale a 123 e #text uguale a contenuto genera un elemento XML con l'attributo id e quel testo. Questa convenzione e usata da xml2js con l'opzione mergeAttrs, da Jackson XML (Java) con @JacksonXmlProperty e da System.Xml.Serialization in .NET con [XmlAttribute].
I namespace XML (definiti nella specifica W3C XML Namespaces, gennaio 1999) consentono di mescolare vocabolari XML senza conflitti di nomi. Nella conversione da JSON a XML, i namespace possono essere rappresentati come attributi xmlns sull'elemento radice o su singoli elementi. Ad esempio, per generare XML SOAP con un namespace specifico, aggiungi la chiave @xmlns:soap all'oggetto radice. La specifica esatta dipende dal sistema di destinazione, come SOAP, KML, GPX, RSS 2.0 o Atom, e richiede di adattare lo schema di conversione al vocabolario XML corrispondente.
I caratteri speciali nei valori testuali JSON vengono automaticamente sottoposti a escape secondo le regole XML: il simbolo minore diventa <, il maggiore >, la e commerciale &, le virgolette doppie " e l'apostrofo '. Per il contenuto che contiene grandi blocchi di testo con molti caratteri speciali, come HTML incorporato o codice SQL, una sezione CDATA e piu appropriata. I parser XML trattano il contenuto CDATA come testo letterale senza elaborare le entita di escape.
Il XML generato include la dichiarazione XML version 1.0 encoding UTF-8 in cima. UTF-8 e la codifica raccomandata dal W3C per i documenti XML (XML 1.0 quinta edizione, sezione 4.3.3). UTF-8 e compatibile con ASCII per i caratteri di base e puo rappresentare qualsiasi carattere Unicode, garantendo la compatibilita con testo in qualsiasi lingua. I sistemi SOAP e la maggior parte dei servizi web si aspettano UTF-8 per impostazione predefinita.
Si. RSS 2.0 (specifica di Dave Winer, 2002) e le sitemap XML (protocollo Sitemaps definito su sitemaps.org, adottato da Google nel 2005) sono vocabolari XML con struttura predefinita. Per generare RSS da JSON, devi mappare la tua struttura JSON agli elementi RSS 2.0 richiesti: l'elemento channel con title, link, description e gli elementi item con title, link, pubDate, guid. Per le sitemap, lo schema e piu semplice: elemento radice urlset con xmlns e gli elementi url con loc, lastmod, changefreq, priority. Il convertitore genera XML valido; la mappatura dei campi JSON in XML e responsabilita dello sviluppatore.
Convertire JSON in XML: integrazione REST-SOAP, risorse Android e generazione di feed
XML (Extensible Markup Language) fu definito dal W3C nella raccomandazione XML 1.0 (pubblicata il 10 febbraio 1998, attualmente nella quinta edizione del novembre 2008) come metalinguaggio per la definizione di vocabolari di markup strutturati. Per tutti gli anni 2000, XML fu il formato universale di scambio dati: SOAP (Simple Object Access Protocol, specifica W3C 2003) usava XML come formato dei messaggi per i servizi web enterprise; RSS 2.0 (pubblicato da Dave Winer nel 2002) e Atom 1.0 (RFC 4287, dicembre 2005) distribuivano feed di contenuti in XML; Android (lanciato da Google nel 2008) usava XML per layout, stringhe e manifest delle applicazioni; e SVG (Scalable Vector Graphics, W3C 1.1 del 2003) e XML. La necessita di convertire JSON in XML si presenta in tre scenari principali: integrazione di API REST moderne con sistemi SOAP o EDI (Electronic Data Interchange) enterprise; generazione di risorse XML per Android (strings.xml, arrays.xml, configurazioni delle preferenze) da dati JSON del backend; e creazione di feed RSS, sitemap o documenti KML/GPX da dati archiviati in JSON o restituiti da API REST.
La conversione da JSON a XML richiede di risolvere differenze fondamentali tra i due modelli di dati. JSON e un albero di valori: oggetti (coppie chiave-valore), array, stringhe, numeri, booleani e null. XML e un albero di nodi: elementi (che possono avere simultaneamente sia attributi che contenuto figlio/testuale), testo, commenti, istruzioni di elaborazione e sezioni CDATA. Le convenzioni di conversione piu adottate sono: la convenzione BadgerFish (documentata su badgerfish.de), dove le chiavi con prefisso @ diventano attributi XML e la chiave speciale #text diventa il contenuto testuale dell'elemento; e la convenzione Parker (piu semplice, senza attributi, tutti i valori come elementi figlio). Per l'integrazione SOAP, il XML deve essere conforme al WSDL (Web Services Description Language, W3C 2001) del servizio, il che richiede la mappatura esplicita dei campi JSON ai tipi definiti nello schema XSD. Per le risorse Android, gli elementi string, string-array e plurals in strings.xml hanno convenzioni specifiche che devono essere rispettate affinche il compilatore aapt2 li elabori correttamente.
Per la produzione su larga scala, gli strumenti piu usati per la conversione da JSON a XML sono: in Node.js, xml2js (oltre 25 milioni di download mensili su npm) e xmlbuilder2; in Java, Jackson con il modulo jackson-dataformat-xml e la specifica JAXB (Jakarta XML Binding, parte di Jakarta EE); in Python, la libreria xmltodict combinata con xml.etree della libreria standard; in .NET, System.Xml.Serialization e il convertitore integrato JsonConvert.SerializeXmlNode di Newtonsoft.Json. Per la generazione di sitemap da dati JSON, la specifica del protocollo Sitemaps (sitemaps.org, adottata da Google, Bing e Yahoo nel 2006) definisce uno schema XML rigoroso: l'elemento radice urlset deve includere l'attributo xmlns con il namespace corretto. La validazione del XML generato rispetto allo schema XSD del sistema di destinazione e il passaggio fondamentale nelle integrazioni enterprise: strumenti come xmllint (parte di libxml2) o il validatore online del W3C consentono di verificare la conformita prima del deployment.