If you are using XSLT 2.0 then you can do the following:
/*:message/*:route/*:value[2]/text()
If not then you seem to have all the information you need above (and give examples of how to do what you asK0 so I'm not sure what the problem is?
You can put to predicates together like so:
/ns1:message/ns1:route/node()[local-name()='value'][2]/text()
I'm also confused by what you mean by 'doesn't use namespace'. Does this mean you don't know what the namespace will be, or are you worried you don't know what the prefix will be? The prefix is only a shorthand for the namespace, and will match based on the namespace the prefix stands for, not the actual prefix. e.g. if you example above ns1 was the namespace "http://test1.com" then the following would work:
<xsl:value-of xslns:my="http://test1.com" select="//my:message"/>
/- Sam Judson : Wrox Technical Editor -/
|