xsl-list
[Top] [All Lists]

Re: [xsl] Still thinking to object oriented...

2008-10-09 05:56:47
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(_at_)saxonica(_dot_)com>:

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/


--~------------------------------------------------------------------
XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list
To unsubscribe, go to: http://lists.mulberrytech.com/xsl-list/
or e-mail: 
<mailto:xsl-list-unsubscribe(_at_)lists(_dot_)mulberrytech(_dot_)com>
--~--



--~------------------------------------------------------------------
XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list
To unsubscribe, go to: http://lists.mulberrytech.com/xsl-list/
or e-mail: <mailto:xsl-list-unsubscribe(_at_)lists(_dot_)mulberrytech(_dot_)com>
--~--