|
[XSL-LIST Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message] RE: xslt 2 grouping
--- "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
|
PURCHASE STYLUS STUDIO ONLINE TODAY!Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced! Download The World's Best XML IDE!Accelerate XML development with our award-winning XML IDE - Download a free trial today! Subscribe in XML format
|

Cart








