<br><br><div class="gmail_quote">2009/8/31 Patrik Fältström <span dir="ltr">&lt;<a href="mailto:patrik@frobbit.se">patrik@frobbit.se</a>&gt;</span><br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">
<div><div></div><div class="h5">On 30 aug 2009, at 21.54, Patrik Fältström wrote:<br>
<br>
&gt; On 30 aug 2009, at 20.22, Wil Tan wrote:<br>
&gt;<br>
&gt;&gt; However, if certain characters in an A-label have<br>
&gt;&gt; been uppercased, the Punycode decoding algorithm (due to its mixed-<br>
&gt;&gt; case<br>
&gt;&gt; annotation feature) may produce invalid U-label because the ASCII<br>
&gt;&gt; characters<br>
&gt;&gt; will be in capital letter form.<br>
&gt;<br>
&gt; Can you give examples of when this happens? I can not see this<br>
&gt; result in the punycode algorithm. I also just did some tests with<br>
&gt; mixed ascii, latin and chinese characters, and can not reproduce.<br>
<br>
</div></div>I still do not understand what the problem is, and I am waiting for<br>
someone to give examples of the above scenario.<br>
<br>
I.e. if you have U-label 1:<br>
<br>
- fältström<br>
<br>
turn it into an A-label:<br>
<br>
- xn--fltstrm-5wa1o<br>
<br>
randomly casefold the characters:<br>
<br>
- xN--fLtStRm-5Wa1O<br>
<br>
turn into U-label:<br>
<br>
- fäLtStRöm<br>
<br>
This only differs in the casing of the ascii characters, i.e. still<br>
follows the matching rules for DNS for ascii, and have exact matches<br>
for the rest.<br>
<br>
So, casefold of the ascii in the A-label only result in casefold of<br>
the ascii in the U-label.<br>
<font color="#888888"><font class="Apple-style-span" color="#000000"><font class="Apple-style-span" color="#888888"></font></font></font></blockquote><div><br></div><div>The problem is that, according to idnabis-defs-10, <a href="http://2.3.2.1">2.3.2.1</a>:</div>
<div><br></div><div>  .. an A-label must be capable of being produced by conversion from</div><div>  a U-label and a U-label must be capable of being produced by</div><div>  conversion from an A-label.</div><div><br></div>
<div><br></div><div>xN--fLtStRm-5Wa1O is not a valid A-label. If the conversion from A-label to U-label would first lowercase the A-label before applying Punycode decoding, that symmetry constraint could be met.</div><div>
<br></div><div><br></div><div>=wil</div></div>