This is the mail archive of the
xsl-list@mulberrytech.com
mailing list .
Re: Re: Assignment no, dynamic scoping si (was: Re: RE: Wishes for XSL revisions ...
- From: Dimitre Novatchev <dnovatchev at yahoo dot com>
- To: xsl-list at lists dot mulberrytech dot com
- Date: Thu, 3 Jan 2002 00:25:18 -0800 (PST)
- Subject: [xsl] Re: Re: Assignment no, dynamic scoping si (was: Re: RE: Wishes for XSL revisions ...
- Reply-to: xsl-list at lists dot mulberrytech dot com
Wendell Piez <wapiez at mulberrytech dot com> wrote:
> Gunther,
>
> Is there a reason I missed why
>
> <xsl:template match='paragraph'>
> <p class='ancestor-or-self::*[@source][last()]/@source'>
> <xsl:apply-templates/>
> </p>
> </xsl:template>
>
> wouldn't work for your example?
>
> (And just checking ... XPath experts ...
> ancestor-or-self::*[@source][last()] will give me the *closest* 'source'
> attribute on an ancestor or self ... not the most distant, won't it?)
Wendell,
Just to make it a little bit more precise -- in the original example it was said
that
only the "source" attribute of a "section" element was relevant:
"Every section represents one source in their world. On the
other hand, for reasons of the HTML CSS stylesheet, they need
the CSS class to be attached to every paragraph element in
the output."
and
"This template would only touch the section and paragraph elements
of bigbucksbooks and would leave everything else untouched."
So, the following XPath expression will evaluate exactly to the source of a
"paragraph":
ancestor::section[1]/@source
Cheers,
Dimitre Novatchev.
__________________________________________________
Do You Yahoo!?
Send your FREE holiday greetings online!
http://greetings.yahoo.com
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list