XML uz JSON pārveidotājs
Pārlūkprogrammā uzreiz konvertējiet XML datus vai failus JSON formātā. Atbalsta pielāgotu atkāpi un apstrādā ligzdotas struktūras.
Atlasiet XML failu
vai velciet un nometiet šeit
Pārlūkprogrammā uzreiz konvertējiet XML datus vai failus JSON formātā. Atbalsta pielāgotu atkāpi un apstrādā ligzdotas struktūras.
vai velciet un nometiet šeit
Gan XML, gan JSON ir datu apmaiņas formāti, taču tie nāk no dažādiem tīmekļa laikmetiem. XML, kas standartizēts 1998. gadā, tika izstrādāts kā pašaprakstošs iezīmēšanas formāts ar atribūtiem, nosaukumvietām un shēmas validāciju. JSON parādījās 2000. gadu sākumā kā vieglāks formāts, kas ir labāk piemērots JavaScript izpildlaikiem un modernām API. Lielākā daļa jauno tīmekļa API runā JSON; daudzas vecākas sistēmas — SOAP pakalpojumi, RSS plūsmas, konfigurācijas faili, uzņēmuma integrācijas — joprojām ražo XML. Konvertēšana starp tām ir viens no visizplatītākajiem sadarbspējas uzdevumiem mūsdienu attīstībā.
Pārveidošana nav pilnīgi bezzudumu, jo abiem formātiem ir atšķirīga izteiksmes spēja. XML ir atribūti (kuru JSON sākotnēji nepiešķir), tas atšķir teksta saturu un elementu nosaukumus, kā arī atbalsta jauktu saturu (elementi, kas satur gan tekstu, gan pakārtotos elementus). JSON vienkāršais objekta/masīva modelis nevar tieši attēlot šīs funkcijas, tāpēc pārveidotāji izmanto konvencijas: atribūti kļūst par atslēgām ar @ prefiksu, teksta saturs kļūst par #text atslēgu un tā tālāk.
Šis pārveidotājs parsē XML, izmantojot pārlūkprogrammā iebūvēto DOMParser, un pastaigā iegūto DOM koku, lai izveidotu JSON. Elementi ar tādu pašu taga nosaukumu kā brāļiem un māsām tiek apkopoti masīvos; atribūti nonāk īpašās atslēgās; nosaukumvietas un apstrādes instrukcijas tiek saglabātas, ja tādas ir. Rezultāts ir cilvēkiem lasāms JSON, kas saprātīgi pārvietojas atpakaļ uz XML.
Lielākajai daļai mūsdienu lietojumprogrammu koda ir ērtāk izmantot JSON. JavaScript parsē JSON sākotnēji, Python JSON modulis atrodas standarta bibliotēkā, un praktiski visām pārējām valodām ir līdzvērtīgs pirmās klases JSON atbalsts. XML apstrādei ir jāimportē papildu bibliotēkas un jāraksta vairāk paraugplāksnes. Ienākošā XML konvertēšana uz JSON pirms apstrādes bieži vien ir ātrākais ceļš no ārējās XML plūsmas uz iekšējo datu struktūru.
Rīki izmanto arī JSON. JSON izdaiļotāju, pārbaudītāju, shēmu pārbaudītāju, vaicājumu valodu (jq, JSONPath) un skatītāju ir daudz; XML ekvivalentu ir mazāk un bieži vien ir vecāki. Strādājot JSON, tiek atvērta bagātīgāka rīku ekosistēma.
Ielīmējiet XML, iegūstiet JSON.
DOMParser izveido XML DOM, kas ir identisks tam, ko pārlūkprogramma izmanto XHTML lapām. Pārveidotājs staigā šo DOM rekursīvi. Katram elementam tiek izveidots JSON objekts: atribūti kļūst par atslēgām ar prefiksu @ (piemēram, @id, @class); elementa bērnelementi tiek atkārtoti iekļauti tajā pašā struktūrā; teksta saturs, ja tas atrodas kopā ar bērniem, dzīvo zem taustiņa #text.
Atkārtoti pakārtotie elementi ar tādu pašu taga nosaukumu tiek apkopoti JSON masīvā. Atsevišķs dotā vārda atvasinātais parādās kā objekta vērtība; vairāki bērni parādās kā objektu masīvs. Šī konvencija praksē darbojas labi, taču nozīmē, ka JSON forma ir atkarīga no tā, vai elementi parādās vienreiz vai vairākas reizes — zināma XML–JSON kartēšanas nepilnība.
Vārdtelpas tiek saglabātas kā daļa no elementu nosaukumiem (prefikss:localName). Apstrādes instrukcijas un CDATA sadaļas tiek pārveidotas teksta saturā. XML deklarācijas un DOCTYPE tiek noņemti no JSON izvades, bet neietekmē datus.