title: Latin<->Han Conversion in ICU?
body: <p><br>
  I am just getting started implementing ICU transforms using ICU4C in a C++ program. I am particularly looking at transliteration to and from Chinese.  </p>
  
  <p>According to <a href="http://icu-project.org/charts/comparison/transforms.html" rel="nofollow">this document</a>, the package supports both "Han-Latin" and "Latin-Han" conversion. As a student of Chinese, this seems surprising to me, as Latin-Han conversion is particularly difficult to do without highly advanced statistical techniques (The closest I have seen is Google Transliterate, which actually does a great job with this even without user input, but this is unfeasible for the present project), much less conversion without tone marks. I am skeptical that this is even possible, without resorting to the de facto foreign-name borrowing characters such as 比尔·莫瑞. This is the approach taken by Google Maps in their international domains, as we can see in this paper <a href="http://static.googleusercontent.com/external_content/untrusted_dlcp/www.google.de/de/de/research/archive/papers/36450.pdf" rel="nofollow">(PDF)</a></p>
  
  <p>Anyhow, I was willing to suspend disbelief, and after consulting documentation and tutorials, I was able to construct two Transliterator objects (to and from) and perform simple transliteration using them.  </p>
  
  <p>While Han-Latin worked pretty passably (about 80% accuracy for simple data), Latin-Han seemed not to work at all, returning the same "latin" string that was input, which is consistent with the results I get using the <a href="http://demo.icu-project.org/icu-bin/translit" rel="nofollow">online transform sample</a>, and consistent with what I know about Chinese. I managed to find <a href="http://www.opensource.apple.com/source/ICU/ICU-3.13/icuSources/data/translit/t_Hani_Latn.txt" rel="nofollow">this</a> table, which I think is what is used for both sources, as we can see <a href="http://www.opensource.apple.com/source/ICU/ICU-3.13/icuSources/data/translit/translit_index.txt?txt" rel="nofollow">here</a>:</p>
  
  <pre><code>{ "Latin-Han", "file", "t_Hani_Latn", "REVERSE" },
  { "Han-Latin", "file", "t_Hani_Latn", "FORWARD" },
  </code></pre>
  
  <p>I would presume this meant that given a pinyin string it could potentially work to reproduce the original, but this does not seem to be the case. </p>
  
  <p>I guess my general question is this: is this kind of transform even possible with ICU, or anything besides Google Transliterate? What is the expected output? Relatedly, is there a listing somewhere of the script-pairs that ICU <em>actually</em> supports, if this is not really possible? </p>
  
  <p>Thank you for your time</p>