इसका इस्तेमाल कैसे करें
- JSON को JSON में चिपकाएँ। उसका अकेला सबसे ऊपर वाला नाम रूट तत्व बनता है।
- विशेषताओं के लिए @ उपसर्ग इस्तेमाल करें, जैसे @id, और किसी तत्व के टेक्स्ट के लिए #text।
- इंडेंटेशन चुनें, या सबसे छोटे XML के लिए कोई लाइन-ब्रेक नहीं (मिनिफ़ाइड) चुनें।
- XML कॉपी करें, या उसे converted.xml के रूप में डाउनलोड करें।
मैपिंग, नियम दर नियम
XML में तत्व और विशेषताएँ होती हैं; JSON में ऑब्जेक्ट, सरणियाँ और मान। यह मैपिंग उन्हें एक ही दिशा में जोड़ती है। सबसे ऊपर का स्तर एक सदस्य वाला ऑब्जेक्ट है: उसका नाम रूट तत्व है। ऑब्जेक्ट एक तत्व बनता है। जिस सदस्य का नाम @ से शुरू होता है, वह विशेषता बनता है, और #text नाम वाला सदस्य तत्व का टेक्स्ट बनता है। कोई और सदस्य उसी नाम का एक चाइल्ड तत्व बनता है।
सरणी हर आइटम के लिए एक चाइल्ड तत्व देती है, सब सरणी के नाम वाले, इसलिए किताबों की सूची दोहराए गए book तत्वों के रूप में लिखी जाती है। स्ट्रिंग, संख्या या true या false टेक्स्ट बनते हैं। null, और खाली ऑब्जेक्ट, खाली तत्व बनते हैं। खाली सरणी का XML रूप नहीं होता, इसलिए वह छोड़ दी जाती है।
- नाम XML का नाम होना चाहिए: first name जैसी कुंजी, जिसमें स्पेस है, तत्व का नाम नहीं बन सकती।
- सरणी के अंदर सरणी मना है, क्योंकि उसके आइटमों के लिए कोई तत्व नाम नहीं है।
- संख्या का टेक्स्ट वैसा लिखा जाता है जैसा JavaScript लिखता है, इसलिए 15 या 16 से ज्यादा सार्थक अंकों वाली संख्या अपने कुछ अंक खो सकती है, जैसा JSON पढ़ते समय होता है।
मैपिंग जो नहीं रख सकती
XML में प्रकार नहीं होते, इसलिए संख्या 12 और टेक्स्ट "12" का फर्क वापस लौटते समय खो जाता है; XML से JSON कन्वर्टर टेक्स्ट जैसी दिखने वाली संख्या को संख्या ही पढ़ता है, जब तक उसका टाइपिंग विकल्प बंद न हो। XML में खाली ऑब्जेक्ट और null एक जैसे दिखते हैं, और एक आइटम वाली सरणी वापस उस एक आइटम के रूप में लौटती है। ये मैपिंग की सीमाएँ हैं, टूल की गलतियाँ नहीं।
टिप्पणियाँ और प्रोसेसिंग निर्देश नहीं लिखे जाते, क्योंकि JSON के पास उन्हें रखने की जगह नहीं है। तत्व के अंदर का टेक्स्ट एस्केप होता है, इसलिए XML में &, < और > टेक्स्ट ही रहते हैं।
उदाहरण: डिफ़ॉल्ट कैटलॉग
डिफ़ॉल्ट JSON में एक ही सदस्य है, catalog। उसका @version catalog तत्व की version विशेषता बनता है, और उसकी book सरणी दो book तत्व बनती है। हर book अपना @id id विशेषता के रूप में लेता है, और उसकी title, price और inStock कुंजियाँ चाइल्ड तत्व बनती हैं। दूसरी book का price null खाली तत्व price बनता है।
दो स्पेस और घोषणा के साथ परिणाम में आठ तत्व हैं: catalog, दो book, और पहली book के तीन और दूसरी के दो चाइल्ड। गिनती 8 दिखाती है।
अक्सर पूछे जाने वाले सवाल
JSON में विशेषता कैसे लिखें?
कुंजी को @ उपसर्ग दें। सदस्य "@id": "1" उस तत्व पर id="1" बनता है जो उसे रखता है। विशेषता के मान टेक्स्ट, संख्या या true या false होने चाहिए, ऑब्जेक्ट या सरणी नहीं।
मेरी सरणी एक ही नाम के कई तत्व क्यों बन जाती है?
XML में सरणी नहीं होती। सरणी का हर आइटम उसी क्रम में सरणी के नाम वाला एक तत्व बनता है, और XML दोहराई चीजों, जैसे किताबों या आइटमों की सूची, इसी तरह लिखता है।
सबसे ऊपर वाली गलती का मतलब क्या है?
XML को ठीक एक रूट तत्व चाहिए। JSON एक ही सदस्य वाला ठीक एक ऑब्जेक्ट होना चाहिए, जैसे {"catalog": {...}}; सबसे ऊपर सूची या कई सदस्य एक दस्तावेज नहीं बन सकते।
स्पेस वाली कुंजी क्यों मना है?
XML के तत्व नामों में स्पेस नहीं हो सकते। बदलने से पहले कुंजी का नाम बदलें, जैसे first-name या firstName।
क्या मेरा JSON सर्वर पर भेजा जाता है?
नहीं। बदलने का काम आपके ब्राउज़र में होता है। आपका चिपकाया कुछ भी हमारे सर्वर को नहीं भेजा या वहाँ सहेजा जाता।
स्रोत
- RFC 8259: The JavaScript Object Notation (JSON) Data Interchange Format (अंग्रेजी में)
- W3C: Extensible Markup Language (XML) 1.0, Fifth Edition (अंग्रेजी में)
आँकड़े और टेक्स्ट आखिरी बार मंगलवार, 10 नवंबर 2026 को जाँचे गए।