Compartilhar via


Grammar Classe

Definição

Um objeto de runtime que faz referência a uma gramática de reconhecimento de fala, que um aplicativo pode usar para definir as restrições de reconhecimento de fala.

public ref class Grammar
public class Grammar
type Grammar = class
Public Class Grammar
Herança
Grammar
Derivado

Exemplos

O exemplo a seguir constrói um Grammar objeto de uma gramática de reconhecimento de fala definida em um arquivo XML (cities.xml). O conteúdo do arquivo cities.xml aparece no exemplo XML a seguir.

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

Comentários

Uma gramática de reconhecimento de fala é um conjunto de regras ou restrições que definem o que um mecanismo de reconhecimento de fala pode reconhecer como entrada significativa. Para obter mais informações sobre como criar e usar gramáticas de reconhecimento de fala, consulte Reconhecimento de Fala e Criar Gramáticas usando SrgsGrammar.

Depois de criar uma gramática, você deve criá-la em um Grammar objeto que um mecanismo de reconhecimento de fala pode carregar e que seu aplicativo pode usar em runtime para gerenciar o reconhecimento de fala. Você pode usar um Grammar construtor para criar uma Grammar instância de um GrammarBuilder objeto ou de um SrgsDocument arquivo ou um Stream que contém uma descrição de uma gramática em um formato com suporte. Os formatos com suporte incluem o seguinte:

Os construtores gramaticais que aceitam arquivos gramaticais no formato XML em seus argumentos compilam as gramáticas XML em um formato binário para otimizá-los para carregamento e consumo por um mecanismo de reconhecimento de fala. Você pode reduzir a quantidade de tempo necessária para construir um Grammar objeto de uma gramática de formato XML compilando a gramática com antecedência, usando um dos Compile métodos.

O mecanismo de reconhecimento de fala de um aplicativo, conforme gerenciado por um SpeechRecognizer objeto ou SpeechRecognitionEngine , pode carregar várias gramáticas de reconhecimento de fala. O aplicativo pode habilitar ou desabilitar gramáticas individuais independentemente definindo a propriedade e modificando o Enabled comportamento de reconhecimento por meio Grammar de propriedades, como as Priority propriedades e Weight .

O evento da SpeechRecognized gramática é gerado quando a entrada corresponde a um caminho pela gramática.

Observação

É uma prática recomendada verificar a segurança de qualquer URI ou DLL usado para criar um Grammar objeto.

O Windows e a plataforma de Fala fornecem segurança para aplicativos que constroem uma Grammar instância de uma DLL ou de uma gramática que dá suporte a scripts.

Scripts em Grammar objetos são sempre executados como se baixados de uma página da Web no Internet Zone. O CLR (Common Language Runtime) isola qualquer DLL carregada para obter uma definição gramatical.

Construtores

Grammar()

Inicializa uma nova instância da classe Grammar.

Grammar(GrammarBuilder)

Inicializa uma nova instância da classe Grammar de um objeto GrammarBuilder.

Grammar(SrgsDocument)

Inicializa uma nova instância da classe Grammar de um objeto SrgsDocument.

Grammar(SrgsDocument, String)

Inicializa uma nova instância da Grammar classe de um SrgsDocument objeto e especifica uma regra raiz.

Grammar(SrgsDocument, String, Object[])

Inicializa uma nova instância da classe Grammar de uma instância de SrgsDocumente especifica o nome de uma regra para ser o ponto de entrada para a gramática.

Grammar(SrgsDocument, String, Uri)

Inicializa uma nova instância da classe de Grammar um SrgsDocument objeto, especifica uma regra raiz e define um URI (Uniform Resource Identifier) base para resolver referências de regra relativas.

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

Inicializa uma nova instância da classe Grammar de uma instância de SrgsDocumente especifica o nome de uma regra para ser o ponto de entrada para a gramática e um URI base para resolver referências relativas.

Grammar(Stream)

Inicializa uma nova instância da classe Grammar de um Stream.

Grammar(Stream, String)

Inicializa uma nova instância da classe Grammar de um Stream e especifica a regra raiz.

Grammar(Stream, String, Object[])

Inicializa uma nova instância da classe Grammar de um Stream e especifica a regra raiz.

Grammar(Stream, String, Uri)

Inicializa uma nova instância da classe Grammar de um fluxo, especifica uma regra raiz e define um URI (Uniform Resource Identifier) base para resolver referências de regra relativas.

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

Inicializa uma nova instância da classe Grammar de um Stream e especifica uma regra raiz e um URI de base para resolver as referências relativas.

Grammar(String)

Inicializa uma nova instância da classe Grammar de um arquivo.

Grammar(String, String)

Inicializa uma nova instância da classe Grammar de um arquivo e especifica a regra raiz.

Grammar(String, String, Object[])

Inicializa uma nova instância da classe Grammar de um arquivo que contém uma definição de gramática e especifica o nome de uma regra para ser o ponto de entrada para a gramática.

Propriedades

Enabled

Obtém ou define um valor que controla se um Grammar pode ser usado por um reconhecedor de fala para realizar o reconhecimento.

IsStg

Indica se uma gramática é fortemente tipada.

Loaded

Indica se um Grammar foi carregado por um reconhecedor de fala.

Name

Obtém ou define o nome de um objeto Grammar.

Priority

Obtém ou define o valor de prioridade de um objeto Grammar.

ResourceName

Obtém ou define um valor com o nome de um recurso binário que foi usado para carregar o Grammar atual.

RuleName

Obtém o nome do ponto de entrada ou regra raiz de um objeto Grammar.

Weight

Obtém ou define o valor de peso de um objeto Grammar.

Métodos

Equals(Object)

Determina se o objeto especificado é igual ao objeto atual.

(Herdado de Object)
GetHashCode()

Serve como a função de hash padrão.

(Herdado de Object)
GetType()

Obtém o Type da instância atual.

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

O método LoadLocalizedGrammarFromType retorna uma instância localizada de um objeto Grammar derivado de Type.

MemberwiseClone()

Cria uma cópia superficial do Object atual.

(Herdado de Object)
StgInit(Object[])

O método StgInit inicializa uma gramática fortemente tipada.

ToString()

Retorna uma cadeia de caracteres que representa o objeto atual.

(Herdado de Object)

Eventos

SpeechRecognized

Gerado quando um reconhecedor de fala executa o reconhecimento usando o objeto Grammar.

Aplica-se a

Confira também