XML क्या है? दस्तावेज़, नामक्षेत्र, और API के लिए स्कीमा
Scrapeless Scraping API कार्य-विशिष्ट इंटरफेस प्रदान करता है जो अनुप्रयोग कार्यप्रवाह के लिए संरचित सार्वजनिक वेब डेटा लौटाता है।
TL;DR
- XML एक संरचित दस्तावेज़ और डेटा के लिए टेक्स्ट सिंटैक्स है। अनुप्रयोग अपने क्षेत्रों के लिए तत्वों, विशेषताओं और पाठ की शब्दावली परिभाषित करते हैं।
- सुसंगतता न्यूनतम सिंटैक्स मानक है। एक दस्तावेज़ को सही नेस्टिंग, एक दस्तावेज़ तत्व, कोट किए गए गुण, और मान्य वर्ण हैंडलिंग की आवश्यकता होती है।
- नामस्थान शब्दावली टकराव की रोकथाम करते हैं। वे नामों को URI पहचानकर्ताओं के साथ जोड़ते हैं ताकि कई XML शब्दावली एक साथ रह सकें।
- स्कीमाएँ संविदा नियम जोड़ती हैं। DTD, XML स्कीमा, RELAX NG, और एप्लिकेशन मान्यता संरचना और मानों को सीमित कर सकते हैं।
- सुरक्षित पार्सर कॉन्फ़िगरेशन महत्वपूर्ण है। अविश्वसनीय XML को आकार सीमाओं और बाहरी संस्थाओं और विस्तार व्यवहार के सुरक्षित प्रबंधन की आवश्यकता होती है।
XML परिभाषित किया गया
XML, या एक्स्टेंसिबल मार्कअप लैंग्वेज, संरचित दस्तावेज़ों और डेटा का प्रतिनिधित्व करने के लिए एक पाठ-आधारित वाक्यविज्ञान है। यह तत्वों, गुणों, अक्षर डेटा, इकाई संदर्भ, टिप्पणियाँ, प्रसंस्करण निर्देश और दस्तावेज़ घोषणाओं के लिए व्याकरणिक मशीनरी प्रदान करता है। XML एक सार्वभौमिक शब्दावली का आदेश नहीं देता है; संगठनों और मानकों द्वारा किसी विशेष डोमेन के लिए तत्व नाम और संरचनाएँ परिभाषित की जाती हैं।
The W3C XML 1.0 विशिष्टता एक XML दस्तावेज़ों का वर्ग परिभाषित करता है और XML प्रोसेसरों के लिए आवश्यक व्यवहार को। XML दस्तावेज़-मार्कअप आवश्यकताओं से विकसित हुआ, इसलिए यह क्रमिक मिश्रित सामग्री और नामक्षेत्रों को अच्छी तरह संभालता है। इसका उपयोग कॉन्फ़िगरेशन, संदेश, कार्यालय दस्तावेज़ पैकेज, फ़ीड, सेवा अनुबंध, वेक्टर ग्राफिक्स और कई उद्योग विनिमय प्रारूपों के लिए भी किया जाता है।
कैसे एक XML दस्तावेज़ संरचित होता है
XML क्या है इसे एक परिभाषित क्रियाओं की अनुक्रम के रूप में समझें न कि एक एकल काले बक्से के रूप में। वह अनुक्रम यह स्पष्ट करता है कि प्रत्येक इनपुट, आउटपुट और विफलता का स्वामी कौन सा घटक है।
तत्व, विशेषताएँ, और पाठ
एक तत्व का नाम, प्रारंभ टैग, सामग्री और अंत टैग होता है, या यह खाली-तत्व_Syntax का उपयोग करता है। सामग्री में पाठ और बच्चे तत्व शामिल हो सकते हैं। विशेषताएँ तत्व को नाम-मान जानकारी संलग्न करती हैं। एक शब्दावली यह तय करती है कि कोई तथ्य पाठ, बच्चे तत्व या विशेषता में है या नहीं।
अच्छी तरह से बने विश्लेषण
एक XML प्रोसेसर दस्तावेज़ को एक एप्लिकेशन में प्रकट करने से पहले शब्दार्थ और संरचनात्मक नियमों की जांच करता है। टैग को सही ढंग से नेस्ट होना चाहिए, गुणधर्म मूल्यों को उद्धरण में होना चाहिए, प्रतिबंधित वर्णों को एस्केप किया जाना चाहिए, और दस्तावेज़ में एक दस्तावेज़ तत्व होना चाहिए। एक अच्छी तरह से निर्मित दस्तावेज़ अभी भी अपने व्यावसायिक अनुबंध का उल्लंघन कर सकता है।
नेमस्पेस और विस्तारित नाम
नेमस्पेस घोषणाएँ उपसर्गों या एक डिफ़ॉल्ट संदर्भ को नेमस्पेस नामों के साथ जोड़ी जाती हैं। महत्वपूर्ण पहचान नेमस्पेस नाम और स्थानीय नाम का संयोजन है, न कि चुना गया उपसर्ग पाठ। उपसर्ग तब बदले जा सकते हैं जब शब्दावली की पहचान को बदला नहीं जाता।
XML मान्यता और प्रोसेसिंग विकल्प
निम्नलिखित अवधारणाएँ यह निर्धारित करती हैं कि What Is XML एक वास्तविक प्रणाली में कैसे व्यवहार करता है। इन्हें अलग-अलग पढ़ने से एक प्रारूप चयन को एक आर्किटेक्चर या सुरक्षा गारंटी के रूप में गलतफहमी से बचाता है।
| धारा | अर्थ | व्यावहारिक संकेत |
|---|---|---|
| अच्छी संरचना | चेक्स कोर XML सिंटैक्स। | XML दस्तावेज़ को XML के रूप में संसाधित करने से पहले आवश्यक। |
| DTD | डॉक्यूमेंट प्रकार प्रणाली का उपयोग करके दस्तावेज़ संरचना और संस्थाओं की घोषणा करता है। | विरासत और दस्तावेज-उन्मुख सत्यापन। |
| XML स्कीमा | तत्वों, विशेषताओं, जटिल प्रकारों, डेटा प्रकारों और घटना प्रतिबंधों को परिभाषित करता है। | अनुबंध-भारी डेटा विनिमय और उत्पन्न बाइंडिंग। |
| आराम NG | संरचनात्मक पैटर्नों को संक्षिप्त या XML सिंटैक्स के साथ परिभाषित करता है। | कई दस्तावेज़ शब्दावली के लिए पठनीय स्कीमा डिज़ाइन। |
| अनुप्रयोग मान्यता | प्राधिकरण और डोमेन नियमों को व्याकरण के बाहर लागू करता है। | क्रॉस-फील्ड प्रतिबंध, राज्य संक्रमण, और नीति। |
जहाँ XML एक मजबूत विकल्प बना रहता है
XML क्या है उत्पाद व्यवहार को केवल ठोस संचालन के माध्यम से प्रभावित करता है। निम्नलिखित मामलों से पता चलता है कि कौन सी क्षमता महत्वपूर्ण है और क्यों एक निकटवर्ती दृष्टिकोण अलग तरह से व्यवहार कर सकता है।
दस्तावेज़ प्रारूप
मिश्रित पाठ और निहित मार्कअप क्रम, टिप्पणियों, और दस्तावेज़ संरचना को बनाए रखते हैं।
औद्योगिक मानक
दीर्घकालिक स्कीमा और नामराशियाँ संगठनों और उपकरण स्टैक्स के बीच स्थिर विनिमय का समर्थन करती हैं।
SOAP और सेवा अनुबंध
SOAP लिफाफे, WSDL, और संबंधित मानक XML शब्दावली और स्कीमा का उपयोग करते हैं।
हस्ताक्षरित संरचित सामग्री
XML हस्ताक्षर मानक उन पहचाने गए तत्वों को लक्षित कर सकते हैं जब अनुप्रयोग को संदेश-स्तरीय अखंडता की आवश्यकता होती है।
XML को सुरक्षित और सही तरीके से पार्स करना
काम के बोझ के आधार पर एक पार्सर मॉडल चुनें। एक दस्तावेज़ ऑब्जेक्ट मॉडल नेविगेशन और उत्परिवर्तन के लिए सुविधाजनक है लेकिन पेड़ को मेमोरी में रखता है। स्ट्रीमिंग पुल या इवेंट पार्सिंग बड़े दस्तावेज़ों को सीमित मेमोरी के साथ संसाधित करता है लेकिन स्थिति आधारित अनुप्रयोग तर्क की आवश्यकता होती है। कोई भी मॉडल स्कीमा और डोमेन मान्यता का प्रतिस्थापन नहीं करता।
बाह्य संसाधनों को एक सुरक्षा निर्णय के रूप में मानें। पार्सर दस्तावेज़ प्रकार घोषणाओं, बाह्य संस्थाओं, स्कीमा, और नेटवर्क पुनर्प्राप्ति का समर्थन कर सकते हैं। अविश्वसनीय इनपुट को मजबूत डिफ़ॉल्ट का उपयोग करना चाहिए जो अनावश्यक बाह्य समाधान को अक्षम करता है, संस्थाओं के विस्तार और दस्तावेज़ आकार को सीमित करता है, नेस्टिंग को बाधित करता है, और संसाधन पहुंच को प्रतिबंधित करता है। पुस्तकालय-विशिष्ट सुरक्षा दिशा निर्देशों का पालन करना आवश्यक है क्योंकि डिफ़ॉल्ट भिन्न होते हैं।
URI पहचान द्वाराNamespaces का उपयोग करें। W3C XML में नामराशियाँ विनिर्देशन संज्ञा नाम और नामराशि घोषणाओं को परिभाषित करता है। कोड जो केवल एक शाब्दिक उपसर्ग के लिए खोजता है, वह विफल हो सकता है जब एक समकक्ष दस्तावेज़ दूसरा उपसर्ग उपयोग करता है। विस्तारित नामों का मिलान करें और अनुक्रमण के समय नामराशि मैपिंग को बनाए रखें।
XML की गलतियाँ जो इंटरऑपरेबिलिटी बग का कारण बनती हैं
- सही और वैध में भ्रमित करना। सही XML वाक्यविज्ञान को संतुष्ट करता है; मान्यता शब्दावली नियमों को लागू करती है; व्यवसाय की मान्यता और आगे बढ़ती है।
- नामराशियों की अनदेखी। उसी स्थानीय पाठ के साथ दो तत्व अलग-अलग शब्दावली में हो सकते हैं और उनका अर्थ अलग हो सकता है।
- गुणांक क्रम के महत्व को मान लेना। अनुप्रयोगों को गुणांक को नाम से संबोधित करना चाहिए, न कि अनुक्रमण क्रम से।
- हर सुविधा सक्रिय करते हुए अविश्वसनीय इनपुट पार्स करना। बाहरी संसाधन पहुंच और विस्तार सुविधाएँ सुरक्षा और उपलब्धता के लिए जोखिम उत्पन्न कर सकती हैं।
- एक XML पार्सर के रूप में स्ट्रिंग संचालन का उपयोग करना। भागित करना, नामराशियाँ, टिप्पणियाँ, पात्र संदर्भ, और निहित संरचना विश्वसनीय स्टिंग स्लाइसिंग को विफल करती है।
API और डेटा पाइपलाइनों में XML
इजेक्शन पर, बाइट्स को सीमित करें, XML घोषणा और परिवहन मेटाडेटा के अनुसार डिकोड करें, बनाए रखे गए पुस्तकालय से पार्स करें, और नामराशि-जानकारी युक्त मूल नाम दर्ज करें। अनुबंध परिभाषित होने पर आवश्यक स्कीमा लागू करें, फिर अनुमतियों, क्रॉस-फील्ड नियमों, और स्वीकृत संस्करणों के लिए अनुप्रयोग मान्यता चलाएँ।
केवल तब सामान्यीकृत करें जब स्रोत दस्तावेज़ आवश्यक जांच पास करे। स्रोत पहचानकर्ताओं, संरचना को संरक्षित करें जो अर्थ ले जाती है, और एक परिवर्तित रिकॉर्ड को समझाने के लिए पर्याप्त उत्पत्ति का समर्थन करते हैं। मिश्रित सामग्री के दस्तावेज़ स्वच्छता से सपाट तालिकाओं या सरल JSON वस्तुओं में मैप नहीं हो सकते हैं; उन्हें असंगत मॉडल में मजबूर करना पाठ क्रम और टिप्पणियों को हटा सकता है।
आउटपुट पर, टैग को संयोजित करने के बजाय एक सीरियलाइज़र का उपयोग करें। जानबूझकर नामराशियाँ घोषित करें, पाठ और गुणांक मानों को बचाएँ, एक स्थिर एन्कोडिंग चुनें, और उपभोक्ता अनुबंध के खिलाफ उत्पन्न दस्तावेज़ों को मान्य करें। यदि हस्ताक्षर शामिल है, तो सामान्यीकरण और तत्व पहचान को चुने गए सुरक्षा प्रपत्र के अनुसार बिल्कुल पालन करना चाहिए। राउंड-ट्रिप परीक्षणों में खाली तत्वों, मिश्रित सामग्री, नामराशि परिवर्तनों, महत्वपूर्ण व्हाइटस्पेस, गैर-ASCII वर्णों, वैकल्पिक गुणांक, और पुराने समर्थित स्कीमा संस्करणों के दस्तावेज़ों को शामिल किया जाना चाहिए। पार्स की गई जानकारी मॉडल की तुलना करें, न कि कॉस्मेटिक इंडेंटेशन या चयनित उपसर्ग वर्तनी।
XML क्या है समीक्षा चेकलिस्ट
इन चेक का उपयोग करें ताकि XML क्या है परिभाषा को कार्यान्वयन साक्ष्य में बदल सकें जिसे एक विकासकर्ता, ऑपरेटर, या समीक्षक पुन: उत्पन्न कर सके।
- सीमा को फिर से stated करें। XML क्या है, में पर caller, provider, path, और उस सटीक घटना की पहचान करें जो एक पूर्ण परिणाम को चिह्नित करती है।
- केंद्रीय दावा सत्यापित करें। इस कथन की पुष्टि करें कि कार्यान्वयन और इसके दस्तावेज़ के साथ: XML संरचित दस्तावेज़ों और डेटा के लिए एक पाठ वाक्यरचना है। अनुप्रयोग अपने क्षेत्रों के लिए तत्वों, गुणों, और पाठ की शब्दावली परिभाषित करते हैं।
- यांत्रिकी का अनुगमन करें। तत्वों, गुणों, और पाठ, सही ढंग से पार्स, नामराशियाँ और विस्तारित नामों का अवलोकन करें, और रिकॉर्ड करें कि कौन सा घटक प्रत्येक चरण का मालिक है।
- निकटतम भेद की जांच करें। इस प्रणाली में यह दस्तावेज़ करें कि सही होना का अर्थ है "मूल XML वाक्यविज्ञान की जाँच"।
- नौकरशाही का एक प्रतिनिधि उपयोग मामला परीक्षण करें। वास्तविक डेटा, स्थान, मात्रा, और अनुमतियों की सीमाओं के साथ दस्तावेज़ प्रारूपों का उपयोग करें।
- एक ज्ञात गलती के खिलाफ रक्षा करें। "सही और वैध में भ्रमित" की समीक्षा करें और एक स्वीकृति जांच जोड़ें जो इसे पकड़ ले।
- काम के बोझ को सीमित करें। क्या है XML के लिए विषय-उपयुक्त सीमाएँ स्थापित करें, जिसमें पेलोड, समवर्तीता, निष्पादन समय और संग्रहीत आउटपुट शामिल हैं जहाँ भी लागू हो।
- निर्णय दर्ज करें। व्याख्या करें कि क्यों क्या है XML इस सीमा में फिट बैठता है और नाम दें सबूत जो भविष्य में एक अलग दृष्टिकोण को सही ठहरा सकता है।
निष्कर्ष
क्या है XML को डिजाइन के परीक्षण योग्य हिस्से का वर्णन करना चाहिए, बजाय इसके कि यह पड़ोसी व्यवहार के लिए एक ढीला लेबल के रूप में कार्य करे। समीक्षा को इस केंद्रीय निर्णय को बनाए रखना चाहिए: XML संरचित दस्तावेजों और डेटा के लिए एक पाठ की सिंटैक्स है। एप्लिकेशन अपने डोमेन के लिए तत्वों, विशेषताओं और पाठ का शब्दावली परिभाषित करते हैं। यह अच्छे रूप में और मान्य के बीच भ्रमित होने से भी सुरक्षित रहना चाहिए। और क्या है XML की पहुँच को दस्तावेजित नीति के भीतर रखना चाहिए।
क्या आप अपने वेब डेटा कार्यप्रवाह के लिए तैयार हैं?
एक उपाय किया गया क्या है XML अधिग्रहण या एकीकरण चरण को उपरोक्त वर्णित मान्यकरण और भंडारण प्रथाओं से जोड़ें।
आज ही साइन अप करें और प्राप्त करें $5 के मुफ्त क्रेडिट — कोई क्रेडिट कार्ड की आवश्यकता नहीं.
अपना $5 क्रेडिट प्राप्त करें →प्रश्नोत्तर
XML का पूरा नाम क्या है?
XML का पूरा नाम एक्स्टेंशिबल मार्कअप भाषा है। यह संरचित दस्तावेजों और डेटा के लिए एक पाठ की सिंटैक्स है जिसके डोमेन की शब्दावली एप्लिकेशन और मानकों द्वारा परिभाषित की जाती है।
क्या XML एक प्रोग्रामिंग भाषा है?
नहीं। XML एक मार्कअप और डेटा सिंटैक्स है। एप्लिकेशन XML दस्तावेजों को संसाधित करते हैं, और अन्य भाषाएँ जैसे XPath या XSLT उनका प्रश्न पूछ सकती हैं या उनका रूपांतरित कर सकती हैं।
क्या है एक अच्छी तरह से बने XML दस्तावेज़?
एक अच्छी तरह से बने XML दस्तावेज़ मुख्य XML सिंटैक्स नियमों का पालन करता है, जिसमें सही टैग नेस्टिंग, उद्धृत विशेषताएँ, वैध वर्ण और एक दस्तावेज़ तत्व शामिल हैं। यह फिर भी एक स्कीमा या व्यवसाय नियम को असफल कर सकता है।
क्या XML अब भी उपयोग किया जाता है?
हाँ। XML दस्तावेज़ प्रारूप, SOAP सेवाएँ, कॉन्फ़िगरेशन, फ़ीड, वेक्टर ग्राफिक्स, डिजिटल हस्ताक्षर और विनियमित या उद्योग-विशिष्ट विनिमय मानकों में सामान्य है।