XPath के पीछे की कहानी और नामस्थानों के लिए समर्थन क्या है? क्या विनिर्देश के रूप में XPath ने नेमस्पेस से पहले किया था? अगर मैं एक दस्तावेज़ जहां तत्वों एक डिफ़ॉल्ट नाम स्थान दिया गया है है:XPATHS और डिफ़ॉल्ट नामस्थान
<foo xmlns="uri" />
ऐसा लगता है जैसे XPath प्रोसेसर पुस्तकालयों में से कुछ हालांकि नाम स्थान की वजह से //foo
पहचान नहीं होगा जबकि अन्य होगा। मेरी टीम ने जिस विकल्प के बारे में सोचा है, वह है XPath को नियमित अभिव्यक्तियों का उपयोग करके नामस्थान उपसर्ग जोड़ना (आप XmlNameTable के माध्यम से एक नामस्थान उपसर्ग जोड़ सकते हैं) लेकिन ऐसा लगता है कि नोड परीक्षणों की बात करते समय XPath ऐसी लचीली भाषा है।
क्या कोई मानक है जो इस पर लागू होता है?
मेरा दृष्टिकोण थोड़ा हैकिश है लेकिन ऐसा लगता है कि यह ठीक काम करता है; मैं xmlns
एक खोज/प्रतिस्थापन के साथ घोषणा को हटा देता हूं और फिर XPath लागू करता हूं।
string readyForXpath = Regex.Replace(xmldocument, "xmlns=\".+\"", String.Empty);
क्या यह एक उचित दृष्टिकोण है या किसी ने इसे अलग हल किया है?
यदि आप कई गहराई पर नोड्स का उपयोग करना चुनना चाहते हैं, तो आप कुछ ऐसा करने के लिए समाप्त होते हैं: 'xml.SelectNodes (" kml: kml/kml: दस्तावेज़/kml: फ़ोल्डर ", प्रबंधक)' –