XML till JSON-konverterare
Konvertera XML-data eller filer till JSON-format direkt i din webbläsare. Stöder anpassad indrag och hanterar kapslade strukturer.
Välj XML-fil
eller dra och släpp här
Konvertera XML-data eller filer till JSON-format direkt i din webbläsare. Stöder anpassad indrag och hanterar kapslade strukturer.
eller dra och släpp här
XML och JSON är båda datautbytesformat men kommer från olika epoker på webben. XML, standardiserad 1998, designades som ett självbeskrivande uppmärkningsformat med attribut, namnutrymmen och schemavalidering. JSON dök upp i början av 2000-talet som ett lättare format som var bättre lämpat för JavaScript-körtider och moderna API:er. De flesta nya webb-API:er talar JSON; många äldre system – SOAP-tjänster, RSS-flöden, konfigurationsfiler, företagsintegrationer – producerar fortfarande XML. Att konvertera mellan dem är en av de vanligaste interop-uppgifterna i modern utveckling.
Konverteringen är inte helt förlustfri eftersom de två formaten har olika uttryckskraft. XML har attribut (vilket JSON inte har naturligt), skiljer mellan textinnehåll och elementnamn och stöder blandat innehåll (element som innehåller både text och underordnade element). JSONs enkla objekt/array-modell kan inte direkt representera dessa funktioner, så omvandlare tillämpar konventioner: attribut blir @-prefix-nycklar, textinnehåll blir en #text-nyckel och så vidare.
Denna omvandlare analyserar XML med hjälp av webbläsarens inbyggda DOMParser och går det resulterande DOM-trädet för att producera JSON. Element med samma taggnamn som syskon samlas i arrayer; attribut går in i speciella nycklar; namnutrymmen och bearbetningsinstruktioner bevaras när de finns. Resultatet är mänskligt läsbar JSON som återvänder rimligtvis tillbaka till XML.
De flesta moderna applikationskoder är mer bekväma med JSON. JavaScript analyserar JSON inbyggt, Pythons json-modul finns i standardbiblioteket, och praktiskt taget alla andra språk har motsvarande förstklassigt JSON-stöd. XML-bearbetning kräver att man importerar ytterligare bibliotek och att man skriver mer översikt. Att konvertera inkommande XML till JSON före bearbetning är ofta den snabbaste vägen från extern XML-feed till intern datastruktur.
Tooling lutar också JSON. JSON-förskönare, validerare, schemavaliderare, frågespråk (jq, JSONPath) och tittare finns i överflöd; XML-ekvivalenterna är färre och ofta äldre. Att arbeta i JSON låser upp ett rikare ekosystem av verktyg.
Klistra in XML, hämta JSON.
DOMParser producerar en XML DOM som är identisk med vad webbläsaren använder för XHTML-sidor. Omvandlaren går denna DOM rekursivt. För varje element skapas ett JSON-objekt: attribut blir nycklar med prefixet @ (t.ex. @id, @class); elementets underordnade element återkommer till samma struktur; textinnehåll, när det finns tillsammans med barn, lever under en #text-nyckel.
Upprepade underordnade element med samma taggnamn samlas in i en JSON-array. Ett enskilt underordnat förnamn visas som ett objektvärde; flera barn visas som en samling objekt. Denna konvention fungerar bra i praktiken men betyder att JSON-formen beror på om element visas en eller flera gånger - en känd ofullkomlighet av XML-till-JSON-mappning.
Namnutrymmen bevaras som en del av elementnamn (prefix:lokalnamn). Bearbetningsinstruktioner och CDATA-sektioner konverteras till textinnehåll. XML-deklarationer och DOCTYPEs tas bort från JSON-utdata men påverkar inte data.