Re: Proposed Modifications to Collation in light of 14651 changes

From: Mark Davis

Date: 6/7/99

The following changes simplify the collation specification, and bring it in line with other changes that we were able to get the ISO 14651 group to accept.


1. Change conformance

Drop requirements for minimum levels, backwards secondaries on level 2, requirement for appending string.

Reason: embedded systems may not require supporting languages that require those features. Clarify strong recommendation to support 3 levels, backwards at level 2.

Add informative section on

- technique of appending string where "determinism" is required.

- technique of appending ignorable primary weights as fourth level.

2. Drop mixing directions in a single level

Reason: doesn't work anyway.

3. Drop tailoring syntax

Reason: Define any tailoring syntax as allowed, as long as it is unambiguous and the results of the tailoring is equivalent to a well-formed table. Allows considerable simplification of the document, and provides equivalent results.

4. Add syntax to the collation table

Reason: Provides for required tailoring features, so we can drop the rest of tailoring.

Use semicolon notation for consistency. Main changes:

<data> := <version> <rearrange>* <backward>* <entry>*

<rearrange> := '@rearrange' <S> <charList> <eol>

<backward> := '@backward' <S> <level_number> <eol>

<entry> := <charList> ';' <collationList> ';' <comment> <eol>

<charList> := <char> (<S> <char>)*

<collationList> := <collElement> (<S> <collElement>)*



1. Add section on compressing sort keys using position.

2. Editorial fixes, as approved by the editorial committee.