Articulo de referencia

Especificación del léxico de pronunciación

La Especificación del Léxico de Pronunciación (PLS, por sus siglas en inglés) es una recomendación del W3C diseñada para permitir la especificación interoperable de información ...

La Especificación del Léxico de Pronunciación (PLS, por sus siglas en inglés) es una recomendación del W3C diseñada para permitir la especificación interoperable de información de pronunciación tanto para motores de reconocimiento de voz como de síntesis de voz en aplicaciones de navegación por voz. El lenguaje está pensado para que los desarrolladores puedan usarlo fácilmente, a la vez que permite la especificación precisa de información de pronunciación para uso internacional.

El lenguaje permite especificar una o más pronunciaciones para una palabra o frase utilizando un alfabeto de pronunciación estándar o, si es necesario, alfabetos específicos del proveedor. Las pronunciaciones se agrupan en un documento PLS al que se puede hacer referencia desde otros lenguajes de marcado, como la Especificación Gramatical de Reconocimiento de Voz (SRGS) y el Lenguaje de Marcado de Síntesis de Voz (SSML) .

Uso

Aquí hay un ejemplo de documento PLS:

<?xml version="1.0" encoding="UTF-8"?> <lexicon version= "1.0" xmlns= "http://www.w3.org/2005/01/pronunciation-lexicon" xmlns:xsi= "http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation= "http://www.w3.org/2005/01/pronunciation-lexicon  http://www.w3.org/TR/2007/CR-pronunciation-lexicon-20071212/pls.xsd" alphabet= "ipa" xml:lang= "en-US" > <lexeme> <grapheme> judgment </grapheme> <grapheme> judgement </grapheme> <phoneme> ˈdʒʌdʒ.mənt </phoneme> <!-- La cadena IPA es:  "ˈdʒʌdʒ.mənt" --> </lexeme> <lexeme> <grapheme> fiancé </grapheme> <grapheme> fiance </grapheme> <phoneme> fiˈɒns.eɪ </phoneme> <!-- La cadena IPA es:  "fiˈɒns.eɪ" --> <phoneme> ˌfiː.ɑːnˈseɪ </phoneme> <!-- La cadena IPA es:  "ˌfiː.ɑːnˈseɪ" --> </lexeme> </lexicon>

que podrían utilizarse para mejorar la síntesis de voz, como se muestra en el siguiente documento SSML 1.0 :

<?xml version="1.0" encoding="UTF-8"?> <speak version= "1.0" xmlns= "http://www.w3.org/2001/10/synthesis" xmlns:xsi= "http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation= "http://www.w3.org/2001/10/synthesis  http://www.w3.org/TR/speech-synthesis/synthesis.xsd" xml:lang= "en-US" > <lexicon uri= "http://www.example.org/lexicon_defined_above.xml" /> <p> En opinión de mi prometido , Las Vegas es el mejor lugar para una luna de miel. Le respondí que prefería Venecia y que no creía que el casino veneciano fuera un compromiso aceptable . </p> </speak>

pero también para mejorar el ASR en la siguiente gramática SRGS 1.0 :

<?xml version="1.0" encoding="UTF-8"?> <grammar version= "1.0" xmlns= "http://www.w3.org/2001/06/grammar" xmlns:xsi= "http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation= "http://www.w3.org/2001/06/grammar  http://www.w3.org/TR/speech-grammar/grammar.xsd" xml:lang= "en-US" root= "movies" mode= "voice" > < lexicon uri= "http://www.example.org/lexicon_defined_above.xml" /> <rule id= "movies" scope= "public" > <one-of> <item> Terminator 2: Judgment Day </item> <item> My Big Fat Obnoxious Fiance </item> <item> El día del juicio de Plutón </item> </one-of> </rule> </grammar>

Casos de uso comunes

Múltiples pronunciaciones para la misma ortografía

En los sistemas ASR , es común recurrir a múltiples pronunciaciones de la misma palabra o frase para gestionar las variaciones de pronunciación dentro de un idioma. En el lenguaje del Léxico de Pronunciación, las múltiples pronunciaciones se representan mediante más de un elemento <fonema> (o <alias>) dentro del mismo elemento <lexema>.

En el siguiente ejemplo, la palabra "Newton" tiene dos posibles pronunciaciones.

<?xml version="1.0" encoding="UTF-8"?> <lexicon version= "1.0" xmlns= "http://www.w3.org/2005/01/pronunciation-lexicon" xmlns:xsi= "http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation= "http://www.w3.org/2005/01/pronunciation-lexicon  http://www.w3.org/TR/2007/CR-pronunciation-lexicon-20071212/pls.xsd" alphabet= "ipa" xml:lang= "en-GB" > <lexeme> <grapheme> Newton </grapheme> <phoneme> ˈnjuːtən </phoneme> <!-- La cadena IPA es: "ˈnjuːtən" --> <phoneme> ˈnuːtən </phoneme> <!-- La cadena IPA es: "ˈnuːtən" --> </lexeme> </lexicon>

Ortografías múltiples

En algunos casos, existen representaciones textuales alternativas para una misma palabra o frase. Esto puede deberse a diversas razones. Consulte la Sección 4.5 de PLS para obtener más detalles. Dado que estas representaciones tienen el mismo significado (a diferencia de los homófonos), se recomienda representarlas mediante un único elemento <lexema> que contenga varios grafemas.

Aquí hay dos ejemplos sencillos de ortografías múltiples: la ortografía alternativa de una palabra en inglés y las múltiples formas de escribir una palabra en japonés.

<?xml version="1.0" encoding="UTF-8"?> <lexicon version= "1.0" xmlns= "http://www.w3.org/2005/01/pronunciation-lexicon" xmlns:xsi= "http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation= "http://www.w3.org/2005/01/pronunciation-lexicon  http://www.w3.org/TR/2007/CR-pronunciation-lexicon-20071212/pls.xsd" alphabet= "ipa" xml:lang= "en-US" > <!-- Entrada en inglés que muestra cómo se manejan las ortografías alternativas --> <lexeme> <grapheme> colour </grapheme> <grapheme> color </grapheme> <phoneme> ˈkʌlər </phoneme> <!-- La cadena IPA es: "ˈkʌlər" --> </lexeme> </lexicon><?xml version="1.0" encoding="UTF-8"?> <lexicon version= "1.0" xmlns= "http://www.w3.org/2005/01/pronunciation-lexicon" xmlns:xsi= "http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation= "http://www.w3.org/2005/01/pronunciation-lexicon  http://www.w3.org/TR/2007/CR-pronunciation-lexicon-20071212/pls.xsd" alphabet= "ipa" xml:lang= "ja" > <!-- Entrada japonesa que muestra cómo se manejan los múltiples sistemas de escritura  : ortografías romaji, kanji e hiragana --> <lexeme> <grapheme> nihongo </grapheme> <grapheme>日本語</grapheme> <grapheme>にほんご</grapheme> <phoneme> ɲihoŋɡo </phoneme> <!-- La cadena IPA es: "ɲihoŋɡo" --> </lexeme> </lexicon>

Homófonos

La mayoría de los idiomas tienen homófonos , palabras con la misma pronunciación pero significados diferentes (y posiblemente con distinta ortografía), por ejemplo, "seed" y "cede". Se recomienda representarlos como lexemas diferentes.

<?xml version="1.0" encoding="UTF-8"?> <lexicon version= "1.0" xmlns= "http://www.w3.org/2005/01/pronunciation-lexicon" xmlns:xsi= "http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation= "http://www.w3.org/2005/01/pronunciation-lexicon  http://www.w3.org/TR/2007/CR-pronunciation-lexicon-20071212/pls.xsd" alphabet= "ipa" xml:lang= "en-US" > <lexeme> <grapheme> cede </grapheme> <phoneme> siːd </phoneme> <!-- La cadena IPA es: "siːd" --> </lexeme> <lexeme> <grapheme> seed </grapheme> <phoneme> siːd </phoneme> <!-- La cadena IPA es: "siːd" --> </lexeme> </lexicon>

Homógrafos

La mayoría de los idiomas tienen palabras con significados diferentes pero la misma ortografía (y a veces pronunciaciones diferentes), llamadas homógrafos . Por ejemplo, en inglés, la palabra bass (pez) y la palabra bass (en música) tienen la misma ortografía pero significados y pronunciaciones diferentes. Aunque se recomienda que estas palabras se representen usando elementos <lexeme> separados que se distingan por diferentes valores del atributo role (véase la Sección 4.4 de PLS 1.0), si el autor de un léxico de pronunciación no quiere distinguir entre las dos palabras, simplemente podría representarlas como pronunciaciones alternativas dentro del mismo elemento <lexeme>. En este último caso, el procesador TTS no podrá distinguir cuándo aplicar la primera o la segunda transcripción.

En este ejemplo se muestran las pronunciaciones del homógrafo "bass".

<?xml version="1.0" encoding="UTF-8"?> <lexicon version= "1.0" xmlns= "http://www.w3.org/2005/01/pronunciation-lexicon" xmlns:xsi= "http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation= "http://www.w3.org/2005/01/pronunciation-lexicon  http://www.w3.org/TR/2007/CR-pronunciation-lexicon-20071212/pls.xsd" alphabet= "ipa" xml:lang= "en-US" > <lexeme> <grapheme> bass </grapheme> <phoneme> bæs </phoneme> <!-- IPA string is: bæs --> <phoneme> beɪs </phoneme> <!-- IPA string es: ser --> </lexeme> </lexicon>

Cabe destacar que el inglés contiene numerosos ejemplos de pares sustantivo-verbo que pueden considerarse homógrafos o pronunciaciones alternativas, según la preferencia del autor. Dos ejemplos son el sustantivo/verbo "refuse" y el sustantivo/verbo "address".

<?xml version="1.0" encoding="UTF-8"?> <lexicon version= "1.0" xmlns= "http://www.w3.org/2005/01/pronunciation-lexicon" xmlns:xsi= "http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation= "http://www.w3.org/2005/01/pronunciation-lexicon  http://www.w3.org/TR/2007/CR-pronunciation-lexicon-20071212/pls.xsd" xmlns:mypos= "http://www.example.org/my_pos_namespace" alphabet= "ipa" xml:lang= "en-US" > <lexeme role= "mypos:verb" > <grapheme> rechazar </grapheme> <phoneme> rɪˈfjuːz </phoneme> <!-- La cadena IPA es: "rɪˈfjuːz" --> </lexeme> <lexeme role= "mypos:noun" > <grapheme> refuse </grapheme> <phoneme> ˈrɛfjuːs </phoneme> <!-- La cadena IPA es: "ˈrɛfjuːs" --> </lexeme> </lexicon>

Pronunciación por ortografía

Para algunas palabras y frases, la pronunciación se puede expresar de forma rápida y sencilla mediante una secuencia de otras ortografías . El desarrollador no necesita conocimientos lingüísticos, sino que simplemente utiliza las pronunciaciones que se dan por sentadas. Para expresar pronunciaciones con otras ortografías, se puede usar el elemento <alias>.

Esta función puede resultar muy útil para gestionar la expansión de acrónimos.

<?xml version="1.0" encoding="UTF-8"?> <lexicon version= "1.0" xmlns= "http://www.w3.org/2005/01/pronunciation-lexicon" xmlns:xsi= "http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation= "http://www.w3.org/2005/01/pronunciation-lexicon  http://www.w3.org/TR/2007/CR-pronunciation-lexicon-20071212/pls.xsd" alphabet= "ipa" xml:lang= "en-US" > <!--  Expansión de acrónimos  --> <lexeme> <grapheme> W3C </grapheme> <alias> World Wide Web Consortium </alias> </lexeme> <!--  Representación numérica  --> <lexeme> <grapheme> 101 </grapheme> <alias> ciento uno </alias> </lexeme> <!--  mecanismo de pronunciación rudimentario  --> <lexeme> <grapheme> Tailandia </grapheme> <alias> tierra de amarre </alias> </lexeme> <!-- mecanismo de  pronunciación rudimentario y expansión de acrónimos  --> <lexeme> <grapheme> BBC 1 </grapheme> <alias> ser ser mar uno </alias> </lexeme> </lexicon>

Estado y futuro

  • PLS 1.0 alcanzó la categoría de Recomendación del W3C el 14 de octubre de 2008.

Véase también

Referencias

  • Especificación PLS (Recomendación del W3C)
  • Especificación PLS (Recomendación del W3C)
  • Comunicado de prensa del W3C
  • Especificación SRGS (Recomendación del W3C)
  • Especificación SSML (Recomendación del W3C)
  • Foro de VoiceXML
  • Implementación de PLS 1.0 por parte de France Telecom Orange Labs bajo la Licencia Pública General GNU versión 3.
  • Proyecto SourceForge para la implementación de PLS 1.0 basada en Java.
Obtenido de " https://en.wikipedia.org/w/index.php?title=Pronunciation_Lexicon_Specification&oldid=1305273134 "