[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [idn] 1st stringprep issue: not answered and ignored
----- Original Message -----
From: "Paul Hoffman / IMC" <phoffman@imc.org>
> >
> >"NFKC(UAX21_casefold(NFC(x))) == NFKC(UAX21_casefold(x)) is not guaranteed."
>
> Quite true. I think the following simpler statement is also true:
> "UAX21_casefold(NFC(x))) == UAX21_casefold(x)) is not guaranteed."
>
> >If you preprocess IDN with NFC, you will get different namepreped ACE labels
> >than before in the IDN samples including <I><dot-above>.
>
> True, but irrelevant. Nameprep is called from IDNA. IDNA does not
> say, and has never said, "you can do NFC before processing the name".
> The fact that you might have done some processing on a name *before
> you processed IDNA*, and that pre-processing may cause you some
> surprises, is not an IDNA problem.
<I dotabove>==<I><dotabove> : these two represent the same character.
Likewise, <A acute>==<A><acute>: so do these two .
But, for the latter case, stringprep treat them as equal ones,but
for the former case, it doesn't. it is inconsistent, and moreover
errornous,because LOWERCASE(<I><dotabove>) != <i><dotabove>.
IDNA inherits the error of UAX21. Therefore , this is IDNA problem,
because IDNA adopted the problematic UAX21 without patches, even though
IETF is not directly responsible for the specific error in UAX21.