Spracherkennungsgrammatikspezifikation
Spracherkennungsgrammatikspezifikation (SRGS) ist a W3c Standard für wie Spracherkennungsgrammatiken sind angegeben. Eine Spracherkennungsgrammatik ist eine Reihe von Wortmustern und teilt einem Spracherkennungssystem mit, was ein Mensch erwartet. Zum Beispiel, wenn Sie eine anrufen automatischer Teilnehmer Bei der Anwendung werden Sie für den Namen einer Person aufgefordert (mit der Erwartung, dass Ihr Anruf auf das Telefon dieser Person übertragen wird). Es wird dann einen Spracherkenner starten und ihm eine Spracherkennungsgrammatik geben. Diese Grammatik enthält die Namen der Personen im Verzeichnis des Auto -Begleiters und eine Sammlung von Satzmustern, die die typischen Antworten von Anrufern auf die Eingabeaufforderung darstellen.
SRGS gibt zwei alternative, aber äquivalente Syntaxe an, eine basierend auf Xmlund einer, das erweitert wird Bnf Format. In der Praxis wird die XML -Syntax häufiger verwendet.
Sowohl die ABNF- als auch die XML -Form haben die ausdrucksstarke Kraft von a Kontextfreie Grammatik. Ein Grammatikprozessor, der keine rekursiven Grammatiken unterstützt endliche Zustandsmaschine oder regulären Ausdruck Sprache.
Wenn der Spracherkenner nur eine Zeichenfolge zurückgegeben hätte, die die vom Benutzer gesprochenen Wörter enthält, müsste die Sprachanwendung die mühsame Aufgabe erledigen, die semantische Bedeutung aus diesen Wörtern zu extrahieren. Aus diesem Grund können SRGS -Grammatiken mit dekoriert werden Schild Elemente, die beim Ausführen das semantische Ergebnis aufbauen. SRGS gibt nicht den Inhalt der Tagelemente an: Dies geschieht in einem Begleiter W3C -Standard. Semantische Interpretation für die Spracherkennung (Sisr). SISR basiert auf ECMaskriptund ECMascript -Anweisungen in den SRGS -Tags erstellen ein semantisches ECMAScript -Semantic -Ergebnisobjekt, das für die Sprachanwendung einfach zu verarbeiten ist.
Sowohl SRGs als auch SISR sind W3C -Empfehlungen, die letzte Phase der W3C -Standardspur. Der W3C VoiceXml Standard, der definiert, wie Sprachdialoge angegeben werden, hängt stark von SRGs und SISR ab.
Beispiele
Hier ist ein Beispiel für das erweiterte BNF von SRGs, da es in einer automatischen Bewerbung verwendet werden kann:
#ABNF 1.0 ISO-8859-1; // standardmäßige Grammatiksprache ist uns Englisch Sprache en-us; // Einfachsprachenbefugnis an Tokens // Beachten Sie, dass "fr-ca" (kanadisches Französisch) nur auf nur auf // Das Wort "oui" wegen Vorrangregeln $ ja = Jawohl | oui! fr-ca; // Einfachsprachenbefugnis zu einer Erweiterung $ people1 = (Michel Tremblay | André Roy)! fr-ca; // Sprachspezifische Aussprachen desselben Wortes bearbeiten // Ein fähiger Spracherkenner wird auf mexikanisches Spanisch und zuhören und // US -englische Aussprachen. $ people2 = Jose! En-us | Jose! ES-MX; /** * Mehrsprachige Eingabe möglich * @Beispiel Darf ich mit André Roy sprechen * @Beispiel Darf ich mit Jose sprechen */ Öffentlichkeit $ Anfrage = kann ich mit ... sprechen ($ people1 | $ people2);
Hier finden Sie das gleiche SRGS -Beispiel mit dem XML -Formular:
"http://www.w3.org/tr/speech-grammar/grammar.dtd"> xmlns ="http://www.w3.org/2001/06/grammar" xmlns: xsi ="http://www.w3.org/2001/xmlschema-instance" XSI: Schemalokalisierung ="http://www.w3.org/2001/06/grammar http://www.w3.org/tr/speech-grammar/grammar.xsd " XML: Lang ="en-us" Version ="1.0"> id ="People1"> XML: Lang ="fr-ca"> Michel Tremblay André Roy id ="Anfrage" Umfang ="Öffentlichkeit"> Darf ich mit André Roy sprechen Darf ich mit Jose sprechen kann ich mit ... sprechen URI ="#people1"/> URI ="#people2"/>
Siehe auch
- Sisr
- VoiceXml
- Aussprache -Lexikonspezifikation (Pls)
- Natürliche Sprache Semantik Markup Sprache
- JSGF