SSML-Elemente
Der Service IBM Watson® Text to Speech ermöglicht es Ihnen, für die Steuerung der Synthetisierung Ihres Texts die Mehrzahl der SSML- Elemente und -Attribute (SSML = Speech Synthesis Markup Language) zu verwenden.
Unterstützte Elemente und Attribute
Tabelle 1 enthält eine Zusammenfassung der Unterstützung des Service für SSML-Elemente und -Attribute:
- Vollständig bedeutet, dass der Service das Element oder Attribut bei seiner HTTP- und WebSocket-Schnittstelle vollumfänglich unterstützt.
- Teilweise bedeutet, dass die Unterstützung des Service für das Element oder Attribut auf eine der folgenden Arten eingeschränkt ist:
- Der Service unterstützt nur einige Aspekte des Elements oder Attributs.
- Der Service unterstützt das Element oder Attribut nur mit einigen Stimmen.
- Der Service unterstützt das Element oder Attribut nur mit einer seiner Schnittstellen, HTTP oder WebSocket.
- Keine bedeutet, dass der Service das Element oder Attribut nicht unterstützt.
Die folgenden Abschnitte enthalten Beschreibungen zu den einzelnen Elementen und Attributen mit Beispielen, Einschränkungen und der Angabe, ob sich die Unterstützung des Service von der Standard-SSML unterscheidet. Bei einigen Attributen und Werten unterscheidet sich die Unterstützung etwas von der SSML-Spezifikation. Weitere Informationen finden Sie unter W3C Speech Synthesis Markup Language(SSML)Version 1.1.
Element oder Attribut | Support | Element oder Attribut | Support |
---|---|---|---|
Element '<audio> ' |
Keine | Element '<prosody> ' |
Teilweise |
Element '<break> ' |
Voll |
|
Keine |
Element '<desc> ' |
Keine |
|
Keine |
Element '<emphasis> ' |
Teilweise | Voll | |
Element '<express-as> ' |
Teilweise |
|
Keine |
Element '<lexicon> ' |
Keine | Voll | |
Element '<mark> ' |
Teilweise |
|
Keine |
Element '<meta> ' |
Keine | Element '<say-as> ' |
Teilweise |
Element '<metadata> ' |
Keine | Teilweise | |
Element '<paragraph> ' |
Voll | Element '<sentence> ' |
Voll |
Element '<phoneme> ' |
Voll | Element '<speak> ' |
Voll |
Element '<sub> ' |
Voll | ||
Element '<voice> ' |
Keine |
Element '<audio>
'
Mit dem Element '<audio>
' werden aufgezeichnete Elemente in die vom Service generierten Audiodaten eingefügt. Dieses Element wird nicht unterstützt.
Element '<break>
'
Mit dem Element <break>
wird eine Pause in den gesprochenen Text eingefügt. Es besitzt die folgenden optionalen Attribute:
- Das Attribut
strength
gibt die Länge der Pause in Form von unterschiedlichen Werten an:none
unterdrückt eine Pause, die ansonsten möglicherweise während der Verarbeitung entsteht.x-weak
,weak
,medium
,strong
oderx-strong
fügen in der hier angegebenen Reihenfolge immer längere Pausen ein.
- Das Attribut
time
gibt die Länge der Pause in Form von Sekunden oder Millisekunden an. Gültige Werteformate sind{integer}s
für Sekunden oder{integer}ms
für Millisekunden.
Break size <break strength="none"/> no pause
Break size <break strength="x-weak"/> x-weak pause
Break size <break strength="weak"/> weak pause
Break size <break strength="medium"/> medium pause
Break size <break strength="strong"/> strong pause
Break size <break strength="x-strong"/> x-strong pause
Break size <break time="1s"/> one-second pause
Break size <break time="1500ms"/> 1500-millisecond pause
Element '<desc>
'
Das Element <desc>
kann nur innerhalb eines Elements <audio>
auftreten. Da das Element <audio>
nicht unterstützt wird, wird auch das Element <desc>
nicht unterstützt.
Element '<emphasis>
'
Das Element <emphasis>
wird nur für die expressiven neuronalen Stimmen unterstützt.
Mit den expressiven neuronalen Stimmen können Sie das Element <emphasis>
verwenden, um ein oder mehrere Wörter des Eingabetexts hervorzuheben oder die Hervorhebung zu verringern. Das Element unterstützt ein optionales Attribut
level
, das einen der folgenden Werte akzeptiert:
none
-Verhindert, dass der Service Text hervorhebt, der andernfalls hervorgehoben werden könnte.moderate
-Stellt eine auffällige Hervorhebung des Textes bereit Diese Stufe ist der Standardwert, wenn Sie das Attributlevel
nicht angeben.strong
-Stellt eine größere Gewichtung für den Text bereit als die mittlere Ebene.reduced
-Der Text wird hervorgehoben, indem die Signifikanz in den Audiodaten reduziert wird. Diese Ebene ist das Gegenteil von der Betonung des Textes.
Im folgenden Beispiel wird die Ebene moderate
auf das Wort give
angewendet:
I am going to <emphasis level="moderate">give</emphasis> her the book.
Weitere Informationen finden Sie unter Emphasizing words.
Element '<express-as>
'
Das Element <express-as>
ist eine spezielle SSML-Erweiterung für den Service Text to Speech. Es wird nur für die Verwendung mit den expressiven neuronalen Stimmen unterstützt.
Mit den expressiven neuronalen Stimmen können Sie das Element <express-as>
verwenden, um Sprechstile anzuwenden, um die Hervorhebung bestimmter Merkmale des Service für den gesamten Eingabetext oder einen Teil des Eingabetexts
zu verbessern. Das Element unterstützt ein erforderliches Attribut style
, das einen der folgenden Sprachstile akzeptiert:
cheerful
-Äußert Glück und gute Nachrichten.empathetic
-drückt Empathie und Mitgefühl aus.neutral
-Äußert Objektivität und Ebenheit.uncertain
-Äußert Verwirrung und Unsicherheit.
Im folgenden Beispiel wird der Stil cheerful
auf den gesamten Eingabetext angewendet:
<express-as style="cheerful">Oh, that's good news! I'm glad that we could help.</express-as>
Weitere Informationen finden Sie unter Sprechstile verwenden.
Element '<lexicon>
'
Dieses <lexicon>
-Element führt Aussprachewörterbücher für das angegebene SSML-Dokument ein. Dieses Element wird nicht unterstützt.
In der Anpassungsschnittstelle des Service können Sie ein Wörterverzeichnis mit angepassten Einträgen (Paare aus Wort und Umsetzung) definieren, das während der Sprachsynthese verwendet werden soll. Weitere Informationen enthält der Abschnitt Wissenswertes über die Anpassung.
Element '<mark>
'
Das Element <mark>
wird nur von der WebSocket-Schnittstelle des Service unterstützt. Von der HTTP-Schnittstelle wird das Element ignoriert. Weitere Informationen finden Sie unter SSML-Markup eingeben.
Das Element <mark>
ist ein leeres Element, das eine Markierung in den zu synthetisierenden Text einfügt. Der Client wird benachrichtigt, sobald der gesamte Text vor dem Element <mark>
synthetisiert wurde.
Das Element akzeptiert ein einziges Attribut name
, in dem eine Zeichenfolge angegeben ist, die die Markierung eindeutig kennzeichnet; der Name muss mit einem alphanumerischen Zeichen beginnen. Der Name wird zusammen mit dem Zeitpunkt
zurückgegeben, an dem die Markierung in der synthetisch erstellten Audioausgabe vorkommt.
Hello <mark name="here"/> world.
Elemente '<meta>
' und '<metadata>
'
Bei den Elementen <meta>
und <metadata>
handelt es sich um Container, in die Sie Informationen zum Dokument einfügen können. Sie werden nicht unterstützt.
Elemente '<paragraph>
' und '<sentence>
'
Die Elemente <paragraph>
(oder <p>
) und <sentence>
(oder <s>
) sind optionale Elemente, die verwendet werden können, um Hinweise zur Textstruktur zu geben. Wenn der Text,
der in einem Element <paragraph>
oder <sentence>
eingeschlossen ist, nicht mit einem Satzendezeichen endet (z. B. einem Punkt), fügt der Service eine längere Pause zu den synthetisierten Audiodaten hinzu.
Das einzige gültige Attribut für beide Elemente ist xml:lang
; es ermöglicht einen Wechsel der Sprache. Das Attribut wird nicht unterstützt.
<paragraph>
<sentence>Text within a sentence element.</sentence>
<s>More text in another sentence.</s>
</paragraph>
Element '<phoneme>
'
Das Element <phoneme>
stellt eine phonetische Aussprache für den eingeschlossenen Text bereit. Die phonetische Schreibweise stellt dar, aus welchen Lauten ein Wort besteht, wie die Laute in Silben unterteilt sind und welche
Silben betont werden. Das Element besitzt zwei Attribute:
-
Das optionale Attribut
alphabet
gibt an, welche Phonetik verwendet werden soll. Die folgenden Alphabete werden unterstützt:- Das als Standard etablierte Internationale Phonetische Alphabet (IPA):
alphabet="ipa"
. - IBM Symbolic Phonetic Representation (SPR):
alphabet="ibm"
.
Wenn kein Alphabet angegeben ist, verwendet der Service standardmäßig IBM SPR. Weitere Informationen finden Sie unter Informationen zu phonetischen Symbolen.
- Das als Standard etablierte Internationale Phonetische Alphabet (IPA):
-
Das erforderliche Attribut
ph
stellt die Aussprache im angegebenen Alphabet bereit. Die folgenden Beispiele zeigen die Aussprache für das Wort tomato in beiden Formaten:-
IPA-Format:
<phoneme alphabet="ipa" ph="təˈmeɪ.ɾoʊ">tomato</phoneme>
-
IPA-Format mit Unicode-Symbolen:
<phoneme alphabet="ipa" ph="təˈmeɪ.ɾoʊ">tomato</phoneme>
-
IBM SPR-Format:
<phoneme alphabet="ibm" ph=".0tx.1me.0Fo">tomato</phoneme>
-
Weitere Informationen zur Verwendung von SPR- und IPA-Notationen mit dem Element '<phoneme>
' finden Sie in Erläuterungen zu phonetischen Zeichen.
Element '<prosody>
'
Das Element <prosody>
steuert Tonhöhe und Sprechtempo für den Text. Alle Attribute sind optional. Es tritt jedoch ein Fehler auf, wenn Sie nicht mindestens ein Attribut mit dem Element angeben.
Der Service unterstützt die beiden folgenden Attribute der SSML-Spezifikation:
Die SSML-Spezifikation bietet außerdem vier Attribute, die vom Service nicht unterstützt werden:
- Attribut '
contour
' - Attribut '
range
' - Attribut '
duration
' - Attribut '
volume
'
Der Service unterstützt auch Abfrageparameter, mit denen Sie die Geschwindigkeit und Tonhöhe für den gesamten Text einer Sprachsyntheseanforderung anpassen können. Weitere Informationen zu den Parametern und ihrer Interaktion mit den Attributen
pitch
und rate
des Elements <prosody>
finden Sie im Abschnitt.
Unterschiede zur SSML-Spezifikation Version 1.1
Der Service Text to Speech basiert seine SSML-Unterstützung auf W3C Speech Synthesis Markup Language(SSML)Version 1.1. Die SSML-Spezifikation hat sich jedoch
seit der ersten Freigabe des Service weiterentwickelt. Zur Wahrung der Abwärtskompatibilität für Benutzer unterstützt der Service weiterhin einige Funktionen des Elements <prosody>
, die sich von der neuesten SSML-Spezifikation
unterscheiden.
-
Für das Attribut
pitch
unterstützt der Service die folgenden zusätzlichen Features:- Eine relative Änderung in Prozent, die durch eine Zahl mit oder ohne Vorzeichen und gefolgt von einem
%
(Prozentzeichen) angegeben wird. Die Standardtonhöhe für eine Stimme entspricht der Übergabe des Werts0%
. - Eine relative Änderung in Semitonen, die durch eine Zahl mit Vorzeichen oder ohne Vorzeichen angegeben wird, gefolgt von der Zeichenfolge
st
.
- Eine relative Änderung in Prozent, die durch eine Zahl mit oder ohne Vorzeichen und gefolgt von einem
-
Für das Attribut
rate
unterstützt der Service die folgenden zusätzlichen Features:- Eine relative Änderung in Prozent, die durch eine Zahl mit oder ohne Vorzeichen und gefolgt von einem
%
(Prozentzeichen) angegeben wird. Die Standardsprechrate für eine Stimme entspricht der Übergabe des Werts0%
. - Eine Zahl ohne Einheitenbezeichnung gibt die Anzahl der Wörter pro Minute an. Die Zahl ist absolut. Sie können keinen relativen Anstieg oder Rückgang in Wörtern pro Minute angeben.
- Eine relative Änderung in Prozent, die durch eine Zahl mit oder ohne Vorzeichen und gefolgt von einem
-
Für die expressiven neuronalen Stimmen unterstützen die Attribute
pitch
undrate
nur Prozentwerte.- Verwenden Sie für das Attribut
pitch
keine Hertz-, Halbton-oder Schlüsselwörter. - Verwenden Sie für das Attribut
rate
keine Wörter pro Minute oder Schlüsselwörter.
- Verwenden Sie für das Attribut
Weitere Informationen zu den Features, die von SSML Version 1.1unterstützt werden, finden Sie im Abschnitt 3.2.4 prosody Element der SSML-Spezifikation.
Attribut 'pitch
'
Das Attribut pitch
ändert die Grundtonhöhe oder den Ton für den Text innerhalb des Elements. Gültige Werte:
- Eine Zahl gefolgt von der Bezeichnung
Hz
(Hertz): Die Grundtonhöhe wird um den angegebenen Wert erhöht bzw. gesenkt. Zum Beispiel150Hz
. - Eine relative Änderung in Prozent: Eine Zahl, die eine relative Verschiebung von der Standard-Basislinie verursacht. Der Zahl geht
+
(eine Erhöhung) oder-
(eine Verringerung) voraus, und ihr folgt ein%
(Prozentzeichen). Eine Zahl ohne Vorzeichen, auf die ein%
folgt, wird als positive Zunahme interpretiert. Beispiel:+10%
oder10%
. Die Standardtonhöhe für eine Stimme entspricht der Übergabe des Werts0%
. - Eine relative Änderung in Halbtönen: Eine Zahl, die eine absolute Verschiebung von der Standardgrundlinie bewirkt. Der Zahl wird das Zeichen
+
(Erhöhung) oder das Zeichen-
(Absenkung) vorangestellt und die Angabest
(für Semitones = Halbtöne) angefügt. Eine Zahl ohne Vorzeichen gefolgt vonst
wird als positive Zunahme interpretiert. Beispiel:+5st
oder5st
. - Ein Schlüsselwort: Eines der folgenden sechs Schlüsselwörter, die die Tonhöhe in die entsprechenden vordefinierten Werte ändern:
default
verwendet die Standardgrundtonhöhe des Service.x-low
verschiebt die Grundtonhöhe um 12 Halbtöne nach unten.low
verschiebt die Grundtonhöhe um sechs Halbtöne nach unten.medium
erzeugt dasselbe Verhalten wiedefault
.high
verschiebt die Grundtonhöhe um sechs Halbtöne nach oben.x-high
verschiebt die Grundtonhöhe um zwölf Halbtöne nach oben.
Expressive neuronale Stimmen unterstützen nur Prozentwerte für das Attribut pitch
. Sie unterstützen nicht die Verwendung von Hertz, Halbtönen oder Schlüsselwörtern.
Die beste Methode, um festzustellen, was für Ihre Anwendung funktioniert, besteht darin, Anpassungen auf der Basis von Prozentsätzen vorzunehmen und mit verschiedenen Werten zu experimentieren. Versuchen Sie, inkrementelle Änderungen von fünf oder zehn Prozent vorzunehmen, bevor Sie weitere signifikante Änderungen vornehmen.
<prosody pitch="150Hz">Transpose pitch to 150 Hz</prosody>
<prosody pitch="-20Hz">Lower pitch by 20 Hz from baseline</prosody>
<prosody pitch="+20Hz">Increase pitch by 20 Hz from baseline</prosody>
<prosody pitch="-10%">Decrease pitch by 10 percent</prosody>
<prosody pitch="+10%">Increase pitch by 10 percent</prosody>
<prosody pitch="-12st">Lower pitch by 12 semitones from baseline</prosody>
<prosody pitch="+12st">Increase pitch by 12 semitones from baseline</prosody>
<prosody pitch="x-low">Lower pitch by 12 semitones from baseline</prosody>
Attribut 'rate
'
Das Attribut rate
ändert das Sprechtempo für den Text innerhalb des Elements. Gültige Werte:
- Eine Zahl ohne Einheitenbezeichnung: Die Rate wird in die angegebene Anzahl von Wörtern pro Minute geändert. Der Wert
50
gibt beispielsweise eine Sprachübertragungsrate von 50 Wörtern pro Minute an. Die Zahl ist absolut. Sie können keinen relativen Anstieg oder Rückgang in Wörtern pro Minute angeben. - Eine relative Änderung in Prozent: Eine Zahl, die eine relative Abweichung von der Standardsprechgeschwindigkeit bewirkt. Der Zahl geht
+
(eine Erhöhung) oder-
(eine Verringerung) voraus, und ihr folgt ein%
(Prozentzeichen). Eine Zahl ohne Vorzeichen, auf die ein%
folgt, wird als positive Zunahme interpretiert. Beispiel:+10%
oder10%
. Die Standardsprechrate für eine Stimme entspricht der Übergabe des Werts0%
. - Ein Schlüsselwort: Eines der folgenden sechs Schlüsselwörter, die die Sprechgeschwindigkeit auf die entsprechenden vordefinierten Werte ändern:
default
verwendet die Standardsprechgeschwindigkeit des Dienstes.x-slow
verringert das Tempo um 50 Prozent.slow
verringert das Tempo um 25 Prozent.medium
erzeugt dasselbe Verhalten wiedefault
.fast
erhöht das Tempo um 25 Prozent.x-fast
erhöht das Tempo um 50 Prozent.
Expressive neuronale Stimmen unterstützen nur Prozentwerte für das Attribut rate
. Sie unterstützen keine Wörter pro Minute oder Schlüsselwörter.
Die beste Methode, um festzustellen, was für Ihre Anwendung funktioniert, besteht darin, Anpassungen auf der Basis von Prozentsätzen vorzunehmen und mit verschiedenen Werten zu experimentieren. Versuchen Sie, inkrementelle Änderungen von fünf oder zehn Prozent vorzunehmen, bevor Sie weitere signifikante Änderungen vornehmen.
<prosody rate="50">Set speaking rate to 50 words per minute</prosody>
<prosody rate="-5%">Decrease speaking rate by 5 percent</prosody>
<prosody rate="+5%">Increase speaking rate by 5 percent</prosody>
<prosody rate="slow">Decrease speaking rate by 25%</prosody>
<prosody rate="fast">Increase speaking rate by 25%</prosody>
Element '<say-as>
'
Das Element <say-as>
stellt Informationen zum Texttyp bereit, der im Element enthalten ist, und gibt den Detaillierungsgrad für die Wiedergabe des Texts an.
- Das Element besitzt ein erforderliches Attribut namens
interpret-as
, mit dem angegeben wird, wie der eingeschlossene Text zu interpretieren ist. - Das Element verfügt über zwei optionale Attribute,
format
unddetail
, die ausschließlich mit bestimmten Werten des Attributsinterpret-as
verwendet werden, wie in den folgenden Beispielen gezeigt.
Der Service unterstützt das Element <say-as>
in den folgenden Sprachen:
- Der Service unterstützt das Element
<say-as>
für amerikanisches Englisch vollständig. - Bei den meisten anderen Sprachen unterstützt der Service nur die Attribute
digits
undletters
des Elements. - Für Japanisch unterstützt der Service nur das Attribut
digits
. Der Service ignoriert nicht numerische Zeichen, die in der Ziffernfolge enthalten sind.
Die Standardaussprache des Service für alphabetische, numerische und alphanumerische Zeichenfolgen variiert je nach Sprache, wobei jede Sprache ihre eigenen Regeln hat. Mit dem Element <say-as>
können Sie steuern, wie Zeichenfolgen
ausgesprochen werden, einschließlich der Angabe, ob sie als einzelne Zeichen mit den Elementen letters
und digits
ausgeschrieben werden sollen.
Für Deutsch können Sie auch steuern, wie schnell der Service die Zeichen ausspricht. Weitere Informationen finden Sie unter Schreibweise von Zeichenfolgen angeben.
Attribut 'interpret-as
'
Für das Attribut interpret-as
werden die folgenden Werte unterstützt. Die einzelnen Werte werden durch Beispiele ergänzt. Der Service unterstützt die folgenden Werte als Argumente für das Attribut interpret-as
:
cardinal
date
digits
interjection
letters
number
ordinal
vxml:boolean
vxml:currency
vxml:date
vxml:time
vxml:digits
vxml:phone
cardinal
Der Wert cardinal
bewirkt das Sprechen der Kardinalzahl für die Ziffer im Element. Beim folgenden Beispiel wird Super Bowl forty-nine gesprochen. Die erste Angabe ist überflüssig, weil das Standardverhalten des Service
nicht geändert wird.
Super Bowl <say-as interpret-as="cardinal">49</say-as>
Super Bowl <say-as interpret-as="cardinal">XLIX</say-as>
date
Der Wert date
führt dazu, dass das Datum im Element gemäß dem Format gesprochen wird, das im zugehörigen Attribut format
angegeben ist. Das Attribut format
ist für den Wert date
erforderlich.
Falls kein Attribut format
vorhanden ist, versucht der Service trotzdem, das Datum zu sprechen. Bei den folgenden Beispielen werden die angegebenen Datumsangaben in den angegebenen Formaten gesprochen; hierbei stehen d
,
m
und y
für den Tag, den Monat und das Jahr.
<say-as interpret-as="date" format="mdy">12/17/2005</say-as>
<say-as interpret-as="date" format="ymd">2005/12/17</say-as>
<say-as interpret-as="date" format="dmy">17/12/2005</say-as>
<say-as interpret-as="date" format="ydm">2005/17/12</say-as>
<say-as interpret-as="date" format="my">12/2005</say-as>
<say-as interpret-as="date" format="md">12/17</say-as>
<say-as interpret-as="date" format="ym">2005/12</say-as>
digits
Der Wert digits
bewirkt, dass die Ziffern in der Zahl gesprochen werden, die im Element enthalten ist. (Der Wert spricht auch alle alphabetischen Zeichen aus, die in der eingeschlossenen Zeichenfolge enthalten sind.) Beim folgenden
Beispiel werden die einzelnen Ziffern 123456 gesprochen.
<say-as interpret-as="digits">123456</say-as>
interjection
Das Attribut interjection
ist eine SSML-Erweiterung, die speziell für den Service Text to Speech gilt. Es wird nur für die Verwendung mit den expressiven neuronalen Stimmen unterstützt.
Bei den expressiven neuronalen Stimmen hebt der Dienst automatisch die folgenden Interjektionen hervor: aha
, hmm
, huh
, oh
, uh
, uh-huh
und um
. Sie
können den Wert interjection
verwenden, um die Hervorhebung der Interjektionen aha
und oh
durch den Service zu aktivieren bzw. zu inaktivieren. Schließen Sie das zusätzliche Attribut enabled
mit dem Wert true
oder false
ein, um die Interjection zu aktivieren bzw. zu inaktivieren.
Im folgenden Beispiel wird die Hervorhebung der Interjektionen aha
und oh
im Text inaktiviert:
<say-as interpret-as='interjection' enabled='false'>Oh</say-as>, in addition, the <say-as interpret-as='interjection' enabled='false'>aha</say-as> wasp is endemic to Australia.
Weitere Informationen finden Sie unter Emphasizing interjections.
letters
Der Wert letters
bewirkt, dass das im Element enthaltene Wort buchstabiert wird. (Der Wert spricht auch alle numerischen Zeichen aus, die in der eingeschlossenen Zeichenfolge enthalten sind.) Beim folgenden Beispiel wird das
Wort Hello buchstabiert.
<say-as interpret-as="letters">Hello</say-as>
number
Der Wert number
bietet eine Alternative zu den Werten cardinal
und ordinal
. Mit dem optionalen Attribut format
können Sie angeben, wie eine Reihe von Zahlen interpretiert werden soll. Beim
ersten Beispiel ist das Attribut format
nicht angegeben, damit die Zahl als Kardinalzahl gesprochen wird. Im zweiten Beispiel ist explizit angegeben, dass die Zahl als Kardinalzahl auszusprechen ist (durch den Wert cardinal
).
Das dritte Beispiel gibt an, dass die Zahl als Ordinalzahl zu sprechen ist (Wert ordinal
).
<say-as interpret-as="number">123456</say-as>
<say-as interpret-as="number" format="cardinal">123456</say-as>
<say-as interpret-as="number" format="ordinal">123456</say-as>
Für das Attribut telephone
können Sie auch den Wert format
angeben. Die folgenden Beispiele zeigen verschiedene Möglichkeiten zum Sprechen einer Reihe von Zahlen als Telefonnummern. Damit die Zahlen inklusive der
Interpunktion gesprochen werden, geben Sie den Wert punctuation
für das optionale Attribut detail
an.
<say-as interpret-as="number" format="telephone">555-555-5555</say-as>
<say-as interpret-as="number" format="telephone" detail="punctuation">555-555-5555</say-as>
ordinal
Der Wert ordinal
bewirkt, dass die Ziffer innerhalb des Elements als Ordinalzahl gesprochen wird. Im folgenden Beispiel wird second first gesprochen.
<say-as interpret-as="ordinal">2</say-as>
<say-as interpret-as="ordinal">1</say-as>
vxml:boolean
Der Wert vxml:boolean
bewirkt, dass entweder yes oder no gesprochen wird (abhängig vom Wert true
bzw. false
im Element).
<say-as interpret-as="vxml:boolean">true</say-as>
<say-as interpret-as="vxml:boolean">false</say-as>
vxml:currency
Mit dem Wert vxml:currency
wird die Sprachsynthese von Währungswerten gesteuert. Die Zeichenfolge muss im Format UUUmm.nn
geschrieben sein, wobei UUU
der dreistellige Währungsindikator gemäß dem ISO-Standard
4217 und mm.nn
der Betrag ist. Im folgenden Beispiel wird forty-five dollars and thirty cents gesprochen.
<say-as interpret-as="vxml:currency">USD45.30</say-as>
Wenn die angegebene Zahl mehr als zwei Dezimalstellen umfasst, wird der Betrag synthetisch als Dezimalzahl gefolgt vom Währungsindikator erstellt. Falls der dreistellige Währungsindikator nicht vorhanden ist, wird der Betrag nur als Dezimalzahl synthetisch erstellt und der Währungstyp wird nicht gesprochen. Beim folgenden Beispiel wird forty-five point three two nine US dollars gesprochen.
<say-as interpret-as="vxml:currency">USD45.329</say-as>
vxml:date
Der Wert vxml:date
hat dieselbe Funktionsweise wie der Wert date
, das Format ist allerdings mit YYYYMMDD
vordefiniert. Wenn ein Tag-, Monats- oder Jahreswert nicht bekannt ist oder Sie nicht möchten,
dass er gesprochen wird, ersetzen Sie den Wert durch ein Fragezeichen (?
). Im zweiten und dritten Beispiel werden Fragezeichen verwendet.
<say-as interpret-as="vxml:date">20050720</say-as>
<say-as interpret-as="vxml:date">????0720</say-as>
<say-as interpret-as="vxml:date">200507??</say-as>
vxml:time
Der Wert „vxml:time“ gibt die Zeit innerhalb des Elements entsprechend dem im zugehörigen Formatattribut angegebenen Format an. Für den Zeitwert wird das Formatattribut benötigt. Das Format muss vierstellig sein und entweder kein Suffix, "a", "p" oder "h" enthalten. Die folgenden Beispiele geben die angegebene Zeit in den angegebenen Formaten an, wobei d, m und y für Tag, Monat und Jahr stehen.
<say-as interpret-as="vxml:time">1230</say-as>
<say-as interpret-as="vxml:time">1230a</say-as>
<say-as interpret-as="vxml:time">1230p</say-as>
<say-as interpret-as="vxml:time">0100h</say-as>
vxml:digits
Der Wert für vxml:digits
bietet dieselben Einsatzmöglichkeiten wie der Wert für digits
.
vxml:phone
Der Wert vxml:phone
bewirkt, dass eine Telefonnummer sowohl mit Ziffern als auch mit Interpunktion gesprochen wird. Dies entspricht funktional der Verwendung des Wertes number
unter Angabe von telephone
für das Attribut format
und punctuation
für das Attribut detail
.
<say-as interpret-as="vxml:phone">555-555-5555</say-as>
Element '<speak>
'
Der Service unterstützt SSML-Fragmente; dies sind SSML-Elemente, die nicht den vollständigen XML-Header enthalten. Das Element <speak>
ist für SSML, die Sie an den Service übergeben, optional.
Das Element <speak>
ist das Stammelement für SSML-Dokumente. Gültige Attribute:
- Das erforderliche Attribut
version
gibt die SSML-Spezifikation an. Der gültige Wert ist1.0
. - Das Attribut
xml:lang
wird vom Service nicht benötigt. Lassen Sie das Attribut bei Verwendung dieses Elements weg. Beachten Sie, dass Sie dieses Attribut nicht zum Ändern der Sprache für eine Sprachsyntheseanforderung verwenden können. - Das Attribut
xml:base
ist wirkungslos. - Das Attribut
xmlns
wird vom Service nicht benötigt. Lassen Sie das Attribut bei Verwendung dieses Elements weg.
<speak version="1.1">
The text to be spoken.
</speak>
Element '<sub>
'
Das Element <sub>
gibt an, dass der Text, der durch das Attribut alias
angegeben wird, bei der Sprachsynthese den Text ersetzen soll, der in dem Element eingeschlossen ist. Das Attribut alias
ist
das einzige Attribut des Elements und ist erforderlich.
<sub alias="International Business Machines">IBM</sub>
Element '<voice>
'
Das Element <voice>
fordert eine Stimmänderung an. Dieses Element wird nicht unterstützt.