कभी-कभी यह समझना आसान होता है कि एक उदाहरण देखकर अच्छी तरह से गठित XML कैसे लिखना है। वेब राइटर न्यूजलेटर एक्सएमएल के एक रूप का उपयोग करके लिखा जाता है - हम इसे एएमएल या मार्कअप भाषा के बारे में कहते हैं (आंकड़े पर जाएं)। हालांकि यह एक कामकाजी दस्तावेज है, यह वास्तव में एक अच्छी तरह से गठित या वैध एक्सएमएल दस्तावेज नहीं है।
सुडौल
एक अच्छी तरह से गठित XML दस्तावेज़ बनाने के लिए कुछ विशिष्ट नियम हैं:
- एक्सएमएल घोषणा प्रत्येक दस्तावेज़ में पहले आनी चाहिए।
- टिप्पणियां एक टैग के भीतर मान्य नहीं हैं। टिप्पणियों की शुरुआत और अंत के अलावा टिप्पणियों में पंक्ति में दो हाइफ़न नहीं हो सकते हैं।
- टैग के अंत में एक अंत टैग होना चाहिए, या सिंगलटन टैग के भीतर बंद होना चाहिए, उदाहरण के लिए
. - टैग के सभी गुणों को उद्धृत किया जाना चाहिए, अधिमानतः डबल कोट्स जब तक कि विशेषता में एक डबल कोट नहीं होता है।
- प्रत्येक एक्सएमएल दस्तावेज़ में एक तत्व होना चाहिए जिसमें पूरी तरह से अन्य सभी तत्व शामिल हों।
दस्तावेज़ के साथ केवल दो समस्याएं हैं जो इसे अच्छी तरह से गठित नहीं करती हैं:
एएमएल दस्तावेज की पहली चीज़ एक एक्सएमएल घोषणा कथन है।
दूसरी समस्या यह है कि कोई भी तत्व नहीं है जो पूरी तरह से अन्य सभी तत्वों को संलग्न करता है। इसे ठीक करने के लिए, हम एक बाहरी कंटेनर तत्व जोड़ देंगे: उन दो सरल परिवर्तनों को बनाना (और यह सुनिश्चित करना कि सभी तत्वों में केवल सीडीएटीए हो) गैर-अच्छी तरह से गठित दस्तावेज़ को एक अच्छी तरह से गठित दस्तावेज़ में बदल देगा। एक वैध XML दस्तावेज़ दस्तावेज़ प्रकार परिभाषा (डीटीडी) या एक्सएमएल स्कीमा के खिलाफ मान्य है। ये डेवलपर या मानक संगठन द्वारा बनाए गए नियमों का एक सेट है जो XML दस्तावेज़ के अर्थशास्त्र को परिभाषित करता है। ये कंप्यूटर बताते हैं कि मार्कअप के साथ क्या करना है। मार्कअप भाषा के मामले में, चूंकि यह मानक XML भाषा नहीं है, जैसे एक्सएचटीएमएल या एसएमआईएल, डीटीडी डेवलपर द्वारा बनाया जाएगा। वह डीटीडी एक्सएमएल दस्तावेज के समान सर्वर पर होगा और दस्तावेज के शीर्ष पर संदर्भित होगा। अपने दस्तावेज़ों के लिए डीटीडी या स्कीमा विकसित करना शुरू करने से पहले, आपको महसूस करना चाहिए कि अच्छी तरह से गठित होने के माध्यम से, एक एक्सएमएल दस्तावेज़ स्वयं वर्णन कर रहा है, और इस प्रकार डीटीडी की आवश्यकता नहीं है। उदाहरण के लिए, हमारे सुव्यवस्थित एएमएल दस्तावेज़ के साथ, निम्नलिखित टैग हैं: यदि आप वेब राइटर न्यूज़लेटर से परिचित हैं, तो आप न्यूजलेटर के विभिन्न अनुभागों को पहचान सकते हैं। यह एक ही मानक प्रारूप का उपयोग कर नए एक्सएमएल दस्तावेज़ बनाने में बहुत आसान बनाता है। हम हमेशा टैग में पूर्ण लंबाई शीर्षक, और टैग में पहला अनुभाग यूआरएल डाल देंगे। यदि आपको डेटा का उपयोग करने या इसे संसाधित करने के लिए एक वैध XML दस्तावेज़ लिखना आवश्यक है, तो आप इसे टैग के साथ अपने दस्तावेज़ में शामिल करेंगे। इस टैग में, आप दस्तावेज़ में बेस एक्सएमएल टैग और डीटीडी (आमतौर पर एक वेब यूआरआई) का स्थान परिभाषित करते हैं। उदाहरण के लिए:
डीटीडी घोषणाओं के बारे में एक अच्छी बात यह है कि आप घोषणा कर सकते हैं कि एक डीटीडी सिस्टम के लिए स्थानीय है जहां एक्सएमएल दस्तावेज़ "सिस्टम" के साथ है। आप एक सार्वजनिक डीटीडी को भी इंगित कर सकते हैं, जैसे HTML 4.0 दस्तावेज़ के साथ:
जब आप दोनों का उपयोग करते हैं, तो आप दस्तावेज़ को एक विशिष्ट डीटीडी (सार्वजनिक पहचानकर्ता) का उपयोग करने के लिए कह रहे हैं और इसे कहां ढूंढें (सिस्टम पहचानकर्ता)। अंत में, आप DOCTYPE टैग के भीतर दस्तावेज़ में सीधे एक आंतरिक डीटीडी शामिल कर सकते हैं। उदाहरण के लिए (यह एएमएल दस्तावेज के लिए एक पूर्ण डीटीडी नहीं है):
> एक वैध एक्सएमएल दस्तावेज़ बनाने के लिए, आप अपने एक्सएमएल को परिभाषित करने के लिए एक्सएमएल स्कीमा दस्तावेज़ का भी उपयोग कर सकते हैं। एक्सएमएल स्कीमा एक एक्सएमएल दस्तावेज है जो एक्सएमएल दस्तावेज़ों का वर्णन करता है। स्कीमा लिखना सीखें। बस एक डीटीडी या एक्सएमएल स्कीमा को इंगित करना पर्याप्त नहीं है। दस्तावेज़ में मौजूद एक्सएमएल को डीटीडी या स्कीमा के नियमों का पालन करना होगा। एक वैध पार्सर का उपयोग करना यह जांचने का एक आसान तरीका है कि आपका एक्सएमएल डीटीडी नियमों का पालन कर रहा है। आप ऑनलाइन ऐसे कई पार्सर्स पा सकते हैं।
DTDs
एक्सएमएल स्कीमा
ध्यान दें




