JSON till XML
Konvertera JSON till motsvarande XML, med attribut och matriser hanterade på ett förnuftigt sätt.
- Körs i din webbläsare — ingenting du skriver in laddas upp
- Ingen registrering, inga kvoter, gratis att använda så ofta du vill
Så fungerar det
JSON och XML kan uttrycka det mesta av samma saker, men inte på samma sätt, så varje konvertering innebär några beslut. Den här fattar de vanliga besluten och talar om vilka de var.
Matriser blir upprepade element
XML har ingen listtyp. Standardkonventionen är att upprepa elementet en gång per post, så en matris med tre böcker blir tre <book>-element sida vid sida. Det är vad nästan alla XML-konsumenter förväntar sig och vad den här skapar.
Attribut
XML skiljer mellan attribut och underordnade element; JSON har ingen motsvarighet. Den vanliga konventionen är att sätta @ framför en nyckel för att visa att den ska bli ett attribut, och den följs här — den kan stängas av om dina nycklar verkligen börjar med @.
Namn görs giltiga
XML-elementnamn kan inte innehålla blanksteg eller de flesta skiljetecken och kan inte börja med en siffra. Nycklar som skulle bryta mot de reglerna får sina ogiltiga tecken ersatta med understreck och, vid behov, ett inledande understreck. Utan det skulle utdata inte gå att tolka.
Null-värden
Ett null blir ett tomt element markerat med xsi:nil, vilket är det vedertagna sättet att säga avsiktligt tomt snarare än saknat. Om din konsument inte förstår xsi:nil läses ett tomt element oftast på samma sätt.
Tur och retur är inte exakt
JSON skiljer talet 42 från strängen "42", och XML gör det inte — allt i XML är text om inte ett schema säger något annat. Att konvertera tillbaka återställer inte pålitligt de ursprungliga typerna.
JSON till XML — frågor
Hur hanteras matriser?
Som upprepade element, vilket är standardkonventionen i XML eftersom XML saknar listtyp.
Kan jag skapa attribut?
Ja. Sätt @ framför en nyckel så blir den ett attribut, vilket kan stängas av.
Vad händer med nycklar med blanksteg?
Ogiltiga tecken blir understreck, eftersom XML-namn inte kan innehålla dem. Utan det skulle utdata inte gå att tolka.
Kan jag konvertera tillbaka till JSON?
Ja, med verktyget XML till JSON, men typer bevaras inte — XML har inget begrepp om skillnaden mellan ett tal och en sträng.
Laddas mina data upp?
Nej. Det konverteras i din webbläsare.