<html xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" xmlns="http://www.w3.org/TR/REC-html40">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta name="Generator" content="Microsoft Word 14 (filtered medium)">
<style><!--
/* Font Definitions */
@font-face
        {font-family:SimSun;
        panose-1:2 1 6 0 3 1 1 1 1 1;}
@font-face
        {font-family:SimSun;
        panose-1:2 1 6 0 3 1 1 1 1 1;}
@font-face
        {font-family:Calibri;
        panose-1:2 15 5 2 2 2 4 3 2 4;}
@font-face
        {font-family:Tahoma;
        panose-1:2 11 6 4 3 5 4 4 2 4;}
@font-face
        {font-family:"\@SimSun";
        panose-1:2 1 6 0 3 1 1 1 1 1;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0cm;
        margin-bottom:.0001pt;
        font-size:12.0pt;
        font-family:"Times New Roman","serif";}
a:link, span.MsoHyperlink
        {mso-style-priority:99;
        color:blue;
        text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
        {mso-style-priority:99;
        color:purple;
        text-decoration:underline;}
span.EmailStyle17
        {mso-style-type:personal-reply;
        font-family:"Calibri","sans-serif";
        color:#1F497D;}
.MsoChpDefault
        {mso-style-type:export-only;
        font-size:10.0pt;}
@page WordSection1
        {size:612.0pt 792.0pt;
        margin:72.0pt 72.0pt 72.0pt 72.0pt;}
div.WordSection1
        {page:WordSection1;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1" />
</o:shapelayout></xml><![endif]-->
</head>
<body lang="EN-GB" link="blue" vlink="purple">
<div class="WordSection1">
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D">Dear Kim,<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D">Good to hear that there is a tool which will mass-convert from Unicode U+ notation to characters!<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D">(Incidentally, in case anyone is interested in converting ad hoc codes, this is the easiest method I have discovered:<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D">To go from U+ notation to character, type the code without U+ in a recent version of Microsoft Word and press Alt-x (at least in the PC version).<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D">To go from character to U+ notation, type the character in the Characters field (below Mixed input) in the following website, click Convert and it gives you
 at least every code known to mankind:<o:p></o:p></span></p>
<p class="MsoNormal"><u><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D"><a href="http://www.rishida.net/tools/conversion">http://www.rishida.net/tools/conversion</a></span></u><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D">
 )<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D">In this/these XML table(s), it would be good to require that zh was stipulated, but also something is needed to indicate where Simplified Chinese and Traditional
 Chinese Preferred Variants are stored and, possibly, the relatively small number characters that may only be used e.g. in Singapore, in Hong Kong or in Taiwan.<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D">Regards,<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D">Chris.<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D">==<o:p></o:p></span></p>
<div>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D">Research Associate in Linguistic Computing, Dept of Information Studies, UCL, Gower St, London WC1E 6BT Tel +44 20 7679 1599 (int 31599) ucl.ac.uk/dis/people/chrisdillon</span><span style="color:black"><o:p></o:p></span></p>
</div>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D"><o:p> </o:p></span></p>
<div>
<div style="border:none;border-top:solid #B5C4DF 1.0pt;padding:3.0pt 0cm 0cm 0cm">
<p class="MsoNormal"><b><span lang="EN-US" style="font-size:10.0pt;font-family:"Tahoma","sans-serif"">From:</span></b><span lang="EN-US" style="font-size:10.0pt;font-family:"Tahoma","sans-serif""> Kim Davies [mailto:kim.davies@icann.org]
<br>
<b>Sent:</b> 07 March 2012 00:56<br>
<b>To:</b> Dillon, Chris<br>
<b>Cc:</b> vip@icann.org; idna-update@alvestrand.no<br>
<b>Subject:</b> Re: Draft on IDN Tables in XML<o:p></o:p></span></p>
</div>
</div>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">Hi Chris,<o:p></o:p></p>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
<div>
<div>
<p class="MsoNormal">On Mar 5, 2012, at 4:22 AM, Dillon, Chris wrote:<o:p></o:p></p>
</div>
<blockquote style="margin-top:5.0pt;margin-bottom:5.0pt">
<div>
<p class="MsoNormal"><span style="color:black"><br>
</span>In the RFC3743-style tables at <a href="http://www.iana.org/domains/idn-tables/">
http://www.iana.org/domains/idn-tables/</a> typically Simplified Chinese Preferred Variants and Traditional Chinese Preferred Variants have their own columns.<br>
<br>
<a href="http://tools.ietf.org/html/rfc5646">http://tools.ietf.org/html/rfc5646</a> gives the following example tags for Chinese; which should be standard for Chinese in this XML-based system?<o:p></o:p></p>
</div>
</blockquote>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal">I would assume simply "zh" would be sufficient. It is not a requirement to stipulate the script in a language tag. Also, the entire tag is discretionary — if, for example, you created a fictitious table that had no bearing on any specific
 language or script, you would not be required to specify one.<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<blockquote style="margin-top:5.0pt;margin-bottom:5.0pt">
<div>
<p class="MsoNormal">A problem that many tables share is that one sees only Unicode numbers, no characters, and so when humans work with the tables, they often need to turn Unicode codes into characters or characters into Unicode codes. Is there any way that
 the XML could contain both (I think there are Unicode fonts containing nearly all the characters)?<o:p></o:p></p>
</div>
</blockquote>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal">Creating a tool that takes the code points and turns them into something readable should be a trivial exercise, precisely because of the standardised format. I think it would be best to avoid superfluous descriptions of the individual codepoints
 in the spec itself, and would rather encourage tools that present the XML file in such a way as to be readable (as a web page, etc.)<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal">For example, I can print human-readable representations from the XML table as follows very simply:<o:p></o:p></p>
</div>
<div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal">kim@gumleaf:idntables[master*]$ python<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">Python 2.7.1 (r271:86832, Jun 16 2011, 16:59:05) <o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">[GCC 4.2.1 (Based on Apple Inc. build 5658) (LLVM build 2335.15.00)] on darwin<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">Type "help", "copyright", "credits" or "license" for more information.<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">>>> import idntables, unicodedata<o:p></o:p></p>
</div>
</div>
<div>
<div>
<p class="MsoNormal">>>> table = idntables.load("samples/nz_Latn_1.0.xml")<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">>>> for char in sorted(table._codepoints):<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">...     print "%s [U+%04X] %s" % (unichr(char), char, unicodedata.name(unichr(char)))<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">... <o:p></o:p></p>
</div>
<div>
<div>
<p class="MsoNormal">0 [U+0030] DIGIT ZERO<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">1 [U+0031] DIGIT ONE<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">2 [U+0032] DIGIT TWO<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">3 [U+0033] DIGIT THREE<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">4 [U+0034] DIGIT FOUR<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">5 [U+0035] DIGIT FIVE<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">6 [U+0036] DIGIT SIX<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">7 [U+0037] DIGIT SEVEN<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">8 [U+0038] DIGIT EIGHT<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">9 [U+0039] DIGIT NINE<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">a [U+0061] LATIN SMALL LETTER A<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">b [U+0062] LATIN SMALL LETTER B<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">c [U+0063] LATIN SMALL LETTER C<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">d [U+0064] LATIN SMALL LETTER D<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">e [U+0065] LATIN SMALL LETTER E<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">f [U+0066] LATIN SMALL LETTER F<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">g [U+0067] LATIN SMALL LETTER G<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">h [U+0068] LATIN SMALL LETTER H<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">i [U+0069] LATIN SMALL LETTER I<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">j [U+006A] LATIN SMALL LETTER J<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">k [U+006B] LATIN SMALL LETTER K<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">l [U+006C] LATIN SMALL LETTER L<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">m [U+006D] LATIN SMALL LETTER M<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">n [U+006E] LATIN SMALL LETTER N<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">o [U+006F] LATIN SMALL LETTER O<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">p [U+0070] LATIN SMALL LETTER P<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">q [U+0071] LATIN SMALL LETTER Q<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">r [U+0072] LATIN SMALL LETTER R<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">s [U+0073] LATIN SMALL LETTER S<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">t [U+0074] LATIN SMALL LETTER T<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">u [U+0075] LATIN SMALL LETTER U<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">v [U+0076] LATIN SMALL LETTER V<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">w [U+0077] LATIN SMALL LETTER W<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">x [U+0078] LATIN SMALL LETTER X<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">y [U+0079] LATIN SMALL LETTER Y<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">z [U+007A] LATIN SMALL LETTER Z<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">ā [U+0101] LATIN SMALL LETTER A WITH MACRON<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">ē [U+0113] LATIN SMALL LETTER E WITH MACRON<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">ī [U+012B] LATIN SMALL LETTER I WITH MACRON<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">ō [U+014D] LATIN SMALL LETTER O WITH MACRON<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">ū [U+016B] LATIN SMALL LETTER U WITH MACRON<o:p></o:p></p>
</div>
</div>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal">kim<o:p></o:p></p>
</div>
</div>
</div>
</div>
</body>
</html>