XML į JSON konverteris
Savo naršyklėje akimirksniu konvertuokite XML duomenis arba failus į JSON formatą. Palaiko pasirinktinį įtrauką ir tvarko įdėtas struktūras.
Pasirinkite XML failą
arba vilkite ir numeskite čia
Savo naršyklėje akimirksniu konvertuokite XML duomenis arba failus į JSON formatą. Palaiko pasirinktinį įtrauką ir tvarko įdėtas struktūras.
arba vilkite ir numeskite čia
XML ir JSON yra duomenų mainų formatai, tačiau kilę iš skirtingų žiniatinklio epochų. XML, standartizuotas 1998 m., buvo sukurtas kaip save apibūdinantis žymėjimo formatas su atributais, vardų erdvėmis ir schemos patvirtinimu. JSON pasirodė 2000-ųjų pradžioje kaip lengvesnis formatas, geriau tinkantis JavaScript vykdymo laikui ir šiuolaikinėms API. Dauguma naujų žiniatinklio API kalba JSON; daugelis senesnių sistemų – SOAP paslaugos, RSS informacijos santraukos, konfigūracijos failai, įmonių integracijos – vis dar gamina XML. Konvertavimas tarp jų yra viena iš labiausiai paplitusių šiuolaikinės plėtros užduočių.
Konvertavimas nėra visiškai be nuostolių, nes abu formatai turi skirtingą išraiškos galią. XML turi atributų (kurių JSON savaime neturi), išskiria teksto turinį ir elementų pavadinimus ir palaiko mišrų turinį (elementus, kuriuose yra ir teksto, ir antrinių elementų). Paprastas JSON objekto / masyvo modelis negali tiesiogiai atstovauti šių funkcijų, todėl keitikliai taiko susitarimus: atributai tampa raktais su priešdėliu @, teksto turinys tampa #teksto raktu ir pan.
Šis keitiklis analizuoja XML naudodamas naršyklėje integruotą DOMParser ir eina gautu DOM medžiu, kad sukurtų JSON. Elementai su tuo pačiu žymos pavadinimu kaip ir broliai surenkami į masyvus; atributai patenka į specialius raktus; vardų erdvės ir apdorojimo instrukcijos išsaugomos, kai yra. Rezultatas yra žmogaus skaitomas JSON, kuris pagrįstai grįžta atgal į XML.
Dauguma šiuolaikinių programos kodų yra patogesni naudojant JSON. „JavaScript“ savaime analizuoja JSON, Python json modulis yra standartinėje bibliotekoje, o praktiškai visos kitos kalbos turi lygiavertį pirmos klasės JSON palaikymą. XML apdorojimui reikia importuoti papildomas bibliotekas ir parašyti daugiau šablonų. Įeinančio XML konvertavimas į JSON prieš apdorojimą dažnai yra greičiausias kelias iš išorinio XML sklaidos kanalo į vidinę duomenų struktūrą.
Įrankiai taip pat remiasi JSON. JSON gražintuvų, tikrintuvų, schemų tikrintuvų, užklausų kalbų (jq, JSONPath) ir peržiūros priemonių yra daug; XML atitikmenų yra mažiau ir dažnai senesni. Darbas JSON atveria turtingesnę įrankių ekosistemą.
Įklijuokite XML, gaukite JSON.
DOMParser sukuria XML DOM, identišką tam, kurį naršyklė naudoja XHTML puslapiams. Konverteris eina šį DOM rekursyviai. Kiekvienam elementui sukuriamas JSON objektas: atributai tampa raktais su priešdėliu @ (pvz., @id, @class); elemento antriniai elementai pakartojami į tą pačią struktūrą; tekstinis turinys, kai pateikiamas kartu su vaikais, gyvena po #teksto klavišu.
Pasikartojantys antriniai elementai su tuo pačiu žymos pavadinimu renkami į JSON masyvą. Vienas duoto vardo antrinis asmuo pasirodo kaip objekto reikšmė; keli vaikai pasirodo kaip objektų masyvas. Šis susitarimas gerai veikia praktikoje, tačiau reiškia, kad JSON forma priklauso nuo to, ar elementai pasirodo vieną ar kelis kartus – žinomas XML ir JSON atvaizdavimo trūkumas.
Vardų erdvės išsaugomos kaip elementų pavadinimų dalis (priešdėlis:localName). Apdorojimo instrukcijos ir CDATA skyriai konvertuojami į tekstinį turinį. XML deklaracijos ir DOCTYPE pašalinami iš JSON išvesties, bet neturi įtakos duomenims.