-
Gebiet der
Erfindung
-
Die
vorliegende Erfindung bezieht sich darauf, wie Idiome durch Sprachdienstsysteme
gehandhabt werden; in der vorliegenden Spezifikation wird der Begriff „Idiom" so verwendet, dass
er üblicherweise
auftretende Sprachblöcke,
z.B. Daten, bedeutet, die durch verschiedene Benutzer auf verschiedene
Weise dargelegt werden.
-
Hintergrund
der Erfindung
-
Seit
einigen Jahren ist ein sprunghafter Anstieg der Anzahl von Diensten
zu verzeichnen, die über
das World Wide Web im öffentlichen
Internet (allgemein als das „Netz" (Web) bezeichnet),
verfügbar
sind, wobei sich das Netz aus einer Unzahl von Seiten zusammensetzt,
die durch Hyperlinks miteinander verknüpft sind und unter Verwendung
des HTTP-Protokolls
auf Anfrage durch Server geliefert werden. Jede Seite umfasst einen
Inhalt, der mit Etiketten markiert ist, um die empfangende Anwendung
(üblicherweise
ein GUI-Browser) zu
befähigen,
den Seiteninhalt auf die durch den Autor der Seite beabsichtigte
Weise wiederzugeben; die für Standard-Webseiten
verwendete Markierungs-Sprache bzw. Mark-up-Sprache ist HTML (HyperText
Markup Language).
-
Jedoch
haben heutzutage weitaus mehr Menschen Zugang zu einem Telefon als
zu einem Computer mit einer Internet-Verbindung. Der Verkauf von Mobiltelefonen übertrifft
den Verkauf von PCs, so dass viele Menschen bereits ein Telefon
griffbereit haben, oder bald haben werden, wo auch immer sie sich
aufhalten. Folglich besteht ein wachsendes Interesse daran, in der
Lage zu sein, auf webbasierte Dienste von Telefonen aus zuzugreifen. „Sprachbrowser" bieten die Aussicht,
jedem Menschen von jedem Telefon aus einen Zu griff auf webbasierte
Dienste zu ermöglichen,
wobei sie es durchführbar
machen, zu jeder Zeit und überall,
ob zu Hause, unterwegs oder in der Arbeit, auf das Web zuzugreifen.
-
Sprachbrowser
ermöglichen
es Menschen, unter Verwendung von Sprachsynthese, voraufgezeichnetem
Audio und Spracherkennung auf das Web zuzugreifen. 1 der
beiliegenden Zeichnungen veranschaulicht die allgemeine Rolle, die
ein Sprachbrowser spielt. Wie man sehen kann, ist ein Sprachbrowser
zwischen einem Benutzer 2 und einem Sprachseitenserver 4 angeordnet.
Dieser Server 4 beinhaltet Sprachdienstseiten (Textseiten),
die mit Etiketten einer sprachverwandten Markierungs-Sprache (oder
sprachverwandten Markierungs-Sprachen) markiert sind. Wenn eine
Seite durch den Benutzer 2 angefordert wird, wird sie durch
einen Dialogverwalter 7 des Sprachbrowsers 3 auf
einer sehr hohen Ebene (Dialogebene) interpretiert, und eine für den Benutzer
bestimmte Ausgabe wird in Textform an einen Text-Zu-Sprache-Wandler (TTS-Wandler,
TTS = Text-To-Speech) 6 geleitet, der eine entsprechende
Sprachausgabe an den Benutzer liefert. Die Benutzerspracheingabe
wird durch ein Spracherkennungsmodul 5 des Sprachbrowsers 3 in
Text umgewandelt, und der Dialogverwalter 7 bestimmt gemäß der empfangenen
Eingabe und den Anweisungen auf der ursprünglichen Seite, welche Schritte
zu unternehmen sind. Die Spracheingabe/-ausgabe-Schnittstelle kann durch Tastenfelder und
kleine Anzeigen ergänzt
werden.
-
Somit
kann ein Sprachbrowser allgemein als eine vorwiegend Software umfassende
Vorrichtung betrachtet werden, die eine Sprach-Markierungssprache
interpretiert und einen Dialog mit einer Sprachausgabe und möglicherweise
anderen Ausgabemodalitäten
und/oder mit einer Spracheingabe und möglicherweise anderem Modalitäten erzeugt
(diese Definition stammt von einem Arbeitsentwurf vom September
2000 der Sprachbrowser-Arbeitsgruppe (Voice browser Working Group)
des World Wide Web Consortium).
-
Zugriff
auf webbasierte Dienste zu ermöglichen,
wobei sie es durchführbar
machen, zu jeder Zeit und überall,
ob zu Hause, unterwegs oder in der Arbeit, auf das Web zuzugreifen.
-
Sprachbrowser
ermöglichen
es Menschen, unter Verwendung von Sprachsynthese, voraufgezeichnetem
Audio und Spracherkennung auf das Web zuzugreifen. 1 der
beiliegenden Zeichnungen veranschaulicht die allgemeine Rolle, die
ein Sprachbrowser spielt. Wie man sehen kann, ist ein Sprachbrowser
zwischen einem Benutzer 2 und einem Sprachseitenserver 4 angeordnet.
Dieser Server 4 beinhaltet Sprachdienstseiten (Textseiten),
die mit Etiketten einer sprachverwandten Markierungs-Sprache (oder
sprachverwandten Markierungs-Sprachen) markiert sind. Wenn eine
Seite durch den Benutzer 2 angefordert wird, wird sie durch
einen Dialogverwalter 7 des Sprachbrowsers 3 auf
einer sehr hohen Ebene (Dialogebene) interpretiert, und eine für den Benutzer
bestimmte Ausgabe wird in Textform an einen Text-Zu-Sprache-Wandler (TTS-Wandler,
TTS = Text-To-Speech) 6 geleitet, der eine entsprechende
Sprachausgabe an den Benutzer liefert. Die Benutzerspracheingabe
wird durch ein Spracherkennungsmodul 5 des Sprachbrowsers 3 in
Text umgewandelt, und der Dialogverwalter 7 bestimmt gemäß der empfangenen
Eingabe und den Anweisungen auf der ursprünglichen Seite, welche Schritte
zu unternehmen sind. Die Spracheingabe/-ausgabe-Schnittstelle kann durch Tastenfelder und
kleine Anzeigen ergänzt
werden.
-
Somit
kann ein Sprachbrowser allgemein als eine vorwiegend Software umfassende
Vorrichtung betrachtet werden, die eine Sprach-Markierungssprache
interpretiert und einen Dialog mit einer Sprachausgabe und möglicherweise
anderen Ausgabemodalitäten
und/oder mit einer Spracheingabe und möglicherweise anderem Modalitäten erzeugt
(diese Definition stammt von einem Arbeitsentwurf vom September
2000 der Sprachbrowser-Arbeitsgruppe (Voice browser Working Group)
des World Wide Web Consortium).
-
Sprachbrowser
können
auch zusammen mit graphischen Anzeigen, Tastaturen und Zeigevorrichtungen
(z.B. einer Maus) verwendet werden, um einen umfassenden „multimodalen
Sprachbrowser" zu
erzeugen. Sprachschnittstellen und die Tastatur, die Zeigevorrichtung
und die Anzeige können
als alternative Schnittstellen mit demselben Dienst verwendet werden
oder könnten
als gemeinsam verwendet angesehen werden, um unter Verwendung all
dieser kombinierten Modi eine umfassende Schnittstelle zu liefern.
-
Manche
Beispiele von Vorrichtungen, die multimodale Interaktionen ermöglichen,
könnten
ein Multimedia-PC oder ein Kommunikationsgerät sein, der bzw. das eine Anzeige,
eine Tastatur, ein Mikrophon und einen Lautsprecher/Kopfhörer aufweist,
ein Auto-Sprachbrowser könnte
Anzeige- und Sprachschnittstellen, die zusammenarbeiten könnten, oder
ein Kiosk aufweisen.
-
Manche
Dienste verwenden eventuell alle Modi zusammen, um eine verbesserte
Erfahrung für
einen Benutzer zu liefern; beispielsweise könnte ein Benutzer eine auf
einer berührungsempfindlichen
Anzeige angezeigte Straßenkarte
berühren
und sagen „Sag
mir, wie ich dort hinkomme".
Manche Dienste könnten
alternative Schnittstellen anbieten, die dem Benutzer Flexibilität einräumen, wenn
er unterschiedlichen Aktivitäten nachgeht.
Beispielsweise könnte
beim Lenken eines Autos Sprache verwendet werden, um auf Dienste
zuzugreifen, ein Beifahrer könnte
jedoch die Tastatur benutzen.
-
2 der
beiliegenden Zeichnungen zeigt die Komponenten eines beispielhaften
Sprachbrowsers zum Handhaben von Sprachseiten 15, die mit
Etiketten markiert sind, die sich auf vier verschiedene Sprach-Markierungssprachen
beziehen, nämlich
die folgenden, genauer:
- – Etiketten einer Dialog-Markierungssprache,
die dazu dienen, ein Sprachdialogverhalten zu spezifizieren;
- – Etiketten
einer multimodalen Markierungs-Sprache, die die Dialog-Markierungssprache
erweitern, so dass sie andere Eingabemodi (Tastatur, Maus usw.)
und Ausgabemodi (große
und kleine Bildschirme) unterstützt;
- – Etiketten
einer Sprachgrammatik-Markierungssprache, die dazu dienen, die Grammatik
der Benutzereingabe zu spezifizieren; und
- – Etiketten
einer Sprachsynthese-Markierungssprache, die dazu dienen, Sprachcharakteristika,
Satzarten, Wortbetonung usw. zu spezifizieren.
-
Wenn
eine Seite 15 in den Sprachbrowser geladen wird, ermittelt
der Dialogverwalter 7 auf Grund der Dialogetiketten und
der multimodalen Etiketten, welche Schritte unternommen werden sollen
(wobei der Dialogverwalter dazu programmiert ist, sowohl die Dialog-
als auch die multimodalen Sprachen 19 zu verstehen). Diese
Schritte können
Hilfsfunktionen 18 (die während der Seitenverarbeitung
zu jeder Zeit verfügbar
sind) umfassen, die durch APIs zugänglich sind und die Dinge wie
z.B. Datenbank-Suchoperationen, Benutzeridentität und -validierung, Telefonanrufssteuerung
usw. umfassen. Wenn eine Sprachausgabe an den Benutzer verlangt
wird, wird die Semantik der Ausgabe mit etwaigen zugeordneten Sprachsyntheseetiketten
an einen Ausgangskanal 12 geleitet, wo ein Sprachgenerator 23 den
endgültigen
Text erzeugt, der durch den Text-Zu-Sprache-Wandler 6 in
Sprache wiedergegeben und an den Lautsprecher 17 ausgegeben
werden soll. Im einfachsten Fall wird der in Sprache wiederzugebende
Text auf der Sprachseite 15 vollständig spezifiziert, und der Sprachgenerator 23 wird
nicht zum Erzeugen des endgültigen
Ausgabetextes benötigt;
in komplexeren Fällen werden
jedoch lediglich semantische Elemente weitergeleitet, die in Etiketten
einer (in 2 nicht gezeigten) Natürliche-Sprachsemantik-Markierungssprache
eingebettet sind, die der Sprachgenerator versteht. Der TTS-Wandler 6 berücksichtigt die
Sprachsyntheseetiketten, wenn er eine Text-Zu-Sprache-Umwandlung durchführt, weshalb
er die Sprachsynthese-Markierungssprache 25 kennt.
-
Eine
Benutzerspracheingabe wird durch ein Mikrophon 16 empfangen
und an einen Eingangskanal des Sprachbrowsers geliefert. Eine Spracherkennungseinrichtung 5 erzeugt
Text, der in ein Sprachverständnismodul 21 eingespeist
wird, um eine Semantik der Eingabe zum Weiterleiten an den Dialogverwalter 7 zu erzeugen.
Die Spracherkennungseinrichtung 5 und das Sprachverständnismodul 21 arbeiten
gemäß einer spezifischen
Lexikon- und Grammatik-Markierungssprache 22 und berücksichtigen
selbstverständlich
jegliche auf die aktuelle Eingabe bezogene Grammatik-Etiketten,
die auf der Seite 15 erscheinen. Die an den Dialogverwalter 7 ausgegebene
Semantik kann einfach ein erlaubtes Eingabewort sein oder kann komplexer
sein und eingebettete Etiketten einer Natürliche-Sprachsemantik-Markierungssprache umfassen.
Der Dialogverwalter 7 bestimmt auf der Basis der empfangenen
Benutzereingabe und der Dialogetiketten auf der aktuellen Seite 15,
welche Schritte als Nächstes
zu unternehmen sind (beispielsweise einschließlich eines Aufrufens einer
weiteren Seite).
-
Jegliche
multimodalen Etiketten auf der Sprachseite 15 werden verwendet,
um eine multimodale Eingabe/Ausgabe zu steuern und zu interpretieren.
Eine derartige Eingabe/Ausgabe wird durch eine entsprechende Erkennungseinrichtung 27 in
dem Eingangskanal 11 und einen entsprechenden Ausgabe-Constructor 28 in
dem Ausgangskanal 12 ermöglicht.
-
Unabhängig von
seiner genauen Form kann sich der Sprachbrowser an jeder beliebigen
Stelle zwischen dem Benutzer und dem Sprachseitenserver befinden. 3–5 veranschaulichen
drei Möglichkeiten
in dem Fall, in dem die Sprachbrowser-Funktionalität beisammen
gehalten wird; es gibt viele andere Möglichkeiten, wenn die funktionalen
Komponenten des Sprachbrowsers getrennt und an verschiedenen logischen/physischen
Stellen angeordnet sind.
-
Bei 3 ist
der Sprachbrowser 3 als in ein Endbenutzersystem 8 (z.B.
einen PC oder eine mobile Entität),
das dem Benutzer 2 zugeordnet ist, integriert gezeigt.
In diesem Fall ist der Sprachseitenserver 4 mittels eines
beliebigen geeigneten datenfähigen
Trägerdienstes,
der sich über
ein oder mehrere Netzwerke 9 erstreckt, die dazu dienen,
eine Verbindbarkeit zwischen dem Server 4 und dem Endbenutzersystem 8 zu
liefern, mit dem Sprachbrowser 3 verbunden. Der datenfähige Trägerdienst
muss nur textbasierte Seiten tragen und erfordert somit keine hohe
Bandbreite.
-
4 zeigt
den Sprachbrowser 3 an derselben Stelle wie der Sprachseitenserver 4 angeordnet.
In diesem Fall wird eine Spracheingabe/-ausgabe über ein Sprachnetzwerk 9 zwischen
dem Endbenutzersystem 8 und dem Sprachbrowser 3 an
die Sprachseitenserver-Site geleitet. Die Tatsache, dass der Sprachdienst
als Sprachseiten verkörpert
ist, die durch einen Sprachbrowser interpretiert werden, ist für den Benutzer
oder das Netzwerk nicht offensichtlich, und der Dienst könnte auch
auf andere Weise implementiert werden, ohne dass sich der Benutzer
oder das Netzwerk dessen bewusst sind.
-
In 5 ist
der Sprachbrowser 3 in der Netzwerkinfrastruktur zwischen
dem Endbenutzersystem 8 und dem Sprachseitenserver 4 angeordnet,
wobei eine Spracheingabe und -ausgabe über eine Netzwerkabzweigung
zwischen dem Endbenutzersystem und dem Sprachbrowser geleitet werden
und wobei Sprachseitentextdaten über
eine andere Netzwerkabzweigung zwischen dem Sprachseitenserver 4 und
dem Sprachbrowser 3 geleitet werden. Diese Anordnung weist
gewisse Vorteile auf; insbesondere können durch ein Platzieren teurer
Ressourcen (Spracherkennung, TTS-Wandler) in dem Netzwerk diese
Ressourcen für
viele verschiedene Benutzer verwendet werden, wobei Benutzerprofile
verwendet werden, um den je dem Benutzer bereitgestellten Sprachbrowserdienst
kundenspezifisch auszurichten.
-
Wie
bereits unter Bezugnahme auf den Sprachbrowser der 2 erwähnt wurde,
verwenden Sprachverarbeitungssysteme Sprachgrammatiken, um Wörter, die
der Benutzer spricht, zu erkennen, und um die Form, in der ein Benutzer
eventuell einen bestimmten Satz von sich gibt, zu steuern. Beispielsweise
kann eine Grammatik einen Benutzer darauf beschränken, ein Datum als Zahl zu
sprechen, auf die ein Monat folgt, auf den wiederum ein zweistelliges
Jahr folgt. Es gibt mehrere ohne weiteres identifizierbare „Idiome", die bei Schnittstellen
zwischen Mensch und Computer verwendet werden, z.B. Daten, Kreditkartennummern
usw. In der Tat sind diese Idiome übliche Bausteine.
-
Derzeitige
Sprachsysteme liefern eine Erkennung von Idiomen, indem sie versuchen,
alle Arten zu erkennen, auf die die Mehrzahl der Benutzer ein bestimmtes
Idiom sagen könnte.
Dies führt
zu einer sehr komplexen Grammatik für eine vom Konzept her sehr
einfache Aufgabe. Es ist normal, dass Spracherkennungssysteme eine
Art aus der Grammatik abgeleitetes Wahrscheinlichkeitsmodell verwenden,
um Entscheidungen darüber
zu treffen, wie die Sprache erkannt wird. Je komplexer die Grammatik,
desto schwieriger ist es für
die Erkennungseinrichtung, zu bestimmen, von welcher Satzform die Äußerung stammte.
-
Die
WO-A-99/57714 offenbart eine Sprachbenutzerschnittstelle mit Persönlichkeit.
Die offenbarte Sprachbenutzerschnittstelle sieht die Verwendung
von kundenspezifisch ausgerichteten Erkennungsgrammatiken vor, was
persönliche
Vokabularoptionen wie z.B. Namenslisten ermöglicht.
-
Eine
Aufgabe der vorliegenden Erfindung besteht darin, ein Verfahren
und eine Vorrichtung zum Erleichtern der Erkennung von Idiomen zu
schaffen, die durch einen Benutzer auf dessen bevorzugte Art und Weise,
zu sprechen, eingegeben werden.
-
Zusammenfassung
der Erfindung
-
Gemäß einem
Aspekt der vorliegenden Erfindung ist ein Verfahren zum Handhaben
von üblicherweise auftretenden
Sprachblöcken,
die hierin als Idiome bezeichnet werden, in einer Spracheingabe
durch einen Benutzer an ein Sprachdienstsystem vorgesehen, wobei
die Grammatik der Spracheingabe normalerweise durch das Sprachdienstsystem
festgelegt wird; wobei das Verfahren eine Verwendung einer benutzerspezifizierten Idiomgrammatik
beinhaltet, um das entsprechende Idiom in einer Spracheingabe von
diesem Benutzer zu interpretieren.
-
Üblicherweise
wird die normale Grammatik einer Spracheingabe durch Grammatik-Etiketten
festgelegt, die dazu verwendet werden, ein durch einen Sprachseitenbrowser
interpretiertes Sprachseitenskript zu markieren; in diesem Fall
liegt die Verantwortung zur Verwendung der benutzerspezifizierten
Idiomgrammatik, um das entsprechende Idiom in der durch den Benutzer
eingegebenen Sprache zu interpretieren, allgemein beim Sprachbrowser.
-
Die
benutzerspezifizierte Grammatik kann durch den Benutzer vorab direkt
bezüglich
des Sprachbrowsers festgelegt werden oder kann während des Betriebs durch den
Browser von einer entfernten Stelle abgerufen werden.
-
Gemäß einem
weiteren Aspekt der vorliegenden Erfindung ist ein Sprachbrowser
vorgesehen, der folgende Merkmale aufweist:
- – eine Sprache/Server-Schnittstelle
zum Bilden einer Schnittstelle mit einem Sprachseitenserver, um
dem Server eine Benutzereingabe zu liefern und um Sprach seiten in
Form von Text mit eingebetteten Sprach-Markierungs-Etiketten, die Grammatik-Etiketten
umfassen, von dem Server zu empfangen;
- – einen
Eingangskanal, der eine Spracherkennungseinrichtung umfasst, zum
Interpretieren einer Benutzerspracheingabe;
- – einen
Dialogverwalter zum Bewerkstelligen einer Dialogsteuerung auf der
Basis einer Ausgabe aus dem Eingangskanal und Sprachseiten, die
von dem Sprachseitenserver empfangen werden; und
- – einen
Ausgangskanal, der einen Text-Zu-Sprache-Wandler umfasst, zum Erzeugen
einer Sprachausgabe aus den empfangenen Sprachseiten unter der Steuerung
des Dialogverwalters;
dadurch gekennzeichnet, dass der
Sprachbrowser ferner eine Benutzer-Grammatik-Funktionalität zum Ermöglichen
der Handhabung üblicherweise
auftretender Sprachblöcke,
hierin Idiome, in der Benutzerspracheingabe aufweist, wobei die
Benutzer-Grammatik-Funktionalität
angeordnet ist, um auf eine benutzerspezifizierte Idiomgrammatik
zuzugreifen und um den Eingangskanal zu veranlassen, diese Grammatik
dazu zu verwenden, ein entsprechendes Idiom in einer Spracheingabe
von diesem Benutzer zu interpretieren.
-
Kurze Beschreibung
der Zeichnungen
-
Unter
Bezugnahme auf die beiliegenden schematischen Zeichnungen werden
nun anhand eines nicht-einschränkenden
Beispiels ein Verfahren und eine Vorrichtung beschrieben, die die
Erfindung verkörpern.
Es zeigen:
-
1 ein
Diagramm, das die Rolle eines Sprachbrowsers veranschaulicht;
-
2 ein
Diagramm, das die Funktionselemente eines Sprachbrowsers und deren
Beziehung zu verschiedenen Arten von Sprach-Markierungs-Etiketten
zeigt;
-
3 ein
Diagramm, das einen Sprachdienst zeigt, der mit einer in einem Endbenutzersystem
befindlichen Sprachbrowserfunktionalität implementiert ist;
-
4 ein
Diagramm, das einen Sprachdienst zeigt, der mit einer gemeinsam
mit einem Sprachseitenserver angeordneten Sprachbrowserfunktionalität implementiert
ist;
-
5 ein
Diagramm, das einen Sprachdienst zeigt, der mit einer in einem Netzwerk
zwischen dem Endbenutzersystem und dem Sprachseitenserver angeordneten
Sprachbrowserfunktionalität
implementiert ist; und
-
6 ein
Diagramm, das ein Ausführungsbeispiel
der vorliegenden Erfindung veranschaulicht, das in einem netzwerkbasierten
Sprachbrowser implementiert ist.
-
Bester Modus
zum Durchführen
der Erfindung
-
In
der folgenden Beschreibung werden Sprachdienste auf der Basis von
Sprachseitenservern beschrieben, die Seiten mit eingebetteten Sprach-Markierungs-Etiketten
Sprachbrowsern zur Verfügung
stellen. Wenn nichts anderes angegeben ist, soll die vorstehende
Beschreibung von Sprachbrowsern und ihren möglichen Positionen und Zugriffsverfahren
so verstanden werden, dass sie auch für die beschriebenen Ausführungsbeispiele
der Erfindung gilt. Obwohl sprachbrowserbasierte Formen von Sprachdiensten
bevorzugt sind, ist die vorliegende Erfindung von ihrem am breitest
gefassten Kon zept her ferner nicht auf diese Formen von Sprachdienstsystem
beschränkt,
und Fachleuten werden andere geeignete Systeme einleuchten. Der
Schutzumfang der Erfindung ist lediglich durch die beigefügten Patentansprüche beschränkt.
-
6 zeigt
einen Sprachbrowser 3, der von seiner Form her dem der 2 ähnelt und
der an einem Dienstsystem in der Kommunikationsinfrastruktur 9 angeordnet
ist und durch einen Benutzer 2 verwendet wird, um eine
Sprach-Site, deren Host der Sprachseitenserver 4 ist, zu
durchsuchen bzw. in derselben zu browsen. Über eine Benutzerausrüstung 8 und
einen Sprachkanal 29 ist der Benutzer mit dem Sprachbrowser
verbunden. Der Server 4 stellt dem Browser Sprachseiten 15 zur
Verfügung
und empfängt
wiederum eine Benutzereingabe in Textform.
-
Der
Sprachbrowser 3 umfasst einen Grammatikersetzungsblock 30,
dessen Rolle darin besteht, zu bewirken, dass der Sprachkanal 11 des
Browsers beim Interpretieren der Spracheingabe des Idioms des Benutzers
die bevorzugte Idiomgrammatik des Benutzers verwendet. Die bevorzugte
Grammatik des Benutzers für
ein oder mehrere Idiome wird durch den Benutzer vorab festgelegt,
wobei diese festgelegte Grammatik (oder ein Verweis auf dieselbe)
in einem Speicher 31 gespeichert wird. Wenn eine Sprachseite
bereitgestellt wird, die ein Idiom enthält, kann die Seite ausdrücklich angeben,
dass der Benutzer eine eingebaute Grammatik für das Idiom verwenden soll;
in diesem Fall gewinnt der Block 30 die bevorzugte Grammatik
des Benutzers für
das betreffende Idiom wieder und liefert sie zum Interpretieren
der Eingabe des Benutzers an den Eingangskanal 11. Der
Eingangskanal liefert dann allgemein ein Namenwertpaar zur Rückkopplung
an die Sprachsite an dem Server 4. Wenn der Benutzer keine
bevorzugte Idiomgrammatik festgelegt hat, verwendet der Browser
eine voreingestellte Idiomgrammatik (die durch die Sprachseite 15 festgelegt
werden könnte).
-
Der
Grammatikersetzungsblock 30 kann auch so fungieren, dass
er jegliche Grammatik, die durch die Sprachseite 15 festgelegt
ist, auch dann außer
Kraft setzt, wenn Letztere dies nicht explizit vorsieht. In diesem Fall
muss der Block auf der Seite 15 aktiv nach Idiomen suchen
und diese dann durch die bevorzugte Grammatik des Benutzers ersetzen.
Wenn die Sprachsite die Eingabe des Benutzers als Namenwertpaare
zurückerwartet,
muss der Block 30 weiter nichts mehr unternehmen; wenn
die Sprachsite die Rückkopplung
jedoch in Form einer in eine Reihenfolge gebrachten Abfolge von
Werten erwartet, wobei die Reihenfolge durch die auf der Seite festgelegte
Grammatik vorgegeben wird, so muss der Block 30 gewährleisten,
dass die von dem Eingangskanal 11 unter Verwendung der
bevorzugten Grammatik des Benutzers erhaltene Ausgabe für eine Bereitstellung
zurück
an die Sprachsite in die richtige Reihenfolge gebracht ist.
-
Der
Sprachbrowser 3 muss die bevorzugten Idiomgrammatiken des
Benutzers nicht dauerhaft in dem Speicher 31 halten und
kann dazu angeordnet sein, diese Grammatiken nur dann von einer
entfernten Site, z.B. der Site 33, zu laden, wenn sich
der Benutzer bei dem Sprachbrowserdienstsystem registriert. Diese
entfernte Site könnte
beispielsweise ein „Heim"-Sprachbrowserdienstsystem
des Benutzers sein, wobei die Adresse dieses Heimdienstsystems dem
derzeitigen Sprachbrowser bei der Registrierung geliefert wird,
um L etzteren zu befähigen,
die Idiomgrammatiken von der Site 33 abzurufen. Alternativ
dazu kann der Benutzer seine bevorzugten Idiomgrammatiken von der
Benutzerausrüstung 8 bei
der Registrierung dem Sprachbrowser 3 bereitstellen.
-
Eine
weitere Möglichkeit
besteht darin, dass die bevorzugte Grammatik des Benutzers für ein bestimmtes
Idiom dann, wenn dies für
eine bestimmte Sprachseite 15 benötigt wird, d.h. während des
Betriebs, von einer entfernten Site, z.B. der Site 33,
abgerufen wird. Wenn bekannt wird, dass der Benutzer für ein bestimmtes
Idiom keine Grammatik festgelegt hat, dann kann entweder die entfernte
Ressourcensite 33 des Benutzers dafür verantwortlich gemacht werden,
eine voreingestellte Grammatik zu liefern, oder dieselbe kann durch
den Sprachbrowser geliefert (oder auf der Seite 15 festgelegt)
werden.
-
Indem
einem Benutzer auf vorstehende Weise ermöglicht wird, seine eigene persönliche Grammatik für Idiome
zu verwenden, kann der Benutzer ein bestimmtes Idiom auf eine Weise
sagen, die ihm am angenehmsten ist, ohne die Effizienz des Spracherkennungssystems
zu beeinträchtigen.
-
Im
Folgenden werden zwei Beispiele einer Flugbuchungssystem-Sprachseite
gegeben, die unter Verwendung von VoiceXML (vgl. Voice XML Forum)
geschrieben ist, wobei der Benutzer sein Abflugdatum auswählen kann.
VoiceXML-Skripte akzeptieren 3 Arten von Grammatiken, nämlich: eingefügte Grammatiken
(die in dem Skript selbst geschrieben sind), externe Grammatiken
(auf die durch einen URL bzw. Einheitsressourcenlokator verwiesen
wird) und eingebaute Grammatiken; das vorliegende Beispiel betrifft
die zweite und die dritte Art von Grammatik.
-
Beispiel
1 – Verwendung
von eingebauten Grammatiken
-
Das
Element <Grammatik> sagt dem Browser 3,
dass er eine eingebaute Grammatik verwenden soll, um gesprochene
Daten informationen zu handhaben. Der Benutzer hat den Browser vorab
konfiguriert, indem er Zeiger auf die eingebauten Grammatiken, deren
Benutzung er vorzieht, festgelegt hat. Statt also die voreingestellten
eingebauten Grammatiken zu laden, ruft der Browser Grammatiken ab,
die für
den Benutzer spezifisch sind.
-
Eine
derartige Grammatik könnte
folgendermaßen
aussehen:
(„JSGF" bezieht sich auf das Java Speech Grammar
Format)
-
Beispiel 2 – Verwendung
von externen Grammatiken
-
Einem
Benutzer eines Sprachbrowserressourcendienstes (der beispielsweise
durch Server 33 bereitgestellt wird) kann ein eindeutiger
Identifizierer gegeben werden, der beispielsweise aus Folgendem
besteht:
- – einem
Sprachbrowserdienstidentifizierer (Beispiel: „www.myvoicebrowser.com")
- – einer
Benutzer-ID (Beispiel: johnDoe).
-
Alle
Grammatiken, die von Benutzern von „www.myvoicebrowser.com" verwendet werden,
sind unter www.myvoicebrowser/grammars gespeichert.
-
Die
Ressource „myvoicebrowser.com" kann auch andere
Benutzerpräferenzen
wie z.B. Sprache, Dialekt, Geschlecht usw. speichern.
-
Ein
VoiceXML-Skript
15 kann beispielsweise das während des
Betriebs erfolgende Abrufen einer Grammatik, die einem bestimmten
Benutzer eines Sprachbrowsers entspricht, unter Verwendung von Servlet-ähnlichen
Anforderungen explizit festlegen.
wobei:
- session.vbid
- – eine Sitzungsvariable ist,
die den Sprachbrowseridentifizierer hält.
- Session.uid
- – eine Sitzungsvariable ist,
die die Benutzer-ID
hält.
-
Die
Grammatik-Etikette enthält
einen Ausdruck, der, wenn er interpretiert wird, den URL der zu
ladenden Grammatik angibt. Beispielsweise:
http://www.myvoicebrowser.com/grammar?type=date&id=johnDoe"
-
Wenn
die Grammatik des Benutzers nicht auf der Site www.myvoicebrowser.com
zu finden ist, könnte diese
Site zu einer auf einer bekannten Website angeordneten voreingestellten
Grammatik umleiten, z.B.:
www.grammar.com/?type=date
-
Selbstverständlich sind
viele Variationen der oben beschriebenen Anordnungen möglich. Da
der Benutzer ein Idiom eventuell immer noch in einem Format eingibt,
das nicht dem seiner bevorzugten Grammatik entspricht, kann der
Sprachbrowser beispielsweise dazu angeordnet sein, den Benutzer
daran zu erinnern, welches Format zu benutzen ist, entweder vor
einer Eingabe oder im Anschluss an eine nicht interpretierbare Eingabe
des Idioms.