XML til JSON-konverterer
Konverter XML-data eller filer til JSON-format umiddelbart i nettleseren din. Støtter tilpasset innrykk og håndterer nestede strukturer.
Velg XML-fil
eller dra og slipp her
Konverter XML-data eller filer til JSON-format umiddelbart i nettleseren din. Støtter tilpasset innrykk og håndterer nestede strukturer.
eller dra og slipp her
XML og JSON er begge datautvekslingsformater, men kommer fra forskjellige tidsepoker på nettet. XML, standardisert i 1998, ble designet som et selvbeskrivende markup-format med attributter, navneområder og skjemavalidering. JSON dukket opp på begynnelsen av 2000-tallet som et lettere format som var bedre egnet til JavaScript-kjøretider og moderne APIer. De fleste nye web-API-er snakker JSON; mange eldre systemer – SOAP-tjenester, RSS-feeder, konfigurasjonsfiler, bedriftsintegrasjoner – produserer fortsatt XML. Konvertering mellom dem er en av de vanligste interop-oppgavene i moderne utvikling.
Konverteringen er ikke helt tapsfri fordi de to formatene har ulik uttrykkskraft. XML har attributter (som JSON ikke har naturlig), skiller mellom tekstinnhold og elementnavn, og støtter blandet innhold (elementer som inneholder både tekst og underordnede elementer). JSONs enkle objekt-/matrisemodell kan ikke representere disse funksjonene direkte, så omformere bruker konvensjoner: attributter blir @-prefiksnøkler, tekstinnhold blir en #tekstnøkkel, og så videre.
Denne omformeren analyserer XML ved å bruke nettleserens innebygde DOMParser og går gjennom det resulterende DOM-treet for å produsere JSON. Elementer med samme merkenavn som søsken samles inn i matriser; attributter går inn i spesielle nøkler; navneområder og behandlingsinstruksjoner er bevart når de finnes. Resultatet er menneskelesbar JSON som går rimelig tilbake til XML.
Den mest moderne applikasjonskoden er mer komfortabel med JSON. JavaScript analyserer JSON naturlig, Pythons json-modul er i standardbiblioteket, og praktisk talt alle andre språk har tilsvarende førsteklasses JSON-støtte. XML-behandling krever import av flere biblioteker og skriving av mer standard. Konvertering av innkommende XML til JSON før behandling er ofte den raskeste veien fra ekstern XML-feed til intern datastruktur.
Verktøy støtter også JSON. JSON-forskjønnere, validatorer, skjemavalidatorer, spørringsspråk (jq, JSONPath) og seere er rikelig; XML-ekvivalentene er færre og ofte eldre. Å jobbe i JSON låser opp et rikere økosystem av verktøy.
Lim inn XML, hent JSON.
DOMParser produserer en XML DOM som er identisk med det nettleseren bruker for XHTML-sider. Konverteren går denne DOM rekursivt. For hvert element opprettes et JSON-objekt: attributter blir nøkler prefiksert med @ (f.eks. @id, @class); elementets underordnede elementer er gjentatt i samme struktur; tekstinnhold, når det er til stede sammen med barn, lever under en #tekstnøkkel.
Gjentatte underordnede elementer med samme tagnavn samles inn i en JSON-matrise. Et enkelt barn med et gitt navn vises som en objektverdi; flere barn vises som en rekke objekter. Denne konvensjonen fungerer bra i praksis, men betyr at JSON-formen avhenger av om elementer vises én eller flere ganger - en kjent ufullkommenhet ved XML-til-JSON-kartlegging.
Navneområder er bevart som en del av elementnavn (prefiks:lokalnavn). Behandlingsinstruksjoner og CDATA-seksjoner konverteres til tekstinnhold. XML-erklæringer og DOCTYPE-er fjernes fra JSON-utdataene, men påvirker ikke dataene.