GrammarBuilder.AppendRuleReference Methode
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Fügt der aktuellen Sequenz von Grammatikelementen eine Grammatikdatei oder eine Grammatikregel an.
Überlädt
AppendRuleReference(String) |
Fügt der aktuellen Sequenz von Grammatikelementen eine Grammatikdefinitionsdatei an. |
AppendRuleReference(String, String) |
Fügt die angegebene Regel einer Grammatikdefinitionsdatei der aktuellen Sequenz von Grammatikelementen an. |
Hinweise
Die- AppendRuleReference Methoden können eine Grammatik Datei oder eine Grammatik Regel aus einer Datei anfügen. Diese Methoden ermöglichen Anwendungen die Verwendung von vorab bereitgestellten oder öffentlich verfügbaren Grammatikregeln. Die Anwendung muss Lesezugriff auf den Speicherort der angegebenen Grammatik Dateien haben.
Diese Methoden können eine sprach Erkennungs Grammatik aus den folgenden Formaten lesen.
XML-Format Dateien, die der W3C- Spezifikation für die sprach Erkennungs Grammatik (SRGS), Version 1,0 , entsprechen
Binärdateien, die dem Binär Format der Microsoft-sprach Erkennungs Grammatik (. cfg-Dateierweiterung) entsprechen
Das Kompilieren einer SRGS-Grammatik Datei im XML-Format in eine binäre Grammatik Datei mit der Erweiterung ". cfg" kann die von Such Vorgängen verbrauchte Zeit verringern, insbesondere dann, wenn die Grammatik eine Erkennung einer großen Anzahl von Wörtern und Ausdrücken erfordert. Informationen zum Kompilieren von SRGS-Grammatiken in das cfg-Binärformat finden Sie unter SrgsGrammarCompiler .
AppendRuleReference(String)
Fügt der aktuellen Sequenz von Grammatikelementen eine Grammatikdefinitionsdatei an.
public:
void AppendRuleReference(System::String ^ path);
public void AppendRuleReference (string path);
member this.AppendRuleReference : string -> unit
Public Sub AppendRuleReference (path As String)
Parameter
- path
- String
Der Pfad oder der URI (Universal Resource Identifier) der Datei, die eine Spracherkennungsgrammatik in einem unterstützten Format beschreibt.
Beispiele
Im folgenden c#-Beispiel wird eine sprach Erkennungs Grammatik erstellt, die die Regel mit dem Namen Cities
in einer lokalen SRGS-Datei "Cities. grxml" verwendet. Der Inhalt der Datei Cities. grxml wird unter dem c#-Codebeispiel angezeigt.
private static Grammar CreateCitiesGrammar1()
{
GrammarBuilder builder = new GrammarBuilder();
builder.AppendRuleReference("file://c:/temp/cities.grxml");
Grammar citiesGrammar = new Grammar(builder);
citiesGrammar.Name = "Cities Grammar 1";
return citiesGrammar;
}
<?xml version="1.0" encoding="UTF-16" ?>
<grammar version="1.0" xml:lang="en-US"
xmlns="http://www.w3.org/2001/06/grammar"
tag-format="semantics/1.0" root="Main">
<!-- cities.grxml:
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>
Hinweise
Der URI, der vom-Argument bereitgestellt wird, ist path
möglicherweise local oder Remote. Die Anwendung muss Lesezugriff auf den Speicherort der angegebenen Grammatik Dateien haben.
Eine SRGS-Darstellung (W3C Speech Recognition Grammar Specification) kann eine Stamm Regel definieren. Diese Methode fügt die Grammatik, beginnend mit ihrer Stamm Regel, an die aktuelle Sequenz von Grammatik Elementen an. Verwenden Sie die-Methode, um eine bestimmte Grammatik Regel anzufügen AppendRuleReference .
Siehe auch
Gilt für
AppendRuleReference(String, String)
Fügt die angegebene Regel einer Grammatikdefinitionsdatei der aktuellen Sequenz von Grammatikelementen an.
public:
void AppendRuleReference(System::String ^ path, System::String ^ rule);
public void AppendRuleReference (string path, string rule);
member this.AppendRuleReference : string * string -> unit
Public Sub AppendRuleReference (path As String, rule As String)
Parameter
- path
- String
Der Dateipfad oder der URI (Universal Resource Identifier) der Datei, der eine Spracherkennungsgrammatik in einem unterstützten Format beschreibt.
- rule
- String
Der Bezeichner der Regel, die anzuwenden ist, oder null
, um die standardmäßige Stammregel der Grammatikdatei anzuwenden.
Beispiele
Im folgenden c#-Beispiel wird eine sprach Erkennungs Grammatik erstellt, die die Regel mit dem Namen Cities
in einer lokalen SRGS-Datei "Cities. grxml" verwendet. Der Inhalt der Datei Cities. grxml wird unter dem c#-Codebeispiel angezeigt.
private static Grammar CreateCitiesGrammar2()
{
GrammarBuilder builder = new GrammarBuilder();
builder.Append("Does");
builder.AppendRuleReference(@"c:\temp\cities.grxml", "Cities");
builder.Append("have a shuttle");
Grammar citiesGrammar = new Grammar(builder);
citiesGrammar.Name = "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.grxml:
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>
Hinweise
Der URI, der vom-Argument bereitgestellt wird, ist path
möglicherweise local oder Remote. Die Anwendung muss Lesezugriff auf den Speicherort der angegebenen Grammatik Dateien haben.
Mithilfe der-Methode können Sie AppendRuleReference eine Grammatik Datei mit ihrer Stamm Regel anfügen.