Subject: Re: [xsl] XSL Processing to avoid repetitions From: Martin Honnen <Martin.Honnen@xxxxxx> Date: Wed, 16 Jun 2010 15:23:16 +0200 |
Hi List. I was wondering if anyone could help me to filter out data in an XML stream. (can be xslt 2.0...)
For example, I have <xml> <city> <name>Paris</name> <person>Paul</person> </city> <city> <name>New-York</name> <person>John</person> </city> <city> <name>Paris</name> <person>George</person> </city> </xml>
I would like to have an XSL template able to output something like (using <OL> for example) Paris Paul George New-York John
Actually, all I am able to do is to get Paris Paul New-York John Paris George
With XSLT 2.0 you can use xsl:for-each-group to group the data <ol> <xsl:for-each-group select="/xml/city" group-by="name"> <li> <xsl:value-of select="current-grouping-key()"/> <ol> <xsl:for-each select="current-group()/person"> <li><xsl:value-of select="."/></li> </xsl:for-each> </ol> </li> </xsl:for-each-group> </ol>
(please note that the real structure is more complicated, and the filter is to be done on more than one level...)
Martin Honnen http://msmvps.com/blogs/martin_honnen/
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
Re: [xsl] XSL Processing to avoid r, Andrew Welch | Thread | RE: [xsl] XSL Processing to avoid r, Fabien Tillier |
Re: [xsl] XSL Processing to avoid r, Andrew Welch | Date | Re: [xsl] XSL Processing to avoid r, David Carlisle |
Month |