Subject: Re: [xsl] counting/comparing values From: Jörg Heinicke <joerg.heinicke@xxxxxx> Date: Sat, 10 Nov 2001 04:44:19 +0100 |
Hi John, the easiest and most obviously version is to sort all rows by the count of there entries. <xsl:template match="tbody"> <table> <xsl:attribute name="col_count"> <xsl:for-each select="row"> <xsl:sort select="count(entry)" order="descending"/> <xsl:if test="position() = 1"> <xsl:value-of select="count(entry)"/> </xsl:if> </xsl:for-each> </xsl:attribute> </table> </xsl:template> But there are a few generic versions of better algorithms. Search for 'generic' and 'Dimitre' in the archives and you will find few answers I think. Hope this helps, Joerg > Greetings all, > I am stuck trying to get the highest number of child elements of a > particular type. What I would like to do is return the count of the most > <entry> elements within a single <row> of a <table>: > > <table> > <tbody> > <row> > <entry>1</entry> > </row> > <row> > <entry>1</entry> > <entry>2</entry> > </row> > <row> > <entry>1</entry> > <entry>2</entry> > <entry>3</entry> > </row> > </tbody> > </table> > > The template processing this is: > <xsl:template match="table"> > <table> > <xsl:variable name="col_count"> > <xsl:for-each select="child::tbody[1]/row"> > <xsl:choose> > <xsl:when test="count(preceding-sibling::row/child::entry) > > count(entry)"> > <xsl:value-of > select="count(preceding-sibling::row/child::entry)"/> > </xsl:when> > <xsl:otherwise> > <xsl:value-of select="count(entry)"/> > </xsl:otherwise> > </xsl:choose> > </xsl:for-each> > </xsl:variable> > <xsl:attribute name="col_count"><xsl:value-of > select="$col_count"/></xsl:attribute> > </table> > </xsl:template> > > Which returns: > <table col_count="123"/> > > When what I want is <table col_count="3"/> > > Any ideas? Any and all help appreciated. > Thanks, John XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
[xsl] checking blank, Vikram Kumar | Thread | RE: [xsl] checking blank, Dunning, John |
Re: [xsl] how to change the xsl tex, Jörg Heinicke | Date | [xsl] Maximum (Was Re: counting/com, Dimitre Novatchev |
Month |