टूल

मुफ़्त ऑनलाइन XML फ़ॉर्मेटर और वैलिडेटर

मिनिफ़ाई किया हुआ या बिखरा हुआ XML पेस्ट करें और एक क्लिक में इंडेंट किया हुआ, पढ़ने योग्य नतीजा पाएँ। फ़ॉर्मेटर पार्स करते समय ही जाँच करता है, पहली सिंटैक्स त्रुटि दिखाता है, और दस्तावेज़ को दोबारा मिनिफ़ाई या JSON में बदल सकता है — सब कुछ आपके ब्राउज़र में।

आपका XML कभी इस पेज से बाहर नहीं जाता: पार्सिंग, फ़ॉर्मेटिंग और रूपांतरण सब आपके ब्राउज़र में चलते हैं, बिना अपलोड और बिना सर्वर लॉगिंग के।

XML फ़ॉर्मेटर क्या करता है

XML फ़ॉर्मेटर दस्तावेज़ को दोबारा इंडेंट करता है ताकि उसका नेस्टिंग दिखाई दे: हर चाइल्ड एलिमेंट अपने पैरेंट से एक स्तर अंदर आता है, और सिर्फ़ टेक्स्ट रखने वाले एलिमेंट एक ही लाइन में रहते हैं। मशीन से बना XML — SOAP एनवेलप, RSS फ़ीड, साइटमैप, Android लेआउट, Maven POM — आमतौर पर एक विशाल लाइन में आता है: पार्सर के लिए ठीक, इंसान के लिए अपठनीय। फ़ॉर्मेटिंग सिर्फ़ टैग के बीच की खाली जगह बदलती है, इसलिए बाहर आने वाला दस्तावेज़ वही होता है जो अंदर गया था।

ऑनलाइन XML कैसे फ़ॉर्मेट करें

चार चरण, न खाता चाहिए न अपलोड:

  1. अपना XML बाएँ पैनल में पेस्ट करें, या टूल आज़माने के लिए नमूना लोड करें।
  2. इंडेंट की चौड़ाई चुनें — 2 स्पेस, 4 स्पेस या एक टैब।
  3. फ़ॉर्मेट दबाएँ। अमान्य XML को पार्सर के अपने त्रुटि संदेश के साथ अस्वीकार किया जाता है, चुपचाप आधा नतीजा नहीं दिया जाता।
  4. नतीजा कॉपी या डाउनलोड करें, या दस्तावेज़ को JSON में बदलने के लिए दूसरे टैब पर जाएँ।

सही ढंग से बना XML बनाम मान्य XML

सही ढंग से बना (well-formed)

दस्तावेज़ XML सिंटैक्स का पालन करता है: एक ही रूट एलिमेंट, हर टैग बंद, सही क्रम में नेस्टिंग, एट्रिब्यूट मान उद्धरण चिह्नों में, और आरक्षित अक्षर एस्केप किए हुए। पार्सर यही जाँचता है, और यही यह टूल बताता है।

मान्य (valid)

दस्तावेज़ सही ढंग से बना है और किसी स्कीमा से भी मेल खाता है — DTD, XSD या RELAX NG व्याकरण, जो बताता है कि कौन-सा एलिमेंट कहाँ आ सकता है। मान्यता के लिए वह स्कीमा फ़ाइल चाहिए, इसलिए इसे आपका बिल्ड या एडिटर जाँचता है, ब्राउज़र में चलने वाला फ़ॉर्मेटर नहीं।

आम XML त्रुटियाँ और उनका समाधान

  1. बिना बंद किए या बेमेल टैग — <item> को </Item> से बंद करना। HTML के विपरीत XML में अक्षरों का केस मायने रखता है।
  2. एक से ज़्यादा रूट एलिमेंट। सहोदर एलिमेंट को एक ही कंटेनर एलिमेंट में लपेटें।
  3. टेक्स्ट या एट्रिब्यूट में बिना एस्केप किए & < > अक्षर। इन्हें &amp; &lt; &gt; लिखें या टेक्स्ट को CDATA में रखें।
  4. बिना उद्धरण चिह्न वाले एट्रिब्यूट मान। हर एट्रिब्यूट को इनकी ज़रूरत है: id="1", कभी id=1 नहीं।
  5. बिना घोषित नेमस्पेस प्रिफ़िक्स, जैसे किसी पूर्वज एलिमेंट पर xmlns:soap दिए बिना soap:Body का उपयोग।

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

हाँ। कोई खाता नहीं, कोई साइन-अप नहीं, उपयोग की कोई सीमा नहीं और आउटपुट पर कोई वॉटरमार्क नहीं। यह पेज केवल विज्ञापनों से चलता है।

नहीं। पार्सिंग, इंडेंटिंग, मिनिफ़िकेशन और XML-से-JSON रूपांतरण सब आपके ब्राउज़र के अंतर्निहित XML पार्सर से होते हैं। कुछ भी भेजा, संग्रहित या लॉग नहीं किया जाता — इसीलिए यह टूल उन दस्तावेज़ों पर भी काम आता है जिन्हें आप कहीं और पेस्ट नहीं कर सकते।

सिर्फ़ टैग के बीच की खाली जगह को। एलिमेंट नाम, एट्रिब्यूट, टेक्स्ट सामग्री, टिप्पणियाँ और CDATA अनुभाग सुरक्षित रहते हैं। कुछ XML शैलियों में टेक्स्ट नोड के भीतर की खाली जगह अर्थपूर्ण होती है, इसलिए यदि आपका स्कीमा xml:space का उपयोग करता है तो ध्यान रखें।

नहीं। यह टूल बताता है कि दस्तावेज़ सही ढंग से बना है या नहीं, यानी XML सिंटैक्स सही है या नहीं। स्कीमा से मिलान के लिए वह स्कीमा फ़ाइल चाहिए, जो आपके एडिटर या बिल्ड पाइपलाइन का काम है।

कुछ मेगाबाइट के दस्तावेज़ सामान्य मशीन पर एक सेकंड से भी काफ़ी कम में फ़ॉर्मेट हो जाते हैं। बहुत बड़ी फ़ाइलों की सीमा टूल नहीं, आपके ब्राउज़र की मेमोरी है, क्योंकि सब कुछ क्लाइंट पर ही रहता है।

एट्रिब्यूट के आगे @ लगता है, मिश्रित टेक्स्ट सामग्री #text के नीचे आती है, और एक ही नाम वाले दोहराए गए सहोदर एलिमेंट एक ऐरे बन जाते हैं। यही पारंपरिक मैपिंग है और नतीजा दोबारा पढ़ते समय संरचना अनुमानित बनी रहती है।