tomai
लॉग इन
मुफ़्त · डेवलपर टूल

XML से JSON

XML दस्तावेज़ों को साफ, पूर्वानुमानित JSON में बदलें

XML इनपुट
JSON आउटपुट

XML से JSON कनवर्टर क्या है?

XML 2000 के दशक का डिफ़ॉल्ट डेटा प्रारूप था और यह RSS फ़ीड, बैंकिंग API, SOAP सेवाओं और पुराने कॉन्फ़िगरेशन फ़ाइलों में जीवित है। आधुनिक JavaScript, Python और Go कोड JSON को कहीं अधिक स्वाभाविक रूप से पढ़ते हैं। XML से JSON कनवर्टर पूर्वानुमानित स्कीमा के साथ एक दस्तावेज़ को सरल ऑब्जेक्ट में अनुवाद करता है: प्रत्येक तत्व एक ऑब्जेक्ट बनता है, विशेषताओं को "@@" प्रीफिक्स मिलता है ताकि "id" विशेषता कभी "id" नामक चाइल्ड तत्व से न टकराए, टेक्स्ट सामग्री "@text" के अंतर्गत रहती है, और दोहराए गए सहोदर तत्व सूचियों में समेट दिए जाते हैं।

यह क्या कर सकता है

  • नेस्टेड तत्वों को JSON ऑब्जेक्ट में पार्स करता है
  • विशेषताओं (@@ प्रीफिक्स), टेक्स्ट (@text) और चाइल्ड को अलग करता है
  • दोहराए गए सहोदर तत्वों को स्वतः सूचियों में समूहित करता है
  • CDATA अनुभाग, टिप्पणियाँ, घोषणाएँ और स्व-समापन टैग संभालता है
  • असंगत या बंद-न-हुए टैग को स्पष्ट त्रुटि से रिपोर्ट करता है
  • JSON को पठनीय इंडेंट के साथ प्रारूपित करता है

कब उपयोग करें

  • RSS/Atom फ़ीड या SOAP-शैली प्रतिक्रियाएँ पढ़ना
  • XML कॉन्फ़िग को JSON-आधारित पाइपलाइन में माइग्रेट करना
  • यह जाँचना कि पुराना XML API वास्तव में क्या लौटाता है
  • XML संदर्भ डेटा से JSON टेस्ट फिक्स्चर बनाना

गोपनीयता: पार्सिंग पूरी तरह आपके ब्राउज़र में होती है — आपके द्वारा चिपकाया गया कुछ भी कभी अपलोड नहीं होता।

इस कनवर्टर द्वारा उपयोग किया जाने वाला मैपिंग

  • XML विशेषताएँ (एट्रिब्यूट्स) @ से प्रीफ़िक्स की गई कुंजियाँ बन जाती हैं (price currency="EUR"{"@currency":"EUR"}) ताकि वे कभी भी बच्चे एलिमेंट्स के साथ टकराएँ नहीं।
  • जो एलिमेंट टेक्स्ट और बच्चों दोनों को मिलाता है, उसका टेक्स्ट #text के अधीन रखा जाता है; शुद्ध टेक्स्ट एलिमेंट सीधे एक सादा स्ट्रिंग में मैप हो जाता है।
  • दोहराए गए भाई-बहन एलिमेंट्स ऐरे में संकुचित हो जाते हैं; XML घोषणा, टिप्पणियाँ और प्रोसेसिंग निर्देश छोड़ दिए जाते हैं।

विशेषताओं और टेक्स्ट नोड्स के लिए एक परंपरा की आवश्यकता होती है

विशेषताएँ और टेक्स्ट कभी मिश्रित नहीं

विशेषताएँ "@@id"-शैली की कुंजियाँ बनती हैं और टेक्स्ट "@text" के अंतर्गत रहता है, इसलिए समान नाम की विशेषता और तत्व कभी एक-दूसरे को अधिलेखित नहीं करते।

🔒

सूचियाँ सूचियाँ ही रहती हैं

दोहराए गए सहोदर तत्व स्वतः JSON सूची में समेट दिए जाते हैं — पाँच पुस्तकों की सूची पाँच ऑब्जेक्ट की सूची बनती है, एक अधिलेखित पुस्तक नहीं।

🎯

वास्तविक XML के प्रति सहनशील

CDATA, टिप्पणियाँ, DOCTYPE और स्व-समापन टैग साफ पार्स होते हैं, जबकि वास्तव में गलत XML वर्णनात्मक संदेश के साथ विफल होता है।

अक्सर पूछे जाने वाले प्रश्न

विशेषताएँ कैसे प्रदर्शित होती हैं?

विशेषताएँ "@@" प्रीफिक्स वाली कुंजियाँ बनती हैं, जैसे <book id="5"> → {"@@id":"5"}। यह "id" नामक विशेषता और समान नाम के चाइल्ड तत्व के बीच क्लासिक टकराव रोकता है।

दोहराए गए तत्वों का क्या होता है?

समान नाम के दोहराए गए सहोदर तत्व स्वतः JSON सूची में समूहित होते हैं। एकल उपस्थिति एकल ऑब्जेक्ट रहती है; कई एक सूची बनती हैं — दोनों ही सहज लगते हैं।

क्या मेरा XML कहीं अपलोड होता है?

नहीं। सब कुछ आपके ब्राउज़र में शुद्ध JavaScript से चलता है — कुछ भी प्रसारित या संग्रहीत नहीं होता।

मेरा विशेषता (एट्रिब्यूट) JSON आउटपुट में कहाँ चली गई?

उसी ऑब्जेक्ट पर @-प्रीफ़िक्स वाली कुंजी को खोजें जिस पर उसका एलिमेंट भी है। यदि आपको केवल #text दिखाई देता है, तो उस एलिमेंट में एट्रिब्यूट्स और कंटेंट दोनों थे; यदि आप एक एट्रिब्यूट की अपेक्षा कर रहे थे लेकिन कुछ नहीं पाते हैं, तो वह एट्रिब्यूट किसी पैरेंट नोड पर था — ट्री को एक स्तर ऊपर विस्तारित करें।

संबंधित टूल

संबंधित टूल