XML को TOML में बदलें

यहाँ आप XML को TOML में बदलते हैं, मुफ़्त और बिना खाते के: फ़ाइल ऊपर छोड़िए और कुछ ही सेकंड में नतीजा डाउनलोड के लिए तैयार मिलेगा। कन्वर्ज़न आपके अपने ब्राउज़र के भीतर होता है, इसलिए फ़ाइल कभी अपलोड नहीं होती। यह Windows, macOS और Linux पर वैसे ही चलता है जैसे iPhone और Android पर, और कनेक्शन काट देने पर भी चलता रहता है।

  • कहाँ चलता है आपके ब्राउज़र में। फ़ाइल कभी अपलोड नहीं होती।
  • नए सिरे से बना TOML के काम करने का तरीक़ा XML से अलग है। यह किसी लॉसी कोडेक जैसा धीरे-धीरे होने वाला नुक़सान नहीं है: TOML जो कुछ व्यक्त कर सकता है, वह हूबहू उतर आता है — और जिसका वहाँ कोई समतुल्य नहीं, वह पूरी तरह रह जाता है।
  • फ़ाइल आकार की सीमा हर फ़ाइल 100 MB तक, मुफ़्त, बिना खाते के।
  • जानने लायक़ XML के गुण और लिखावट वाली गाँठें — दोनों कुंजी बन जाते हैं, और यह फ़ैसला कन्वर्टर आपकी जगह ख़ुद करता है।

एक बार में 100 फ़ाइलें। फ़ॉर्मेट अलग-अलग हों तो भी चलेगा।

XML एलिमेंट TOML टेबल कैसे बनता है

बच्चों वाला हर एलिमेंट एक टेबल बनता है, बिंदुओं से नाम जोड़े कोष्ठक-सिर के तौर पर लिखा। तीन स्तर नीचे कोई एलिमेंट एक ही हेडर में तीन नाम रखने वाला एक हेडर बनाता है, क्योंकि TOML गहराई इंडेंटेशन में नहीं, हेडर में दिखाता है।

हर टेबल के भीतर, सादे मूल्य पहले आते हैं और नेस्टेड टेबल बाद में — TOML इसी क्रम की इजाज़त देता है। इसका मतलब है आउटपुट XML जैसे क्रम में नहीं पढ़ता। यह पुनर्व्यवस्था है, बदलाव नहीं: कोई मूल्य अलग रास्ते नहीं जाता।

दोहराए एलिमेंट सीधे टेबल की सूची पर मैप होते हैं

बदलाव का यह हिस्सा बिना मरम्मत के काम करता है। एक ही टैग वाले दो या ज़्यादा भाई-बहन एलिमेंट TOML टेबल की सूची बनते हैं, दोहरे-कोष्ठक हेडर के साथ, दस्तावेज़ के क्रम में एक बार प्रति आइटम।

पुराना XML संकेत नीचे लागू रहता है। दोहराए जा सकने वाले एलिमेंट की एक ही घटना सूची नहीं बनती, वह सिंगल-ब्रैकेट हेडर वाला सादा टेबल बनती है। किसी फ़ाइल को एक एंट्री और दो एंट्री के साथ बदलिए, आउटपुट संरचनात्मक रूप से अलग होगा।

उद्धृत कुंजियाँ, और उनके बारे में क्या करना है

TOML बेयर कुंजी अक्षर, अंक, अंडरस्कोर और हाइफ़न ही अनुमति देती हैं। एट्रिब्यूट @ से शुरू होने वाली कुंजी बनकर आते हैं, एलिमेंट का अपना पाठ #text नाम की कुंजी बनकर आता है — दोनों उद्धृत होते हैं।

ये एक टू-डू सूची भी हैं। उद्धृत कुंजी यह बताती है कि यह नाम XML मशीनरी से आया, आपके कॉन्फ़िगरेशन से नहीं, और लगभग हर एक का नाम बदला जाना चाहिए: @value एट्रिब्यूट सादी value कुंजी बनती है।

सब कुछ एक शीर्ष-स्तर टेबल के भीतर बैठता है

TOML दस्तावेज़ ख़ुद एक टेबल है, और XML दस्तावेज़ का ठीक एक root होता है, तो पूरा कॉन्फ़िग root के नाम वाले एक हेडर के भीतर एक स्तर गहराई पर दिखता है।

सामग्री को ऊपर लाना यांत्रिक संपादन है: पहला हेडर हटा दीजिए और हर बाक़ी हेडर से वह हिस्सा हटा दीजिए। यह करने लायक़ है क्योंकि कॉन्फ़िग में हर रास्ता एक स्तर छोटा हो जाता है।

XML से बाहर आते हुए चुपचाप कुछ नहीं छूटता

TOML में कोई null मूल्य नहीं है, और YAML जैसे प्रारूपों से बदलने पर मूल्य ख़ाली होने पर कुंजियाँ चुपचाप ग़ायब हो जाती हैं। यहाँ ऐसा नहीं होता, क्योंकि XML में भी null नहीं है।

तो इस दिशा की गारंटी अपने पड़ोसियों से मज़बूत है: XML में मूल्य रखने वाले हर एलिमेंट की TOML में एक कुंजी है। लंबी फ़ाइल में ख़ाली स्ट्रिंग नज़रअंदाज़ होना आसान है।

TOML के टाइप वाले मूल्य जो यह बदलाव नहीं बनाता

TOML कोर विनिर्देश में तारीख़ और समय रखता है, और पार्सर उन्हें स्ट्रिंग की बजाय तारीख़ के तौर पर लौटाता है। XML मूल्य पाठ है, तो स्रोत में तारीख़ उद्धृत स्ट्रिंग बनकर आती है और वही रहती है।

उल्टा मामला भी देखने लायक़ है: XML में 1.0 लिखा मूल्य संख्या के तौर पर पार्स होकर TOML पूर्णांक 1 बनकर लिखा जाता है, तो कोई वर्ज़न पूर्णांक बनकर अपना रूप खो देता है।

बहु-पंक्ति एलिमेंट पाठ एक एस्केप की गई स्ट्रिंग बनता है

कई पंक्तियाँ रखने वाला एलिमेंट — कोई विवरण, कोई एम्बेड स्क्रिप्ट — एक ही TOML बेसिक स्ट्रिंग बनती है जिसमें न्यूलाइन की जगह \n एस्केप होते हैं। यह सही है और यह अपठनीय है।

TOML के पास तिहरे उद्धरण वाला बहु-पंक्ति स्ट्रिंग सिंटैक्स है जो ऐसे मूल्य को पठनीय रखता है, और लेखक उसका इस्तेमाल नहीं करता। एस्केप वाले मूल्य ढूँढिए और हर एक को तिहरे-उद्धरण ब्लॉक में दोबारा लिखिए।

XML कॉन्फ़िग जो खोता है और TOML जो बदल नहीं सकता

टिप्पणियाँ छूट जाती हैं, भले दोनों प्रारूप उन्हें समर्थन देते हैं, तो पुरानी फ़ाइल की व्याख्या नई में नहीं आती। नेमस्पेस जैसे ही उपसर्ग किसी कुंजी में अक्षर बनते हैं, वे कुछ मतलब रखना बंद कर देते हैं।

यह वह व्यापार है जो सोच-समझकर करना चाहिए। TOML पढ़ने में आसान है, हाथ से लिखने में आसान है, और टाइप के बारे में स्पष्ट है, और यह किसी बदशक्ल कॉन्फ़िग को यांत्रिक रूप से अस्वीकार करने की क्षमता छोड़ देता है।

बदलाव कहाँ ख़त्म होता है और माइग्रेशन कहाँ शुरू

औज़ार जो देता है वह है XML का हर मूल्य, सही टेबल में, ज़्यादातर मामलों में सही नाम के साथ और बाक़ी में स्पष्ट रूप से ग़लत, उद्धृत नाम के साथ। यह अच्छी शुरुआत है, तैयार कॉन्फ़िग फ़ाइल नहीं।

बाक़ी काम छोटा और ज़रूरी है: root टेबल हटाइए, @ और #text कुंजियों का नाम बदलिए, तारीख़ें अनक्वोट कीजिए, बहु-पंक्ति मूल्य दोबारा लिखिए, और मूल से टिप्पणियाँ कॉपी कीजिए।

XML को TOML में ऐसे बदलें

  1. अपनी XML फ़ाइल इस पेज पर छोड़ें, या चुनने के लिए दबाएँ।
  2. लक्ष्य के रूप में TOML चुनें। कन्वर्ज़न आपके ब्राउज़र में होता है और फ़ाइल अपलोड नहीं होती।
  3. तैयार TOML फ़ाइल डाउनलोड कर लें।

XML या TOML: क्या बदलता है

XML और TOML की तुलना
XMLTOML
पूरा नामExtensible Markup LanguageTom's Obvious Minimal Language
फ़ाइल एक्सटेंशन.xml.toml
मीडिया टाइपapplication/xmlapplication/toml
पहली बार प्रकाशित19982013
प्रकाशकW3C
विनिर्देशXML 1.0TOML 1.0
लाइसेंसखुला मानकखुला मानक
आज की स्थितिमौजूदामौजूदा
ब्राउज़र में खुलता हैहर ब्राउज़रकोई ब्राउज़र नहीं
इसकी जगह विचारणीयJSON, YAMLYAML, JSON, INI

क्या बचा रहता है

टिप्पणियाँ साथ जाती हैं। XML और TOML — दोनों में टिप्पणी की वाक्य-रचना है, इसलिए बाद में फ़ाइल सँभालने वाले के लिए छोड़े गए नोट चुपचाप ग़ायब नहीं होते।

नतीजा खोलना

TOML को कोई भी ब्राउज़र नहीं पढ़ता। इस लिहाज़ से दोनों में यही कम जगह चलने वाला है। भेजने से पहले देख लीजिए कि पाने वाला इसे लेता भी है या नहीं।

Visual Studio Code XML और TOML — दोनों पढ़ लेता है, इसलिए आप नतीजे को असली फ़ाइल के बग़ल में रखकर देख सकते हैं, बिना दूसरा प्रोग्राम खोले।

कौन-सा फ़ॉर्मेट किस काम के लिए है

दोनों का निशाना अलग काम है: XML का प्रोग्रामों के बीच डेटा ले जाना पर, TOML का एडिटिंग पर। इस पर सोचना बनता है, क्योंकि जिस वजह से एक मौजूद है, आम तौर पर उसी वजह से दूसरा असुविधाजनक होता है।

XML W3C का फ़ॉर्मेट है, जो 1998 में आया। यह XML 1.0 में तय किया गया है, और अगर फ़ाइल को उस औज़ार से ज़्यादा जीना है जिसने उसे लिखा, तो यह बात क़ीमती है।

TOML 2013 से चला आ रहा है, और TOML 1.0 में तय किया गया है। Visual Studio Code इस फ़ॉर्मेट को पढ़ लेता है।

XML 1998 में आया और TOML 2013 में। किसी को सौंपने के लिए आम तौर पर पुराना वाला ज़्यादा सुरक्षित रहता है; नया वाला वही काम कम बाइट में कर देता है।

XML से TOML: आम सवाल

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

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

क्या XML को TOML में बदलना मुफ़्त है?

हाँ। न खाता, न वॉटरमार्क, और न कोई रोज़ का कोटा जो ख़त्म हो: यह आपकी अपनी मशीन पर चलता है, इसलिए आप जितनी बार चाहें लौट सकते हैं। ब्राउज़र 100 MB तक की फ़ाइलें सँभालता है, एक बार में 100।

XML को TOML में बदलने पर क्या गुणवत्ता जाती है?

XML और TOML सामग्री का वर्णन बुनियादी तौर पर अलग-अलग तरीक़ों से करते हैं। इसलिए यह कन्वर्ज़न नक़ल नहीं, पुनर्निर्माण है: ईमानदार, पर बाइट-दर-बाइट एक जैसा नहीं। XML के गुण और लिखावट वाली गाँठें — दोनों कुंजी बन जाते हैं, और यह फ़ैसला कन्वर्टर आपकी जगह ख़ुद करता है।

क्या TOML फ़ाइल ब्राउज़र में खुलती है?

TOML को कोई भी ब्राउज़र नहीं पढ़ता। इस लिहाज़ से दोनों में यही कम जगह चलने वाला है। भेजने से पहले देख लीजिए कि पाने वाला इसे लेता भी है या नहीं।

इन फ़ॉर्मेट के बारे में और