GrammarBuilder Sınıf
Tanım
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
Bir konuşma tanıma dilbilgisinde kısıtlamaları programlı olarak oluşturmak için bir mekanizma sağlar.
public ref class GrammarBuilder
public class GrammarBuilder
type GrammarBuilder = class
Public Class GrammarBuilder
- Devralma
-
GrammarBuilder
Örnekler
Aşağıdaki örnek GrammarBuilder Choices , "arka plan renkseçimi yap" veya "arka planı colorChoice olarak ayarla" gibi iki tümcecikden birini tanıyabilecek bir dilbilgisi oluşturmak için ve nesnelerini kullanır.
Örnek, bir Choices nesne dizisinden colorChoice için kabul edilebilir değerlerin bir listesini oluşturmak için bir nesnesi kullanır String . Bir Choices nesne, one-of
SRGS belirtiminde öğesine benzerdir ve herhangi biri, konuşulmak üzere tanınabilen bir alternatif tümcecik kümesi içerir. Örnek ayrıca, Choices iki nesneden oluşan bir diziyi GrammarBuilder , sonuçta elde edilen dilbilgisinde tanıyabileceği alternatif ifadeler çiftinde gruplandırmak için bir nesnesi kullanır. Diğer kelimeler veya tümcecikler, çoğu dilbilgisi için bir bileşendir ve Choices nesnesi ile oluşturulan dilbilgisi için bu işlevselliği sağlar GrammarBuilder .
Örnek olarak, Grammar nesnesinden oluşturulan öğesinden bir nesne oluşturur GrammarBuilder Choices .
private Grammar CreateColorGrammar()
{
// Create a set of color choices.
Choices colorChoice = new Choices(new string[] {"red", "green", "blue"});
GrammarBuilder colorElement = new GrammarBuilder(colorChoice);
// Create grammar builders for the two versions of the phrase.
GrammarBuilder makePhrase = new GrammarBuilder("Make background");
makePhrase.Append(colorElement);
GrammarBuilder setPhrase = new GrammarBuilder("Set background to");
setPhrase.Append(colorElement);
// Create a Choices for the two alternative phrases, convert the Choices
// to a GrammarBuilder, and construct the grammar from the result.
Choices bothChoices = new Choices(new GrammarBuilder[] {makePhrase, setPhrase});
Grammar grammar = new Grammar((GrammarBuilder)bothChoices);
grammar.Name = "backgroundColor";
return grammar;
}
Açıklamalar
Konuşma tanıma dilmars, genellikle konuşma tanıma dilbilgisi belirtimi (SRGS) sürüm 1,0tarafından tanımlanan XML biçiminde yazılır. SRG 'ler hakkında bilginiz varsa ancak programlama yoluyla dilbilgisi oluşturmak istiyorsanız, System.Speech.Recognition.SrgsGrammar üyeleri, srgs tarafından tanımlanan öğelere ve özniteliklere yakından karşılık gelen ad alanını kullanabilirsiniz. SRG 'ler hakkında bilginiz varsa veya çok sayıda yaygın senaryoyu verimli bir şekilde gerçekleştirebileceğiniz dilbilgisi yazma hafif ve programlı bir yaklaşım istiyorsanız GrammarBuilder ve Choices sınıflarını kullanabilirsiniz.
GrammarBuilderDiğer tümceleri içeren nesnelerden oluşan hiyerarşik bir ağaç oluşturmak için nesneleri kullanın Choices , her bir düğümde giriş ve post-amble tümcecikleriyle birlikte ve bir anlamı uygulamaya geri ileten anlam değerleriyle birlikte.
Bir GrammarBuilder nesnesi oluşturmak için kullanmak üzere Grammar aşağıdaki adımları kullanın.
Bir GrammarBuilder nesne oluşturun.
GrammarBuilder String Nesneler,,,, Choices SemanticResultKey SemanticResultValue DictationGrammar ve GrammarBuilder dilbilgisinde kısıtlamaları tanımlayan diğer nesneler gibi kısıtlamalarını öğesine ekleyin.
Grammar Grammar Tamamlanan dilbilgisinde bir nesne oluşturmak için oluşturuculardan birini kullanın GrammarBuilder .
İle yazma GrammarBuilder , listeleri veya belki liste listelerini içeren tek bir kurala sahip olan dilbilgisinde 'a en uygun seçenektir. Program aracılığıyla birden çok kurala sahip olan veya iç kural başvuruları yapmak zorunda olan dilbilgisi oluşturmak için System.Speech.Recognition.SrgsGrammar ad alanının sınıflarını kullanın.
Örnekleri, GrammarBuilder belirli diğer sınıflardan örtük dönüştürmeler tarafından veya bir GrammarBuilder dilbilgisinde kısıtlamalar içeren ikinci bir nesne ile birleştirilerek de elde edilebilir. Daha fazla bilgi için bkz Implicit . ve Addition işleçleri ve Add yöntemleri.
Varolan bir kurala kural eklemek için,,, GrammarBuilder Add Append AppendDictation AppendRuleReference ve AppendWildcard yöntemlerini kullanın.
Önemli
Konuşma tanıyıcı aynı anahtar adına veya aynı anlam öğesinin değerini tekrar tekrar değiştirebilecek birden çok anlam öğesiyle yinelenen anlam öğeleri içeren bir konuşma tanıma dilbilgisi kullanırken bir özel durum oluşturabilir.
Hata ayıklamada yardımcı olması için, DebugShowPhrases özelliği, öğesinin geçerli durumunu GrammarBuilder bir dize olarak döndürür.
Oluşturucular
GrammarBuilder() |
Sınıfının yeni, boş bir örneğini başlatır GrammarBuilder . |
GrammarBuilder(Choices) |
GrammarBuilderBir alternatif kümesinden sınıfının yeni bir örneğini başlatır. |
GrammarBuilder(GrammarBuilder, Int32, Int32) |
Yinelenen bir öğeden sınıfının yeni bir örneğini başlatır GrammarBuilder . |
GrammarBuilder(SemanticResultKey) |
GrammarBuilderBir anlam anahtarından sınıfının yeni bir örneğini başlatır. |
GrammarBuilder(SemanticResultValue) |
Anlamsal değerden sınıfının yeni bir örneğini başlatır GrammarBuilder . |
GrammarBuilder(String) |
GrammarBuilderBir sözcük dizisinden sınıfın yeni bir örneğini başlatır. |
GrammarBuilder(String, Int32, Int32) |
GrammarBuilder' Deki sözcüklerin dizisinden sınıfının yeni bir örneğini başlatır String ve kaç kez String tekrarlanabilir olduğunu belirtir. |
GrammarBuilder(String, SubsetMatchingMode) |
GrammarBuilderBir sözcük dizisinin alt kümesi için sınıfının yeni bir örneğini başlatır. |
Özellikler
Culture |
Konuşma tanıma dilbilgisinde kültürü alır veya ayarlar. |
DebugShowPhrases |
Tarafından içerilen dilbilgisinin içeriğini ve yapısını gösteren bir dize alır GrammarBuilder . |
Yöntemler
Add(Choices, GrammarBuilder) |
Bir nesnesi GrammarBuilder ve ardından bir nesne içeren yeni bir oluşturur Choices GrammarBuilder . |
Add(GrammarBuilder, Choices) |
Bir nesnesi GrammarBuilder ve ardından bir nesne içeren yeni bir oluşturur GrammarBuilder Choices . |
Add(GrammarBuilder, GrammarBuilder) |
GrammarBuilderİki nesneden oluşan bir dizi içeren yeni bir oluşturur GrammarBuilder . |
Add(GrammarBuilder, String) |
Bir GrammarBuilder GrammarBuilder nesneyi ve ardından bir tümceciği içeren yeni bir oluşturur. |
Add(String, GrammarBuilder) |
Bir GrammarBuilder ifadeyi ve ardından bir nesneyi içeren yeni bir oluşturur GrammarBuilder . |
Append(Choices) |
Dilbilgisi öğelerinin geçerli dizisine bir alternatifler kümesi ekler. |
Append(GrammarBuilder) |
Grammar öğelerinin geçerli dizisine bir Grammar öğesi ekler. |
Append(GrammarBuilder, Int32, Int32) |
Geçerli dilbilgisi öğelerinin dizisine yinelenen bir Grammar öğesi ekler. |
Append(SemanticResultKey) |
Dilbilgisi öğelerinin geçerli dizisine bir anlam anahtarı ekler. |
Append(SemanticResultValue) |
Dilbilgisi öğelerinin geçerli dizisine bir anlam değeri ekler. |
Append(String) |
Geçerli dilbilgisi öğelerinin dizisine bir tümcecik ekler. |
Append(String, Int32, Int32) |
Geçerli dilbilgisi öğelerinin dizisine yinelenen bir tümcecik ekler. |
Append(String, SubsetMatchingMode) |
Bir tümceciğin alt kümesi için bir öğeyi, dilbilgisi öğelerinin geçerli dizisine ekler. |
AppendDictation() |
Varsayılan dikte dilbilgisinde dilbilgisi öğelerinin geçerli dizisine ekler. |
AppendDictation(String) |
Belirtilen dikte dilbilgisini dilbilgisi öğelerinin geçerli dizisine ekler. |
AppendRuleReference(String) |
Dilbilgisi öğelerinin geçerli dizisine bir dilbilgisi tanım dosyası ekler. |
AppendRuleReference(String, String) |
Bir dilbilgisi tanım dosyasının belirtilen kuralını, dilbilgisi öğelerinin geçerli dizisine ekler. |
AppendWildcard() |
Dilbilgisi öğelerinin geçerli sırasına herhangi bir girişle eşleşen bir tanıma dilbilgisi öğesi ekler. |
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() |
Type Geçerli örneğini alır. (Devralındığı yer: Object) |
MemberwiseClone() |
Geçerli Objectöğesinin sığ bir kopyasını oluşturur. (Devralındığı yer: Object) |
ToString() |
Geçerli nesneyi temsil eden dizeyi döndürür. (Devralındığı yer: Object) |