Grammar Clase

Definición

Un objeto en tiempo de ejecución que hace referencia a una gramática de reconocimiento de voz, que una aplicación puede usar para definir las restricciones para el reconocimiento de voz.A runtime object that references a speech recognition grammar, which an application can use to define the constraints for speech recognition.

public ref class Grammar
public class Grammar
type Grammar = class
Public Class Grammar
Herencia
Grammar
Derivado

Ejemplos

En el ejemplo siguiente se crea un objeto Grammar a partir de una gramática de reconocimiento de voz definida en un archivo XML (Cities. xml).The following example constructs a Grammar object from a speech recognition grammar defined in a XML file (cities.xml). El contenido del archivo Cities. XML aparece en el siguiente ejemplo de XML.The content of the cities.xml file appears in the following XML example.

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

Comentarios

Una gramática de reconocimiento de voz es un conjunto de reglas o restricciones que definen lo que un motor de reconocimiento de voz puede reconocer como entrada significativa.A speech recognition grammar is a set of rules or constraints that define what a speech recognition engine can recognize as meaningful input. Para obtener más información sobre la creación y el uso de las gramáticas de reconocimiento de voz, vea reconocimiento de vozy crear gramáticas con SrgsGrammar.For more information about creating and using speech recognition grammars, see Speech Recognition, and Create Grammars Using SrgsGrammar.

Después de crear una gramática, debe compilarla en un Grammar objeto que pueda cargar un motor de reconocimiento de voz y que la aplicación pueda usar en tiempo de ejecución para administrar el reconocimiento de voz.After you author a grammar, you must build it into a Grammar object that a speech recognition engine can load and that your application can use at runtime to manage speech recognition. Puede utilizar un constructor de Grammar para crear una instancia de Grammar a partir de una GrammarBuilder o un objeto de SrgsDocument, o de un archivo o una Stream que contiene una descripción de una gramática en un formato admitido.You can use a Grammar constructor to create a Grammar instance from a GrammarBuilder or a SrgsDocument object, or from a file or a Stream that contains a description of a grammar in a supported format. Entre los formatos admitidos se incluyen los siguientes:Supported formats include the following:

Los constructores de gramática que aceptan archivos de gramática con formato XML en sus argumentos compilan las gramáticas XML en un formato binario para optimizar su carga y consumo por parte de un motor de reconocimiento de voz.Grammar constructors that accept XML-format grammar files in their arguments compile the XML grammars to a binary format to optimize them for loading and consumption by a speech recognition engine. Puede reducir la cantidad de tiempo necesario para construir un objeto de Grammar a partir de una gramática de formato XML mediante la compilación de la gramática de antemano, mediante uno de los métodos de Compile.You can reduce the amount of time required to construct a Grammar object from an XML-format grammar by compiling the grammar in advance, using one of the Compile methods.

El motor de reconocimiento de voz de una aplicación, tal y como lo administra un objeto SpeechRecognizer o SpeechRecognitionEngine, puede cargar varias gramáticas de reconocimiento de voz.An application's speech recognition engine, as managed by a SpeechRecognizer or SpeechRecognitionEngine object, can load multiple speech recognition grammars. La aplicación puede habilitar o deshabilitar de forma independiente las gramáticas individuales estableciendo la propiedad Enabled y modificar el comportamiento del reconocimiento a través de Grammar propiedades, como las propiedades Priority y Weight.The application can independently enable or disable individual grammars by setting the Enabled property, and modify recognition behavior through Grammar properties, such as the Priority and Weight properties.

El evento de SpeechRecognized de la gramática se genera cuando la entrada coincide con una ruta de acceso a través de la gramática.The grammar's SpeechRecognized event is raised when input matches a path through the grammar.

Nota

Se recomienda comprobar la seguridad de cualquier URI o DLL que se utilice para generar un objeto de Grammar.It is a best practice to verify the safety of any URI or DLL used to build a Grammar object.

Windows y la plataforma de voz proporcionan seguridad para las aplicaciones que crean una instancia de Grammar desde un archivo DLL o una gramática que admite el scripting.Windows and the Speech platform provide security for applications constructing a Grammar instance from a DLL or from a grammar that supports scripting.

Los scripts de Grammar objetos siempre se ejecutan como si se descargan de una página web en el Internet Zone.Scripts in Grammar objects are always run as if downloaded from a web page in the Internet Zone. Common Language Runtime (CLR) aísla cualquier archivo DLL cargado para obtener una definición de gramática.The Common Language Runtime (CLR) isolates any DLL loaded to obtain a grammar definition.

Constructores

Grammar()

Inicializa una nueva instancia de la clase Grammar.Initializes a new instance of the Grammar class.

Grammar(GrammarBuilder)

Inicializa una nueva instancia de la clase Grammar a partir de un objeto GrammarBuilder.Initializes a new instance of the Grammar class from a GrammarBuilder object.

Grammar(SrgsDocument)

Inicializa una nueva instancia de una clase Grammar a partir de un objeto SrgsDocument.Initializes a new instance of a Grammar class from an SrgsDocument object.

Grammar(SrgsDocument, String)

Inicializa una nueva instancia de una clase Grammar a partir de un objeto SrgsDocument y especifica una regla raíz.Initializes a new instance of a Grammar class from an SrgsDocument object and specifies a root rule.

Grammar(SrgsDocument, String, Object[])

Inicializa una nueva instancia de la clase de Grammar a partir de una instancia de SrgsDocument, y especifica que el nombre de una regla sea el punto de entrada a la gramática.Initializes a new instance of the Grammar class from an instance of SrgsDocument, and specifies the name of a rule to be the entry point to the grammar.

Grammar(SrgsDocument, String, Uri)

Inicializa una nueva instancia de una clase Grammar a partir de un objeto SrgsDocument, especifica una regla raíz y define un Identificador uniforme de recursos (URI) base para resolver las referencias relativas de la regla.Initializes a new instance of a Grammar class from an SrgsDocument object, specifies a root rule, and defines a base Uniform Resource Identifier (URI) to resolve relative rule references.

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

Inicializa una nueva instancia de la clase Grammar a partir de una instancia de SrgsDocument, y especifica que el nombre de una regla sea el punto de entrada a la gramática y un URI base para resolver las referencias relativas.Initializes a new instance of the Grammar class from an instance of SrgsDocument, and specifies the name of a rule to be the entry point to the grammar and a base URI to resolve relative references.

Grammar(Stream)

Inicializa una nueva instancia de la clase Grammar a partir de un objeto Stream.Initializes a new instance of the Grammar class from a Stream.

Grammar(Stream, String)

Inicializa una nueva instancia de la clase Grammar a partir de un Stream y especifica una regla raíz.Initializes a new instance of the Grammar class from a Stream and specifies a root rule.

Grammar(Stream, String, Object[])

Inicializa una nueva instancia de la clase Grammar a partir de un Stream y especifica una regla raíz.Initializes a new instance of the Grammar class from a Stream and specifies a root rule.

Grammar(Stream, String, Uri)

Inicializa una nueva instancia de la clase Grammar a partir de un flujo, especifica una regla raíz y define un Identificador uniforme de recursos (URI) base para resolver las referencias relativas de la regla.Initializes a new instance of the Grammar class from a stream, specifies a root rule, and defines a base Uniform Resource Identifier (URI) to resolve relative rule references.

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

Inicializa una nueva instancia de la clase Grammar de Stream y especifica una regla raíz y un URI base para resolver las referencias relativas.Initializes a new instance of the Grammar class a Stream and specifies a root rule and a base URI to resolve relative references.

Grammar(String)

Inicializa una nueva instancia de la clase Grammar a partir de un archivo.Initializes a new instance of the Grammar class from a file.

Grammar(String, String)

Inicializa una nueva instancia de la clase Grammar a partir de un archivo y especifica una regla raíz.Initializes a new instance of the Grammar class from a file and specifies a root rule.

Grammar(String, String, Object[])

Inicializa una nueva instancia de la clase Grammar a partir de un archivo que contiene una definición de gramática y especifica que el nombre de una regla sea el punto de entrada a la gramática.Initializes a new instance of the Grammar class from a file that contains a grammar definition, and specifies the name of a rule to be the entry point to the grammar.

Propiedades

Enabled

Obtiene o establece un valor que controla si Grammar se puede usar por un módulo de reconocimiento de voz para realizar el reconocimiento.Gets or sets a value that controls whether a Grammar can be used by a speech recognizer to perform recognition.

IsStg

Obtiene si una gramática está fuertemente tipada.Gets whether a grammar is strongly typed.

Loaded

Obtiene si un objeto Grammar ha sido cargado por un reconocedor de voz.Gets whether a Grammar has been loaded by a speech recognizer.

Name

Obtiene o establece el nombre de un objeto Grammar.Gets or sets the name of a Grammar object.

Priority

Obtiene o establece el valor de prioridad de un objeto Grammar.Gets or sets the priority value of a Grammar object.

ResourceName

Obtiene o establece un valor con el nombre de un recurso binario usado para cargar el Grammar actual.Gets or sets a value with the name of a binary resource that was used to load the current Grammar.

RuleName

Obtiene el nombre de la regla raíz o el punto de entrada de un objeto Grammar.Gets the name of the root rule or entry point of a Grammar object.

Weight

Obtiene o establece el valor del ancho en píxeles del objeto Grammar.Gets or sets the weight value of a Grammar object.

Métodos

Equals(Object)

Determina si el objeto especificado es igual que el objeto actual.Determines whether the specified object is equal to the current object.

(Heredado de Object)
GetHashCode()

Sirve como función hash predeterminada.Serves as the default hash function.

(Heredado de Object)
GetType()

Obtiene el Type de la instancia actual.Gets the Type of the current instance.

(Heredado de Object)
LoadLocalizedGrammarFromType(Type, Object[])

El método LoadLocalizedGrammarFromType devuelve una instancia localizada de un objeto Grammar derivado de Type.The LoadLocalizedGrammarFromType method returns a localized instance of a Grammar object derived from Type.

MemberwiseClone()

Crea una copia superficial del objeto Object actual.Creates a shallow copy of the current Object.

(Heredado de Object)
StgInit(Object[])

El método StgInit inicializa una gramática fuertemente tipada.The StgInit method initializes a strongly-typed grammar.

ToString()

Devuelve una cadena que representa el objeto actual.Returns a string that represents the current object.

(Heredado de Object)

Eventos

SpeechRecognized

Se genera cuando un reconocedor de voz realiza el reconocimiento usando el objeto Grammar.Raised when a speech recognizer performs recognition using the Grammar object.

Se aplica a

Consulte también: