Re: [xsl] How the other half live

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