Grammar Třída
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Modul runtime, který odkazuje na gramatiku rozpoznávání řeči, kterou může aplikace použít k definování omezení rozpoznávání řeči.
public ref class Grammar
public class Grammar
type Grammar = class
Public Class Grammar
- Dědičnost
-
Grammar
- Odvozené
Příklady
Následující příklad vytvoří objekt z gramatiky Grammar rozpoznávání řeči definované v souboru XML (cities.xml). Obsah souboru cities.xml se zobrazí v následujícím příkladu XML.
// Load a cities grammar from a local file and return the grammar object.
private static Grammar CreateGrammarFromFile()
{
Grammar citiesGrammar = new Grammar(@"c:\temp\cities.xml");
citiesGrammar.Name = "SRGS File Cities Grammar";
return citiesGrammar;
}
<?xml version="1.0" encoding="UTF-8" ?>
<grammar version="1.0" xml:lang="en-US"
xmlns="http://www.w3.org/2001/06/grammar"
tag-format="semantics/1.0" root="Main">
<!-- cities.xml:
Defines an SRGS grammar for requesting a flight. This grammar includes
a Cities rule that lists the cities that can be used for departures
and destinations. -->
<rule id="Main">
<item>
I would like to fly from <ruleref uri="#Cities"/>
to <ruleref uri="#Cities"/>
</item>
</rule>
<rule id="Cities" scope="public">
<one-of>
<item> Seattle </item>
<item> Los Angeles </item>
<item> New York </item>
<item> Miami </item>
</one-of>
</rule>
</grammar>
Poznámky
Gramatika rozpoznávání řeči je sada pravidel nebo omezení, která definují, co modul pro rozpoznávání řeči rozpozná jako smysluplný vstup. Další informace o vytváření a používání gramatiky rozpoznávání řeči najdete v tématu Rozpoznávání řeči a Vytváření gramatik pomocí SrgsGrammar.
Po vytvoření gramatiky ho musíte sestavit do objektu Grammar , který může modul pro rozpoznávání řeči načíst a že vaše aplikace může za běhu používat ke správě rozpoznávání řeči. Pomocí konstruktoru GrammarGrammar můžete vytvořit instanci z objektu GrammarBuilderSrgsDocument nebo ze souboru nebo ze souboru nebo z objektu, Stream který obsahuje popis gramatiky v podporovaném formátu. Mezi podporované formáty patří:
Soubory ve formátu XML, které odpovídají specifikaci gramatiky rozpoznávání řeči W3C (SRGS) verze 1.0
Gramatiky, které byly zkompilovány do binárního souboru s příponou souboru .cfg
Konstruktory gramatiky, které přijímají gramatické soubory ve formátu XML v argumentech, kompilují gramatiky XML do binárního formátu, aby je optimalizovaly pro načítání a spotřebu modulem pro rozpoznávání řeči. Pomocí jedné z Compile metod můžete zkrátit dobu potřebnou k vytvoření Grammar objektu z gramatiky ve formátu XML tak, že gramatiku předem zkompilujete.
Modul rozpoznávání řeči aplikace, který je spravovaný objektem nebo SpeechRecognitionEngine objektemSpeechRecognizer, může načíst více gramatik rozpoznávání řeči. Aplikace může nezávisle povolit nebo zakázat jednotlivé gramatiky nastavením Enabled vlastnosti a upravit chování rozpoznávání prostřednictvím Grammar vlastností, jako jsou vlastnosti Priority a Weight vlastnosti.
Událost gramatiky SpeechRecognized se vyvolá, když vstup odpovídá cestě přes gramatiku.
Důležité
Použití instance tohoto typu s nedůvěryhodnými daty představuje bezpečnostní riziko. Tento objekt použijte pouze s důvěryhodnými daty. Další informace naleznete v tématu Ověření všech vstupů.
Poznámka:
Osvědčeným postupem je ověřit bezpečnost jakéhokoli identifikátoru URI nebo knihovny DLL použité k sestavení objektu Grammar , což pomáhá zabránit ohrožením zabezpečení při načítání externích prostředků.
Windows a platforma Speech poskytují zabezpečení pro aplikace, které Grammar vytváří instanci z knihovny DLL nebo gramatiky, která podporuje skriptování.
Skripty v Grammar objektech se vždy spouštějí, jako by byly staženy z webové stránky v objektu Internet Zone. Modul CLR (Common Language Runtime) izoluje všechny knihovny DLL načtené, aby získaly definici gramatiky.
Konstruktory
| Name | Description |
|---|---|
| Grammar() |
Inicializuje novou instanci Grammar třídy. |
| Grammar(GrammarBuilder) |
Inicializuje novou instanci Grammar třídy z objektu GrammarBuilder . |
| Grammar(SrgsDocument, String, Object[]) |
Inicializuje novou instanci Grammar třídy z instance SrgsDocumenta určuje název pravidla, které má být vstupním bodem gramatiky. |
| Grammar(SrgsDocument, String, Uri, Object[]) |
Inicializuje novou instanci Grammar třídy z instance SrgsDocumenta určuje název pravidla, které má být vstupním bodem gramatiky a základní identifikátor URI pro překlad relativních odkazů. |
| Grammar(SrgsDocument, String, Uri) |
Inicializuje novou instanci třídy z SrgsDocument objektuGrammar, určuje kořenové pravidlo a definuje základní identifikátor URI (Uniform Resource Identifier) k překladu relativních odkazů na pravidlo. |
| Grammar(SrgsDocument, String) |
Inicializuje novou instanci Grammar třídy z objektu SrgsDocument a určuje kořenové pravidlo. |
| Grammar(SrgsDocument) |
Inicializuje novou instanci Grammar třídy z objektu SrgsDocument . |
| Grammar(Stream, String, Object[]) |
Inicializuje novou instanci Grammar třídy z a Stream určuje kořenové pravidlo. |
| Grammar(Stream, String, Uri, Object[]) |
Inicializuje novou instanci Grammar třídy Stream a určuje kořenové pravidlo a základní identifikátor URI pro překlad relativních odkazů. |
| Grammar(Stream, String, Uri) |
Inicializuje novou instanci Grammar třídy ze streamu, určuje kořenové pravidlo a definuje základní identifikátor URI (Uniform Resource Identifier) k překladu relativních odkazů na pravidlo. |
| Grammar(Stream, String) |
Inicializuje novou instanci Grammar třídy z a Stream určuje kořenové pravidlo. |
| Grammar(Stream) | |
| Grammar(String, String, Object[]) |
Inicializuje novou instanci Grammar třídy ze souboru, který obsahuje definici gramatiky, a určuje název pravidla, které má být vstupním bodem gramatiky. |
| Grammar(String, String) |
Inicializuje novou instanci Grammar třídy ze souboru a určuje kořenové pravidlo. |
| Grammar(String) |
Inicializuje novou instanci Grammar třídy ze souboru. |
Vlastnosti
| Name | Description |
|---|---|
| Enabled |
Získá nebo nastaví hodnotu, která určuje, zda Grammar může rozpoznávání řeči použít rozpoznávání řeči. |
| IsStg |
Získá, zda gramatika je silného typu. |
| Loaded |
Získá, zda Grammar byl načten rozpoznáváním řeči. |
| Name |
Získá nebo nastaví název objektu Grammar . |
| Priority |
Získá nebo nastaví hodnotu priority objektu Grammar . |
| ResourceName |
Získá nebo nastaví hodnotu s názvem binárního prostředku, který byl použit k načtení aktuálního Grammar. |
| RuleName |
Získá název kořenového pravidla nebo vstupního bodu objektu Grammar . |
| Weight |
Získá nebo nastaví hodnotu váhy objektu Grammar . |
Metody
| Name | Description |
|---|---|
| Equals(Object) |
Určuje, zda je zadaný objekt roven aktuálnímu objektu. (Zděděno od Object) |
| GetHashCode() |
Slouží jako výchozí funkce hash. (Zděděno od Object) |
| GetType() |
Získá Type aktuální instance. (Zděděno od Object) |
| LoadLocalizedGrammarFromType(Type, Object[]) |
Metoda |
| MemberwiseClone() |
Vytvoří mělkou kopii aktuálního Object. (Zděděno od Object) |
| StgInit(Object[]) |
Metoda |
| ToString() |
Vrátí řetězec, který představuje aktuální objekt. (Zděděno od Object) |
Událost
| Name | Description |
|---|---|
| SpeechRecognized |
Vyvolá se, když rozpoznávání řeči provádí rozpoznávání pomocí objektu Grammar . |