Comments on draft-ietf-idnabis-defs-10
John C Klensin
klensin at jck.com
Mon Aug 31 08:06:20 CEST 2009
--On Monday, August 31, 2009 07:10 +0200 Patrik Fältström
<patrik at frobbit.se> wrote:
>
> On 31 aug 2009, at 07.05, Patrik Fältström wrote:
>
>> So, casefold of the ascii in the A-label only result in
>> casefold of the ascii in the U-label.
>
> Ok, after a gulp of coffee, I see your point.
>
> In the tables document we have the following:
>
>> 2.5. LDH (E) E:
>>
>> cp is in {002D, 0030..0039, 0061..007A}
>
> That make for example 'F' illegal in an U-label.
>
> By changing this rule to the following, uppercase ASCII would
> be ok to have in an U-label.
>
> 2.5. LDH (E) E:
>
> cp is in {002D, 0030..0039, 0041..005A, 0061..007A}
But that would be a mistake, IMO, because it would result in
U-labels containing uppercase ASCII that produce different
A-labels from the same U-label with lowercase ASCII. Those
A-labels would match in the DNS, which uses case-insensitive
comparison, but not in ordinary string comparisons (because they
are different).
Put differently, that would give us a pair of U-labels that do
not compare equal on bitstring comparison (the only kind of
comparison defined for U-labels) but which produce equivalent
(although not identical) A-labels. And, because of the
compression "feature", we would lose unambiguous symmetry of
A-labels and U-labels because, depending on where it came from,
a given A-label (and its DNS-equivalents) could produce
different U-labels.
This would also imply that
"Fältström" and "fältström"
would be valid U-labels but that "FÄLTSTRÖM" would not be
because Ä and Ö are both DISALLOWED. I don't think we want to
go there.
john
More information about the Idna-update
mailing list