1. A method of converting a string of characters in a first language into a phonetic representation of a second language, the method comprising: receiving the string of characters in the first language; parsing the string of characters in the first language into string of graphemes in the first language; accessing a first data structure that maps graphemes in the first language to one or more universal phonetic representations based on an international phonetic alphabet, wherein the first data structure comprises a plurality of first nodes with each first node of the plurality of first nodes having a respective weight assigned that corresponds to a likely pronunciation of a grapheme; determining one or more phonetic representations for one or more graphemes in the string of graphemes in the first language based on the first data structure; accessing a second data structure that maps the one or more universal phonetic representations to one or more graphemes in the second language, wherein the second data structure comprises a plurality of second nodes with each second node of the plurality of second nodes having a respective weight assigned that corresponds to a likely representation of a grapheme in the second language; determining at least one grapheme representation in the second language for one or more of the one or more phonetic representation based on the second data structure; and constructing the phonetic representation of the string of characters in the second language based on the grapheme representation in the second language that was determined.