Grammar Sınıf

Tanım

Bir uygulamanın konuşma tanıma kısıtlamalarını tanımlamak için kullanabileceği konuşma tanıma dilbilgisine başvuran çalışma zamanı nesnesi.

public ref class Grammar
public class Grammar
type Grammar = class
Public Class Grammar
Devralma
Grammar
Türetilmiş

Örnekler

Aşağıdaki örnek, XML Grammar dosyasında (cities.xml) tanımlanan konuşma tanıma dil bilgisinden bir nesne oluşturur. cities.xml dosyasının içeriği aşağıdaki XML örneğinde görüntülenir.

// 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çıklamalar

Konuşma tanıma dil bilgisi, bir konuşma tanıma altyapısının anlamlı giriş olarak neleri tanıyabileceğini tanımlayan bir dizi kural veya kısıtlamadır. Konuşma tanıma dil bilgisi oluşturma ve kullanma hakkında daha fazla bilgi için bkz. Konuşma Tanıma ve SrgsGrammar Kullanarak Dil Bilgisi Oluşturma.

Bir dil bilgisi yazdıktan sonra, bunu konuşma Grammar tanıma altyapısının yükleyebileceği ve uygulamanızın çalışma zamanında konuşma tanımayı yönetmek için kullanabileceği bir nesneye derlemeniz gerekir. Oluşturucu kullanarak bir veya nesneden Grammar ya da Grammar desteklenen biçimde dil bilgisi açıklamasını içeren bir dosyadan veya GrammarBuilder bir dosyadan örnek oluşturabilirsinizSrgsDocument.Stream Desteklenen biçimler şunlardır:

Bağımsız değişkenlerinde XML biçimli dil bilgisi dosyalarını kabul eden dil bilgisi oluşturucuları, XML dil bilgisini bir konuşma tanıma altyapısı tarafından yüklenip kullanılmak üzere iyileştirmek üzere ikili biçimde derler. Yöntemlerden birini Grammar kullanarak dil bilgisini önceden derleyerek XML biçimindeki bir dil bilgisinden nesne oluşturmak Compile için gereken süreyi azaltabilirsiniz.

Bir veya nesnesi tarafından yönetilen bir SpeechRecognizerSpeechRecognitionEngine uygulamanın konuşma tanıma altyapısı, birden çok konuşma tanıma dil bilgisini yükleyebilir. Uygulama, özelliğini ayarlayarak Enabled tek tek dil bilgisini bağımsız olarak etkinleştirebilir veya devre dışı bırakabilir ve ve Grammar özellikleri gibi Priority özellikler aracılığıyla Weight tanıma davranışını değiştirebilir.

Giriş, dil bilgisi SpeechRecognized üzerinden bir yol ile eşleştiğinde dil bilgisi olayı oluşturulur.

Important

Güvenilmeyen verilerle bu tür bir örneği kullanmak bir güvenlik riskidir. Bu nesneyi yalnızca güvenilen verilerle kullanın. Daha fazla bilgi için bkz. Tüm Girişleri Doğrulama.

Note

Dış kaynakları yüklerken güvenlik açıklarını önlemeye yardımcı olan bir nesne oluşturmak için kullanılan herhangi bir Grammar URI veya DLL'nin güvenliğini doğrulamak en iyi yöntemdir.

Windows ve Konuşma platformu, dll'den veya betiği destekleyen bir dil bilgisinden Grammar örneği oluşturan uygulamalar için güvenlik sağlar.

Nesnelerdeki Grammar betikler her zaman içindeki Internet Zonebir web sayfasından indirilmiş gibi çalıştırılır. Ortak Dil Çalışma Zamanı (CLR), dil bilgisi tanımı elde etmek için yüklenen tüm DLL'leri yalıtıyor.

Oluşturucular

Name Description
Grammar()

Grammar sınıfının yeni bir örneğini başlatır.

Grammar(GrammarBuilder)

Bir nesneden sınıfının yeni bir Grammar örneğini GrammarBuilder başlatır.

Grammar(SrgsDocument, String, Object[])

sınıfının yeni bir örneğini Grammar bir örneğinden SrgsDocumentbaşlatır ve dil bilgisinin giriş noktası olacak kuralın adını belirtir.

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

sınıfının yeni bir örneğini Grammar bir örneğinden SrgsDocumentbaşlatır ve göreli başvuruları çözümlemek için dil bilgisi giriş noktası olacak kuralın adını ve temel URI'yi belirtir.

Grammar(SrgsDocument, String, Uri)

Bir nesneden Grammar sınıfın SrgsDocument yeni bir örneğini başlatır, bir kök kural belirtir ve göreli kural başvurularını çözümlemek için bir temel Tekdüzen Kaynak Tanımlayıcısı (URI) tanımlar.

Grammar(SrgsDocument, String)

Bir nesneden sınıfının yeni bir Grammar örneğini SrgsDocument başlatır ve bir kök kuralı belirtir.

Grammar(SrgsDocument)

Bir nesneden sınıfının yeni bir Grammar örneğini SrgsDocument başlatır.

Grammar(Stream, String, Object[])

öğesinden Grammar sınıfının yeni bir örneğini Stream başlatır ve bir kök kural belirtir.

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

a Grammar sınıfının yeni bir örneğini Stream başlatır ve göreli başvuruları çözümlemek için bir kök kuralı ve temel URI'yi belirtir.

Grammar(Stream, String, Uri)

Bir akıştan sınıfın Grammar yeni bir örneğini başlatır, bir kök kural belirtir ve göreli kural başvurularını çözümlemek için bir temel Tekdüzen Kaynak Tanımlayıcısı (URI) tanımlar.

Grammar(Stream, String)

öğesinden Grammar sınıfının yeni bir örneğini Stream başlatır ve bir kök kural belirtir.

Grammar(Stream)

sınıfından Grammar yeni bir Streamörneği başlatır.

Grammar(String, String, Object[])

Dil bilgisi tanımı içeren bir dosyadan sınıfının yeni bir örneğini Grammar başlatır ve dil bilgisi giriş noktası olacak kuralın adını belirtir.

Grammar(String, String)

Bir dosyadan sınıfının yeni bir örneğini Grammar başlatır ve bir kök kural belirtir.

Grammar(String)

Bir dosyadan sınıfının yeni bir örneğini Grammar başlatır.

Özellikler

Name Description
Enabled

Tanıma gerçekleştirmek için bir konuşma tanıyıcısı tarafından kullanılıp Grammar kullanılamayacağını denetleyan bir değer alır veya ayarlar.

IsStg

Bir dil bilgisinin kesin olarak yazılıp yazılmadığını alır.

Loaded

bir Grammar konuşma tanıyıcısı tarafından yüklenip yüklenmediğini alır.

Name

Nesnenin Grammar adını alır veya ayarlar.

Priority

Bir Grammar nesnenin öncelik değerini alır veya ayarlar.

ResourceName

Geçerli Grammaröğesini yüklemek için kullanılan ikili kaynağın adıyla bir değer alır veya ayarlar.

RuleName

Bir Grammar nesnenin kök kuralının veya giriş noktasının adını alır.

Weight

Bir Grammar nesnenin ağırlık değerini alır veya ayarlar.

Yöntemler

Name Description
Equals(Object)

Belirtilen nesnenin geçerli nesneye eşit olup olmadığını belirler.

(Devralındığı yer: Object)
GetHashCode()

Varsayılan karma işlevi işlevi görür.

(Devralındığı yer: Object)
GetType()

Geçerli örneğin Type alır.

(Devralındığı yer: Object)
LoadLocalizedGrammarFromType(Type, Object[])

yöntemi, LoadLocalizedGrammarFromType öğesinden Grammartüretilen bir Type nesnenin yerelleştirilmiş bir örneğini döndürür.

MemberwiseClone()

Geçerli Objectbasit bir kopyasını oluşturur.

(Devralındığı yer: Object)
StgInit(Object[])

yöntemi, StgInit kesin olarak türü belirlenmiş bir dil bilgisi başlatır.

ToString()

Geçerli nesneyi temsil eden bir dize döndürür.

(Devralındığı yer: Object)

Ekinlikler

Name Description
SpeechRecognized

Bir konuşma tanıyıcısı nesnesini kullanarak Grammar tanıma gerçekleştirdiğinde oluşturulur.

Şunlara uygulanır

Ayrıca bkz.