Partager via


Grammar Classe

Définition

Objet de runtime qui référence une syntaxe de reconnaissance vocale qu'une application peut utiliser pour définir les contraintes de reconnaissance vocale.

public ref class Grammar
public class Grammar
type Grammar = class
Public Class Grammar
Héritage
Grammar
Dérivé

Exemples

L’exemple suivant construit un Grammar objet à partir d’une grammaire de reconnaissance vocale définie dans un fichier XML (cities.xml). Le contenu du fichier cities.xml s’affiche dans l’exemple XML suivant.

// 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>  

Remarques

Une grammaire de reconnaissance vocale est un ensemble de règles ou de contraintes qui définissent ce qu’un moteur de reconnaissance vocale peut reconnaître comme entrée significative. Pour plus d’informations sur la création et l’utilisation de grammaires de reconnaissance vocale, consultez Reconnaissance vocale et Créer des grammaires à l’aide de SrgsGrammar.

Une fois que vous avez créé une grammaire, vous devez la créer dans un Grammar objet qu’un moteur de reconnaissance vocale peut charger et que votre application peut utiliser au moment de l’exécution pour gérer la reconnaissance vocale. Vous pouvez utiliser un Grammar constructeur pour créer une Grammar instance à partir d’un GrammarBuilder objet ou d’un SrgsDocument fichier ou d’un Stream qui contient une description d’une grammaire dans un format pris en charge. Les formats pris en charge sont les suivants :

Les constructeurs de grammaire qui acceptent les fichiers de grammaire au format XML dans leurs arguments compilent les grammaires XML dans un format binaire afin de les optimiser pour le chargement et la consommation par un moteur de reconnaissance vocale. Vous pouvez réduire le temps nécessaire à la construction d’un objet à partir d’une Grammar grammaire au format XML en compilant la grammaire à l’avance, à l’aide de l’une Compile des méthodes.

Le moteur de reconnaissance vocale d’une application, géré par un SpeechRecognizer objet ou SpeechRecognitionEngine , peut charger plusieurs grammaires de reconnaissance vocale. L’application peut activer ou désactiver indépendamment des grammaires individuelles en définissant la propriété et en modifiant le Enabled comportement de reconnaissance par le biais Grammar de propriétés, telles que les Priority propriétés et Weight .

L’événement de SpeechRecognized la grammaire est déclenché lorsque l’entrée correspond à un chemin d’accès via la grammaire.

Notes

Il est recommandé de vérifier la sécurité de tout URI ou DLL utilisé pour générer un Grammar objet.

Windows et la plateforme Speech assurent la sécurité des applications qui construisent une Grammar instance à partir d’une DLL ou d’une grammaire prenant en charge les scripts.

Les scripts dans Grammar les objets sont toujours exécutés comme s’ils ont été téléchargés à partir d’une page web dans le Internet Zone. Le Common Language Runtime (CLR) isole toute DLL chargée pour obtenir une définition grammaticale.

Constructeurs

Grammar()

Initialise une nouvelle instance de la classe Grammar.

Grammar(GrammarBuilder)

Initialise une nouvelle instance de la classe Grammar à partir d'un objet GrammarBuilder.

Grammar(SrgsDocument)

Initialise une nouvelle instance de la classe Grammar à partir d'un objet SrgsDocument.

Grammar(SrgsDocument, String)

Initialise une nouvelle instance de la Grammar classe à partir d’un SrgsDocument objet et spécifie une règle racine.

Grammar(SrgsDocument, String, Object[])

Initialise une nouvelle instance de la classe Grammar d'une instance de SrgsDocument, puis spécifie le nom d'une règle comme point d'entrée de la grammaire.

Grammar(SrgsDocument, String, Uri)

Initialise une nouvelle instance de la Grammar classe à partir d’un SrgsDocument objet, spécifie une règle racine et définit un URI (Uniform Resource Identifier) de base pour résoudre les références de règle relatives.

Grammar(SrgsDocument, String, Uri, Object[])

Initialise une nouvelle instance de la classe Grammar d'une instance de SrgsDocument, puis spécifie le nom d'une règle comme point d'entrée de la grammaire et un URI de base pour résoudre les références relatives.

Grammar(Stream)

Initialise une nouvelle instance de la classe Grammar à partir d'un Stream.

Grammar(Stream, String)

Initialise une nouvelle instance de la classe Grammar à partir de Stream et spécifie une règle racine.

Grammar(Stream, String, Object[])

Initialise une nouvelle instance de la classe Grammar à partir de Stream et spécifie une règle racine.

Grammar(Stream, String, Uri)

Initialise une nouvelle instance de la classe Grammar à partir d'un flux, spécifie une règle racine et définit un URI (Uniform Resource Identifier) de base pour résoudre les références de règles relatives.

Grammar(Stream, String, Uri, Object[])

Initialise une nouvelle instance de la classe Grammar à partir d’une classe Stream, et spécifie une règle racine et un URI de base pour résoudre les références relatives.

Grammar(String)

Initialise une nouvelle instance de la classe Grammar à partir d'un fichier.

Grammar(String, String)

Initialise une nouvelle instance de la classe Grammar à partir d'un fichier et spécifie une règle racine.

Grammar(String, String, Object[])

Initialise une nouvelle instance de la classe Grammar à partir d’un fichier qui contient une définition de grammaire et spécifie le nom d’une règle comme point d’entrée de la grammaire.

Propriétés

Enabled

Obtient ou définit une valeur qui contrôle si Grammar peut être utilisée par un module de reconnaissance vocale pour effectuer la reconnaissance.

IsStg

Obtient une valeur indiquant si une grammaire est fortement typée.

Loaded

Obtient une valeur indiquant si Grammar a été chargé par un module de reconnaissance vocale.

Name

Obtient ou définit le nom d'un objet Grammar.

Priority

Obtient ou définit la valeur de priorité d'un objet Grammar.

ResourceName

Obtient ou définit une valeur avec le nom d'une ressource binaire utilisée pour charger la Grammaractuelle.

RuleName

Obtient le nom de la règle racine ou du point d'entrée d'un objet Grammar.

Weight

Obtient ou définit la valeur pondérée d'un objet Grammar.

Méthodes

Equals(Object)

Détermine si l'objet spécifié est égal à l'objet actuel.

(Hérité de Object)
GetHashCode()

Fait office de fonction de hachage par défaut.

(Hérité de Object)
GetType()

Obtient le Type de l'instance actuelle.

(Hérité de Object)
LoadLocalizedGrammarFromType(Type, Object[])

La méthode LoadLocalizedGrammarFromType retourne une instance localisée d'un objet Grammar dérivé du Type.

MemberwiseClone()

Crée une copie superficielle du Object actuel.

(Hérité de Object)
StgInit(Object[])

La méthode StgInit initialise une syntaxe fortement typée.

ToString()

Retourne une chaîne qui représente l'objet actuel.

(Hérité de Object)

Événements

SpeechRecognized

Déclenché lorsqu'un module de reconnaissance vocale exécute la reconnaissance à l'aide de l'objet Grammar.

S’applique à

Voir aussi