[XSL-LIST Mailing List Archive Home] [By Thread] [By Date]

Re: [xsl] Sorting Upper-Case first. Microsoft bug?


Subject: Re: [xsl] Sorting Upper-Case first. Microsoft bug?
From: David Carlisle <davidc@xxxxxxxxx>
Date: Thu, 7 Aug 2003 22:23:25 +0100



> -  I don't want "eXtensible" before "eat" or after "eye".
Upper case first as defined in the XSLT 1 spec would mean that X came
before x it would not mean that X came before a so 
eXtensible would come before extensible but after eat and before eye.


But the main point is that the time to discus what is or is not teh most
useful functionality is when the spec is being written (eg, now for XSLT
2) An implementation should implement the spec whether or not it's a
good idea. (which is why we have to have xx:node-set() extensions in
XSLT 1.)


> Sorting by UTR 10 doesn't mean "sort undetermined" or "sort randomly".
> There are exact rules, some of which are cultural choices, most not.
> UTR 10 provides sorting in more than one levels. Look at UTR 10,
> section 4 to see the algorithm.

Of course. But XSLT 1 says that implementors should use TR10 to guide
their choice of ordering on characters, and once they have done that to
sort strings lexicographically. You may argue that that was not the best
design choice, but I don't think implementors really have any
flexibility here acording to the spec (they could of course issue an
errata to the spec saying that it did not mean what it said)

> On the other hand, how should one define a universal total order
> of all Unicode symbols, to achieve a senseful lexicographic sorting?

It's hard and probably no ordering is good in all cases, which is why
the spec gives implemntors total freedom here to pick whatver ordering
they want using locale or other information.


> I would love to see the spec writers eliminate the single word
> "lexicographic" from the spec.
That would not be enough.
Currently for example the case ordering is defined only for characters
(as that is all that is needed) if it is really intended that case order
attribute only has an effect on strings that are equal apart from case
then this should be stated in the spec.

> contains the funny sentence:
> "Lexicographic order is sometimes called dictionary order."

Funny but true, like many things in life.

David

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



Current Thread
Keywords