Re: "sorted" axis (was: Remove duplicates from a node-set according to content)

Subject: Re: "sorted" axis (was: Remove duplicates from a node-set according to content)
From: James Clark <jjc@xxxxxxxxxx>
Date: Thu, 29 Jul 1999 13:32:47 +0700
Kay Michael wrote:
 
> > This is really a question to those developing the XSL spec: is this a
> > reasonable requirement? or am I on the wrong side of the 80/20 divide?
> > is my vague hope for "sorted" axes doomed to disappointment?
> 
> It comes up so often that it MUST be a reasonable requirement. If you want
> to do it in less than 35mins, try SAXON's group-by construct.
> 
> (It's proprietary, though with extension elements becoming respectable it
> will soon become more of a "standard extension" than a "proprietary
> extension" - not that this makes any practical difference!)
> 
> The SAXON construct doesn't solve the problem by giving you sorted axes, it
> does it by allowing you to write code that in effect allows you to add a
> layer of hierarchy to a nodeset, so you can say
> 
> for each group of consecutive nodes with the same value of EXPR do
> -- start of group processing
> ---- for each node withing the group do
> ------ process the node
> ---- end
> -- end of group processing
> end

The saxon:group element is a pretty interesting extension.  My initial
thought is why not make it an empty element that applies to its parent
xsl:for-each or xsl:apply-templates element, like xsl:sort?  That way
you can have multiple grouping levels: there would be one level of
xsl:item nesting per xsl:group element.

> (It's puzzled me for a while that the design of XSL seems to have learnt
> very little from 25 years of experience in designing report writers!)

So what should it have learnt and what should it learn in the future?

James


 XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list


Current Thread