referencing IDNA2008 (and IDNA2003?)

John C Klensin klensin at
Fri Oct 22 21:47:04 CEST 2010

--On Friday, October 22, 2010 22:59 +0330 Alireza Saleh
<saleh at> wrote:

> Thanks John for the answer. By valid i meant a label that
> corresponds to a valid U-label. However it maybe valid under
> IDNA2003 or 2008

Well, a valid U-label (strictly speaking, defined only for
IDNA2008) cannot contain upper-case characters.  For IDNA2003,
there is a fuzzy concept about native-character strings that can
be obtained by applying ToUnicode to a valid Punycode-encoded
string, and they can't contain upper-case characters either.
The only edge case is associated with strings that IDNA2003
ToASCII will accept as valid and then map into something else
before Punycode conversion.

Of course, if we continue to go down the path that Adam is
apparently on, so that all processing is in A-labels (or the
output of ToASCII), the distinction above is not relevant.


> On 10-10-22 10:53 PM, John C Klensin wrote:
>> --On Friday, October 22, 2010 22:03 +0330 Alireza Saleh
>> <saleh at>  wrote:
>>> So what happened if someone types a vali PunyCode but with
>>> capital letters as an address.
>> Do you mean "Something that looks like an A-label with one or
>> all letters in capitals"?  If so, it isn't a valid IDNA2008
>> A-label. However, for IDNA2003 compatibility, I would strongly
>> recommend lower-casing ASCII strings that appear to be
>> A-labels before processing them) -- fortunately, one of the
>> few things in this space we are pretty sure we know how to do
>> is to convert all-ASCII strings to lower case.  :-)
>> If you mean "something that looks like a U-label but that
>> contains letters in capitals", it is invalid under IDNA2008
>> (See Rule B, Section 2.2 of RFC 5892).  It would be valid
>> under IDNA2003 (because case folding is built into Nameprep),
>> but cannot be derived by applying ToUnicode to a valid string
>> produced by ToASCII (more or less an A-label).
>> So I'm not quite sure what you mean by "valid PunyCode".
>>      john
>> _______________________________________________
>> Idna-update mailing list
>> Idna-update at
> _______________________________________________
> Idna-update mailing list
> Idna-update at

More information about the Idna-update mailing list