Subject: Re: [xsl] How the other half live From: "Dimitre Novatchev" <dnovatchev@xxxxxxxxx> Date: Tue, 18 Nov 2008 08:00:26 -0800 |
> What about: > > <xsl:for-each-group select="$seq" group-by="."> > <xsl:sequence select="current-group()[$i]"/. > </xsl:for-each-group> Probably the best XSLT solution. However, the task was XPath-only. -- Cheers, Dimitre Novatchev --------------------------------------- Truly great madness cannot be achieved without significant intelligence. --------------------------------------- To invent, you need a good imagination and a pile of junk ------------------------------------- Never fight an inanimate object ------------------------------------- You've achieved success in your field when you don't know whether what you're doing is work or play On Tue, Nov 18, 2008 at 7:21 AM, Michael Kay <mike@xxxxxxxxxxxx> wrote: >> >> for $d in distinct-values($seq) return $d[count($seq[. eq $d]) ge $i] >> >> equivalent? I think it is, and probably a lot more >> efficient, although it is longer. >> > > They are both O(n^2). > > What about: > > <xsl:for-each-group select="$seq" group-by="."> > <xsl:sequence select="current-group()[$i]"/. > </xsl:for-each-group> > > which also scores quite well on brevity, I think - in syntax tree form, it > has 6 nodes which is the same as Dimitre's expression; and I think it rates > higher on both efficiency and clarity. > > Michael Kay > http://www.saxonica.com/
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
Re: [xsl] How the other half live, Michael Ludwig | Thread | Re: [xsl] How the other half live, Florent Georges |
RE: [xsl] How the other half live, Michael Kay | Date | Re: [xsl] How the other half live, Dave Pawson |
Month |