This is the mail archive of the
xsl-list@mulberrytech.com
mailing list .
RE: Finding the maximum number of nodes (Redux)
- To: xsl-list at lists dot mulberrytech dot com
- Subject: RE: [xsl] Finding the maximum number of nodes (Redux)
- From: "McKeever, Marty" <marty dot mckeever at bankofamerica dot com>
- Date: Wed, 03 Oct 2001 11:06:26 -0400
- Reply-To: xsl-list at lists dot mulberrytech dot com
of the two, i certainly prefer your solution. It is much simpler to write
and understand.
but as a mental exercise (something to do on my lunch break), i wanted to
see if i could create a single XPath statement that would do the job. I
nearly bit off more than i could chew!
Now that it "works", i'm just wondering if anyone can verify the logic
behind it. I'm still not certain that I even understand "why" it works...
Thanks for the code tho -- good stuff.
Marty
> -----Original Message-----
> From: Jörg Heinicke [mailto:joerg.heinicke@gmx.de]
> Sent: Wednesday, October 03, 2001 10:35 AM
> To: xsl-list@lists.mulberrytech.com
> Subject: Re: [xsl] Finding the maximum number of nodes (Redux)
>
>
> > <xsl:attribute name="colspan"><xsl:value-of
> select="count(tr[count(td)
> >
> > count(following-sibling::tr[count(td) >
> > count(preceding-sibling::tr[last()]/td)]/td)][count(td) >
> > count(preceding-sibling::tr[last()]/td)]/td)"/></xsl:attribute>
>
> This would be unacceptable for me - who should understand that later?
>
> Why not something like that:
>
> <xsl:template match="table">
> <xsl:variable name="cols">
> <xsl:for-each select="tr">
> <xsl:sort select="count(td)"/>
> <xsl:if test="position()=last()">
> <xsl:value-of select="count(td)"/>
> </xsl:if>
> </xsl:for-each>
> </xsl:variable>
> <table border="1">
> <tr>
> <td colspan="{$cols}">Table Header Text</td>
> </tr>
> <xsl:copy-of select="tr"/>
> </table>
> </xsl:template>
>
> Joerg
>
>
>
> XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
>
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list