2009-06-17 18 views
5

मेरे पास निम्न XML है:मैं XPath विशेषता मान मिलान में काम करने के लिए वाइल्डकार्ड कैसे प्राप्त कर सकता हूं?

<root> 
    <foo> 
    <bar type="a whole bunch of stuff, then a magic string: MUPPET" /> 
    <value>my Muppet value</value> 
    </foo> 
    <foo> 
    <bar type="some other stuff, then a different magic string: GREMLIN" /> 
    <value>my Gremlin value</value> 
    </foo> 
</root> 

मैं एक XPath क्वेरी बनाना चाहता हूं जो "मेरी मपेट मान" (स्ट्रिंग) को जादू स्ट्रिंग "MUPPET" देता है। मेरा अनुमान था:

/root/foo[contains(bar/@type,'MUPPET')]/value/text() 

लेकिन ऐसा लगता है कि यह काम नहीं करता है। मुझे वास्तव में यकीन नहीं है कि contains(x,y) ऑपरेटर एक क्वेरी को पहले पैरामीटर के रूप में अनुमति देता है या नहीं। एक साइड इश्यू के रूप में, मुझे यकीन नहीं है कि मुझे अंत में text() की आवश्यकता है या नहीं।

कोई मदद?

उत्तर

5

मैं सिर्फ इस ऑनलाइन XPATH मूल्यांकनकर्ताओं के साथ की जाँच की और यह ठीक काम कर रहा है:

http://www.mizar.dk/XPath/Default.aspx

+0

आप पूरी तरह से सही हैं; वे पक्का करते है! और वह मेरे प्रश्न/पाठ() के बारे में भी जवाब देता है। एक्लिप्स में आईबीएम के एक्सपीएथ इंजन के साथ एक समस्या होनी चाहिए। मानव संसाधन विकास मंत्री। –

0

क्या आप वाकई अपने XPath के साथ एक नाम स्थान मुद्दा नहीं है कर रहे हैं?

+0

ऐसा मत सोचो; मुझे लगता है कि यह आईबीएम के बीआईआरटी रिपोर्टिंग टूल के साथ एक समस्या है, XPath क्वेरी नहीं। अगर मैं "./foo[contains(bar/@type,'MUPPET ') से क्वेरी बदलता हूं)]/value/text()" to "।" मुझे अभी भी कुछ नहीं मिला है। निश्चित रूप से "।" _something _.. से मेल खाना चाहिए –

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