Re: [xsl] the nearest ancestor with the attribute

Subject: Re: [xsl] the nearest ancestor with the attribute
From: "Jonathan Borden" <jborden@xxxxxxxxxxxx>
Date: Wed, 17 Jan 2001 07:38:16 -0500
Jeni Tennison wrote:
> Hi Wendell,
>
> >> > ancestor::*/@attr
> [snip]
> >>
> >>I don't think so. The first in this case is the first in document order,
> >>which isn't the nearest in the ancestor axis.
> >
> > Hm. About this, see XPath 2.4. ancestor is a reverse axis. I don't see
> > anything here that changes the order to document order.
>
> You're absolutely right that the ancestor axis is a reverse axis.  If
> you were using:
>
>   ancestor::*[1]/@attr
>
> you'd be fine (aside from the fact that you'd be stuffed if the node's
> parent didn't have a 'attr' attribute). However, the last axis used in
> the XPath is the 'attribute' axis, which takes you back to document
> order again. To get the last one, use:
>
>   ancestor::*/@attr[last()]
>
> At least I *think* that's right ;)

Actually isn't it

    ancestor::*[@attr][1]/@attr

?

-Jonathan



 XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list


Current Thread