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>