This is the mail archive of the
xsl-list@mulberrytech.com
mailing list .
Re: : Re: complex XPATH test
Jeni,
This is great! very cunning.
I also note your XPath to find the containing block is more efficient than
mine (at least in that theoretically it is more amenable to optimization :-).
--Wendell
At 08:07 AM 7/17/01, you wrote:
>Hi Adam,
>
>A slightly different tack from Wendell's solution would be to work out
>the containing block element, as he did, and then try to find out
>whether the first text nodes following the br element has that same
>block element as an ancestor:
>
><xsl:template match="br">
> <!-- identify the containing block -->
> <xsl:variable name="containing-block"
> select="ancestor::*[self::p or self::li][1]" />
> <!-- if the immediately following text node has an ancestor element
> that is the $containing-block element, then the br is not
> the last thing within the $containing-block element -->
> <xsl:if test="following::text()[1]/ancestor::*
> [generate-id() = generate-id($containing-block)]">
> <br />
> </xsl:if>
></xsl:template>
>...
======================================================================
Wendell Piez mailto:wapiez@mulberrytech.com
Mulberry Technologies, Inc. http://www.mulberrytech.com
17 West Jefferson Street Direct Phone: 301/315-9635
Suite 207 Phone: 301/315-9631
Rockville, MD 20850 Fax: 301/315-8285
----------------------------------------------------------------------
Mulberry Technologies: A Consultancy Specializing in SGML and XML
======================================================================
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list