On 11/26/2024 8:59 AM, Peter Constable via Unicode wrote:
The case pair stability requirement applies to default data. Conforming 
applications can still tailor case mapping behaviour use language-specific 
overrides. However, the default case pairs as defined in the SpecialCasing.txt 
and UnicodeData.txt files must remain stable so as not to break existing 
implementations of file systems or other identifier systems that depend on the 
default case pairs.


Peter

The case pair stability is indeed important, if not essential for identifiers. However, in the past, we may have been a bit cavalier on how an identifier-safe casing (default) intersects with text processing in general.

I think there's a case to be maded for someone writing a short proposal to clarify whatever language we are using and to make clear, among other things, that **text processing** should be using the appropriate locale-based casing (from CLDR).

We should probably go further and explicitly reposition the "default" casing as "identifier-safe" because that is what motivates the stability requirements.

There's one more wrinkle. Because the sharp S is not natively used outside German, it would be reasonable to have a multicultural case mapping that treats this, and all cases where local usages do not conflict, according to the evolving rules of of the local culture(s) that use the character, so that there's an optional level between identtifier stable and fully local case mappings.

To borrow a bit of terminology from some other implementation we need these levels:

 * InvariantCulture (stable default/identifier-safe)
 * CommonCulture (current culture, common defaul texcept for
   conflicting use)
 * LocalCulture (current culture... one per locale ID)
 * (Throw in regional if you have to, somewhere).

The ideal case would be one where out of the box text processing operations can default to something that performs according to the current (evolving) needs for as many cultures as possible (except where they have contradictory treatment of the same character).

And where the fully invariant case is positioned to make clear where it's applicable (identifier) and where its use is therefore mandatory.

A./



-----Original Message-----
From: Unicode<[email protected]> On Behalf Of Daniel Buncic via 
Unicode
Sent: November 26, 2024 2:44 AM
To:[email protected]
Subject: Re: German sharp S uppercase mapping

<snip>

As to the case pair stability guarantee, ...  if case folding changes in that 
language, then Unicode has to adjust.  It would be poor service to the public 
to stick to a case mapping that is no longer valid just because Unicode came 
into existence at a time when it was still valid. ...

<snip>

Reply via email to