Subject: [xsl] (EOT) Incrementing a Global variable From: Rajendra S Rawat <rajsrawat@xxxxxxxxx> Date: Fri, 29 Aug 2003 03:02:38 -0700 (PDT) |
Thanks to all for you time. The problem is solved. Regards Raj --- David Carlisle <davidc@xxxxxxxxx> wrote: > > > Sorry to chip in.This discussion started with my > > problem and it's still unsolved. > > I thought some solutions had been posted, another is > at the end. > > > Which could have been done straight > > away if there were some provision of incrementing > a > > variable in XSLT. > > I don't beliee that the logic of the program below > would have been any > simpler if it was expressed as a loop rather than as > recursion. > > > > (ft:assign > > you've mentioned ft:assign a few times but I don't > think you've said > what bamespace you have ft bound to so I don't know > what extension this > is. I know saxon has such an extension, but as i > said in an earlier mail > it makes no sense to use assignment for any result > that you want to be > portable between systems. > > gv.xml > > <?xml version="1.0" encoding="UTF-8"?> > <Students> > <Student> > <Name>SAM</Name> > <TOption>English </TOption> > </Student> > <Student> > <Name>RAJ</Name> > <TOption>English </TOption> > </Student> > <Student> > <Name>RON</Name> > <TOption>English </TOption> > </Student> > <Student> > <Name>JON</Name> > <TOption>German </TOption> > </Student> > <Student> > <Name>DON</Name> > <TOption>German </TOption> > </Student> > <Student> > <Name>MON</Name> > <TOption>Hebrew </TOption> > </Student> > <Student> > <Name>GON</Name> > <TOption>Hebrew </TOption> > </Student> > </Students> > > > gv.xsl > > > <xsl:stylesheet > xmlns:xsl="http://www.w3.org/1999/XSL/Transform" > version="1.0" > > > > > <xsl:template match="Students"> > <html> > <head><title>test</title></head> > <body> > <table> > <xsl:call-template name="row"/> > </table> > </body> > </html> > </xsl:template> > > <xsl:template name="row"> > <xsl:param name="p" select="1"/> > <xsl:param name="s" select="Student[1]"/> > <tr> > <td><xsl:value-of select="$p"/></td> > <td><xsl:value-of select="$s/Name"/></td> > <td><xsl:value-of select="$s/TOption"/></td> > </tr> > <xsl:choose> > <xsl:when > test="$s/TOption=$s/following-sibling::Student/TOption"> > <xsl:call-template name="row"> > <xsl:with-param name="p" select="$p+1"/> > <xsl:with-param name="s" > select="$s/following-sibling::Student[1]"/> > </xsl:call-template> > </xsl:when> > <xsl:when test="$s/following-sibling::Student"> > <tr> > <td><xsl:value-of select="$p+1"/></td> > <td> </td> > <td> </td> > </tr> > <xsl:call-template name="row"> > <xsl:with-param name="p" select="$p+2"/> > <xsl:with-param name="s" > select="$s/following-sibling::Student[1]"/> > </xsl:call-template> > </xsl:when> > > <xsl:otherwise> > <tr> > <td><xsl:value-of select="$p+1"/></td> > <td>total</td> > <td><xsl:value-of select="count(Student)"/></td> > </tr> > <xsl:for-each select="(document('')//*)[position() > +$p < 15]"> > <tr> > <td><xsl:value-of select="$p+1+position()"/></td> > <td> </td> > </tr> > </xsl:for-each> > </xsl:otherwise> > </xsl:choose> > > </xsl:template> > > > </xsl:stylesheet> > > gv.html > > <html> > <head> > <meta http-equiv="Content-Type" > content="text/html; charset=utf-8"> > > <title>test</title> > </head> > <body> > <table> > <tr> > <td>1</td> > <td>SAM</td> > <td>English </td> > </tr> > <tr> > <td>2</td> > <td>RAJ</td> > <td>English </td> > </tr> > <tr> > <td>3</td> > <td>RON</td> > <td>English </td> > </tr> > <tr> > <td>4</td> > <td></td> > <td></td> > </tr> > <tr> > <td>5</td> > <td>JON</td> > <td>German </td> > </tr> > <tr> > <td>6</td> > <td>DON</td> > <td>German </td> > </tr> > <tr> > <td>7</td> > <td></td> > <td></td> > </tr> > <tr> > <td>8</td> > <td>MON</td> > <td>Hebrew </td> > </tr> > <tr> > <td>9</td> > <td>GON</td> > <td>Hebrew </td> > </tr> > <tr> > <td>10</td> > <td>total</td> > <td>7</td> > </tr> > <tr> > <td>11</td> > <td></td> > </tr> > <tr> > <td>12</td> > <td></td> > </tr> > <tr> > <td>13</td> > <td></td> > </tr> > <tr> > <td>14</td> > <td></td> > </tr> > <tr> > <td>15</td> > <td></td> > </tr> > </table> > </body> > </html> > > ________________________________________________________________________ > 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 > __________________________________ Do you Yahoo!? Yahoo! SiteBuilder - Free, easy-to-use web site design software http://sitebuilder.yahoo.com XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
Re: [xsl] Re: Incrementing a Global, David Carlisle | Thread | Re: [xsl] Re: Incrementing a Global, Wendell Piez |
Re: [xsl] Re: Re: Incrementing a Gl, Rajendra S Rawat | Date | RE: [xsl] {java} JNDI lookup for a , Robert Koberg |
Month |