1 <?xml version="1.0" encoding="UTF-8" ?> 2 <!DOCTYPE supplementalData SYSTEM "../../common/dtd/ldmlSupplemental.dtd"> 3 <!-- 4 Copyright 1991-2013 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: 12243 $"/> 10 <transforms> 11 <transform source="es_FONIPA" target="zh" direction="forward" alias="zh-t-es-fonipa"> 12 <tRule><![CDATA[ 13 # Tranforms Spanish to Mandarin Chinese. The input Spanish string must be in 14 # phonemic IPA transcription (es_FONIPA); the output is in Simplified Chinese. 15 16 $word_boundary = [-\ $]; 17 $vowel = [aeijouw]; # Vowels and glides 18 $not_vowel = [^$vowel]; 19 20 # First pass: Collapse phonetic distinctions not preserved in Mandarin. 21 22 | d; 23 | g; 24 | n; 25 | s; 26 | r; 27 28 ff f ; 29 kk k ; 30 mm m ; 31 nn n ; 32 pp p ; 33 tt t ; 34 t ; 35 36 aa a ; 37 oi oi ; 38 oo o ; 39 uu u ; 40 41 [^dgktx] { ei e ; 42 [^-\ .$] { eu eu ; 43 [^-\ .$] { ou o; 44 [^j] { ui wi ; 45 46 [^$word_boundary] { m } [bp] n; # GB/T 17693.5-2009, 5.3.2 47 s[s] s; # GB/T 17693.5-2009, 5.3.4 48 [^] { jo io; # GB/T 17693.5-2009 1, 7 49 50 ::Null; 51 52 j } an $not_vowel i ; # GB/T 17693.5-2009 1, 8 53 54 55 # GB/T 17693.5-2009 1, 8 also says that <uai> should be treated as if 56 # it was <u> plus <ai>. This is not borne out by the observed data, which 57 # suggests that <ua> plus <i> is the more appropriate choice in some 58 # situations. 59 60 [g.$] { wai wai ; 61 wai uai ; 62 [g.$] { wau wau ; 63 wau uau ; 64 jau iau ; 65 66 # Even though "ao" is not a diphthong in Spanish, Mandarin treats it as one. 67 68 [^jw] { ao } [^n] au ; 69 [^jw] { ao } n $vowel au ; 70 71 # Main pass: Phoneme to Hanzi conversion. 72 # This generally follows GB/T 17693.5-2009 1, unless otherwise noted. 73 ::Null; 74 75 '.' ; 76 ai ; 77 an } $not_vowel ; 78 au ; 79 a ; 80 bai ; 81 ban } $not_vowel ; 82 bau ; 83 ba ; 84 ben } $not_vowel ; 85 be ; 86 bin } $not_vowel ; 87 bi ; 88 bja ; 89 bjen } $not_vowel ; 90 bje ; 91 bju ; 92 bon } $not_vowel ; 93 bo ; 94 bun } $not_vowel ; 95 bu ; 96 bwan } $not_vowel ; 97 bwa ; 98 bwen } $not_vowel ; # Should be be , per GB/T 17693.5-2009 1. 99 bwe ; 100 bwin } $not_vowel ; # Nonstandard, but fits observed data. 101 bwi ; 102 bwo ; 103 b ; 104 ai ; 105 an } $not_vowel ; 106 au ; 107 a ; 108 en } $not_vowel ; 109 e ; 110 in } $not_vowel ; 111 i ; 112 ja ; 113 jen } $not_vowel ; 114 je ; 115 ju ; 116 on } $not_vowel ; 117 o ; 118 un } $not_vowel ; 119 u ; 120 wan } $not_vowel ; 121 wa ; 122 wen } $not_vowel ; 123 we ; 124 wi ; 125 wo ; 126 ; 127 dai ; 128 dan } $not_vowel ; 129 dau ; 130 da ; 131 dei ; 132 den } $not_vowel ; 133 de ; 134 din } $not_vowel ; 135 di ; 136 dja ; 137 djen } $not_vowel ; 138 dje ; 139 dju ; 140 don } $not_vowel ; 141 do ; 142 dun } $not_vowel ; 143 du ; 144 dwan } $not_vowel ; 145 dwa ; 146 dwen } $not_vowel ; 147 dwe ; 148 dwi ; 149 dwo ; 150 d } $word_boundary ; 151 d ; 152 ei ; 153 en } $not_vowel ; 154 eu ; 155 e ; 156 fai ; 157 fan } $not_vowel ; 158 fau ; 159 fa ; 160 fe ; 161 fin } $not_vowel ; 162 fi ; 163 fja ; 164 fjen } $not_vowel ; 165 fje ; 166 fju ; 167 fon } $not_vowel ; 168 fo ; 169 fun } $not_vowel ; 170 fu ; 171 fwan } $not_vowel ; 172 fwa ; 173 fwen } $not_vowel ; 174 fwe ; 175 fwi ; 176 fwo ; 177 178 179 # The choice of vs. sounds simple according to the GB/T standard, but the 180 # data suggest otherwise. Ideally, should occur at the beginning of a 181 # morpheme (e.g. in "villafranca" ) and everywhere else. Since 182 # we don't have morpheme boundaries, we'll fudge it by writing at the end of 183 # a word and everywhere else. 184 185 f } $word_boundary ; 186 f ; 187 188 gai ; 189 gan } $not_vowel ; 190 gau ; 191 ga ; 192 gei ; 193 gen } $not_vowel ; 194 ge ; 195 gin } $not_vowel ; 196 gi ; 197 gja ; 198 gjen } $not_vowel ; 199 gje ; 200 gju ; 201 gon } $not_vowel ; 202 go ; 203 gun } $not_vowel ; 204 gu ; 205 gwan } [$] ; # Nonstandard, but fits observed data. 206 gwan } $not_vowel ; 207 gwa ; 208 gwen } $not_vowel ; 209 gwe ; 210 gwi ; 211 gwo ; 212 g ; 213 in } $not_vowel ; 214 i ; 215 ai ; 216 an } $not_vowel ; 217 au ; 218 a ; 219 en } $not_vowel ; 220 e ; 221 in } $not_vowel ; 222 i ; 223 on } $not_vowel ; 224 o ; 225 un } $not_vowel ; 226 u ; 227 wan } $not_vowel ; 228 wa ; 229 wen } $not_vowel ; 230 we ; 231 wi ; 232 wo ; 233 ; 234 kai ; 235 kan } $not_vowel ; 236 kau ; 237 ka ; 238 kei ; 239 ken } $not_vowel ; 240 ke ; 241 kin } $not_vowel ; 242 ki ; 243 kja ; 244 kjen } $not_vowel ; 245 kje ; 246 kju ; 247 kon } $not_vowel ; 248 ko ; 249 kun } $not_vowel ; 250 ku ; 251 kwan } $not_vowel ; 252 kwa ; 253 kwen } $not_vowel ; 254 kwe ; 255 kwin } $not_vowel ; 256 kwi ; 257 kwo ; 258 k ; 259 lae } [^n] ; 260 lai ; 261 lan } $not_vowel ; 262 lau ; 263 la ; 264 len } $not_vowel ; 265 le ; 266 lin } $not_vowel ; 267 li ; 268 lja ; 269 ljen } $not_vowel ; 270 lje ; 271 lju ; 272 lon } $not_vowel ; 273 lo ; 274 lun } $not_vowel ; 275 lu ; 276 lwan } $not_vowel ; 277 lwa ; 278 lwen } $not_vowel ; 279 lwe ; 280 lwi ; 281 lwo ; 282 l ; 283 an } $not_vowel ; 284 au ; 285 a ; 286 en } $not_vowel ; 287 e ; 288 in } $not_vowel ; 289 i ; 290 on } $not_vowel ; 291 o ; 292 u ; 293 wan } $not_vowel ; 294 wa ; 295 wen } $not_vowel ; 296 we ; 297 wi ; 298 wo ; 299 ; 300 mai ; 301 man } $not_vowel ; 302 martin ; 303 mau ; 304 ma ; 305 men } $not_vowel ; 306 me ; 307 min } $not_vowel ; 308 mi ; 309 mja ; 310 mjen } $not_vowel ; 311 mje ; 312 mju ; 313 mon } $not_vowel ; 314 mo ; 315 mun } $not_vowel ; 316 mu ; 317 mwan } $not_vowel ; 318 mwa ; 319 mwen } $not_vowel ; 320 mwe ; 321 mwin } $not_vowel ; # Nonstandard, but fits observed data. 322 mwi ; 323 mwo ; 324 m ; 325 nai ; 326 nan } $not_vowel ; 327 nau ; 328 na ; 329 nen } $not_vowel ; 330 ne ; 331 nin } $not_vowel ; 332 ni ; 333 nja ; 334 njen } $not_vowel ; 335 nje ; 336 nju ; 337 non } $not_vowel ; 338 no ; 339 nun } $not_vowel ; 340 nu ; 341 nwan } $not_vowel ; 342 nwa ; 343 nwen } $not_vowel ; 344 nwe ; 345 nwi ; 346 nwo ; 347 n ; 348 an } $not_vowel ; 349 au ; 350 a ; 351 en } $not_vowel ; 352 e ; 353 in } $not_vowel ; 354 i ; 355 on } $not_vowel ; 356 o ; 357 u ; 358 wan } $not_vowel ; 359 wa ; 360 wen } $not_vowel ; 361 we ; 362 wi ; 363 wo ; 364 on } $not_vowel ; 365 ou ; 366 o ; 367 pai ; 368 pan } $not_vowel ; 369 pau ; 370 pa ; 371 pen } $not_vowel ; 372 pe ; 373 pin } $not_vowel ; 374 pi ; 375 pja ; 376 pjen } $not_vowel ; 377 pje ; 378 pju ; 379 pon } $not_vowel ; 380 po ; 381 pun } $not_vowel ; 382 pu ; 383 pwan } $not_vowel ; 384 pwa ; 385 pwen } $not_vowel ; 386 pwe ; 387 pwi ; 388 pwo ; 389 p ; 390 rai ; 391 ran } $not_vowel ; 392 rau ; 393 ra ; 394 ren } $not_vowel ; 395 re ; 396 rin } $not_vowel ; 397 ri ; 398 rja ; 399 rjen } $not_vowel ; 400 rje ; 401 rju ; 402 ron } $not_vowel ; 403 ro ; 404 run } $not_vowel ; 405 ru ; 406 rwan } $not_vowel ; 407 rwa ; 408 rwen } $not_vowel ; 409 rwe ; 410 rwi ; 411 rwo ; 412 r R ; 413 sai ; 414 san } $not_vowel ; 415 sau ; 416 sa ; 417 sen } $not_vowel ; 418 se ; 419 sin } $not_vowel ; 420 si ; 421 sja ; 422 sjen } $not_vowel ; 423 sje ; 424 sju ; 425 son } $not_vowel ; 426 so ; 427 sun } $not_vowel ; 428 su ; 429 swan } $not_vowel ; 430 swa ; 431 swen } $not_vowel ; 432 swe ; 433 swi ; 434 swo ; 435 s ; 436 tai ; 437 tan } $not_vowel ; 438 tau ; 439 ta ; 440 tei ; 441 ten } $not_vowel ; 442 te ; 443 tin } $not_vowel ; 444 ti ; 445 tja ; 446 tjen } $not_vowel ; 447 tje ; 448 tju ; 449 ton } $not_vowel ; 450 to ; 451 452 # The rules for /ts/ (tz in the orthography) are nonstandard and derived 453 # entirely from the observed data. They apply mostly to native toponyms 454 # in Mexico. 455 456 tsa ; 457 tsen } $not_vowel ; 458 tse ; 459 tsin } $not_vowel ; 460 tsi ; 461 tso ; 462 tsun } $not_vowel ; 463 tsu ; 464 ts ; 465 466 tun } $not_vowel ; 467 tu ; 468 twan } $not_vowel ; 469 twa ; 470 twen } $not_vowel ; 471 twe ; 472 twi ; 473 two ; 474 t ; 475 ai ; 476 an } $not_vowel ; 477 au ; 478 a ; 479 en } $not_vowel ; 480 e ; 481 in } $not_vowel ; 482 i ; 483 jan } $not_vowel ; 484 ja ; 485 jen } $not_vowel ; 486 je ; 487 jon } $not_vowel ; 488 ju ; 489 on } $not_vowel ; 490 o ; 491 un } $not_vowel ; # Should be , per GB/T 17693.5-2009 1. 492 u ; 493 wan } $not_vowel ; 494 wa ; 495 wen } $not_vowel ; 496 we ; 497 wi ; 498 wo ; 499 ; 500 un } $not_vowel ; 501 u ; 502 wan } $not_vowel ; 503 wa ; 504 wen } $not_vowel ; 505 we ; 506 win } $not_vowel ; 507 wi ; 508 won } $not_vowel ; # Unseen. 509 wo ; 510 xai ; 511 xan } $not_vowel ; 512 xau ; 513 xa ; 514 xei ; 515 xen } $not_vowel ; 516 xe ; 517 xin } $not_vowel ; 518 xi ; 519 xja ; 520 xjen } $not_vowel ; 521 xje ; 522 xju ; 523 xon } $not_vowel ; 524 xo ; 525 xun } $not_vowel ; 526 xu ; 527 xwan } $not_vowel ; 528 xwa ; 529 xwen } $not_vowel ; 530 xwe ; 531 xwi ; 532 xwo ; 533 x ; 534 535 # simplification pass. The idea is to drop most occurences of 536 # corresponding to <r> (not to <l> or <ll>) from a word if there is another /l/ 537 # sound nearby. There is a vague pattern like this in the data, but the details 538 # remain to be determined. At the moment, this does nothing, it just puts in 539 # for every <r> in a syllable coda. 540 541 ::Null; 542 $r = [R]; 543 # 544 # 545 # R } . $r ; 546 # R } .. $r ; 547 # R } ... $r ; 548 # R } .... $r ; 549 550 R ; 551 552 # Dong-nan-xi-hai pass. Per GB/T 17693.5-2009 1, 4, replace confusing 553 # characters at the beginning and end of a word. 554 555 ::Null; 556 $word_boundary { ; 557 $word_boundary { ; 558 $word_boundary { ; 559 } $word_boundary ; 560 561 ::NFC; 562 ]]></tRule> 563 </transform> 564 </transforms> 565 </supplementalData> 566