XML to JSON Converter
Convert XML data or files to JSON format instantly in your browser. Supports custom indentation and handles nested structures.
Select XML file
or drag and drop here
Convert XML data or files to JSON format instantly in your browser. Supports custom indentation and handles nested structures.
or drag and drop here
XML और JSON दोनों डेटा इंटरचेंज प्रारूप हैं लेकिन वेब के विभिन्न युगों से आए हैं। XML, 1998 में मानकीकृत, विशेषताओं, नामस्थानों और स्कीमा सत्यापन के साथ एक स्व-वर्णन मार्कअप प्रारूप के रूप में डिज़ाइन किया गया था। JSON 2000 के दशक की शुरुआत में एक हल्के वजन वाले प्रारूप के रूप में उभरा जो जावास्क्रिप्ट रनटाइम और आधुनिक एपीआई के लिए बेहतर अनुकूल था। अधिकांश नए वेब एपीआई JSON बोलते हैं; कई पुराने सिस्टम - SOAP सेवाएँ, RSS फ़ीड्स, कॉन्फ़िगरेशन फ़ाइलें, एंटरप्राइज़ एकीकरण - अभी भी XML का उत्पादन करते हैं। उनके बीच रूपांतरण आधुनिक विकास में सबसे आम इंटरऑप कार्यों में से एक है।
रूपांतरण पूरी तरह से दोषरहित नहीं है क्योंकि दोनों प्रारूपों में अलग-अलग अभिव्यंजक शक्ति है। XML में विशेषताएँ हैं (जो JSON मूल रूप से नहीं है), पाठ सामग्री और तत्व नामों के बीच अंतर करती है, और मिश्रित सामग्री (पाठ और बाल तत्व दोनों वाले तत्व) का समर्थन करती है। JSON का सीधा ऑब्जेक्ट/सरणी मॉडल सीधे तौर पर इन सुविधाओं का प्रतिनिधित्व नहीं कर सकता है, इसलिए कन्वर्टर्स कन्वेंशन लागू करते हैं: विशेषताएँ @-उपसर्ग कुंजी बन जाती हैं, पाठ सामग्री #text कुंजी बन जाती है, और इसी तरह।
यह कनवर्टर ब्राउज़र के अंतर्निहित DOMParser का उपयोग करके XML को पार्स करता है और JSON उत्पन्न करने के लिए परिणामी DOM ट्री पर चलता है। भाई-बहनों के समान टैग नाम वाले तत्वों को सरणियों में एकत्र किया जाता है; विशेषताएँ विशेष कुंजियों में जाती हैं; मौजूद होने पर नामस्थान और प्रसंस्करण निर्देश संरक्षित रहते हैं। परिणाम मानव-पठनीय JSON है जो उचित रूप से XML पर वापस आता है।
अधिकांश आधुनिक एप्लिकेशन कोड JSON के साथ अधिक आरामदायक हैं। जावास्क्रिप्ट JSON को मूल रूप से पार्स करता है, Python का json मॉड्यूल मानक लाइब्रेरी में है, और वस्तुतः हर दूसरी भाषा में समकक्ष प्रथम श्रेणी JSON समर्थन है। XML प्रसंस्करण के लिए अतिरिक्त लाइब्रेरी आयात करने और अधिक बॉयलरप्लेट लिखने की आवश्यकता होती है। प्रसंस्करण से पहले आने वाले XML को JSON में परिवर्तित करना अक्सर बाहरी XML फ़ीड से आंतरिक डेटा संरचना तक का सबसे तेज़ मार्ग होता है।
टूलींग भी JSON पर निर्भर करती है। JSON ब्यूटिफायर, सत्यापनकर्ता, स्कीमा सत्यापनकर्ता, क्वेरी भाषाएं (jq, JSONPath), और दर्शक प्रचुर मात्रा में हैं; XML समतुल्य कम और अक्सर पुराने होते हैं। JSON में काम करने से उपकरणों का एक समृद्ध पारिस्थितिकी तंत्र खुल जाता है।
XML चिपकाएँ, JSON प्राप्त करें।
DOMParser एक XML DOM तैयार करता है जो ब्राउज़र द्वारा XHTML पृष्ठों के लिए उपयोग किए जाने वाले समान है। कनवर्टर इस DOM को पुनरावर्ती रूप से चलाता है। प्रत्येक तत्व के लिए यह एक JSON ऑब्जेक्ट बनाता है: विशेषताएँ @ के साथ उपसर्ग वाली कुंजियाँ बन जाती हैं (उदाहरण के लिए, @id, @class); तत्व के बाल तत्वों को उसी संरचना में पुन: प्रस्तुत किया जाता है; पाठ्य सामग्री, जब बच्चों के साथ मौजूद होती है, तो #text कुंजी के अंतर्गत रहती है।
समान टैग नाम वाले दोहराए गए चाइल्ड तत्वों को JSON सरणी में एकत्र किया जाता है। किसी दिए गए नाम का एक एकल बच्चा एक वस्तु मान के रूप में प्रकट होता है; एकाधिक बच्चे वस्तुओं की एक श्रृंखला के रूप में दिखाई देते हैं। यह सम्मेलन व्यवहार में अच्छी तरह से काम करता है लेकिन इसका मतलब है कि JSON आकार इस पर निर्भर करता है कि तत्व एक बार या कई बार दिखाई देते हैं - XML-टू-JSON मैपिंग की एक ज्ञात अपूर्णता।
नामस्थान को तत्व नाम (उपसर्ग:स्थानीयनाम) के भाग के रूप में संरक्षित किया जाता है। प्रसंस्करण निर्देश और सीडीएटीए अनुभाग पाठ्य सामग्री में परिवर्तित हो जाते हैं। XML घोषणाएँ और DOCTYPEs JSON आउटपुट से हटा दिए जाते हैं लेकिन डेटा को प्रभावित नहीं करते हैं।