다음을 통해 공유


GrammarBuilder.AppendRuleReference 메서드

정의

문법 파일 또는 문법 규칙을 문법 요소의 현재 시퀀스에 추가합니다.

오버로드

AppendRuleReference(String)

문법 정의 파일을 문법 요소의 현재 시퀀스에 추가합니다.

AppendRuleReference(String, String)

문법 정의 파일의 지정된 규칙을 문법 요소의 현재 시퀀스에 추가합니다.

설명

AppendRuleReference 메서드 문법 파일 또는 파일에서 문법 규칙을 추가할 수 있습니다. 이러한 메서드를 사용 하도록 애플리케이션을 미리 배포 된 또는 공개적으로 사용할 수 있는 문법 규칙을 사용 합니다. 애플리케이션 읽기 권한이 있어야 합니다 지정된 문법 파일의 위치입니다.

이러한 메서드는 다음 형식에서 음성 인식 문법을 읽을 수 있습니다.

컴파일하는 XML 형식의 SRGS 문법 파일 확장명이.cfg 인 이진 문법 파일을 줄일 수 있습니다는 일치 항목을 검색 하 여 사용 하는 시간 문법 수가 단어와 구 인식 해야 하는 경우에 특히. SRGS 문법을 CFG 이진 형식으로 컴파일하는 방법에 대 한 내용은 SrgsGrammarCompiler합니다.

AppendRuleReference(String)

문법 정의 파일을 문법 요소의 현재 시퀀스에 추가합니다.

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

매개 변수

path
String

지원되는 형식으로 음성 인식 문법을 설명하는 파일 경로나 유니버설 리소스 식별자(URI)

예제

다음 C# 예제에서는 라는 규칙을 사용 하는 음성 인식 문법을 Cities 로컬 SRGS 파일인 cities.grxml 합니다. Cities.grxml 파일의 내용을 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>  

설명

제공 하는 URI를 path 인수는 로컬 또는 원격 일 수 있습니다. 애플리케이션 읽기 권한이 있어야 합니다 지정된 문법 파일의 위치입니다.

W3C 음성 인식 문법 Specification (SRGS) 표현에는 루트 규칙을 정의할 수 있습니다. 이 메서드는 문법을 문법 요소의 현재 시퀀스에 해당 루트 규칙을 사용 하 여 시작을 추가 합니다. 특정 문법 규칙에 추가 하려면 사용 된 AppendRuleReference 메서드.

추가 정보

적용 대상

AppendRuleReference(String, String)

문법 정의 파일의 지정된 규칙을 문법 요소의 현재 시퀀스에 추가합니다.

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)

매개 변수

path
String

지원되는 형식으로 음성 인식 문법을 설명하는 파일의 경로나 파일의 유니버설 리소스 식별자(URI)

rule
String

추가하는 규칙의 식별자 또는 문법 파일의 기본 루트 규칙을 추가하는 null

예제

다음 C# 예제에서는 라는 규칙을 사용 하는 음성 인식 문법을 Cities 로컬 SRGS 파일인 cities.grxml 합니다. Cities.grxml 파일의 내용을 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>  

설명

제공 하는 URI를 path 인수는 로컬 또는 원격 일 수 있습니다. 애플리케이션 읽기 권한이 있어야 합니다 지정된 문법 파일의 위치입니다.

사용 하 여 사용할 수는 AppendRuleReference 해당 루트 규칙을 사용 하 여 시작 하는 문법 파일을 추가 하는 방법입니다.

추가 정보

적용 대상