Charter changes and a possible new direction

Patrik Fältström patrik at frobbit.se
Wed Jan 14 22:00:19 CET 2009


On 14 jan 2009, at 21.50, Kenneth Whistler wrote:

>> 2.2. Unstable (B)
>>
>>      B: toNFKC(toCaseFold(toNFKC(cp))) != cp
>>
>> *THAT* is not easy to implement, and very hard to get right (and
>> understand).
>
> This is somewhat orthogonal to the evaluation of Paul's
> suggested alternative or the charter questions per se.
>
> But regarding this particular rule, while it is certainly
> true that implementing Unicode normalization and Unicode
> casefolding from scratch are complicated, difficult to get
> right and to understand, I rather doubt that most implementations
> of IDNA2008 would attempt that. There are perfectly good
> independent libraries that implement Unicode normalization
> and Unicode casefolding, and engineers would be well-advised
> to simply use them.
>
> It is not that Rule 2.2 per se is complex or that its intent
> in IDNA2008 is complex. Rather it is that implementing an
> API for toNFKC(cp) is complex. If you are just *using* such
> an API, its function in IDNA2008 is rather straightforward.

Exactly, and if you then implement something using a library (as you  
suggest) I see no difference between calling something that do  
IDNA2003 or IDNAv2 or IDNA2008.

I.e. the question is "what is complicated"? And the answer is of  
course in the eyes of the one asking it. Context dependent.

    Patrik



More information about the Idna-update mailing list