2008-12-09 6 views
6
<xsl:template match="foo"> 

अशक्त नाम स्थान में foo तत्व से मेल खाता है।एक्सएसएलटी/XPath के साथ, मैं शून्य नामस्थान में किसी भी तत्व से कैसे मिलान कर सकता हूं?

<xsl:template match="*"> 

किसी भी नाम स्थान में किसी भी तत्व से मेल खाता है।

मैंने कोशिश की:

xmlns:null="" 
... 
<xsl:template match="null:*"> 

लेकिन यह अशक्त नाम स्थान के लिए एक उपसर्ग घोषित करने के लिए अवैध है।

तो कैसे मैं अशक्त नाम स्थान में किसी भी नाम के साथ एक तत्व से मेल कर सकते हैं?

उत्तर

5

आप की कोशिश कर सकते:

<xsl:template match='*[namespace-uri() = ""]'> 

तो नोड सेट खाली है या कोई नाम स्थान यूआरआई है, एक खाली स्ट्रिंग namespace-uri समारोह है, जो प्राप्त करना चाहिए कि आप क्या चाहते द्वारा दिया जाता है।

+0

मैं अपने बुढ़ापे में बूढ़ा हो रही किया जाना चाहिए। धन्यवाद! –

+0

यह ठीक है। यह याद रखने के लिए मुझे थोड़ा सा लगा कि क्या करना है। मदद करने के लिए खुश। –

4

ffpf सही है।

भी स्पष्टता के लिए मैं निम्नलिखित मेल खाने वाला पैटर्न का उपयोग करने की सिफारिश करेंगे:

  '*[not(namespace-uri())]'

संबंधित मुद्दे