[XSL-LIST Mailing List Archive Home]
[By Thread]
[By Date]
[xsl] RE: xslt 2 grouping
Subject: [xsl] RE: xslt 2 grouping From: Dimitre Novatchev <dnovatchev@xxxxxxxxx> Date: Mon, 15 Jul 2002 10:34:53 -0700 (PDT) |
--- "Michael Kay" <michael dot h dot kay at ntlworld dot com> wrote: > > > Mike wrote: > > > The XSLT 2.0 solution (untested) is: > > > > > > <xsl:for-each-group select="e1" group-by="."> > > > <e1 name="{.}"> > > > <xsl:for-each-group select="current-group()" group-by="@att"> > > > <xsl:value-of select="concat(@att, ' ')"/> > > > </xsl:for-each> > > > </e1> > > > </xsl:for-each> > > > > > > You could also use distinct-values(). > > > > Hint :-) How please? > > > > I don't remember the problem well enough to be specific. But > distinct-values() (not implemented yet in Saxon 7.1) applied to a set > of > nodes gives you a subset of those nodes in which no two nodes are > deep-equal to each other. While distinct-values() is still not implemented in Saxon 7.0, one can use makeDistinct.xsl from the FXSL library. See: http://sources.redhat.com/ml/xsl-list/2001-12/msg00806.html Because the library underwent some significant changes since that early time (Dec. 2001), the source code has to be modified as follows: replace: <xsl:if test="not($arg2/@id = $arg1/*/@id)"> with: <xsl:if test="not($arg2/@id = $arg1/@id)"> Hope this helped. ===== Cheers, Dimitre Novatchev. http://fxsl.sourceforge.net/ -- the home of FXSL __________________________________________________ Do You Yahoo!? Yahoo! Autos - Get free new car price quotes http://autos.yahoo.com XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
RE: [xsl] Trying to add a linebreak, Michael Kay | Thread | RE: [xsl] XSL FAQ Page, Dunning, John |
[xsl] XSL FAQ Page, Guy McArthur | Date | RE: [xsl] XSL FAQ Page, Dunning, John |
Month |
Keywords