Grammar Grammar Grammar Grammar Class

定義

アプリケーションが音声認識の制約を定義するために使用できる、音声認識の文法を参照するランタイム オブジェクト。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
継承
GrammarGrammarGrammarGrammar
派生

次の例ではGrammar 、xml ファイル (都市 .xml) で定義されている音声認識文法からオブジェクトを構築します。The following example constructs a Grammar object from a speech recognition grammar defined in a XML file (cities.xml). 次の XML の例では、都市 .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>  

注釈

音声認識文法は、音声認識エンジンが意味のある入力として認識できることを定義する一連の規則または制約です。A speech recognition grammar is a set of rules or constraints that define what a speech recognition engine can recognize as meaningful input. 音声認識文法の作成と使用の詳細については、「音声認識」、「 XML を使用した文法の作成」、「 GrammarBuilder を使用した文法の作成」、および「 Srgsgrammar を使用した文法の作成」を参照してください。For more information about creating and using speech recognition grammars, see Speech Recognition, Create Grammars Using XML, Create Grammars Using GrammarBuilder, and Create Grammars Using SrgsGrammar.

文法を作成したら、音声認識エンジンが読み込むことGrammarができるオブジェクトにビルドし、アプリケーションが実行時に音声認識を管理できるようにする必要があります。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. コンストラクターをGrammar使用して、 GrammarBuilderまたはGrammar SrgsDocumentオブジェクトからインスタンスを作成することも、サポートされてStreamいる形式の文法の説明を含むファイルまたはを作成することもできます。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. サポートされている形式は次のとおりです。Supported formats include the following:

引数で XML 形式の文法ファイルを受け取る文法コンストラクターは、XML 文法をバイナリ形式にコンパイルして、音声認識エンジンによる読み込みと使用のために最適化します。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. メソッドのいずれかを使用して事前に文法Grammarをコンパイルすることで、XML 形式の文法からオブジェクトを構築するために必要な時間を短縮できます。 CompileYou 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.

SpeechRecognizerまたはSpeechRecognitionEngineオブジェクトによって管理されるアプリケーションの音声認識エンジンは、複数の音声認識文法を読み込むことができます。An application's speech recognition engine, as managed by a SpeechRecognizer or SpeechRecognitionEngine object, can load multiple speech recognition grammars. アプリケーションでは、 Enabledプロパティを設定して個々の文法を個別に有効または無効にしたり、プロパティPriorityWeightプロパティなどのプロパティを使用してGrammar認識動作を変更したりできます。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.

文法のSpeechRecognizedイベントは、入力が文法を通じたパスに一致したときに発生します。The grammar's SpeechRecognized event is raised when input matches a path through the grammar.

注意

Grammarオブジェクトの構築に使用される URI または DLL の安全性を確認することをお勧めします。It is a best practice to verify the safety of any URI or DLL used to build a Grammar object.

Windows および Speech プラットフォームは、DLL またはスクリプトをGrammarサポートする文法からインスタンスを構築するアプリケーションのセキュリティを提供します。Windows and the Speech platform provide security for applications constructing a Grammar instance from a DLL or from a grammar that supports scripting.

オブジェクト内Grammarのスクリプトは、のInternet Zoneweb ページからダウンロードした場合と同じように実行されます。Scripts in Grammar objects are always run as if downloaded from a web page in the Internet Zone. 共通言語ランタイム (CLR) は、読み込まれたすべての DLL を分離して、文法の定義を取得します。The Common Language Runtime (CLR) isolates any DLL loaded to obtain a grammar definition.

コンストラクター

Grammar() Grammar() Grammar() Grammar()

Grammar クラスの新しいインスタンスを初期化します。Initializes a new instance of the Grammar class

Grammar(GrammarBuilder) Grammar(GrammarBuilder) Grammar(GrammarBuilder) Grammar(GrammarBuilder)

Grammar オブジェクトから GrammarBuilder クラスの新しいインスタンスを初期化します。Initializes a new instance of the Grammar class from a GrammarBuilder object.

Grammar(SrgsDocument) Grammar(SrgsDocument) Grammar(SrgsDocument) Grammar(SrgsDocument)

Grammar オブジェクトから SrgsDocument クラスの新しいインスタンスを初期化します。Initializes a new instance of a Grammar class from an SrgsDocument object.

Grammar(SrgsDocument, String) Grammar(SrgsDocument, String) Grammar(SrgsDocument, String) Grammar(SrgsDocument, String)

Grammar オブジェクトと指定したルート ルールから SrgsDocument クラスの新しいインスタンスを初期化します。Initializes a new instance of a Grammar class from an SrgsDocument object and specifies a root rule.

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

Grammar のインスタンスから SrgsDocument クラスの新しいインスタンスを初期化し、文法へのエントリ ポイントである規則の名前を指定します。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) Grammar(SrgsDocument, String, Uri) Grammar(SrgsDocument, String, Uri) Grammar(SrgsDocument, String, Uri)

Grammar オブジェクトから SrgsDocument クラスの新しいインスタンスを初期化します。ルート規則を指定し、相対的な規則の参照を解決するためにベース URI (Uniform Resource Identifier) を定義します。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[]) Grammar(SrgsDocument, String, Uri, Object[]) Grammar(SrgsDocument, String, Uri, Object[]) Grammar(SrgsDocument, String, Uri, Object[])

Grammar のインスタンスから SrgsDocument クラスの新しいインスタンスを初期化し、文法へのエントリ ポイントである規則の名前と、相対参照を解決するためのベース URI を指定します。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) Grammar(Stream) Grammar(Stream) Grammar(Stream)

Grammar から Stream クラスの新しいインスタンスを初期化します。Initializes a new instance of the Grammar class from a Stream.

Grammar(Stream, String) Grammar(Stream, String) Grammar(Stream, String) Grammar(Stream, String)

Grammar と指定したルート ルールから Stream クラスの新しいインスタンスを初期化します。Initializes a new instance of the Grammar class from a Stream and specifies a root rule.

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

Grammar と指定したルート ルールから Stream クラスの新しいインスタンスを初期化します。Initializes a new instance of the Grammar class from a Stream and specifies a root rule.

Grammar(Stream, String, Uri) Grammar(Stream, String, Uri) Grammar(Stream, String, Uri) Grammar(Stream, String, Uri)

ストリームから Grammar クラスの新しいインスタンスを初期化し、ルート規則を指定して、相対的な規則の参照を解決するためのベース URI (Uniform Resource Identifier) を定義します。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[]) Grammar(Stream, String, Uri, Object[]) Grammar(Stream, String, Uri, Object[]) Grammar(Stream, String, Uri, Object[])

Grammar クラスの新しいインスタンス Stream を初期化し、ルート規則および相対参照を解決するためのベース URI を指定します。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) Grammar(String) Grammar(String) Grammar(String)

ファイルから Grammar クラスの新しいインスタンスを初期化します。Initializes a new instance of the Grammar class from a file.

Grammar(String, String) Grammar(String, String) Grammar(String, String) Grammar(String, String)

ファイルから Grammar クラスの新しいインスタンスを初期化し、ルート ルールを指定します。Initializes a new instance of the Grammar class from a file and specifies a root rule.

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

文法定義を含むファイルから Grammar クラスの新しいインスタンスを初期化し、文法へのエントリ ポイントであるルールの名前を指定します。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.

プロパティ

Enabled Enabled Enabled Enabled

音声認識エンジンが Grammar を使用して認識を実行できるかどうかを制御する値を取得または設定します。Gets or sets a value that controls whether a Grammar can be used by a speech recognizer to perform recognition.

IsStg IsStg IsStg IsStg

文法が厳密に型指定されているかどうかを取得します。Gets whether a grammar is strongly typed.

Loaded Loaded Loaded Loaded

Grammar が音声認識エンジンによって読み込まれたかどうかを取得します。Gets whether a Grammar has been loaded by a speech recognizer.

Name Name Name Name

Grammar オブジェクトの名前を取得または設定します。Gets or sets the name of a Grammar object.

Priority Priority Priority Priority

Grammar オブジェクトの優先順位の値を取得または設定します。Gets or sets the priority value of a Grammar object.

ResourceName ResourceName ResourceName ResourceName

現在の Grammar を読み込むために使用されたバイナリ リソースの名前を示す値を取得または設定します。Gets or sets a value with the name of a binary resource that was used to load the current Grammar.

RuleName RuleName RuleName RuleName

Grammar オブジェクトのルート規則またはエントリ ポイントの名前を取得します。Gets the name of the root rule or entry point of a Grammar object.

Weight Weight Weight Weight

Grammar オブジェクトの重さの値を取得または設定します。Gets or sets the weight value of a Grammar object.

メソッド

Equals(Object) Equals(Object) Equals(Object) Equals(Object)

指定したオブジェクトが、現在のオブジェクトと等しいかどうかを判断します。Determines whether the specified object is equal to the current object.

(Inherited from Object)
GetHashCode() GetHashCode() GetHashCode() GetHashCode()

既定のハッシュ関数として機能します。Serves as the default hash function.

(Inherited from Object)
GetType() GetType() GetType() GetType()

現在のインスタンスの Type を取得します。Gets the Type of the current instance.

(Inherited from Object)
LoadLocalizedGrammarFromType(Type, Object[]) LoadLocalizedGrammarFromType(Type, Object[]) LoadLocalizedGrammarFromType(Type, Object[]) LoadLocalizedGrammarFromType(Type, Object[])

LoadLocalizedGrammarFromType メソッドは、Grammar から派生する Type オブジェクトのローカライズ インスタンスを返します。The LoadLocalizedGrammarFromType method returns a localized instance of a Grammar object derived from Type.

MemberwiseClone() MemberwiseClone() MemberwiseClone() MemberwiseClone()

現在の Object の簡易コピーを作成します。Creates a shallow copy of the current Object.

(Inherited from Object)
StgInit(Object[]) StgInit(Object[]) StgInit(Object[]) StgInit(Object[])

StgInit メソッドは、厳密に型指定された文法を初期化します。The StgInit method initializes a strongly-typed grammar.

ToString() ToString() ToString() ToString()

現在のオブジェクトを表す文字列を返します。Returns a string that represents the current object.

(Inherited from Object)

イベント

SpeechRecognized SpeechRecognized SpeechRecognized SpeechRecognized

音声認識エンジンが Grammar オブジェクトを使用して認識を実行するときに発生します。Raised when a speech recognizer performs recognition using the Grammar object.

適用対象

こちらもご覧ください