हम नामस्थान का उपयोग करते हैं क्योंकि लोग जीप एक ही शब्द का उपयोग अपने निजी इडाहो में अलग-अलग चीजों के लिए करना चाहते हैं। आम तौर पर, आप संदर्भ से निर्धारित कर सकते हैं कि किसी व्यक्ति का क्या अर्थ है। एक कर्मियों के डेटाबेस में, एक्सएमएल कर्मियों के रिकॉर्ड है। वाहन रजिस्ट्री डेटाबेस में, एक्सएमएल वाहन रजिस्ट्री रिकॉर्ड है।
दोनों "स्थान" नाम का एक टैग रखते हैं, लेकिन टैग का मतलब प्रत्येक के लिए अलग-अलग चीजें हैं और इसमें विभिन्न फ़ील्ड हैं।
अब, यह अच्छा है: लेकिन यदि आपको एक ही डेटाबेस में दोनों से एक्सएमएल स्टोर करना है या नहीं करना है तो क्या होगा? या, अधिक दिलचस्प बात यह है कि क्या होगा यदि दोनों डेटाबेस किसी अन्य, सामान्य डेटाबेस (जैसे: एक खाता डेटाबेस) से एक्सएमएल भाग स्टोर करना चाहते हैं।
एक्सएमएल नेमस्पेस प्रत्येक एक्सएमएल टैग को यूआरआई टैग के साथ जोड़ता है, जैसे कि टैग नाम के सामने एक यूआरएल है, यह टैग नाम का हिस्सा है (बेशक, वास्तविक एक्सएमएल दस्तावेज एक शॉर्टेंड का उपयोग करते हैं)। ध्यान से यूआरआई चुनकर, यह विश्वास करना आसान है कि टैग नाम टकरा नहीं जाएंगे - ऐसा लगता है कि दो स्थान टैग पूरी तरह से अलग थे, इसलिए कोई भ्रम नहीं है। बोनस के रूप में, दो पूरी तरह से अलग-अलग स्थान टैग खातों डेटाबेस से सामान शामिल कर सकते हैं, और स्पष्ट रूप से बताते हैं कि वे एक ही चीज़ के बारे में बात कर रहे हैं।
बात यह है कि यह सब उपयोगी बनाता है XPATH है।
उपर्युक्त के साथ, आप XPATH अभिव्यक्तियां लिखना शुरू कर सकते हैं जो कहें जैसे: मुझे इस XML में कहीं भी accounts:account overdue
अनुभाग खोजें। या: मुझे XML के इस विशेष खंड में कहीं भी accounts:warning message
आइटम ढूंढें, जहां चेतावनी संदेश personnel:payment
नोड या vehicle:status
नोड का एक बच्चा नोड (हालांकि गहरा) है।
xpath एक्सप्रेशन एक XSLT दस्तावेज़, जिनका काम यह प्रदर्शन के लिए एक्सएचटीएमएल या xpdf में एक्सएमएल कन्वर्ट करने के लिए, है में कहीं भी इस्तेमाल किया जा सकता है।
भुगतान क्या है? क्यो ऐसा करें? चूंकि आप एक्सएमएल लॉगफाइल खोज सकते हैं, जहां भी वे दिखाई देते हैं, सभी खातों को अतिदेय संदेश खींचें, अन्य सिस्टम द्वारा उत्पादित "संदेश" टैग के साथ भ्रमित किए बिना, 'em से xhtml में कनवर्ट करें, और उन्हें एक सीएसएस टैग के माध्यम से बोल्ड लाल में प्रदर्शित करें : सभी प्रक्रियात्मक कोड का स्क्रैप लिखने के बिना।
मुझे आश्चर्य है कि [इस फॉरेसी] (http://lists.xml.org/archives/xml-dev/200306/msg00010.html) 10-15 साल बाद भी चल रहा है। यह भी देखें [यह] (http://lists.xml.org/archives/xml-dev/200305/msg00836.html) – arayq2
क्या आप कह रहे हैं कि यह गलत है कि नामस्थान एक अच्छा समाधान है, या आप कह रहे हैं कि यह गलत है कि वे थे deconflict करने के लिए इस्तेमाल किया जाने का इरादा है, और अभ्यास में इस तरह से उपयोग किया जाता है (जो भी कमियों के साथ)? मैं केवल उत्तरार्द्ध का दावा करता हूं। –
मैं कह रहा हूं कि एक्सएमएल नेमस्पेस बिल्कुल समाधान नहीं हैं। डिवाइस केवल कुछ उपयोग मामलों को हल करता है, लेकिन किसी भी तरह से, और इसके अलावा एक सामान्य समाधान को रोकने की लागत पर - जो वास्तव में मौजूद है, और वास्तव में इस मूर्खता से पहले दिन की रोशनी देखी गई थी। और, बीटीडब्ल्यू, मूल रूप से वे उद्भव को चिह्नित करने के लिए "इरादा" थे, लेकिन जब यह इंगित किया गया था कि यह पहले से ही एक हल समस्या है, तो समर्थकों ने गोलपोस्ट को चारों ओर ले जाना शुरू कर दिया, और आलोचकों को [जब तक बेहतर चीजें नहीं मिलीं उनका समय] (http://lists.xml.org/archives/xml-dev/200305/msg00344.html)। – arayq2