[XSL-LIST Mailing List Archive Home] [By Thread] [By Date]

Re: [xsl] looping, moving through elements??


Subject: Re: [xsl] looping, moving through elements??
From: David Carlisle <davidc@xxxxxxxxx>
Date: Thu, 23 Oct 2003 13:13:25 +0100

This is a fairly standard grouping problem, it would be easier in xslt2
but in xslt 1 you want to use keys as explained on Jeni's site.

In your case you want to group things based on the following ve with 
three . in its pos attribute so your key is

<xsl:key name="x" match="ve"
  use="(.|folowing-sibling::ve)
    [string-length(@pos)=3+string-length(translate(@pos,'.',''))][1]/@pos"/>

then something like (untested)

<xsl:for-each
select="ve[string-length(@pos)=3+string-length(translate(@pos,'.',''))]">
<tr>
<xsl:for-each select="key('x',@pos)">
<td><xsl:value-of select="."/></td>
</xsl:for-each>
</tr>
</xsl:for-each>

David

-- 
http://www.dcarlisle.demon.co.uk/matthew

________________________________________________________________________
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:
http://www.star.net.uk
________________________________________________________________________

 XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list



Current Thread
Keywords