[XSL-LIST Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message] RE: XSL Processing to avoid repetitions
Hi Martin. Thanks for your answer, but it doesn't work for me. I have resent a message with my real data. Maybe your solution would work if I don't change it to fit my data :) Thanks, anyway. Regards, Fabien -----Message d'origine----- De : Martin Honnen [mailto:Martin.Honnen@xxxxxx] Envoyi : mercredi 16 juin 2010 15:23 @ : xsl-list@xxxxxxxxxxxxxxxxxxxxxx Objet : Re: XSL Processing to avoid repetitions Fabien Tillier wrote: > 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...) You will need to provide more details then. -- Martin Honnen http://msmvps.com/blogs/martin_honnen/
|
PURCHASE STYLUS STUDIO ONLINE TODAY!Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced! Download The World's Best XML IDE!Accelerate XML development with our award-winning XML IDE - Download a free trial today! Subscribe in XML format
|