1 <?xml version="1.0" encoding="UTF-8" ?> 2 <!DOCTYPE supplementalData SYSTEM "../../common/dtd/ldmlSupplemental.dtd"> 3 <!-- 4 Copyright 1991-2016 Unicode, Inc. 5 CLDR data files are interpreted according to the LDML specification (http://unicode.org/reports/tr35/) 6 For terms of use, see http://www.unicode.org/copyright.html 7 --> 8 <supplementalData> 9 <version number="$Revision: 12352 $"/> 10 <transforms> 11 <transform source="und_FONIPA" target="fa" direction="forward" alias="fa-t-und-fonipa"> 12 <tRule><![CDATA[ 13 # Vowels 14 # ------ 15 # In these rules, we produce both for short and for long vowels. 16 # This would be wrong for writing Farsi or Arabic, but when transliterating 17 # foreign words and names, it is strongly preferred to vowel marks. 18 # Short schwa [] and a few other, schwa-like vowels get omitted entirely 19 # unless at the end of the word, in which case we emit whose Farsi 20 # word-final pronunciation comes close to []. At the beginning of words, 21 # Farsi speakers prefer to see for [] and a few other similar-sounding 22 # dark vowels; note that this use of is quite different from Arabic. 23 24 $IVowel = [i e {e}]; 25 $UVowel = [y {} {} u {} {} {} {} o {} {} {o} w {w} ]; 26 $AVowel = [ ]; 27 $DarkAVowel = [ a {} {}]; # instead of at beginning of words 28 $SchwaVowel = [ {}]; 29 $Click = [ ]; 30 $Boundary = [^[:L:][:M:][:N:]]; 31 32 ::NFD; 33 [ ] ; 34 j; 35 m; 36 n; 37 ; 38 ::NFC; 39 40 # TODO: Diphthongs probably need more work. 41 42 # Romanian [sekujesk] [sekujask], for emitting not 43 $UVowel [j $IVowel] [e {e} $SchwaVowel] uia; 44 45 # Kazakh [jyz] [jiuz], to emit not 46 y iu; 47 48 ::NULL; 49 50 # Vowels 51 $Boundary {$SchwaVowel ?} ; 52 $SchwaVowel ; 53 {[$SchwaVowel e {e}]} [^[:L:][:M:][:N:][\.]] ; 54 $SchwaVowel ; 55 56 $Boundary {$IVowel ?} ; 57 $IVowel ? j? ; 58 59 $Boundary {$UVowel ?} ; 60 $UVowel ? ; 61 62 $Boundary {$AVowel ?} ; 63 $AVowel ? ; 64 65 $Boundary {$DarkAVowel ?} ; 66 $DarkAVowel ? ; 67 68 # Shadda for long (geminated) consonants 69 ; 70 71 # Affricates 72 [{t} ] ; 73 74 # Clicks 75 [ g k] $Click ; 76 [n ]? $Click ; 77 78 # Nasal stops 79 [{m} m ] ; 80 [{n} {n} {n} n {} {} {} ] ; 81 [{} {} ] k ; 82 [{} {} ] [ g]? ; 83 84 # Non-nasal stops 85 [p {p}] ; 86 [b {b} ] ; 87 [{d} d ] ; 88 [{t} t] ; 89 [] ; 90 [] ; 91 c ; 92 ; 93 k ; 94 [ g ] ; 95 [q ] ; 96 ; 97 98 # Sibilant fricatives 99 s ; 100 z ; 101 [ ] ; 102 [ ] ; 103 104 # Non-sibilant fricatives 105 [ f] ; 106 [ v] ; 107 [{} {}] ; 108 [{} {}] ; 109 ; 110 $IVowel? ? ; 111 [x ] ; 112 [ ] ; 113 ; 114 ; 115 [h {}] ; 116 117 # Approximants, trills, flaps 118 ; 119 ; 120 {r} ; 121 [{} {} {} {} {} {} {r} {r} r] ; 122 [{} ] ; 123 ; 124 ; 125 j $IVowel? ? ; 126 127 # Laterals 128 ; 129 ; 130 {[{} ]} [^ $IVowel j ] ; 131 [{l} {l} l {} {} ] ; 132 [ {}] ; 133 134 # Independent pass for misc cleanup. 135 ::NULL; 136 137 # Strip off syllable markers 138 \. ; 139 140 # Sequences of three or more look very confusing; we shorten them. 141 # Polish Darowo [darwv] 142 + ; 143 144 ]]></tRule> 145 </transform> 146 </transforms> 147 </supplementalData> 148