Sdílet prostřednictvím


GrammarBuilder.AppendRuleReference Metoda

Definice

Připojí gramatický soubor nebo gramatické pravidlo k aktuální sekvenci gramatických prvků.

Přetížení

AppendRuleReference(String)

Připojí gramatický definiční soubor k aktuální sekvenci gramatických prvků.

AppendRuleReference(String, String)

Připojí zadané pravidlo gramatického definičního souboru k aktuální sekvenci gramatických prvků.

Poznámky

AppendRuleReferenceMetody mohou připojit gramatický soubor nebo gramatické pravidlo ze souboru. Tyto metody umožňují aplikacím využít předběžně nasazená nebo veřejně dostupná gramatická pravidla. Aplikace musí mít přístup pro čtení k umístění zadaných gramatických souborů.

Tyto metody mohou číst gramatiku rozpoznávání řeči z následujících formátů.

Kompilování souboru SRGS gramatiky formátu XML do binárního gramatického souboru s příponou. cfg může zkrátit spotřebovaný čas tím, že vyhledá shodu, obzvláště v případě, že gramatika vyžaduje rozpoznávání velkého počtu slov a frází. Informace o kompilaci SRGS gramatik do binárního formátu CFG naleznete v tématu SrgsGrammarCompiler .

AppendRuleReference(String)

Připojí gramatický definiční soubor k aktuální sekvenci gramatických prvků.

public:
 void AppendRuleReference(System::String ^ path);
public void AppendRuleReference (string path);
member this.AppendRuleReference : string -> unit
Public Sub AppendRuleReference (path As String)

Parametry

path
String

Cesta nebo identifikátor univerzálního prostředku (URI) souboru, který popisuje gramatiku rozpoznávání řeči v podporovaném formátu.

Příklady

Následující příklad jazyka C# vytvoří gramatiku rozpoznávání řeči, která používá pravidlo s názvem Cities v místním souboru SRGS, města. grxml. Obsah souboru města. grxml se zobrazí pod příkladem kódu jazyka C#.

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>  

Poznámky

Identifikátor URI poskytnutý path argumentem může být místní nebo vzdálený. Aplikace musí mít přístup pro čtení k umístění zadaných gramatických souborů.

Reprezentace gramatiky pro rozpoznávání řeči W3C (SRGS) může definovat kořenové pravidlo. Tato metoda připojí gramatiku od svého kořenového pravidla k aktuální sekvenci gramatických prvků. K připojení konkrétního gramatického pravidla použijte AppendRuleReference metodu.

Viz také

Platí pro

AppendRuleReference(String, String)

Připojí zadané pravidlo gramatického definičního souboru k aktuální sekvenci gramatických prvků.

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)

Parametry

path
String

Cesta k souboru nebo identifikátor URI (Universal Resource Identifier) souboru, který popisuje gramatiku rozpoznávání řeči v podporovaném formátu.

rule
String

Identifikátor pravidla, které se má připojit, nebo null připojení výchozího kořenového pravidla pro gramatický soubor

Příklady

Následující příklad jazyka C# vytvoří gramatiku rozpoznávání řeči, která používá pravidlo s názvem Cities v místním souboru SRGS, města. grxml. Obsah souboru města. grxml se zobrazí pod příkladem kódu jazyka C#.

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>  

Poznámky

Identifikátor URI poskytnutý path argumentem může být místní nebo vzdálený. Aplikace musí mít přístup pro čtení k umístění zadaných gramatických souborů.

AppendRuleReferenceK připojení gramatického souboru, který začíná jeho kořenovým pravidlem, můžete použít metodu use.

Viz také

Platí pro