[XSL-LIST Mailing List Archive Home]
[By Thread]
[By Date]
RE: [xsl] Grouping with keys
Subject: RE: [xsl] Grouping with keys From: "Rick Quatro" <rick@xxxxxxxxxxxxxx> Date: Thu, 24 Oct 2013 15:31:26 -0400 |
Hi Ken, Thanks for reply. I can't really key on the <p> elements because there could be different elements before the first <li> in a group. I want to key on the first <li> in each group regardless of its immediate preceding sibling. Also, I want to use template rules instead of pull processing. Thanks. Rick -----Original Message----- From: G. Ken Holman [mailto:g.ken.holman@xxxxxxxxx] On Behalf Of G. Ken Holman Sent: Thursday, October 24, 2013 3:01 PM To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx; xsl-list@xxxxxxxxxxxxxxxxxxxxxx Subject: RE: [xsl] Grouping with keys At 2013-10-24 14:50 -0400, Rick Quatro wrote: >Here is a simplified example: With the simplified example, the solution jumps out at me. I hope this helps and you can refine it into what you need. I think you were looking too deep. . . . . . . . Ken t:\ftemp>type rick.xml <body> <li>one</li> <li>two</li> <p>paragraph</p> <li>three</li> <li>four</li> <p>paragraph</p> <li>five</li> <li>six</li> </body> t:\ftemp>call xslt rick.xml rick.xsl <?xml version="1.0" encoding="utf-8"?> <body> <ol> <li>one</li> <li>two</li> </ol> <p>paragraph</p> <ol> <li>three</li> <li>four</li> </ol> <p>paragraph</p> <ol> <li>five</li> <li>six</li> </ol> </body> t:\ftemp>type rick.xsl <?xml version="1.0" encoding="UTF-8"?> <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0"> <xsl:key name="li" match="li" use="generate-id((..|preceding-sibling::p[1])[last()])"/> <xsl:output indent="yes"/> <xsl:template match="body"> <body> <xsl:for-each select=".|p"> <xsl:copy-of select="self::p"/> <xsl:if test="key('li',generate-id(.))"> <ol> <xsl:copy-of select="key('li',generate-id(.))"/> </ol> </xsl:if> </xsl:for-each> </body> </xsl:template> </xsl:stylesheet> t:\ftemp>rem Done! -- Public XSLT, XSL-FO, UBL & code list classes: Melbourne, AU May 2014 | Contact us for world-wide XML consulting and instructor-led training | Free 5-hour lecture: http://www.CraneSoftwrights.com/links/udemy.htm | Crane Softwrights Ltd. http://www.CraneSoftwrights.com/s/ | G. Ken Holman mailto:gkholman@xxxxxxxxxxxxxxxxxxxx | Google+ profile: https://plus.google.com/116832879756988317389/about | Legal business disclaimers: http://www.CraneSoftwrights.com/legal |
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
RE: [xsl] Grouping with keys, G. Ken Holman | Thread | RE: [xsl] Grouping with keys, G. Ken Holman |
Re: [xsl] Off Topic : XSLT Jobs in , Mailing Lists Mail | Date | RE: [xsl] Grouping with keys, G. Ken Holman |
Month |