GrammarBuilder.AppendRuleReference Metoda

Definicja

Dołącza plik gramatyczny lub regułę gramatyczną do bieżącej sekwencji elementów gramatycznych.

Przeciążenia

Nazwa Opis
AppendRuleReference(String)

Dołącza plik definicji gramatyki do bieżącej sekwencji elementów gramatycznych.

AppendRuleReference(String, String)

Dołącza określoną regułę pliku definicji gramatyki do bieżącej sekwencji elementów gramatycznych.

Uwagi

Metody AppendRuleReference mogą dołączać plik gramatyczny lub regułę gramatyczną z pliku. Te metody umożliwiają aplikacjom korzystanie ze wstępnie wdrożonych lub publicznie dostępnych reguł gramatycznych. Aplikacja musi mieć dostęp do odczytu do lokalizacji określonych plików gramatycznych.

Te metody mogą odczytywać gramatykę rozpoznawania mowy z następujących formatów.

Kompilowanie pliku gramatycznego SRGS w formacie XML do binarnego pliku gramatycznego z rozszerzeniem cfg może skrócić czas używany przez wyszukiwanie dopasowania, zwłaszcza jeśli gramatyka wymaga rozpoznawania dużej liczby wyrazów i fraz. Aby uzyskać informacje na temat kompilowania gramatyki SRGS do formatu binarnego CFG, zobacz SrgsGrammarCompiler.

AppendRuleReference(String)

Źródło:
GrammarBuilder.cs
Źródło:
GrammarBuilder.cs
Źródło:
GrammarBuilder.cs
Źródło:
GrammarBuilder.cs

Dołącza plik definicji gramatyki do bieżącej sekwencji elementów gramatycznych.

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

Ścieżka lub uniwersalny identyfikator zasobu (URI) pliku opisującego gramatykę rozpoznawania mowy w obsługiwanym formacie.

Przykłady

Poniższy przykład w języku C# tworzy gramatykę rozpoznawania mowy, która używa reguły o nazwie Cities w lokalnym pliku SRGS cities.grxml. Zawartość pliku cities.grxml jest wyświetlana poniżej przykładu kodu 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>

Uwagi

Ważna

Użycie wystąpienia tego typu z niezaufanymi danymi jest zagrożeniem bezpieczeństwa. Użyj tego obiektu tylko z zaufanymi danymi. Aby uzyskać więcej informacji, zobacz Validate All Inputs.

Identyfikator URI dostarczony przez path argument może być lokalny lub zdalny. Aplikacja musi mieć dostęp do odczytu do lokalizacji określonych plików gramatycznych.

Reprezentacja specyfikacji gramatyki rozpoznawania mowy W3C (SRGS) może definiować regułę główną. Ta metoda dołącza gramatykę, zaczynając od jej reguły głównej, do bieżącej sekwencji elementów gramatycznych. Aby dołączyć określoną regułę gramatyki, użyj AppendRuleReference metody .

Zobacz też

Dotyczy

AppendRuleReference(String, String)

Źródło:
GrammarBuilder.cs
Źródło:
GrammarBuilder.cs
Źródło:
GrammarBuilder.cs
Źródło:
GrammarBuilder.cs

Dołącza określoną regułę pliku definicji gramatyki do bieżącej sekwencji elementów gramatycznych.

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

Ścieżka pliku lub uniwersalny identyfikator zasobu (URI) pliku, który opisuje gramatykę rozpoznawania mowy w obsługiwanym formacie.

rule
String

Identyfikator reguły do dołączenia lub null dołączenia domyślnej reguły głównej pliku gramatycznego.

Przykłady

Poniższy przykład w języku C# tworzy gramatykę rozpoznawania mowy, która używa reguły o nazwie Cities w lokalnym pliku SRGS cities.grxml. Zawartość pliku cities.grxml jest wyświetlana poniżej przykładu kodu 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>

Uwagi

Ważna

Użycie wystąpienia tego typu z niezaufanymi danymi jest zagrożeniem bezpieczeństwa. Użyj tego obiektu tylko z zaufanymi danymi. Aby uzyskać więcej informacji, zobacz Validate All Inputs.

Identyfikator URI dostarczony przez path argument może być lokalny lub zdalny. Aplikacja musi mieć dostęp do odczytu do lokalizacji określonych plików gramatycznych.

Możesz użyć AppendRuleReference metody , aby dołączyć plik gramatyczny rozpoczynający się od jego reguły głównej.

Zobacz też

Dotyczy