GrammarBuilder 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í.
Poskytuje mechanismus pro programové vytváření omezení pro gramatiku rozpoznávání řeči.
public ref class GrammarBuilder
public class GrammarBuilder
type GrammarBuilder = class
Public Class GrammarBuilder
- Dědičnost
-
GrammarBuilder
Příklady
Následující příklad používá GrammarBuilder a Choices objekty k vytvoření gramatiky, která dokáže rozpoznat jednu ze dvou frází, "Make background colorChoice" nebo "Set background to colorChoice".
Příklad používá Choices objekt k vytvoření seznamu přijatelných hodnot pro colorChoice z pole String objektů. Objekt Choices je podobný one-of prvku ve specifikaci SRGS a obsahuje sadu alternativních frází, z nichž lze rozpoznat při mluvené řeči. Příklad také používá Choices objekt k seskupení pole dvou GrammarBuilder objektů do dvojice alternativních frází, které může výsledná gramatika rozpoznat. Alternativní slova nebo fráze jsou součástí většiny gramatiky a Choices objekt poskytuje tuto funkci pro gramatiky vytvořené pomocí GrammarBuilder.
Příklad nakonec vytvoří Grammar objekt z GrammarBuilder vytvořeného objektu z objektu Choices .
private Grammar CreateColorGrammar()
{
// Create a set of color choices.
Choices colorChoice = new Choices(new string[] {"red", "green", "blue"});
GrammarBuilder colorElement = new GrammarBuilder(colorChoice);
// Create grammar builders for the two versions of the phrase.
GrammarBuilder makePhrase = new GrammarBuilder("Make background");
makePhrase.Append(colorElement);
GrammarBuilder setPhrase = new GrammarBuilder("Set background to");
setPhrase.Append(colorElement);
// Create a Choices for the two alternative phrases, convert the Choices
// to a GrammarBuilder, and construct the grammar from the result.
Choices bothChoices = new Choices(new GrammarBuilder[] {makePhrase, setPhrase});
Grammar grammar = new Grammar((GrammarBuilder)bothChoices);
grammar.Name = "backgroundColor";
return grammar;
}
Poznámky
Gramatiky rozpoznávání řeči se běžně vytváří ve formátu XML definovaném specifikací SRGS (Speech Recognition Grammar Specification) verze 1.0. Pokud znáte SRGS, ale chcete generovat gramatiky programově, můžete použít System.Speech.Recognition.SrgsGrammar obor názvů, jehož členové úzce odpovídají prvkům a atributům definovaným SRGS. Pokud neznáte SRGS nebo chcete jednoduchý programový přístup k vytváření gramatik, pomocí kterých můžete efektivně provádět mnoho běžných scénářů; můžete použít třídy GrammarBuilder a Choices předměty.
Pomocí GrammarBuilder objektů můžete vytvořit hierarchický strom složený z Choices objektů, které obsahují alternativní fráze, interspersed with preambule a post-amble phrases at each node, a seeded with sémantické hodnoty, které vyjadřují význam zpět do aplikace.
K vytvoření objektu Grammar použijte GrammarBuilder následující postup.
Vytvořte objekt GrammarBuilder.
Připojte omezení k GrammarBuilderobjektu , jako String jsou objekty, SemanticResultKeyChoices, , SemanticResultValue, DictationGrammara další GrammarBuilder objekty, které definují omezení pro gramatiku.
Pomocí jednoho z Grammar konstruktorů vytvořte Grammar objekt z dokončené GrammarBuilder gramatiky.
Vytváření GrammarBuilder obsahu je nejvhodnější pro gramatiky, které obsahují jedno pravidlo obsahující seznamy nebo seznamy seznamů. Chcete-li programově vytvářet gramatiky, které mají více pravidel nebo které potřebují vytvářet interní odkazy na pravidla, použijte třídy System.Speech.Recognition.SrgsGrammar oboru názvů.
Instance lze získat také implicitními převody GrammarBuilder z určitých jiných tříd nebo kombinací GrammarBuilder s druhým objektem, který obsahuje omezení pro gramatiku.. Další informace najdete v tématech Implicit a Addition operátorech Add a metodách.
Chcete-li přidat pravidla do existujícího GrammarBuilderobjektu , použijte metodu Add, Append, AppendDictation, AppendRuleReferencea AppendWildcard metody.
Důležité
Rozpoznávání řeči může vyvolat výjimku při použití gramatiky rozpoznávání řeči, která obsahuje duplicitní sémantické prvky se stejným názvem klíče nebo více sémantických prvků, které by mohly opakovaně upravovat hodnotu stejného sémantického prvku.
Pro pomoc s laděním DebugShowPhrases vrátí vlastnost aktuální stav GrammarBuilder jako řetězec.
Konstruktory
| Name | Description |
|---|---|
| GrammarBuilder() |
Inicializuje novou prázdnou GrammarBuilder instanci třídy. |
| GrammarBuilder(Choices) |
Inicializuje novou instanci GrammarBuilder třídy ze sady alternativ. |
| GrammarBuilder(GrammarBuilder, Int32, Int32) |
Inicializuje novou instanci GrammarBuilder třídy z opakujícího se prvku. |
| GrammarBuilder(SemanticResultKey) |
Inicializuje novou instanci GrammarBuilder třídy z sémantického klíče. |
| GrammarBuilder(SemanticResultValue) |
Inicializuje novou instanci GrammarBuilder třídy z sémantické hodnoty. |
| GrammarBuilder(String, Int32, Int32) |
Inicializuje novou instanci GrammarBuilder třídy z posloupnosti slov v String a určuje, kolikrát String se může opakovat. |
| GrammarBuilder(String, SubsetMatchingMode) |
Inicializuje novou instanci GrammarBuilder třídy pro podmnožinu posloupnosti slov. |
| GrammarBuilder(String) |
Inicializuje novou instanci GrammarBuilder třídy ze sekvence slov. |
Vlastnosti
| Name | Description |
|---|---|
| Culture |
Získá nebo nastaví jazyk gramatiky rozpoznávání řeči. |
| DebugShowPhrases |
Získá řetězec, který zobrazuje obsah a strukturu gramatiky obsažené .GrammarBuilder |
Metody
| Name | Description |
|---|---|
| Add(Choices, GrammarBuilder) |
Vytvoří novou GrammarBuilder , která obsahuje Choices objekt následovaný objektem GrammarBuilder . |
| Add(GrammarBuilder, Choices) |
Vytvoří novou GrammarBuilder , která obsahuje GrammarBuilder objekt následovaný objektem Choices . |
| Add(GrammarBuilder, GrammarBuilder) |
Vytvoří novou GrammarBuilder , která obsahuje sekvenci dvou GrammarBuilder objektů. |
| Add(GrammarBuilder, String) |
Vytvoří novou GrammarBuilder , která obsahuje GrammarBuilder objekt následovaný frází. |
| Add(String, GrammarBuilder) |
Vytvoří novou GrammarBuilder , která obsahuje frázi následovanou objektem GrammarBuilder . |
| Append(Choices) |
Připojí sadu alternativ k aktuální sekvenci gramatických prvků. |
| Append(GrammarBuilder, Int32, Int32) |
Připojí opakovaný gramatický prvek k aktuální sekvenci gramatických prvků. |
| Append(GrammarBuilder) |
Připojí prvek gramatiky k aktuální sekvenci gramatických prvků. |
| Append(SemanticResultKey) |
Připojí sémantický klíč k aktuální sekvenci gramatických prvků. |
| Append(SemanticResultValue) |
Připojí sémantickou hodnotu k aktuální sekvenci gramatických prvků. |
| Append(String, Int32, Int32) |
Připojí opakovanou frázi k aktuální sekvenci gramatických prvků. |
| Append(String, SubsetMatchingMode) |
Připojí prvek pro podmnožinu fráze k aktuální sekvenci gramatických prvků. |
| Append(String) |
Připojí frázi k aktuální sekvenci gramatických prvků. |
| AppendDictation() |
Připojí výchozí gramatiku diktování k aktuální sekvenci gramatických prvků. |
| AppendDictation(String) |
Připojí zadanou gramatiku diktování k aktuální sekvenci gramatických prvků. |
| AppendRuleReference(String, String) |
Připojí zadané pravidlo definičního souboru gramatiky k aktuální sekvenci gramatických prvků. |
| AppendRuleReference(String) |
Připojí definiční soubor gramatiky k aktuální sekvenci gramatických prvků. |
| AppendWildcard() |
Připojí prvek pro rozpoznávání gramatiky, který odpovídá jakémukoli vstupu aktuální sekvenci gramatických prvků. |
| 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) |
| MemberwiseClone() |
Vytvoří mělkou kopii aktuálního Object. (Zděděno od Object) |
| ToString() |
Vrátí řetězec, který představuje aktuální objekt. (Zděděno od Object) |
Operátory
| Name | Description |
|---|---|
| Addition(Choices, GrammarBuilder) |
Vytvoří novou GrammarBuilder , která obsahuje Choices objekt následovaný objektem GrammarBuilder . |
| Addition(GrammarBuilder, Choices) |
Vytvoří novouGrammarBuilder, která obsahuje následovanou GrammarBuilder .Choices |
| Addition(GrammarBuilder, GrammarBuilder) |
Vytvoří novou GrammarBuilder , která obsahuje sekvenci dvou GrammarBuilder objektů. |
| Addition(GrammarBuilder, String) |
Vytvoří novou GrammarBuilder , která obsahuje GrammarBuilder frázi následovanou. |
| Addition(String, GrammarBuilder) |
Vytvoří novouGrammarBuilder, která obsahuje frázi následovanou .GrammarBuilder |
| Implicit(Choices to GrammarBuilder) |
Převede Choices objekt na GrammarBuilder objekt. |
| Implicit(SemanticResultKey to GrammarBuilder) |
Převede SemanticResultKey objekt na GrammarBuilder objekt. |
| Implicit(SemanticResultValue to GrammarBuilder) |
Převede SemanticResultValue objekt na GrammarBuilder objekt. |
| Implicit(String to GrammarBuilder) |
Převede řetězec na GrammarBuilder objekt. |