Subject: Re: Output conditional on preceding nodes.
From: David Carlisle <davidc@xxxxxxxxx>
Date: Fri, 7 Dec 2001 17:10:27 GMT
|
<xsl:template match="h1[. = 'foo']">
<xsl:if test="./following::p[3]">
<xsl:copy-of select="./following::p[3]"/>
</xsl:if>
</xsl:template>
You don't need the xsl:if there, it isn't doing anything useful
the above is equivalent to
<xsl:template match="h1[. = 'foo']">
<xsl:copy-of select="following::p[3]"/>
</xsl:template>
If you want everything except that then you want all nodes except p
and all p except the third in which case that's
<xsl:template match="h1[. = 'foo']">
<xsl:copy-of select="following::node()[not(self::p)]|p[position()!=3]"/>
</xsl:template>
David
_____________________________________________________________________
This message has been checked for all known viruses by Star Internet
delivered through the MessageLabs Virus Scanning Service. For further
information visit http://www.star.net.uk/stats.asp or alternatively call
Star Internet for details on the Virus Scanning Service.
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
|