<div dir="ltr"><br><div class="gmail_extra"><br><br><div class="gmail_quote">2014-01-16 Mark Davis ☕ <span dir="ltr"><<a href="mailto:mark@macchiato.com" target="_blank">mark@macchiato.com</a>></span><br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">
<div dir="ltr"><div style="font-family:'times new roman',serif">I will be brief, because I don't have much time for this topic this week. (It should teach me to be quiet...)</div><div class="gmail_extra"><div class="im">

<div><div dir="ltr"><font face="'times new roman', serif"><div style="background-color:transparent;margin:0px"><br></div><div style="background-color:transparent;margin:0px"><a href="https://google.com/+MarkDavis" target="_blank">Mark</a></div>

<div style="background-color:transparent;margin:0px"><i><br></i></div><div style="background-color:transparent;margin:0px"><i>— Il meglio è l’inimico del bene —</i></div></font><div><div><font face="'times new roman', serif"><i><span style="font-style:normal"><i></i></span><i></i></i></font></div>

</div></div></div>
<br><br></div><div class="gmail_quote"><div class="im">On Thu, Jan 16, 2014 at 3:27 PM, Anne van Kesteren <span dir="ltr"><<a href="mailto:annevk@annevk.nl" target="_blank">annevk@annevk.nl</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">

<div>On Thu, Jan 16, 2014 at 1:24 PM, Mark Davis ☕ <<a href="mailto:mark@macchiato.com" target="_blank">mark@macchiato.com</a>> wrote:<br>
> It is not unlikely that an implementation that you think is following<br>
> IDNA2003 (with a non-standard, larger repertoire) is actually following UTS<br>
> 46.<br>
<br>
</div>I know for a fact that Gecko has not changed its implementation (but<br>
has updated Unicode since the release of IDNA2003, doh). It "passes"<br>
the Pile of Poo Test™:<br>
<br>
<a href="http://💩.com/">test</a><br>
<script>alert(document.querySelector("a").host)</script><br></blockquote><div><br></div></div><div style="font-family:'times new roman',serif">The problem is, as Andrew and others have said, IDNA2003 does not specify *how* one would update to a new version of Unicode: that is, exactly which new characters would be accepted and which not, and how to case-map them.</div>
<div class="im">
<div style="font-family:'times new roman',serif"><br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">


<br>
Alerts: <a href="http://xn--ls8h.com" target="_blank">xn--ls8h.com</a><br>
<br>
Chrome alerts the same and reportedly has updated to UTS46 (compatible<br>
mode), so as you point out the differences are probably minor and<br>
require checking of some obscurer code points.<br>
<div><br>
<br>
> There is a table in<br>
> <a href="http://unicode.org/reports/tr46/#Table_IDNA_Comparisons" target="_blank">http://unicode.org/reports/tr46/#Table_IDNA_Comparisons</a><br>
<br>
</div>That is an interesting table. Ⅎ (line c) seems indeed disallowed in<br>
Chrome, yet 㛼 (line d) which should also be disallowed per that table<br>
works fine. Both work fine in Firefox. Both Chrome and Firefox map !<br>
(line b) to ! and do not cause parsing to fail because of it, even<br>
though the table suggests it should. (Presumably do it making<br>
assumptions about ASCII that browsers do not share.)<br></blockquote><div><br></div></div><div style="font-family:'times new roman',serif">I'd have to look at those cases.</div></div></div></div></blockquote>
<div><br></div><div>You used  U+3BFC (  㛼 ) instead of U+2F868 ( 㛼 ). Try this 㛼.com instead. </div><div><br></div><div><br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">
<div dir="ltr"><div class="gmail_extra"><div class="gmail_quote"><div class="im"><div style="font-family:'times new roman',serif">
​​</div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">
<br>
Firefox and Safari map ؂ (line i) and Chrome does not.<br>
<div><br>
<br>
> One way to look at UTS 46 is as a migration layer to support client<br>
> implementations during the transition of registries from IDNA2003 to<br>
> IDNA2008, plus a mapping layer that can be used with straight IDNA2008.<br>
<br>
</div>I'm not sure what this means. Do you think we will ever stop mapping<br>
U+3002 to U+002E?</blockquote><div><br></div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">

Or A to a?<br></blockquote><div><br></div></div><div style="font-family:'times new roman',serif">I'm assuming that you mean the ascii characters (I'm not going to check whether you have just look-alikes.). ASCII case mapping is covered at a different level.​​</div>

<div style="font-family:'times new roman',serif"><br></div><div style="font-family:'times new roman',serif">I don't think clients would stop <div style="display:inline">
​mapping, and IDNA2008 permits it. That's why I said "</div><font face="times new roman, serif">plus a mapping layer that can be used with straight IDNA2008<div style="display:inline">​"​</div>
</font><br></div><div><br></div><div style="font-family:'times new roman',serif"><br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">


<div><br>
<br>
>> I think I did mention earlier on UTS46 might be okay, depending on the<br>
> details. I am hoping to hear from Mark on the matter.<br>
><br>
> I'm not sure what specific questions you have about UTS 46. Can you<br>
> reiterate them?<br>
<br>
</div>You keep talking about UTS 46 as if it were a migration layer, which<br>
suggests it might go away. That does not really seem acceptable to me.<br></blockquote><div><span style="font-family:'times new roman',serif"><br></span></div><div><span style="font-family:'times new roman',serif"><div style="font-family:'times new roman',serif;display:inline">

UTS 46 will stay around, if only for the mapping layer.</div></span></div><div><span style="font-family:'times new roman',serif"><div style="font-family:'times new roman',serif;display:inline">
<br></div></span></div><div><span style="font-family:'times new roman',serif"><div style="font-family:'times new roman',serif;display:inline">Whether the rest would be used by clients really depends on the progress made by registries. As for the deviation-character support, I think implementations could stop supporting them if the affected </div>

</span><span style="font-family:'times new roman',serif">registries</span><span style="font-family:'times new roman',serif"><div style="font-family:'times new roman',serif;display:inline">
 enforced bundle-or-block. As to the additional symbols, </div></span><span style="font-family:'times new roman',serif">implementations could stop <div style="font-family:'times new roman',serif;display:inline">

​supporting</div> them</span><span style="font-family:'times new roman',serif"><div style="font-family:'times new roman',serif;display:inline"> if the </div></span><span style="font-family:'times new roman',serif">registries</span><span style="font-family:'times new roman',serif"><div style="font-family:'times new roman',serif;display:inline">

 forbade them.</div></span></div><div><span style="font-family:'times new roman',serif"><div style="font-family:'times new roman',serif;display:inline">​</div>​​</span><br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">


<br>
It enforces DNS length restrictions on domain names (IDNA2003 did the<br>
same), which does not appear to be implemented in browsers. They're<br>
fine with a label longer than a hundred code points. I don't think<br>
this should be outlawed at the parsing layer because the name might be<br>
used outside the DNS.<br></blockquote><div><br></div><div style="font-family:'times new roman',serif">That was never a topic of discussion in any of the standards discussions.</div><div style="font-family:'times new roman',serif">

​​</div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">
<br>
I wish it contained the actual ASCII restrictions we need in practice<br>
rather than deferring those to the application, but I suppose I can<br>
define those in the URL Standard and use UseSTD3ASCIIRules=false.<br>
<br>
Another wish I have is that the algorithms are a bit clearer in terms<br>
of input and output. What argument does ToASCII take? What about<br>
ToUnicode?<br>
<br>
E.g. how would you replace "domain to ASCII" and "domain to Unicode"<br>
in <a href="http://url.spec.whatwg.org/#concept-host-parser" target="_blank">http://url.spec.whatwg.org/#concept-host-parser</a> with UTS46 and<br>
ensure the algorithm still has the same kind of expected output?</blockquote><div><br></div><div style="font-family:'times new roman',serif"><a href="http://unicode.org/reports/tr46/#ToASCII" target="_blank">http://unicode.org/reports/tr46/#ToASCII</a></div>

<div style="font-family:'times new roman',serif"><br></div><div style="font-family:'times new roman',serif">If there are specific areas where you find the spec unclear, I suggest that you provide feedback as instructed at the top of the spec. Subsequent versions can then clarify those points.</div>

<div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"> It's<br>
not entirely clear to me how to make use of your work.<br></blockquote><div><br></div><div style="font-family:'times new roman',serif">You may not have meant a singular 'you', but just for clarity: it's not "my" work; it is the work of the Unicode consortium, with many individuals and companies involved.</div>

<div style="font-family:'times new roman',serif">​​</div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">


<span><font color="#888888"><br><span class=""><font color="#888888">
<br>
--<br>
<a href="http://annevankesteren.nl/" target="_blank">http://annevankesteren.nl/</a><br>
</font></span></font></span></blockquote></div><br></div></div>
</blockquote></div><br></div></div>