Hello Peter,
On 2016/05/05 07:43, Peter Saint-Andre wrote:
I suggested that we add some text about this to 7564bis. Here is a
proposed paragraph for insertion in §5.2.3 ("Case-Mapping Rule"):
The Unicode toCaseFold() operation defined by the Unicode Default
Case Folding algorithm is most appropriate when an application needs
to compare two strings. When an application merely wishes to convert
uppercase and titlecase code points to the lowercase equivalents
while preserving lowercase code points, the Unicode toLower()
operation is more appropriate and is less likely to violate the
"Principle of Least Astonishment". Therefore, application developers
are advised to carefully consider whether they truly need to use the
toCaseFold() operation in a given situation, or whether the toLower()
operation would be more appropriate than the toCaseFold() operation.
Suggestions for improvement are welcome, especially from John. (E.g., we
might want to more explicitly call out comparison vs. other contexts in
the normative text elsewhere in §5.2.3).
I think 'compare' should be changed to 'search'. That's the prototypical
use case for CaseFold.
Also, the language in the "Therefore" sentence is somewhat convoluted.
It's unclear which alternative this text prefers. I suggest that if we
want to put the two alternatives on an equal footing (i.e. make sure the
application designer thinks carefully), then a more parallel sentence
structure, avoiding words such as "carefully", "truly", and "would",
would be more appropriate. What about:
Therefore, application developers
are advised to carefully consider whether toCaseFold() or
toLower() is more appropriate.
Regards, Martin.
_______________________________________________
precis mailing list
[email protected]
https://www.ietf.org/mailman/listinfo/precis