<html><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; ">Mark,<div><br></div><div>thanks for this - my sense is that almost anything we try to do is defeated in cut and paste scenarios where context may be lost.</div><div><br></div><div>vint</div><div><br></div><div><br><div><div>On Feb 14, 2010, at 3:23 PM, Mark Davis ☕ wrote:</div><br class="Apple-interchange-newline"><blockquote type="cite">A few comments on remarks here:<div><br></div><div>&gt;<span class="Apple-style-span" style="font-family: arial, sans-serif; font-size: 13px; border-collapse: collapse; ">Well as we know the IDNA protocol didn't adapt&nbsp;<span class="il" style="background-image: initial; background-attachment: initial; background-origin: initial; background-clip: initial; background-color: rgb(255, 255, 204); background-position: initial initial; background-repeat: initial initial; ">bidi</span>&nbsp;algorithm (UAX #9) fully. They disallowed all&nbsp;<span class="il" style="background-image: initial; background-attachment: initial; background-origin: initial; background-clip: initial; background-color: rgb(255, 255, 204); background-position: initial initial; background-repeat: initial initial; ">bidi</span>&nbsp;markers (LRM,RLM,...) which are they used to solve problems from this kind.<br> </span><div><br></div><div>&gt;&nbsp;<span class="Apple-style-span" style="font-family: arial, sans-serif; font-size: 13px; border-collapse: collapse; ">Well I don't think so it can be done in UAX#9 (well if URI has its own rules) the UAX#9 does know about the nature of characters (Neutral,RTL,LTR,week..) the context direction etc.. and thus there are possible ways to fix this issues in UAX#9 rather than IDNA itself.</span></div> <span class="Apple-style-span" style="font-family: arial, sans-serif; font-size: 13px; border-collapse: collapse; "><br></span><div><span class="Apple-style-span" style="font-family: arial, sans-serif; font-size: 13px; border-collapse: collapse; ">Changing UAX#9 (aka UBA) at this point would be very difficult, because of stability concerns. We've seen before where very minor changes to it have caused many problems for users, because it changes the layout of existing documents. While not impossible, one would have to make a very good case for the change, and be prepared to demonstrate, with compelling data, that the benefit would be worth the cost.</span></div> <div><span class="Apple-style-span" style="font-family: arial, sans-serif; font-size: 13px; border-collapse: collapse; "><br></span></div><div><span class="Apple-style-span" style="font-family: arial, sans-serif; font-size: 13px; border-collapse: collapse; ">The UBA was designed for plain text, not special syntax. And no matter how it was structured, it was always clear that one would need to be able to override the default; to that end, the marks and overrides were added. Because those are disallowed in IDNA, this tool is not available, however. &nbsp;The reason to not allow those in IDNA was because of the opportunity for constructing, artificially, very confusable IRIs.</span></div> <div><span class="Apple-style-span" style="font-family: arial, sans-serif; font-size: 13px; border-collapse: collapse; "><br></span></div><div><span class="Apple-style-span" style="font-family: arial, sans-serif; font-size: 13px; border-collapse: collapse; ">(BTW Looking back at it, one of the problems with the UBA was that it tried to do too much. There is a tension between heuristics and predictability, and if we could go back in time and redo it, one of the things I'd change would be to reduce the heuristics, especially around numbers, so as to make it more predictable for users.)</span></div> <div><span class="Apple-style-span" style="font-family: arial, sans-serif; font-size: 13px; border-collapse: collapse; "><br></span></div><div><font class="Apple-style-span" face="arial, sans-serif"><span class="Apple-style-span" style="border-collapse: collapse;">However, it is possible and conformant to UBA to have a higher level protocol that reorders labels in a domain name, and in the path, and in the query, because it allows for such specialized overrides specifically. So you could take the following internal string with characters from left to right</span></font></div> <div><font class="Apple-style-span" face="arial, sans-serif"><span class="Apple-style-span" style="border-collapse: collapse;"><br></span></font></div><div><font class="Apple-style-span" face="arial, sans-serif"><span class="Apple-style-span" style="border-collapse: collapse;">http://a.B.C.d/e/F/G/h?i=J&amp;K=l&amp;M=n&amp;o=P</span></font></div> <div><font class="Apple-style-span" face="arial, sans-serif"><span class="Apple-style-span" style="border-collapse: collapse;"><br></span></font></div><div><font class="Apple-style-span" face="arial, sans-serif"><span class="Apple-style-span" style="border-collapse: collapse;">and have them display</span></font></div> <div><font class="Apple-style-span" face="arial, sans-serif"><span class="Apple-style-span" style="border-collapse: collapse;"><br></span></font></div><div><font class="Apple-style-span" face="arial, sans-serif"><span class="Apple-style-span" style="border-collapse: collapse;">...F/e/d.C.B.a//:http</span></font></div> <div><font class="Apple-style-span" face="arial, sans-serif"><span class="Apple-style-span" style="border-collapse: collapse;"><br></span></font></div><div><font class="Apple-style-span" face="arial, sans-serif"><span class="Apple-style-span" style="border-collapse: collapse;">This would be possible, but is not necessarily a good idea. The problem comes in the interaction between those environments that (a) look for IRIs and handle them this way, and (b) environments that don't parse for IRIs, or don't recognize them or their fragments, or don't display them in the 'new' way once they have them. There is already the issue of display being different in RTL vs LTR paragraphs; you don't want typing in one environment within RTL to give yet different results than in another within RTL.</span></font></div> <div><font class="Apple-style-span" face="arial, sans-serif"><span class="Apple-style-span" style="border-collapse: collapse;"><br></span></font></div><div><font class="Apple-style-span" face="arial, sans-serif"><span class="Apple-style-span" style="border-collapse: collapse;">And we know that recognizing IRIs (and fragments thereof) occurring in plain text is difficult.&nbsp;You don't want <a href="http://PAYPAL.JOE.com">PAYPAL.JOE.com</a> to appear as <a href="http://PAYPAL.JOE.com">PAYPAL.JOE.com</a>&nbsp;in my email, and <a href="http://JOE.PAYPAL.com">JOE.PAYPAL.com</a>&nbsp;in the address bar, and so on.</span></font></div> <div><font class="Apple-style-span" face="arial, sans-serif"><span class="Apple-style-span" style="border-collapse: collapse;"><br></span></font></div><div><font class="Apple-style-span" face="arial, sans-serif"><span class="Apple-style-span" style="border-collapse: collapse;">So any design for having a special ordering for IRI BIDI elements has to take a host of issues into account. I'm not saying that it can't be done, but it is a big job, and any transition has be be extremely carefully considered. Various people in Unicode have considered it at one time or another, but we've just never seen a clear path forward.</span></font></div> <div><font class="Apple-style-span" face="arial, sans-serif"><span class="Apple-style-span" style="border-collapse: collapse;"><br></span></font></div><div><font class="Apple-style-span" face="arial, sans-serif"><span class="Apple-style-span" style="border-collapse: collapse;">Mark</span></font></div> <div><span class="Apple-style-span" style="font-family: arial, sans-serif; font-size: 13px; border-collapse: collapse; color: rgb(51, 51, 51); "><br></span></div></div> _______________________________________________<br>Idna-update mailing list<br><a href="mailto:Idna-update@alvestrand.no">Idna-update@alvestrand.no</a><br>http://www.alvestrand.no/mailman/listinfo/idna-update<br></blockquote></div><br></div></body></html>