Re: [xsl] How to select an attribute on the current node or its anchestor

Subject: Re: [xsl] How to select an attribute on the current node or its anchestor
From: Philipp Kursawe <phil.kursawe@xxxxxxxxx>
Date: Fri, 15 Apr 2011 17:38:43 +0200
Hello Michael,

>> ancestor-or-self::*[@data][1]/@data
>>
>>
> Or if you prefer, (ancestor-or-self::*/@data)[last()]

Which one is faster, if any?

Thanks,
Phil

>
> Michael Kay
> Saxonica
>
>>
>> On Fri, Apr 15, 2011 at 2:06 AM, Philipp Kursawe<phil.kursawe@xxxxxxxxx>
>> B wrote:
>>>
>>> Hello,
>>>
>>> given the following xml:
>>>
>>> <node data="foo">
>>> B  <text id="1" data="bar"/>
>>> B  <text id="2"/>
>>> </node>
>>>
>>> I would like to know the XPath expression to select @data which
>>> results in "bar" for @id=1 and "foo" for @id=2.
>>>
>>> The general idea is to search for the attribute in the anchestor if
>>> the current node does not contain the attribute all the way up to the
>>> root node.
>>>
>>> Thanks for your help!
>>>
>>> Phil

Current Thread