Re: [xsl] template matching

Subject: Re: [xsl] template matching
From: David Carlisle <davidc@xxxxxxxxx>
Date: Wed, 4 Feb 2004 15:34:40 GMT
You haven't fully specified your input, in particular can your sub2
elements contain anything other than note elements?
most of the replies I've seen have assumed not and generated a ul on the

Thi sis an alternative that allows sub1 to contain other stuff to be
processed besides notes, and just wraps each bunch of consecutive notes
in a list, whatever their parent, so

foo foo <b>bar</b>
foo foo <b>bar</b>

comes out as
foo foo <b>bar</b>
foo foo <b>bar</b>

<!-- through most notes away (they will be handled elsewhere -->
<xsl:template match="note"/>

<!-- special case teh first note in each contiguous group of notes, to
form a list and then process the nodes in note mode -->
<xsl:template match="note[not(preceding-sibling::*[1][self::note])]">
<xsl:apply-template mode="note" select="."/>

<!-- make an item and process the next element node if it is a note-->
<xsltemplate match="note" mode="note">
<xsl:apply-templates seelct=following-sibling::*[1][self::note]"/>


This e-mail has been scanned for all viruses by Star Internet. The
service is powered by MessageLabs. For more information on a proactive
anti-virus service working around the clock, around the globe, visit:

 XSL-List info and archive:

Current Thread