Re: Still thinking to object oriented...
Okay, i am sorry. First i have now this error: Required item type of first argument of name() is node(); supplied value has item type xs:string URL: http://www.w3.org/TR/xpath20/#ERRXPTY0004 i am sorry, i will ask my question again with a higher accuracy: select="//*[descendant-or-self::*[contains(name(),'to_search')]]/name()" this expression gets me the names of all ancestors from the nodes, which contain the string "to_search". This was quite okay for me untill now. But i got new requirements to output also the attributes to these nodes. Now i need help to transform the expression to output the real nodes as a nodelist for example like for example the node() function does. 2008/10/9 Michael Kay <mike@xxxxxxxxxxxx>: > >> Thank you, >> but i am getting this error: >> >> Cannot mix nodes and atomic values in the result of a path expression >> URL: http://www.w3.org/TR/xpath20/#ERRXPTY0018 >> > > Yes, that's a silly restriction in the language. Change it to > > select="//*[descendant-or-self::*[contains(name(),'to_search')]]/(name(), > @*/string())" > > (But I suspect Andrew answered your question too literally. I suspect you > don't just want the attribute values, you probably want their names as well. > But he answered the question that you asked, it's not his fault if you > didn't make your requirements clear...) > > Michael Kay > http://www.saxonica.com/
PURCHASE STYLUS STUDIO ONLINE TODAY!
Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced!
Download The World's Best XML IDE!
Accelerate XML development with our award-winning XML IDE - Download a free trial today!
Subscribe in XML format