XML फ़ॉर्मेटर

सिंटैक्स हाइलाइटिंग और त्रुटि पहचान के साथ XML दस्तावेज़ों को फ़ॉर्मेट, सत्यापित और सुंदर बनाएं

स्थानीय रूप से चलता है

XML इनपुट

फ़ॉर्मेटेड आउटपुट

इंस्पेक्टर

वेल-फ़ॉर्म्ड XML पेस्ट करें — संरचना, ट्री और एलिमेंट पाथ यहाँ स्वतः दिखाई देते हैं

उन्नत विकल्प

दूसरे XML के साथ तुलना करें

इस दस्तावेज़ को Data Diff पर भेजें और दूसरा संस्करण पेस्ट करके देखें कि क्या बदला है।

सटीक त्रुटि स्थिति के साथ वैलिडेशन

वैलिडेशन ब्राउज़र के XML पार्सर से हर कीस्ट्रोक पर चलता है। Well-formed दस्तावेज़ों के लिए एलिमेंट, एट्रिब्यूट, टेक्स्ट नोड्स और डेप्थ की लाइव गिनती मिलती है। खराब दस्तावेज़ों पर सटीक लाइन और कॉलम, एक संभावित कारण और विफल स्थिति पर हाइलाइट मिलता है — केवल "not well-formed" नहीं।

सामान्य XML त्रुटियाँ जिन्हें यह टूल सटीक पहचानता है

अधिकांश अमान्य XML के पीछे यही गलतियाँ होती हैं। हर एक का पता स्थिति और संभावित कारण के साथ लगाया जाता है:

बेमेल टैग

<person> को </perso> से बंद किया गया। पार्सर "Opening and ending tag mismatch" रिपोर्ट करता है और दोनों टैग की लाइन बताता है; हाइलाइट गलत वाले टैग पर कूद जाता है।

बंद न किया गया टैग

गायब > या गायब एंड टैग। आमतौर पर सटीक स्थिति पर "expected >" या "premature end of data in tag X" के रूप में रिपोर्ट होता है।

डुप्लिकेट एट्रिब्यूट

एक ही एलिमेंट पर एक ही एट्रिब्यूट नाम दो बार, जैसे <item id="1" id="2">। "Attribute redefined" के रूप में रिपोर्ट होता है जो दूसरी बार की घटना की ओर इशारा करता है।

अमान्य एंटिटी / कच्चा &

टेक्स्ट के अंदर literal & या < को एस्केप करना ज़रूरी है (&amp;, &lt;)। पार्सर सटीक कैरेक्टर पर "EntityRef: expecting ;" या "not well-formed" रिपोर्ट करता है।

पहले / बाद

बाईं ओर मिनिफाइड API रिस्पॉन्स, दाईं ओर वही दस्तावेज़ 2-स्पेस इंडेंट के साथ फॉर्मेट किया हुआ। स्ट्रक्चर, ट्री और पाथ पार्स किए गए दस्तावेज़ से अपडेट होते हैं।

Before
<catalog><book id="1" category="fiction"><title>The Hobbit</title><author>J.R.R. Tolkien</author></book><book id="2" category="tech"><title>Refactoring</title><author>Martin Fowler</author></book></catalog>
After
<catalog>
  <book id="1" category="fiction">
    <title>The Hobbit</title>
    <author>J.R.R. Tolkien</author>
  </book>
  <book id="2" category="tech">
    <title>Refactoring</title>
    <author>Martin Fowler</author>
  </book>
</catalog>

XML क्विक रेफरेंस (W3C XML 1.0)

  • Well-formed ≠ valid: well-formed का मतलब है कि टैग सही ढंग से नेस्ट और क्लोज़ होते हैं; valid का मतलब अतिरिक्त रूप से यह है कि दस्तावेज़ किसी DTD या XSD स्कीमा का पालन करता है।
  • पाँच पूर्वपरिभाषित एंटिटी: &lt; &gt; &amp; &quot; &apos; — टेक्स्ट में literal < या & हमेशा त्रुटि होती है।
  • एलिमेंट और एट्रिब्यूट नाम केस-सेंसिटिव होते हैं और उनमें नेमस्पेस प्रीफ़िक्स (ns:tag) हो सकता है।
  • ठीक एक रूट एलिमेंट होना चाहिए; XML डिक्लेरेशन जैसे <?xml version="1.0" encoding="UTF-8"?> मौजूद हो तो सबसे पहले आना चाहिए।
  • कमेंट्स <!-- … --> में -- नहीं हो सकता और उन्हें नेस्ट नहीं किया जा सकता।

इस डेटा के साथ अगले कदम

फ़ॉर्मैटिंग पहला कदम है। अपना ब्राउज़र छोड़े बिना वर्कफ़्लो जारी रखें:

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

Xml Formatter फ़ॉर्मेटिंग के बारे में सामान्य प्रश्नों के उत्तर

फ़ॉर्मैटर well-formedness जाँच और बेसिक वैलिडेशन करता है। यह W3C XML 1.0/1.1 स्पेसिफिकेशन के अनुसार सही टैग नेस्टिंग, एट्रिब्यूट सिंटैक्स और XML डिक्लेरेशन अनुपालन की जाँच करता है।

हाँ, बिल्ट-इन XPath टेस्टर से आप अपने XML दस्तावेज़ के विरुद्ध XPath 1.0 और 2.0 एक्सप्रेशन लिख और इवैल्यूएट कर सकते हैं, जिसमें मैच होने वाले एलिमेंट हाइलाइट होते हैं और परिणाम तुरंत दिखते हैं।

हाँ, फ़ॉर्मैटर नेमस्पेस वाले XML दस्तावेज़ों को सही ढंग से प्रोसेस करता है, और एलिमेंट तथा एट्रिब्यूट को ठीक से फ़ॉर्मैट करते समय नेमस्पेस डिक्लेरेशन और प्रीफ़िक्स को सुरक्षित रखता है।

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

XML फ़ॉर्मैटर ऑप्टिमाइज़्ड पार्सिंग एल्गोरिदम के साथ 50MB तक की फ़ाइलें सपोर्ट करता है, जिससे यह बड़ी कॉन्फ़िगरेशन फ़ाइलों, SOAP मैसेज और डेटा इंटरचेंज दस्तावेज़ों के लिए उपयुक्त है।

नेमस्पेस डिक्लेरेशन (xmlns, xmlns:prefix) को इंडेंटेशन के उद्देश्य के लिए साधारण एट्रिब्यूट माना जाता है और इन्हें कभी रीऑर्डर या हटाया नहीं जाता, इसलिए नेमस्पेस URI उन्हीं प्रीफ़िक्स से बंधे रहते हैं। फ़ॉर्मैटिंग कभी प्रीफ़िक्स को रिज़ॉल्व या रीराइट नहीं करती - डाउनस्ट्रीम टूल्स इन्हें W3C Namespaces in XML रिकमेंडेशन के अनुसार रिज़ॉल्व करते हैं।

फ़ॉर्मैटिंग केवल री-इंडेंट करती है और एलिमेंट के बीच व्हाइटस्पेस को नॉर्मलाइज़ करती है। वैलिडेशन स्ट्रक्चर की जाँच करता है: संतुलित टैग, एक रूट एलिमेंट, सही एट्रिब्यूट कोटिंग और W3C XML 1.0 स्पेसिफिकेशन के अनुसार एंटिटी सिंटैक्स। फ़ॉर्मैटर well-formedness एरर रिपोर्ट करता है (malformed इनपुट को री-इंडेंट नहीं किया जा सकता) लेकिन DTD या XSD स्कीमा के विरुद्ध वैलिडेशन नहीं करता।

हाँ - CDATA ब्लॉक अपनी पूरी आंतरिक सामग्री को ठीक वैसे ही रखते हैं (यही उनका उद्देश्य है: उस टेक्स्ट को एस्केप करना जिसे वरना एंटिटी एनकोडिंग की ज़रूरत पड़ती), और कमेंट आसपास के इंडेंटेशन को छोड़कर अपरिवर्तित रहते हैं। XML डिक्लेरेशन और <?xml version="1.0"?> जैसी प्रोसेसिंग इंस्ट्रक्शन भी ऊपर बिना किसी बदलाव के बने रहते हैं।

{-- * External Resources Component(#19 Phase 3b 内容佐证工程) * 工具页「权威引用」区块:RFC / W3C / WHATWG / ECMA / IANA / 官方规范站 / 官方语言文档 / Wikipedia。 * * - 接受 :slug 属性 → 经 config/tool-sources.php 家族矩阵渲染该工具的权威引用 * - slug 未命中映射时不渲染(无权威来源的工具静默跳过) * - 链接 title 保持英文(引用源专名);description 经 * common.resources.descriptions.{key} 本地化,lang 未命中回退英文(线上不裸奔) * - 链接保持 dofollow(rel="noopener noreferrer") * * @param string|null $slug --}}

संबंधित टूल्स