Re: [xsl] template matching

Subject: Re: [xsl] template matching
From: "james walker" <jameswalkerandy@xxxxxxxxxxx>
Date: Fri, 06 Feb 2004 13:07:26 +0000
Hello again,
do i have to put a "<xsl:apply-templates select="note">" statement in sub1 template match? I tried doing this but it only showed the first of the group of notes in the output?

From: David Carlisle <davidc@xxxxxxxxx>
Reply-To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx
To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx
Subject: Re: [xsl] template matching
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"> <li><xsl:apply-templates/></li> <xsl:apply-templates seelct=following-sibling::*[1][self::note]"/> </xsl:template>


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:

_________________________________________________________________ Express yourself with cool new emoticons

XSL-List info and archive:

Current Thread