blob: 026394a11e4e6a6fac4857f32213434176036fc4 [file] [log] [blame]
<html>
<head>
<meta http-equiv="Content-Language" content="en-us">
<meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
<meta name="COPYRIGHT" content="Copyright 2006-2007, International Business Machines Corporation and others. All Rights Reserved.">
<title>New Transliteration Test Files</title>
</head>
<body bgcolor="#FFFFFF">
<h2>New Transliteration Test Files</h2>
<p>The Test_*.html files show the transliteration of characters for given
languages. The sample for each language consists of &quot;What Is Unicode&quot;
in Thai, followed by other available text. The text is broken apart into
sentences for ease of viewing (note: we know of some problems with the sentence
rules for Japanese and Chinese). The left column is the original, and the right
is the romanization. The program also converts back to the original script. If
there is a discrepancy between the source and the reverse transformation, that
is indicated by making the background <font color="#FF0000"><b>red</b></font>
from that point on.</p>
<blockquote>
<p><i><b>Note: </b>If you have some more text that you would like added to the
sample, just let me know. I am particularly interested in name lists, since
they are the typical source.</i></p>
</blockquote>
<h3>Standards</h3>
<p>The goal is to follow a given standard, such as ISO* or UNGEGN wherever
possible. We also need to round-trip, so in some cases, that means adding some
additional accent marks to disambiguate characters. And often the source
standards are missing some characters, such as characters with combining Hamzas
in Arabic. Remember that the goal for these is transliteration (unambiguously
representing all the letters in the original), not transcription (representing
the best pronunciation).</p>
<ul>
<li><b><a href="Test_Thai-Latin.html">Thai</a>:</b> ISO 11940 &lt; <a href="http://homepage.mac.com/sirbinks/pdf/Thai.r2.pdf">http://homepage.mac.com/sirbinks/pdf/Thai.r2.pdf</a>
&gt; plus a few items:
<ul>
<li>Accents may be added to the Latin for disambiguation.</li>
<li>In the next release, we'd like to do the UNGEGN version &lt; <a href="http://www.eki.ee/wgrs/rom1_th.pdf">http://www.eki.ee/wgrs/rom1_th.pdf</a>
&gt; which is probably more useful (and readable), and follows more
closely the Thai standard.</li>
<li>Spaces are provided at word-breaks, using the Thai BreakIterator.</li>
<li>An inherent vowel (&#7885;) is added, as in UNGEGN. The dot is for
disambiguation.
<ul>
<li><i>Note: if the inherent vowel positions cannot be algorithmically
determined, let me know and I will remove them.</i></li>
</ul>
</li>
</ul>
</li>
<li><b><a href="Test_Arabic-Latin.html">Arabic</a>: </b>Generally follows
UNGEGN &lt; <a href="http://www.eki.ee/wgrs/rom1_ar.pdf">http://www.eki.ee/wgrs/rom1_ar.pdf</a>
&gt;
<ul>
<li>Accents may be added to the Latin for disambiguation.</li>
<li>Occasionally deviates in the direction of ISO 233 &lt; <a href="http://homepage.mac.com/sirbinks/pdf/Arabic.pdf">http://homepage.mac.com/sirbinks/pdf/Arabic.pdf</a>
&gt;
<ul>
<li>with underdot instead of cedilla for letter like SAD, since those
are explicitly in Unicode for transliteration of Arabic</li>
<li>adding extra non-Arabic-language letters, like PEH. Note: not all
extended Arabic characters are handled yet.</li>
</ul>
</li>
<li>Does <i>not</i> do assimilation of &quot;al&quot;, nor hyphenation of
it.
<ul>
<li>While it could be done, we need to determine whether a prefix
&quot;al&quot; could occur other than as the definite article (since
no space is used).</li>
</ul>
</li>
<li>This is transliteration. For <i>transcription</i> one would want an
engine that added points appropriately to the Hebrew.</li>
</ul>
</li>
<li><b><a href="Test_Hebrew-Latin.html">Hebrew</a></b><b>: </b>Generally
follows UNGEGN &lt; <a href="http://www.eki.ee/wgrs/rom1_he.pdf">http://www.eki.ee/wgrs/rom1_he.pdf</a>
&gt;, with some exceptions:
<ul>
<li>Accents may be added to the Latin for disambiguation.</li>
<li>Combinations of dagesh, shin/sin dot that would produce different
letters are not yet called out.</li>
<li>Note that the final forms are not preserved. Thus, when going from
Latin to Hebrew, a character is given final form depending on its
position.
<ul>
<li>E.g. &#1502;&#1501;&#1502;&#1501; =&gt; mmmm =&gt;
&#1502;&#1502;&#1502;&#1501;</li>
</ul>
</li>
<li>This is transliteration. For <i>transcription</i> one would want an
engine that added points appropriately to the Hebrew.</li>
<li>See also &lt; <a href="http://homepage.mac.com/sirbinks/pdf/Hebrew.r1.pdf">http://homepage.mac.com/sirbinks/pdf/Hebrew.r1.pdf</a>
&gt; for the ISO version. The Chicago Manual of Style has a clear table
of mappings for the vowel marks.</li>
</ul>
</li>
<li><b><a href="Test_Han-Latin.html">Han</a>:</b> Uses the <a href="http://www.mandarintools.com/cedict.html">CEDICT</a>
data plus Unicode Unihan <i>kMandarin</i> values for pinyin. Doesn't
roundtrip!
<ul>
<li><i>Note: </i>the Chinese pronunciation of Han characters varies by
context and grammar, though nowhere near as much a Japanese.
<ul>
<li>Ideally we'd have an underlying engine for this. In 2.4 we will
have a plug-in interface so that people could add one, such as the
IBM engine.</li>
<li>The data from CEDICT and Unihan don't list the most frequent
choice first, so we will be updating that.</li>
</ul>
</li>
</ul>
</li>
<li><a href="Test_Greek-Latin_UNGEGN.html"><b>Greek/UNGEGN</b></a>: Uses a
modern Greek transliteration, based on the UNGEGN rules at &lt; <a href="http://www.eki.ee/wgrs/rom1_el.pdf">http://www.eki.ee/wgrs/rom1_el.pdf</a>
&gt;. This version will not roundtrip ancient Greek.</li>
<li><a href="Test_Greek-Latin.html"><b>Greek</b></a>: Uses a classic Greek
transliteration. This version will not roundtrip modern Greek.</li>
</ul>
<h3><b>Notes</b></h3>
<ol>
<li>For readability, the files have a few other things besides just the
transliteration:
<ul>
<li>The first word of the sentences are titlecased, as are names (where we
have a name-list, such as in Thai).</li>
<li>The Latin in the original is mapped to the private-use zone before
conversion, and then again after conversion. This does have the downside
that any rules (such as in Han) that need to know the context (e.g. for
inserting spaces or capitalization) will gum up a little bit. This is
just an artifact of the test display.</li>
</ul>
</li>
<li>I don't think that ISO 11940 is a particularly good way to romanize, but
it is at least complete and a standard. So what I am interested in just for
now is whether the samples in the file follow it (with the above
exceptions).</li>
<li>Some of the files also have a set of characters at the end, one character
per row, with a following row listing the hex and name.</li>
<li>The source rules for all of these is in the following URL. So if you want
to know the details of how the characters are handled, that is the place to
look.
<ul>
<li><a href="http://source.icu-project.org/repos/icu/icu/trunk/source/data/translit/">http://source.icu-project.org/repos/icu/icu/trunk/source/data/translit/</a></li>
</ul>
</li>
</ol>
</body>
</html>