Pronunciation Lexicon Specification
The Pronunciation Lexicon Specification (PLS) is a
The language allows one or more pronunciations for a word or phrase to be specified using a standard pronunciation alphabet or if necessary using vendor specific alphabets. Pronunciations are grouped together into a PLS document which may be referenced from other markup languages, such as the Speech Recognition Grammar Specification
Usage
Here is an example PLS document:
<?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>
<!-- IPA string is:
"ˈdʒʌdʒ.mənt" -->
</lexeme>
<lexeme>
<grapheme>fiancé</grapheme>
<grapheme>fiance</grapheme>
<phoneme>fiˈɒns.eɪ</phoneme>
<!-- IPA string is:
"fiˈɒns.eɪ" -->
<phoneme>ˌfiː.ɑːnˈseɪ</phoneme>
<!-- IPA string is:
"ˌfiː.ɑːnˈseɪ" -->
</lexeme>
</lexicon>
which could be used to improve TTS as shown in the following SSML 1.0 document:
<?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> In the judgement of my fiancé, Las Vegas is the best place for a honeymoon.
I replied that I preferred Venice and didn't think the Venetian casino was an
acceptable compromise.</p>
</speak>
but also to improve
<?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>Pluto's Judgement Day</item>
</one-of>
</rule>
</grammar>
Common use cases
Multiple pronunciations for the same orthography
For ASR systems it is common to rely on multiple pronunciations of the same word or phrase in order to cope with variations of pronunciation within a language. In the Pronunciation Lexicon language, multiple pronunciations are represented by more than one <phoneme> (or <alias>) element within the same <lexeme> element.
In the following example the word "Newton" has two possible pronunciations.
<?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>
<!-- IPA string is: "ˈnjuːtən" -->
<phoneme>ˈnuːtən</phoneme>
<!-- IPA string is: "ˈnuːtən" -->
</lexeme>
</lexicon>
Multiple orthographies
In some situations there are alternative textual representations for the same word or phrase. This can arise due to a number of reasons. See Section 4.5 of PLS for details. Because these are representations that have the same meaning (as opposed to homophones), it is recommended that they be represented using a single <lexeme> element that contains multiple graphemes.
Here are two simple examples of multiple orthographies: alternative spelling of an English word and multiple writings of a Japanese word.
<?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">
<!-- English entry showing how alternative spellings are handled -->
<lexeme>
<grapheme>colour</grapheme>
<grapheme>color</grapheme>
<phoneme>ˈkʌlər</phoneme>
<!-- IPA string is: "ˈ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">
<!-- Japanese entry showing how multiple writing systems are handled
romaji, kanji and hiragana orthographies -->
<lexeme>
<grapheme>nihongo</grapheme>
<grapheme>日本語</grapheme>
<grapheme>にほんご</grapheme>
<phoneme>ɲihoŋɡo</phoneme>
<!-- IPA string is: "ɲihoŋɡo" -->
</lexeme>
</lexicon>
Homophones
Most languages have
<?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>
<!-- IPA string is: "siːd" -->
</lexeme>
<lexeme>
<grapheme>seed</grapheme>
<phoneme>siːd</phoneme>
<!-- IPA string is: "siːd" -->
</lexeme>
</lexicon>
Homographs
Most languages have words with different meanings but the same spelling (and sometimes different pronunciations), called
In this example the pronunciations of the homograph "bass" are shown.
<?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 is: beɪs -->
</lexeme>
</lexicon>
Note that English contains numerous examples of noun-verb pairs that can be treated either as
<?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>refuse</grapheme>
<phoneme>rɪˈfjuːz</phoneme>
<!-- IPA string is: "rɪˈfjuːz" -->
</lexeme>
<lexeme role="mypos:noun">
<grapheme>refuse</grapheme>
<phoneme>ˈrɛfjuːs</phoneme>
<!-- IPA string is: "ˈrɛfjuːs" -->
</lexeme>
</lexicon>
Pronunciation by orthography
For some words and phrases pronunciation can be expressed quickly and conveniently as a sequence of other
This feature may be very useful to deal with acronym expansion.
<?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">
<!--
Acronym expansion
-->
<lexeme>
<grapheme>W3C</grapheme>
<alias>World Wide Web Consortium</alias>
</lexeme>
<!--
number representation
-->
<lexeme>
<grapheme>101</grapheme>
<alias>one hundred and one</alias>
</lexeme>
<!--
crude pronunciation mechanism
-->
<lexeme>
<grapheme>Thailand</grapheme>
<alias>tie land</alias>
</lexeme>
<!--
crude pronunciation mechanism and acronym expansion
-->
<lexeme>
<grapheme>BBC 1</grapheme>
<alias>be be sea one</alias>
</lexeme>
</lexicon>
Status and future
- PLS 1.0 reached the status of W3C Recommendation on 14 October 2008.
See also
References
External links
- PLS Specification (W3C Recommendation)
- W3C Press Release
- SRGS Specification (W3C Recommendation)
- SSML Specification (W3C Recommendation)
- VoiceXML Forum
- France Telecom Orange Labs implementation of PLS 1.0 under the Gnu General Public License version 3
- SourceForge project for Java-based implementation of PLS 1.0