XML til JSON konverter
Konverter XML-data eller filer til JSON-format med det samme i din browser. Understøtter tilpasset indrykning og håndterer indlejrede strukturer.
Vælg XML-fil
eller træk og slip her
Konverter XML-data eller filer til JSON-format med det samme i din browser. Understøtter tilpasset indrykning og håndterer indlejrede strukturer.
eller træk og slip her
XML og JSON er begge dataudvekslingsformater, men kommer fra forskellige epoker på nettet. XML, standardiseret i 1998, blev designet som et selvbeskrivende markup-format med attributter, navnerum og skemavalidering. JSON dukkede op i begyndelsen af 2000'erne som et lettere format, der var bedre egnet til JavaScript-runtimes og moderne API'er. De fleste nye web-API'er taler JSON; mange ældre systemer - SOAP-tjenester, RSS-feeds, konfigurationsfiler, virksomhedsintegrationer - producerer stadig XML. Konvertering mellem dem er en af de mest almindelige interop-opgaver i moderne udvikling.
Konverteringen er ikke helt tabsfri, fordi de to formater har forskellig udtrykskraft. XML har attributter (hvilket JSON ikke har native), skelner mellem tekstindhold og elementnavne og understøtter blandet indhold (elementer, der indeholder både tekst- og underordnede elementer). JSONs ligefremme objekt/array-model kan ikke direkte repræsentere disse funktioner, så konvertere anvender konventioner: attributter bliver @-præfiksnøgler, tekstindhold bliver en #tekstnøgle og så videre.
Denne konverter parser XML ved hjælp af browserens indbyggede DOMParser og går det resulterende DOM-træ for at producere JSON. Elementer med samme tagnavn som søskende samles i arrays; attributter går ind i specielle nøgler; navnerum og behandlingsinstruktioner bevares, når de er til stede. Resultatet er menneskelæselig JSON, der går rimeligt tilbage til XML.
Den mest moderne applikationskode er mere komfortabel med JSON. JavaScript analyserer JSON native, Pythons json-modul er i standardbiblioteket, og stort set alle andre sprog har tilsvarende førsteklasses JSON-understøttelse. XML-behandling kræver import af yderligere biblioteker og skrivning af mere standard. Konvertering af indgående XML til JSON før behandling er ofte den hurtigste vej fra ekstern XML-feed til intern datastruktur.
Tooling læner sig også op af JSON. JSON-forskønnere, validatorer, skemavalidatorer, forespørgselssprog (jq, JSONPath) og seere er rigeligt; XML-ækvivalenterne er færre og ofte ældre. Arbejde i JSON låser op for et rigere økosystem af værktøjer.
Indsæt XML, hent JSON.
DOMParser producerer en XML DOM, der er identisk med, hvad browseren bruger til XHTML-sider. Konverteren går denne DOM rekursivt. For hvert element opretter det et JSON-objekt: attributter bliver nøgler forankret med @ (f.eks. @id, @class); elementets underordnede elementer er gentaget i den samme struktur; tekstindhold, når det er til stede sammen med børn, lever under en #teksttast.
Gentagne underordnede elementer med det samme tagnavn samles i et JSON-array. Et enkelt underordnet navn vises som en objektværdi; flere børn vises som en række objekter. Denne konvention fungerer godt i praksis, men betyder, at JSON-formen afhænger af, om elementer vises én gang eller flere gange - en kendt ufuldkommenhed ved XML-til-JSON-mapping.
Navneområder bevares som en del af elementnavne (præfiks:lokalnavn). Behandlingsinstruktioner og CDATA-sektioner konverteres til tekstindhold. XML-erklæringer og DOCTYPE'er fjernes fra JSON-outputtet, men påvirker ikke dataene.