Grammar Oluşturucular
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.
Grammar sınıfının yeni bir örneğini başlatır.
Aşırı Yüklemeler
| Name | Description |
|---|---|
| Grammar() |
Grammar sınıfının yeni bir örneğini başlatır. |
| 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(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(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, 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(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, Object[]) |
öğesinden Grammar sınıfının yeni bir örneğini Stream başlatır ve bir kök kural belirtir. |
| 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(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(Stream, String) |
öğesinden Grammar sınıfının yeni bir örneğini Stream 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. |
| Grammar(SrgsDocument) |
Bir nesneden sınıfının yeni bir Grammar örneğini SrgsDocument başlatır. |
| 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(GrammarBuilder) |
Bir nesneden sınıfının yeni bir Grammar örneğini GrammarBuilder başlatır. |
| Grammar(Stream) |
Açıklamalar
Bir Grammar oluşturucuyu kullanarak bir veya Grammar nesnesinden GrammarBuilder veya desteklenen biçimde dil bilgisi açıklamasını içeren bir dosyadan veya SrgsDocument dosyadan örnek oluşturabilirsinizStream. Desteklenen biçimler şunlardır:
W3C Konuşma Tanıma Dil Bilgisi Belirtimi (SRGS) Sürüm 1.0'a uygun XML biçimli dosyalar
.cfg dosya uzantısına sahip bir ikili dosyaya derlenmiş dil bilgisi
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.
Konuşma tanıma dil bilgisi bir kök kural tanımlayabilir. Kök kuralı olarak hangi kuralın kullanılacağını belirten bir Grammar nesne oluşturmak için parametresini ruleName kabul eden bir oluşturucu kullanın.
Göreli kural başvurularını çözümlemek için temel URI'yi belirten bir nesne oluşturmak Grammar için parametresini baseUri alan bir oluşturucu kullanın.
Grammar()
- Kaynak:
- Grammar.cs
- Kaynak:
- Grammar.cs
- Kaynak:
- Grammar.cs
- Kaynak:
- Grammar.cs
Grammar sınıfının yeni bir örneğini başlatır.
protected:
Grammar();
protected Grammar();
Protected Sub New ()
Şunlara uygulanır
Grammar(SrgsDocument, String, Uri, Object[])
- Kaynak:
- Grammar.cs
- Kaynak:
- Grammar.cs
- Kaynak:
- Grammar.cs
- Kaynak:
- Grammar.cs
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.
public:
Grammar(System::Speech::Recognition::SrgsGrammar::SrgsDocument ^ srgsDocument, System::String ^ ruleName, Uri ^ baseUri, cli::array <System::Object ^> ^ parameters);
public Grammar(System.Speech.Recognition.SrgsGrammar.SrgsDocument? srgsDocument, string? ruleName, Uri? baseUri, object[]? parameters);
public Grammar(System.Speech.Recognition.SrgsGrammar.SrgsDocument srgsDocument, string ruleName, Uri baseUri, object[] parameters);
new System.Speech.Recognition.Grammar : System.Speech.Recognition.SrgsGrammar.SrgsDocument * string * Uri * obj[] -> System.Speech.Recognition.Grammar
Public Sub New (srgsDocument As SrgsDocument, ruleName As String, baseUri As Uri, parameters As Object())
Parametreler
- srgsDocument
- SrgsDocument
Konuşma tanıma dil bilgisi kısıtlamalarını içeren bir örneği SrgsDocument .
- ruleName
- String
Konuşma tanıma dil bilgisinin giriş noktası olarak veya dil bilgisi null açıklamasının varsayılan kök kuralını kullanmak için kullanılacak kuralın tanımlayıcısı.
- baseUri
- Uri
Dil bilgisi açıklamasındaki nullveya içindeki göreli kural başvurularını çözümlemek için kullanılacak temel URI.
- parameters
- Object[]
Giriş noktası veya oluşturulacak kök kuralı OnInit için özelliği tarafından Grammar belirtilen başlatma işleyicisine geçirilecek parametreler. Bu parametre null olabilir.
Özel durumlar
Parametrelerden herhangi biri geçersiz bir değer içeriyor.
tarafından SrgsDocument belirtilen
srgsDocument, içinderuleNamebelirtilen kuralı içermiyor.Dizi parametrelerinin içeriği, kuralın başlatma işleyicilerinden herhangi birinin bağımsız değişkenleriyle eşleşmiyor.
Dil bilgisi, dil bilgisi için varsayılan temel Uri kural veya tarafından
baseUrisağlanan URI ile çözümlenemeyen göreli bir kural başvurusuna sahiptir.
Açıklamalar
Başlatma işleyicisi için parametreler de belirtilebilir.
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.
Şunlara uygulanır
Grammar(Stream, String, Uri, Object[])
- Kaynak:
- Grammar.cs
- Kaynak:
- Grammar.cs
- Kaynak:
- Grammar.cs
- Kaynak:
- Grammar.cs
public:
Grammar(System::IO::Stream ^ stream, System::String ^ ruleName, Uri ^ baseUri, cli::array <System::Object ^> ^ parameters);
public Grammar(System.IO.Stream stream, string? ruleName, Uri? baseUri, object[]? parameters);
public Grammar(System.IO.Stream stream, string ruleName, Uri baseUri, object[] parameters);
new System.Speech.Recognition.Grammar : System.IO.Stream * string * Uri * obj[] -> System.Speech.Recognition.Grammar
Public Sub New (stream As Stream, ruleName As String, baseUri As Uri, parameters As Object())
Parametreler
- stream
- Stream
Stream Dil bilgisi belirtimi içeren bir giriş/çıkış nesnesine (dosyalar, VisualStudio Kaynakları ve DLL'ler dahil) bağlı.
- ruleName
- String
Konuşma tanıma dil bilgisinin giriş noktası olarak veya dil bilgisi null açıklamasının varsayılan kök kuralını kullanmak için kullanılacak kuralın tanımlayıcısı.
- baseUri
- Uri
Dil bilgisi açıklamasındaki nullveya içindeki göreli kural başvurularını çözümlemek için kullanılacak temel URI.
- parameters
- Object[]
Giriş noktası veya oluşturulacak kök kuralı OnInit için özelliği tarafından Grammar belirtilen başlatma işleyicisine geçirilecek parametreler. Bu parametre null olabilir.
Özel durumlar
Parametrelerden herhangi biri geçersiz bir değer içeriyor.
stream, tarafındanruleNamebelirtilen kuralı içermeyen bir dil bilgisi ile bağlantılıdır.Dizi parametrelerinin içeriği, kuralın başlatma işleyicilerinden herhangi birinin bağımsız değişkenleriyle eşleşmiyor.
Dil bilgisi, dil bilgisi için varsayılan temel Uri kural veya tarafından
baseUrisağlanan URI tarafından çözümlenemeyen göreli bir kural başvurusu içerir.
Açıklamalar
Başlatma işleyicisi için parametreler de belirtilebilir.
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.
Şunlara uygulanır
Grammar(SrgsDocument, String, Uri)
- Kaynak:
- Grammar.cs
- Kaynak:
- Grammar.cs
- Kaynak:
- Grammar.cs
- Kaynak:
- Grammar.cs
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.
public:
Grammar(System::Speech::Recognition::SrgsGrammar::SrgsDocument ^ srgsDocument, System::String ^ ruleName, Uri ^ baseUri);
public Grammar(System.Speech.Recognition.SrgsGrammar.SrgsDocument? srgsDocument, string? ruleName, Uri? baseUri);
public Grammar(System.Speech.Recognition.SrgsGrammar.SrgsDocument srgsDocument, string ruleName, Uri baseUri);
new System.Speech.Recognition.Grammar : System.Speech.Recognition.SrgsGrammar.SrgsDocument * string * Uri -> System.Speech.Recognition.Grammar
Public Sub New (srgsDocument As SrgsDocument, ruleName As String, baseUri As Uri)
Parametreler
- srgsDocument
- SrgsDocument
Konuşma tanıma dil bilgisi kısıtlamaları.
- ruleName
- String
Konuşma tanıma dil bilgisinin null giriş noktası olarak veya varsayılan kök kuralını kullanmak için kullanılacak kuralın tanımlayıcısı SrgsDocument.
- baseUri
- Uri
veya içindeki göreli kural başvurularını SrgsDocumentnullçözümlemek için kullanılacak temel URI.
Özel durumlar
ruleName çözümlenemiyor veya genel değil veya ruleNamenull kök kuralı içeriyor ve srgsDocument içermiyor.
srgsDocument, null'e eşittir.
srgsDocument çözümlenemeyen bir kural başvurusu içerir.
Örnekler
Aşağıdaki örnek, cities.xml dosyasına göreli kural başvurusu içeren bir SrgsDocument konuşma tanıma dil bilgisi oluşturur ve kural başvuruyu çözümlemek için kullanılacak URI'yi belirtir. cities.xml dosyasının içeriği, C# örneğinden sonra gelen XML örneğinde görünür.
private static Grammar CreateSrgsDocumentGrammar3()
{
// Create the SrgsDocument.
SrgsDocument document = new SrgsDocument();
// Create the Main rule and add it to the document.
SrgsRule mainRule = new SrgsRule("Main");
mainRule.Scope = SrgsRuleScope.Public;
SrgsItem item = new SrgsItem("Can I get a shuttle in");
// Create a relative URI for the cities rule.
Uri ruleUri = new Uri("cities.xml#Cities", UriKind.Relative);
item.Add(new SrgsRuleRef(ruleUri));
mainRule.Add(item);
document.Rules.Add(mainRule);
// Set the root rule.
document.Root = mainRule;
// Create the grammar.
Uri baseUri = new Uri(@"file://c:\temp\");
Grammar citiesGrammar = new Grammar(document, null, baseUri);
citiesGrammar.Name = "SrgsDocument Cities Grammar 3";
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
Bu oluşturucu başlatma işleyicisine herhangi bir parametre geçirmez ve SrgsDocument bağımsız değişken gerektiren bir başlatma işleyicisi içermemelidir.
Bu oluşturucu doğrulamaz baseUri. Ancak, bir LoadGrammar veya SpeechRecognitionEngine nesnesinin yöntemi, SpeechRecognizer dil bilgisi açıklamasındaki tüm kural başvurularını çözümleyemediğinde bir özel durum oluşturur.
baseUrideğilse null yöntemi, LoadGrammar aksi takdirde çözümleyemediği tüm kural başvurularını çözümlemek için URI'yi kullanır. Bir dosyayı temsil ederse baseUri , LoadGrammar yöntem göreli kural başvurularını çözümlemeye çalıştığında hem belirlenen dosyayı hem de dosyanın dizinini kullanır.
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.
Ayrıca bkz.
- System.Speech.Recognition.SrgsGrammar
- SrgsDocument
- SpeechRecognitionEngine
- SpeechRecognizer
- Konuşma Tanıma Dil Bilgisi Belirtimi
Şunlara uygulanır
Grammar(SrgsDocument, String, Object[])
- Kaynak:
- Grammar.cs
- Kaynak:
- Grammar.cs
- Kaynak:
- Grammar.cs
- Kaynak:
- Grammar.cs
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.
public:
Grammar(System::Speech::Recognition::SrgsGrammar::SrgsDocument ^ srgsDocument, System::String ^ ruleName, cli::array <System::Object ^> ^ parameters);
public Grammar(System.Speech.Recognition.SrgsGrammar.SrgsDocument? srgsDocument, string? ruleName, object[]? parameters);
public Grammar(System.Speech.Recognition.SrgsGrammar.SrgsDocument srgsDocument, string ruleName, object[] parameters);
new System.Speech.Recognition.Grammar : System.Speech.Recognition.SrgsGrammar.SrgsDocument * string * obj[] -> System.Speech.Recognition.Grammar
Public Sub New (srgsDocument As SrgsDocument, ruleName As String, parameters As Object())
Parametreler
- srgsDocument
- SrgsDocument
Konuşma tanıma dil bilgisi kısıtlamalarını içeren bir örneği SrgsDocument .
- ruleName
- String
Konuşma tanıma dil bilgisinin giriş noktası olarak veya dil bilgisi null açıklamasının varsayılan kök kuralını kullanmak için kullanılacak kuralın tanımlayıcısı.
- parameters
- Object[]
Giriş noktası veya oluşturulacak kök kuralı OnInit için özelliği tarafından Grammar belirtilen başlatma işleyicisine geçirilecek parametreler. Bu parametre null olabilir.
Özel durumlar
Parametrelerden herhangi biri geçersiz bir değer içeriyor.
tarafından SrgsDocument belirtilen
srgsDocument, tarafındanruleNamebelirtilen kuralı içermiyor.Dizi parametrelerinin içeriği, kuralın başlatma işleyicilerinden herhangi birinin bağımsız değişkenleriyle eşleşmiyor.
Açıklamalar
Başlatma işleyicisi için parametreler de belirtilebilir.
Şunlara uygulanır
Grammar(Stream, String, Uri)
- Kaynak:
- Grammar.cs
- Kaynak:
- Grammar.cs
- Kaynak:
- Grammar.cs
- Kaynak:
- Grammar.cs
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.
public:
Grammar(System::IO::Stream ^ stream, System::String ^ ruleName, Uri ^ baseUri);
public Grammar(System.IO.Stream stream, string? ruleName, Uri? baseUri);
public Grammar(System.IO.Stream stream, string ruleName, Uri baseUri);
new System.Speech.Recognition.Grammar : System.IO.Stream * string * Uri -> System.Speech.Recognition.Grammar
Public Sub New (stream As Stream, ruleName As String, baseUri As Uri)
Parametreler
- stream
- Stream
Konuşma tanıma dil bilgisini desteklenen biçimde açıklayan bir akış.
- ruleName
- String
Konuşma tanıma dil bilgisinin giriş noktası olarak veya dil bilgisi null açıklamasının varsayılan kök kuralını kullanmak için kullanılacak kuralın tanımlayıcısı.
- baseUri
- Uri
Dil bilgisi açıklamasındaki nullveya içindeki göreli kural başvurularını çözümlemek için kullanılacak temel URI.
Özel durumlar
ruleName çözümlenemiyor veya genel değil ya da ruleName değil null ve dil bilgisi açıklaması bir kök kuralı tanımlamaz.
stream, null'e eşittir.
Akış geçerli bir açıklama içermiyor veya çözümlenemeyen bir kural başvurusu içeren bir dil bilgisi tanımlıyor.
Örnekler
Aşağıdaki örnek, bir dosya akışından yerel bir SRGS dosyası (shuttle.xml) yükler. Dosya, cities.xml dosyasındaki bir kurala göreli bir kural başvurusu içerir ve kural başvuruyu çözümlemek için kullanılacak temel URI'yi belirtir. shuttle.xml ve cities.xml dosyalarının içeriği, C# örneğinden sonra gelen XML örneklerinde görünür.
private static Grammar CreateGrammarFromStream3()
{
FileInfo file = new FileInfo(@".\shuttle.xml");
Uri baseUri = new Uri(@"file://c:\temp\");
Grammar citiesGrammar = new Grammar(file.OpenRead(), null, baseUri);
citiesGrammar.Name = "Stream Cities Grammar 3";
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">
<!-- shuttle.xml:
Defines an SRGS grammar for asking about a shuttle service. This grammar
references a Cities rule that is defined in the cities.xml grammar. -->
<rule id="Main">
<item>
Can I get a shuttle in
<ruleref uri="cities.xml#Cities"/>
</item>
</rule>
</grammar>
<?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
Bu oluşturucu başlatma işleyicisine herhangi bir parametre geçirmez ve açıklama bağımsız değişken gerektiren bir başlatma işleyicisi tanımlamamalıdır.
Bu oluşturucu aşağıdaki biçimlerden bir Grammar örnek oluşturabilir:
W3C Konuşma Tanıma Dil Bilgisi Belirtimi (SRGS) Sürüm 1.0'a uygun XML biçimli dosyalar
.cfg dosya uzantısına sahip bir ikili dosyaya derlenmiş dil bilgisi
Bu oluşturucu, XML biçimindeki dil bilgisi dosyalarını 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.
Bu oluşturucu doğrulamaz baseUri. Ancak, bir LoadGrammar veya SpeechRecognitionEngine nesnesinin yöntemi, SpeechRecognizer dil bilgisi açıklamasındaki tüm kural başvurularını çözümleyemediğinde bir özel durum oluşturur.
baseUrideğilse null yöntemi, LoadGrammar aksi takdirde çözümleyemediği tüm kural başvurularını çözümlemek için URI'yi kullanır. Bir dosyayı temsil ederse baseUri , LoadGrammar göreli kural başvurularını çözümlemeye çalıştığında hem belirlenen dosyayı hem de dosyanın dizinini kullanır.
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.
Ayrıca bkz.
Şunlara uygulanır
Grammar(Stream, String, Object[])
- Kaynak:
- Grammar.cs
- Kaynak:
- Grammar.cs
- Kaynak:
- Grammar.cs
- Kaynak:
- Grammar.cs
public:
Grammar(System::IO::Stream ^ stream, System::String ^ ruleName, cli::array <System::Object ^> ^ parameters);
public Grammar(System.IO.Stream stream, string? ruleName, object[]? parameters);
public Grammar(System.IO.Stream stream, string ruleName, object[] parameters);
new System.Speech.Recognition.Grammar : System.IO.Stream * string * obj[] -> System.Speech.Recognition.Grammar
Public Sub New (stream As Stream, ruleName As String, parameters As Object())
Parametreler
- stream
- Stream
Stream Dil bilgisi belirtimi içeren bir giriş/çıkış nesnesine (dosyalar, VisualStudio Kaynakları ve DLL'ler dahil) bağlı.
- ruleName
- String
Konuşma tanıma dil bilgisinin giriş noktası olarak veya dil bilgisi null açıklamasının varsayılan kök kuralını kullanmak için kullanılacak kuralın tanımlayıcısı.
- parameters
- Object[]
Giriş noktası veya oluşturulacak kök kuralı OnInit için özelliği tarafından Grammar belirtilen başlatma işleyicisine geçirilecek parametreler. Bu parametre null olabilir.
Özel durumlar
stream şu dil bilgisine bağlıdır:
içinde belirtilen kuralı içermez
ruleNameiçinde belirtilenlerden farklı başlatma parametreleri gerektirir
parametersDil bilgisi için varsayılan temel Uri kural tarafından çözümlenemeyen göreli bir kural başvurusu içerir.
Açıklamalar
Başlatma işleyicisi için parametreler de belirtilebilir.
Şunlara uygulanır
Grammar(String, String, Object[])
- Kaynak:
- Grammar.cs
- Kaynak:
- Grammar.cs
- Kaynak:
- Grammar.cs
- Kaynak:
- Grammar.cs
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.
public:
Grammar(System::String ^ path, System::String ^ ruleName, cli::array <System::Object ^> ^ parameters);
public Grammar(string path, string? ruleName, object[]? parameters);
public Grammar(string path, string ruleName, object[] parameters);
new System.Speech.Recognition.Grammar : string * string * obj[] -> System.Speech.Recognition.Grammar
Public Sub New (path As String, ruleName As String, parameters As Object())
Parametreler
- path
- String
Dil bilgisi belirtimi içeren DLL'ler de dahil olmak üzere bir dosyanın yolu.
- ruleName
- String
Konuşma tanıma dil bilgisinin giriş noktası olarak veya dil bilgisi null açıklamasının varsayılan kök kuralını kullanmak için kullanılacak kuralın tanımlayıcısı.
- parameters
- Object[]
Giriş noktası veya oluşturulacak kök kuralı OnInit için özelliği tarafından Grammar belirtilen başlatma işleyicisine geçirilecek parametreler. Bu parametre null olabilir.
Özel durumlar
Parametrelerden herhangi biri geçersiz bir değer içeriyor.
tarafından
pathbelirtilen dosya, içinde belirtilenruleNamegeçerli bir dil bilgisi veya kural içermiyor.Dizi parametrelerinin içeriği, kuralın başlatma işleyicilerinden herhangi birinin bağımsız değişkenleriyle eşleşmiyor.
Dil bilgisi, dil bilgisi için varsayılan temel Uri kural tarafından çözümlenemeyen göreli bir kural başvurusuna sahiptir.
Açıklamalar
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.
Başlatma işleyicisi için parametreler de belirtilebilir.
Şunlara uygulanır
Grammar(SrgsDocument, String)
- Kaynak:
- Grammar.cs
- Kaynak:
- Grammar.cs
- Kaynak:
- Grammar.cs
- Kaynak:
- Grammar.cs
Bir nesneden sınıfının yeni bir Grammar örneğini SrgsDocument başlatır ve bir kök kuralı belirtir.
public:
Grammar(System::Speech::Recognition::SrgsGrammar::SrgsDocument ^ srgsDocument, System::String ^ ruleName);
public Grammar(System.Speech.Recognition.SrgsGrammar.SrgsDocument? srgsDocument, string? ruleName);
public Grammar(System.Speech.Recognition.SrgsGrammar.SrgsDocument srgsDocument, string ruleName);
new System.Speech.Recognition.Grammar : System.Speech.Recognition.SrgsGrammar.SrgsDocument * string -> System.Speech.Recognition.Grammar
Public Sub New (srgsDocument As SrgsDocument, ruleName As String)
Parametreler
- srgsDocument
- SrgsDocument
Konuşma tanıma dil bilgisi kısıtlamaları.
- ruleName
- String
Konuşma tanıma dil bilgisinin null giriş noktası olarak veya varsayılan kök kuralını kullanmak için kullanılacak kuralın tanımlayıcısı SrgsDocument.
Özel durumlar
ruleName çözümlenemiyor veya genel değil veya ruleNamenull kök kuralı içeriyor ve srgsDocument içermiyor.
srgsDocument, null'e eşittir.
srgsDocument çözümlenemeyen bir kural başvurusu içerir.
Örnekler
Aşağıdaki örnek, bir SrgsDocument örnekte konuşma tanıma dil bilgisi oluşturur ve dil bilgisinin kök kuralı olarak kullanılacak bir kural belirtir. Örnek, örnekten Grammar bir SrgsDocument nesne oluşturur ve bunu konuşma tanıma altyapısına yükler.
using System;
using System.Speech.Recognition;
using System.Speech.Recognition.SrgsGrammar;
namespace SampleRecognition
{
class Program
{
static void Main(string[] args)
// Initialize an in-process speech recognition engine.
{
using (SpeechRecognitionEngine recognizer =
new SpeechRecognitionEngine())
{
// Create the SrgsDocument.
SrgsDocument document = new SrgsDocument();
// Create the Cities rule and add it to the document.
SrgsRule citiesRule = new SrgsRule("Cities");
citiesRule.Scope = SrgsRuleScope.Public;
SrgsOneOf cityChoice = new SrgsOneOf();
cityChoice.Add(new SrgsItem("Seattle"));
cityChoice.Add(new SrgsItem("Los Angeles"));
cityChoice.Add(new SrgsItem("New York"));
cityChoice.Add(new SrgsItem("Miami"));
citiesRule.Add(cityChoice);
document.Rules.Add(citiesRule);
// Create the Main rule and add it to the document.
SrgsRule mainRule = new SrgsRule("Main");
mainRule.Scope = SrgsRuleScope.Public;
mainRule.Add(new SrgsItem("I would like to fly from"));
mainRule.Add(new SrgsRuleRef(citiesRule));
mainRule.Add(new SrgsItem("to"));
mainRule.Add(new SrgsRuleRef(citiesRule));
document.Rules.Add(mainRule);
// Create the Grammar object and specify which rule to use as the root.
Grammar citiesGrammar = new Grammar(document,"Main");
// Load the grammar object to the recognizer.
recognizer.LoadGrammarAsync(citiesGrammar);
// Attach a handler for the SpeechRecognized event.
recognizer.SpeechRecognized +=
new EventHandler<SpeechRecognizedEventArgs>(recognizer_SpeechRecognized);
// Set the input to the recognizer.
recognizer.SetInputToDefaultAudioDevice();
// Start recognition.
recognizer.RecognizeAsync();
Console.WriteLine("Starting asynchronous recognition...");
// Keep the console window open.
Console.ReadLine();
}
}
// Handle the SpeechRecognized event.
static void recognizer_SpeechRecognized(object sender, SpeechRecognizedEventArgs e)
{
Console.WriteLine(" Speech recognized: " + e.Result.Text);
}
}
}
Açıklamalar
Bu oluşturucu başlatma işleyicisine herhangi bir parametre geçirmez ve SrgsDocument bağımsız değişken gerektiren bir başlatma işleyicisi içermemelidir.
bir nesnesi Grammar oluşturmak SrgsDocument ve göreli kural başvurularını çözümlemek için kullanılacak temel URI'yi belirtmek için oluşturucuyu Grammar kullanın.
Ayrıca bkz.
- System.Speech.Recognition.SrgsGrammar
- SrgsDocument
- SpeechRecognizer
- SpeechRecognitionEngine
- Konuşma Tanıma Dil Bilgisi Belirtimi
Şunlara uygulanır
Grammar(Stream, String)
- Kaynak:
- Grammar.cs
- Kaynak:
- Grammar.cs
- Kaynak:
- Grammar.cs
- Kaynak:
- Grammar.cs
public:
Grammar(System::IO::Stream ^ stream, System::String ^ ruleName);
public Grammar(System.IO.Stream stream, string? ruleName);
public Grammar(System.IO.Stream stream, string ruleName);
new System.Speech.Recognition.Grammar : System.IO.Stream * string -> System.Speech.Recognition.Grammar
Public Sub New (stream As Stream, ruleName As String)
Parametreler
- stream
- Stream
Konuşma tanıma dil bilgisini desteklenen biçimde açıklayan bir akış.
- ruleName
- String
Konuşma tanıma dil bilgisinin giriş noktası olarak veya dil bilgisi null açıklamasının varsayılan kök kuralını kullanmak için kullanılacak kuralın tanımlayıcısı.
Özel durumlar
ruleName çözümlenemiyor veya genel değil ya da ruleName değil null ve dil bilgisi açıklaması bir kök kuralı tanımlamaz.
stream, null'e eşittir.
Akış geçerli bir açıklama içermiyor veya çözümlenemeyen bir kural başvurusu içeren bir dil bilgisi tanımlıyor.
Örnekler
Aşağıdaki örnek, bir dosya akışından yerel bir SRGS dosyasını (cities.xml) yükler ve dil bilgisinin kökü olarak kullanılacak bir kural belirtir. cities.xml dosyasının içeriği, C# örneğinden sonra gelen XML örneğinde görünür.
// Load a cities grammar from an I/O stream, use a specific
// rule as the root of the grammar, and return the new grammar.
private static Grammar CreateGrammarFromStream2()
{
FileInfo file = new FileInfo(@"c:\temp\cities.xml");
Grammar citiesGrammar = new Grammar(file.OpenRead(), "Main");
citiesGrammar.Name = "Stream Cities Grammar 2";
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
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.
Bu oluşturucu başlatma işleyicisine herhangi bir parametre geçirmez ve açıklama bağımsız değişken gerektiren bir başlatma işleyicisi tanımlamamalıdır.
Bu oluşturucu aşağıdaki biçimlerden bir Grammar örnek oluşturabilir:
W3C Konuşma Tanıma Dil Bilgisi Belirtimi (SRGS) Sürüm 1.0'a uygun XML biçimli dosyalar
.cfg dosya uzantısına sahip bir ikili dosyaya derlenmiş dil bilgisi
Bu oluşturucu, XML biçimindeki dil bilgisi dosyalarını 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 akıştan bir Grammar oluşturmak ve göreli kural başvurularını çözümlemek için kullanılacak temel URI'yi belirtmek için oluşturucuyu Grammar kullanın.
Ayrıca bkz.
Şunlara uygulanır
Grammar(String)
- Kaynak:
- Grammar.cs
- Kaynak:
- Grammar.cs
- Kaynak:
- Grammar.cs
- Kaynak:
- Grammar.cs
Bir dosyadan sınıfının yeni bir örneğini Grammar başlatır.
public:
Grammar(System::String ^ path);
public Grammar(string path);
new System.Speech.Recognition.Grammar : string -> System.Speech.Recognition.Grammar
Public Sub New (path As String)
Parametreler
- path
- String
Konuşma tanıma dil bilgisini desteklenen biçimde açıklayan dosyanın yolu.
Özel durumlar
path boş dizeyi ("") içerir veya dosya kök kuralı içermeyen bir dil bilgisi açıklar.
path, null'e eşittir.
Dosya geçerli bir açıklama içermiyor veya çözümlenemeyen bir kural başvurusu içeren bir dil bilgisi açıklıyor.
Örnekler
Aşağıdaki örnek, nesne oluşturmak Grammar için yerel bir SRGS dosyasından konuşma tanıma dil bilgisi yükler. cities.xml dosyasının içeriği, C# örneğinden sonra gelen XML örneğinde görünür.
// Load a cities grammar from a local file and
// return the new grammar.
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
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.
Bu oluşturucu başlatma işleyicisine herhangi bir parametre geçirmez ve açıklama bağımsız değişken gerektiren bir başlatma işleyicisi tanımlamamalıdır.
Bu oluşturucu aşağıdaki biçimlerden bir Grammar örnek oluşturabilir:
W3C Konuşma Tanıma Dil Bilgisi Belirtimi (SRGS) Sürüm 1.0'a uygun XML biçimli dosyalar
.cfg dosya uzantısına sahip bir ikili dosyaya derlenmiş dil bilgisi
Bu oluşturucu, XML biçimindeki dil bilgisi dosyalarını 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.
SRGS dil bilgisi bir kök kuralı tanımlayabilir. Bir Grammar dizeden nesne oluşturmak ve kök kural belirtmek için oluşturucuyu Grammar kullanın.
Göreli kural başvurularını çözümlemek için kullanılacak temel URI'yi belirten bir Grammar nesne oluşturmak için dosyayı bir dosya akışında açın ve oluşturucuyu Grammar.Grammar kullanın.
Ayrıca bkz.
Şunlara uygulanır
Grammar(SrgsDocument)
- Kaynak:
- Grammar.cs
- Kaynak:
- Grammar.cs
- Kaynak:
- Grammar.cs
- Kaynak:
- Grammar.cs
Bir nesneden sınıfının yeni bir Grammar örneğini SrgsDocument başlatır.
public:
Grammar(System::Speech::Recognition::SrgsGrammar::SrgsDocument ^ srgsDocument);
public Grammar(System.Speech.Recognition.SrgsGrammar.SrgsDocument? srgsDocument);
public Grammar(System.Speech.Recognition.SrgsGrammar.SrgsDocument srgsDocument);
new System.Speech.Recognition.Grammar : System.Speech.Recognition.SrgsGrammar.SrgsDocument -> System.Speech.Recognition.Grammar
Public Sub New (srgsDocument As SrgsDocument)
Parametreler
- srgsDocument
- SrgsDocument
Konuşma tanıma dil bilgisi kısıtlamaları.
Özel durumlar
srgsDocument kök kuralı içermez.
srgsDocument, null'e eşittir.
srgsDocument çözümlenemeyen bir kural başvurusu içerir.
Örnekler
Aşağıdaki örnek, bir örnekte bir nesne oluşturmak için kullanılan bir SrgsDocumentGrammar konuşma tanıma dil bilgisi oluşturur.
private static Grammar CreateSrgsDocumentGrammar()
{
// Create the SrgsDocument.
SrgsDocument document = new SrgsDocument();
// Create the Cities rule and add it to the document.
SrgsRule citiesRule = new SrgsRule("Cities");
SrgsOneOf cityChoice = new SrgsOneOf();
cityChoice.Add(new SrgsItem("Seattle"));
cityChoice.Add(new SrgsItem("Los Angeles"));
cityChoice.Add(new SrgsItem("New York"));
cityChoice.Add(new SrgsItem("Miami"));
citiesRule.Add(cityChoice);
document.Rules.Add(citiesRule);
// Create the Main rule and add it to the document.
SrgsRule mainRule = new SrgsRule("Main");
mainRule.Scope = SrgsRuleScope.Public;
SrgsItem item = new SrgsItem("I would like to fly from");
item.Add(new SrgsRuleRef(citiesRule));
item.Add(new SrgsText("to"));
item.Add(new SrgsRuleRef(citiesRule));
mainRule.Add(item);
document.Rules.Add(mainRule);
// Set the root rule.
document.Root = mainRule;
// Create the Grammar object.
Grammar citiesGrammar = new Grammar(document);
citiesGrammar.Name = "SrgsDocument Cities Grammar";
return citiesGrammar;
}
Açıklamalar
Bu oluşturucu başlatma işleyicisine herhangi bir parametre geçirmez ve SrgsDocument bağımsız değişken gerektiren bir başlatma işleyicisi içermemelidir.
bir SrgsDocument kök kuralına sahip olabilir. Kök kuralı belirten bir Grammar nesne oluşturmak için veya Grammar oluşturucuyu Grammar kullanın.
'den Grammar bir konuşma tanıma SrgsDocument oluşturmak ve göreli kural başvurularını çözümlemek için kullanılacak temel URI'yi belirtmek için oluşturucuyu Grammar kullanın.
Ayrıca bkz.
- System.Speech.Recognition.SrgsGrammar
- SrgsDocument
- SpeechRecognizer
- SpeechRecognitionEngine
- Konuşma Tanıma Dil Bilgisi Belirtimi
Şunlara uygulanır
Grammar(String, String)
- Kaynak:
- Grammar.cs
- Kaynak:
- Grammar.cs
- Kaynak:
- Grammar.cs
- Kaynak:
- Grammar.cs
Bir dosyadan sınıfının yeni bir örneğini Grammar başlatır ve bir kök kural belirtir.
public:
Grammar(System::String ^ path, System::String ^ ruleName);
public Grammar(string path, string ruleName);
new System.Speech.Recognition.Grammar : string * string -> System.Speech.Recognition.Grammar
Public Sub New (path As String, ruleName As String)
Parametreler
- path
- String
Konuşma tanıma dil bilgisini desteklenen biçimde açıklayan dosyanın yolu.
- ruleName
- String
Konuşma tanıma dil bilgisinin giriş noktası olarak veya dil bilgisi null açıklamasının varsayılan kök kuralını kullanmak için kullanılacak kuralın tanımlayıcısı.
Özel durumlar
ruleName çözümlenemiyor veya genel değil, path boş dize ("") veya ruleName is null ve dil bilgisi açıklaması bir kök kural tanımlamaz.
path, null'e eşittir.
Dosya geçerli bir açıklama içermiyor veya çözümlenemeyen bir kural başvurusu içeren bir dil bilgisi tanımlıyor.
Örnekler
Aşağıdaki örnek, bir dosyadan yerel bir SRGS dosyası (cities.xml) yükler ve dil bilgisinin kökü olarak kullanılacak bir kural belirtir. cities.xml dosyasının içeriği, C# örneğinden sonra gelen XML örneğinde görünür.
// Load a cities grammar from a local file, use a specific
// rule as the root of the grammar, and return the new grammar.
private static Grammar CreateGrammarFromFile2()
{
Grammar citiesGrammar = new Grammar(@"c:\temp\cities.xml", "Main");
citiesGrammar.Name = "SRGS File Cities Grammar 2";
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
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.
Bu oluşturucu başlatma işleyicisine herhangi bir parametre geçirmez ve açıklama bağımsız değişken gerektiren bir başlatma işleyicisi tanımlamamalıdır.
Bu oluşturucu aşağıdaki biçimlerden bir Grammar örnek oluşturabilir:
W3C Konuşma Tanıma Dil Bilgisi Belirtimi (SRGS) Sürüm 1.0'a uygun XML biçimli dosyalar
.cfg dosya uzantısına sahip bir ikili dosyaya derlenmiş dil bilgisi
Bu oluşturucu, XML biçimindeki dil bilgisi dosyalarını 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.
Göreli kural başvurularını çözümlemek için kullanılacak temel URI'yi belirten bir Grammar oluşturmak için, dosya için bir dosya akışı açın ve oluşturucuyu Grammar kullanın.
Ayrıca bkz.
Şunlara uygulanır
Grammar(GrammarBuilder)
- Kaynak:
- Grammar.cs
- Kaynak:
- Grammar.cs
- Kaynak:
- Grammar.cs
- Kaynak:
- Grammar.cs
Bir nesneden sınıfının yeni bir Grammar örneğini GrammarBuilder başlatır.
public:
Grammar(System::Speech::Recognition::GrammarBuilder ^ builder);
public Grammar(System.Speech.Recognition.GrammarBuilder builder);
new System.Speech.Recognition.Grammar : System.Speech.Recognition.GrammarBuilder -> System.Speech.Recognition.Grammar
Public Sub New (builder As GrammarBuilder)
Parametreler
- builder
- GrammarBuilder
Konuşma tanıma dil bilgisi kısıtlamalarını içeren bir örneği GrammarBuilder .
Örnekler
Aşağıdaki örnek ve Choices nesnelerini kullanarak GrammarBuilder bir konuşma tanıma dil bilgisi oluşturur. Oluşturucu, Grammar nesneden Grammar bir GrammarBuilder nesne oluşturur.
// Create a grammar using a GrammarBuilder and return the new grammar.
private static Grammar CreateGrammarBuilderGrammar()
{
GrammarBuilder builder = new GrammarBuilder();
Choices cityChoice = new Choices (new string[]
{"Seattle", "New York", "Miami", "Los Angeles"});
builder.Append("I would like to fly from");
builder.Append(cityChoice);
builder.Append("to");
builder.Append(cityChoice);
Grammar citiesGrammar = new Grammar(builder);
citiesGrammar.Name = "GrammarBuilder Cities Grammar";
return citiesGrammar;
}
Ayrıca bkz.
Şunlara uygulanır
Grammar(Stream)
- Kaynak:
- Grammar.cs
- Kaynak:
- Grammar.cs
- Kaynak:
- Grammar.cs
- Kaynak:
- Grammar.cs
public:
Grammar(System::IO::Stream ^ stream);
public Grammar(System.IO.Stream stream);
new System.Speech.Recognition.Grammar : System.IO.Stream -> System.Speech.Recognition.Grammar
Public Sub New (stream As Stream)
Parametreler
- stream
- Stream
Konuşma tanıma dil bilgisini desteklenen biçimde açıklayan bir akış.
Özel durumlar
stream kök kuralı içermeyen bir dil bilgisini açıklar.
stream, null'e eşittir.
Akış, geçerli bir dil bilgisi açıklaması içermez veya çözümlenemeyen bir kural başvurusu içeren bir dil bilgisi açıklar.
Örnekler
Aşağıdaki örnek, bir dosya akışı kullanarak yerel bir SRGS dosyasından (cities.xml) konuşma tanıma dil bilgisi oluşturur. cities.xml dosyasının içeriği C# örneğinden sonra görüntülenir.
// Load a cities grammar from an I/O stream and
// return the new grammar.
private static Grammar CreateGrammarFromStream()
{
string fileName = @"c:\temp\cities.xml";
Grammar citiesGrammar =
new Grammar(new FileStream(fileName, FileMode.Open));
citiesGrammar.Name = "Stream 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
Bu oluşturucu başlatma işleyicisine herhangi bir parametre geçirmez ve açıklama bağımsız değişken gerektiren bir başlatma işleyicisi tanımlamamalıdır.
Bu oluşturucu aşağıdaki biçimlerden bir Grammar örnek oluşturabilir:
W3C Konuşma Tanıma Dil Bilgisi Belirtimi (SRGS) Sürüm 1.0'a uygun XML biçimli dosyalar
.cfg dosya uzantısına sahip bir ikili dosyaya derlenmiş dil bilgisi
Bu oluşturucu, XML biçimindeki dil bilgisi dosyalarını 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.
SRGS dil bilgisi bir kök kuralı tanımlayabilir. Bir akıştan nesne oluşturmak Grammar ve kök kural belirtmek için veya Grammar oluşturucuyu Grammar kullanın.
Bir akıştan nesne oluşturmak Grammar ve göreli kural başvurularını çözümlemek için kullanılacak temel URI'yi belirtmek için oluşturucuyu Grammar kullanın.