[Tracker] Additions to Tracker Ontology for Chinese Use Cases



Hello Tracker Devs,

I am working with a customer who would like to add two additional properties to Tracker's nco:Contact class 
to support additional ways of looking up and sorting Chinese contacts. They need to store a Pinyin name 
(http://en.wikipedia.org/wiki/Pinyin) and a T9 representation of the Pinyin name for a contact. The T9 
representation corresponds to how the numbers on a telephone keypad are mapped to English characters of the 
contact's Pinyin name (i.e. 2 maps to 'A', 'B', and 'C'; 3 maps to 'D', 'E', and 'F'; etc.).

Here are some examples showing "name in Chinese" -> "name in pinyin" -> "T9 representation":

刘静  ->  Liu Jing  ->  5485464
罗喧  ->  Luo Xuan  ->  5869826
马芳芳  ->  Ma Fang Fang  -> 6232643264

The first use case is that it is apparently very common for phone users in China to look up names in their 
contact list using the T9 dial pad. So in data from above, if the user clicks '5' on the dial pad, they want 
to perform a search using Tracker to get the results "Liu Jing" and "Luo Xuan". When the user then clicks the 
'8' on the dial pad Tracker would be searched again and only return "Luo Xuan".

My customer also wants to support searching for Chinese contacts using their Pinyin names. So if the user 
types "L" using the virtual or physical keyboard on the phone, again both "Liu Jing" and "Luo Xuan" should be 
returned. If the user adds an "i", another Tracker search will be performed which should return only "Liu 
Jing".

The other important use for the Pinyin name is for sorting the contacts list. My customer wants to sort 
Chinese names among English names using their Pinyin representation. So if the English Names "Matt Compton" 
and "John Doe" are added to the list of Chinese names above, the list of names should be sorted 
alphabetically as follows:

1. John Doe
2. Liu Jing
3. Luo Xuan
4. Ma Fang Fang
5. Matt Compton

They don't want to have all of the English names listed and then have all of the Chinese names listed (or 
vice versa).

I'm hoping that the Tracker project would support adding these fields to the official ontology so we don't 
have to modify and maintain our own version of Tracker's ontology. If you are OK in general with these two 
additional fields I can submit a patch that adds them to the ontology files in the Tracker git repo.

Thanks in advance for your help,

Matt



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]