UltKit

Pretvornik XML v JSON

Prenesite podatke iz odgovora SOAP, vira RSS, konfiguracijske datoteke ali izvoza iz starejšega sistema v JSON, ki ga vaš JavaScript, Python ali orodje brez kode bere neposredno, ne da bi morali sami pisati razčlenjevalnik.

Pretvornik podatkov

ali spustite datoteke CSV, TSV, TXT … sem ·

Največ 95 MB na datoteko· Do 20 datotek· Izbrisano po 30 minutah

Izhod

Datoteke se obdelajo na naših strežnikih in izbrišejo po 30 minutah.

Kako uporabljati to orodje

  1. 1

    Naložite XML

    Datoteke .xml spustite na območje za nalaganje, do 20 na serijo in vsaka do 95 MB. Vsaka datoteka se pretvori posebej.

  2. 2

    Izberite berljivo ali strnjeno obliko

    Možnost Pregledna oblika je vklopljena, zato je JSON zamaknjen za lažje branje in pregled kode. Izklopite jo v razdelku Napredne nastavitve, če želite najmanjši izpis v eni vrstici za podatke API-ja.

  3. 3

    Pretvorite in uporabite JSON

    Pritisnite Pretvori v JSON, prenesite datoteko .json in jo naložite v svojo kodo ali orodje.

Naložite XML in pritisnite Pretvori v JSON: elementi postanejo ključi, ponovljeni elementi tabele, atributi pa ostanejo kot ključi s predpono @, tako da se informacije v oznakah ne izgubijo.

Kdo potrebuje pretvornik XML v JSON

XML 1.0 je februarja 1998 postal priporočilo W3C in naslednje desetletje je bil način, kako so se sistemi pogovarjali: spletne storitve SOAP, viri RSS in Atom, dokumenti Office, bančna sporočila, katalogi izdelkov. Mnogi od teh sistemov še delujejo. JSON, opredeljen v RFC 8259, je prevzel nove spletne API-je, ker ga JavaScript bere brez knjižnice za razčlenjevanje in ker se neposredno preslika v sezname in slovarje v skoraj vsakem jeziku.

Pretvarjajo torej običajno tisti, ki povezujejo obe obdobji. Razvijalec vmesnika prejme odgovor SOAP od ponudnika plačil ali dostave in želi navaden objekt. Graditelj avtomatizacij v Zapierju ali Make potegne dobaviteljev vir XML v tok, ki najbolje deluje z JSON. Podatkovni inženir seli konfiguracijske datoteke iz stare aplikacije Java ali pa študent potrebuje vir RSS kot JSON za šolski projekt. Vsak želi enako strukturo brez ostrih oklepajev.

Pretvorba XML v JSON: kako se preslikajo oznake, atributi in besedilo

Vhod XML: naročilo z atributom, eno stranko in dvema postavkama
<order id="A-77">
  <customer>Lena Kos</customer>
  <total currency="EUR">59.90</total>
  <item sku="0042">Namizna svetilka</item>
  <item sku="0108">Žarnica LED</item>
</order>
Kako se posamezni deli zgornjega naročila prikažejo v JSON
Konstrukt XMLPrimerRezultat v JSON
Korenski element<order>Ključ najvišje ravni order
Atributid="A-77""@id": "A-77"
Element samo z besedilom<customer>"customer": "Lena Ortiz"
Besedilo in atribut<total currency="EUR"> (atribut){"@currency": "EUR", "#text": "59.90"}
Ponovljeni elementdve oznaki <item>tabela "item": [ … , … ]
Komentar<!-- note -->Izpuščen; JSON nima komentarjev

XML

Extensible Markup Language

XML je označevalni jezik za strukturirane podatke, ki ga je W3C objavil leta 1998. Uporablja gnezdene oznake z atributi ter podpira sheme, imenske prostore in preverjanje veljavnosti, zato je zanesljiv za zapletene dokumente. Je osnova virov RSS, SVG, dokumentov Office, zemljevidov spletnih mest in številnih podjetniških in državnih izmenjav podatkov. XML je v primerjavi z JSON zgovoren, vendar ga bere vsak programski jezik in številna orodja za preglednice.

Stiskanje
–
Prosojnost
–
Animacija
–
Uvedeno
1998 · W3C
Pretvornik XML

JSON

JavaScript Object Notation

JSON je lahek besedilni format za strukturirane podatke, ki ga je v zgodnjih letih 2000 populariziral Douglas Crockford, standardizirana pa sta ga RFC 8259 in ECMA-404. Objekte, tabele, nize, števila, logične vrednosti in null predstavlja s preprosto, berljivo sintakso. Je privzeti format za spletne API-je, konfiguracijske datoteke in izmenjavo podatkov med aplikacijami v skoraj vseh programskih jezikih. Nima vgrajenih komentarjev, datumov ali shem, velikih gnezdenih datotek pa brez pregledovalnika ni lahko brati.

Stiskanje
–
Prosojnost
–
Animacija
–
Uvedeno
2001 · Douglas Crockford
Pretvornik JSON

XML v JSON pretvorite, ko morajo podatki iz starejšega ali podjetniškega sistema do spletne aplikacije, skripte ali orodja za avtomatizacijo: JSON se v JavaScriptu razčleni izvorno in se neposredno preslika v slovarje v Pythonu.

Lastnosti XML, za katere v JSON ni prostora

Oba formata opisujeta drevesa, vendar XML nosi dodatke, ki jih JSON nikoli ni imel. Imenski prostori, ki jih je W3C opredelil leta 1999, omogočajo, da en dokument meša besedišča, kot sta soap: in xsi:; v JSON preživijo le kot del imen ključev. Komentarji in procesni ukazi nimajo kam in se izpustijo. Mešana vsebina, torej besedilo, prepleteno z oznakami otrok, kot v odstavku XHTML s krepko besedo, je veljaven XML, a je v JSON okorna, zato je dokumentni XML bolje pretvoriti v HTML ali Markdown kot v JSON.

Najbolj subtilen je vrstni red. XML ohranja zaporedje sorodnih elementov in shema se lahko nanj zanaša; ključi objekta JSON so po standardu neurejeni. Ponovljeni elementi ohranijo vrstni red znotraj tabele, kar pokrije večino resničnih podatkov. Če je XML raven seznam zapisov, ki naj konča v preglednici in ne v kodi, vam XML v Excel neposredno da vrstice in stolpce, XML v CSV pa ustvari datoteko za uvoz v zbirko podatkov.

Vprašanja o pretvorniku XML v JSON

Zakaj je isti element v eni datoteki polje, v drugi pa objekt?

Pretvornik vidi le tisto, kar je v dokumentu. Če ima naročilo tri oznake item, postanejo postavke tabela; če ima eno, se ni kaj ponavljati, zato nastane en sam objekt. Koda, ki bere JSON, naj sprejme obe obliki ali pa naj posamezen objekt pred zanko ovije v tabelo.

Kako so atributi XML zapisani v JSON?

Vsak atribut postane ključ s znakom @ pred imenom, zato currency="EUR" postane "@currency": "EUR". Če ima element atribute in besedilo, gre besedilo v ključ #text ob njih. Ta dogovor prepreči trke med atributi in podrejenimi elementi z enakim imenom.

Ali se števila iz XML pretvorijo v števila JSON?

XML nima lastnih podatkovnih tipov; 42 in "42" sta v oznaki videti enako. Vrednosti zato dobite kot nize, kar varuje poštne številke in oznake, kot je 007. Polja, ki jih koda potrebuje kot števila, po razčlenitvi pretvorite sami.

Kaj se zgodi s predponami imenskih prostorov, kot je soap:Envelope?

Predpona ostane del imena ključa, zato ovojnica nastopa kot soap:Envelope, deklaracija imenskega prostora pa kot ključ @xmlns:soap. Tako ostanejo elementi iz različnih besedišč ločeni; če delate le z enim, predpone odstranite v svoji kodi.

Ali lahko JSON pozneje pretvorim nazaj v XML?

Da, z orodjem JSON v XML. Po istem dogovoru @ in #text se atributi vrnejo kot atributi. Komentarji in prvotni zamiki se ne vrnejo, ker jih JSON nikoli ni vseboval.