GrammarBuilder 클래스
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
음성 인식 문법에 대 한 제약 조건을 프로그래밍 방식으로 작성 하는 메커니즘을 제공 합니다.
public ref class GrammarBuilder
public class GrammarBuilder
type GrammarBuilder = class
Public Class GrammarBuilder
- 상속
-
GrammarBuilder
예제
다음 예제에서는 GrammarBuilder 하 고 Choices 두 구 중 하나를 인식할 수 있는 문법 구성 하는 개체 "배경 colorChoice" 또는 "백그라운드로 colorChoice".
이 예제에서는 사용을 Choices 개체에 대 한 허용 가능한 값 목록을 만드는 데 colorChoice 배열에서 String 개체입니다. A Choices 개체는 비슷합니다는 one-of
SRGS 사양의 요소 말할 때 인식할 수 있는 대체 구 집합을 포함 하 고 합니다. 또한이 예제에서는 Choices 배열을 두 개의 그룹 개체 GrammarBuilder 결과 문법 인식할 수 있는 대체 구의 쌍 개체입니다. 대체 단어 또는 문구는 대부분의 문법의 구성 요소 및 Choices 문법을 사용 하 여 생성에 대 한 개체는이 기능을 제공 GrammarBuilder합니다.
이 예에서는 마지막으로 만듭니다는 Grammar 에서 개체를 GrammarBuilder 에서 생성 된를 Choices 개체입니다.
private Grammar CreateColorGrammar()
{
// Create a set of color choices.
Choices colorChoice = new Choices(new string[] {"red", "green", "blue"});
GrammarBuilder colorElement = new GrammarBuilder(colorChoice);
// Create grammar builders for the two versions of the phrase.
GrammarBuilder makePhrase = new GrammarBuilder("Make background");
makePhrase.Append(colorElement);
GrammarBuilder setPhrase = new GrammarBuilder("Set background to");
setPhrase.Append(colorElement);
// Create a Choices for the two alternative phrases, convert the Choices
// to a GrammarBuilder, and construct the grammar from the result.
Choices bothChoices = new Choices(new GrammarBuilder[] {makePhrase, setPhrase});
Grammar grammar = new Grammar((GrammarBuilder)bothChoices);
grammar.Name = "backgroundColor";
return grammar;
}
설명
음성 인식 문법 정의 된 XML 형식에 일반적으로 작성 되는 음성 인식 문법 Specification (SRGS) 버전 1.0합니다. SRGS 문법을 프로그래밍 방식으로 생성 하려는 같지만 잘 알고 있다면 사용할 수는 System.Speech.Recognition.SrgsGrammar 네임 스페이스에는 요소와 특성 SRGS 정의한 멤버가 정확 하 게 일치 합니다. SRGS, 익숙한 되지 않거나 문법은 효율적으로 수행할 수 많은 일반적인 시나리오를 작성 하는 간단 하 고 프로그래밍 방식으로 접근 방법을 사용할 경우 사용할 수는 GrammarBuilder 고 Choices 클래스입니다.
사용 하 여 GrammarBuilder 계층적 트리를 작성 하는 개체 구성 Choices 프리앰블 및 각 노드에서 후 amble 구를 사용 하 여 섞어서 및 의미를 전달 하는 값 의미 체계를 사용 하 여 시드 대체 구가 포함 된 개체를 다시는 애플리케이션입니다.
사용 하는 GrammarBuilder 만들려면를 Grammar 개체, 다음 단계를 사용 합니다.
GrammarBuilder 개체를 만듭니다.
제약 조건을 추가 합니다 GrammarBuilder와 같은 String 개체를 Choices, SemanticResultKey, SemanticResultValue, DictationGrammar, 및 기타 GrammarBuilder 문법에 대 한 제약 조건을 정의 하는 개체입니다.
중 하나를 사용 합니다 Grammar 만들려면 생성자를 Grammar 개체에서 완료 된 GrammarBuilder 문법입니다.
사용 하 여 작성 GrammarBuilder 는 단일 규칙이 목록 또는 목록의 목록 등을 포함 하는 문법에 가장 적합 합니다. 여러 규칙이 있는 또는 내부 규칙 참조를 확인 해야 하는 문법을 프로그래밍 방식으로 빌드의 클래스를 사용 합니다 System.Speech.Recognition.SrgsGrammar 네임 스페이스입니다.
인스턴스의 GrammarBuilder 다른 특정 클래스에서 암시적 변환 하거나 결합 하 여 가져올 수도 있습니다는 GrammarBuilder 문법에 대 한 제약 조건을 포함 하는 두 번째 개체를 사용 하 여... 자세한 내용은 참조 하세요. 합니다 Implicit 하 고 Addition 연산자 및 Add 메서드.
기존 규칙을 추가할 GrammarBuilder를 사용 합니다 Add, Append, AppendDictation, AppendRuleReference, 및 AppendWildcard 메서드.
중요
음성 인식기 키 이름이 같은 중복 된 의미 체계 요소 또는 동일한 의미 체계 요소의 값을 반복적으로 수정할 수 있는 여러 의미 체계 요소가 포함 된 음성 인식 문법을 사용 하는 경우 예외가 throw 할 수 있습니다.
디버깅에 도움이 되는 DebugShowPhrases 속성의 현재 상태를 반환 합니다 GrammarBuilder 문자열로 합니다.
생성자
GrammarBuilder() |
GrammarBuilder 클래스의 비어 있는 새 인스턴스를 초기화합니다. |
GrammarBuilder(Choices) |
대체 집합에서 GrammarBuilder 클래스의 새 인스턴스를 초기화합니다. |
GrammarBuilder(GrammarBuilder, Int32, Int32) |
반복된 요소에서 GrammarBuilder 클래스의 새 인스턴스를 초기화합니다. |
GrammarBuilder(SemanticResultKey) |
의미 키에서 GrammarBuilder 클래스의 새 인스턴스를 초기화합니다. |
GrammarBuilder(SemanticResultValue) |
의미 값에서 GrammarBuilder 클래스의 새 인스턴스를 초기화합니다. |
GrammarBuilder(String) |
단어 시퀀스에서 GrammarBuilder 클래스의 새 인스턴스를 초기화합니다. |
GrammarBuilder(String, Int32, Int32) |
GrammarBuilder의 단어의 시퀀스에서의 String 클래스의 새 인스턴스를 초기화하며 String이 얼마나 반복될 수 있는지를 지정합니다. |
GrammarBuilder(String, SubsetMatchingMode) |
단어 시퀀스의 하위 집합에 대한 GrammarBuilder 클래스의 새 인스턴스를 초기화합니다. |
속성
Culture |
음성 인식 문법의 문화권을 가져오거나 설정합니다. |
DebugShowPhrases |
GrammarBuilder가 포함하는 문법의 콘텐츠와 구조를 보여주는 문자열을 가져옵니다. |
메서드
Add(Choices, GrammarBuilder) |
Choices 개체와 GrammarBuilder 개체를 차례로 포함하는 새 GrammarBuilder를 만듭니다. |
Add(GrammarBuilder, Choices) |
GrammarBuilder 개체와 Choices 개체를 차례로 포함하는 새 GrammarBuilder를 만듭니다. |
Add(GrammarBuilder, GrammarBuilder) |
두 GrammarBuilder 개체의 시퀀스를 포함하는 새 GrammarBuilder를 만듭니다. |
Add(GrammarBuilder, String) |
GrammarBuilder 개체와 그 뒤에 구를 포함하는 새 GrammarBuilder를 만듭니다. |
Add(String, GrammarBuilder) |
구와 그 뒤에 GrammarBuilder 개체를 포함하는 새 GrammarBuilder를 만듭니다. |
Append(Choices) |
대체 항목의 집합을 문법 요소의 현재 시퀀스에 추가합니다. |
Append(GrammarBuilder) |
문법 요소를 문법 요소의 현재 시퀀스에 추가합니다. |
Append(GrammarBuilder, Int32, Int32) |
반복된 문법 요소를 문법 요소의 현재 시퀀스에 추가합니다. |
Append(SemanticResultKey) |
의미 키를 문법 요소의 현재 시퀀스에 추가합니다. |
Append(SemanticResultValue) |
의미 값을 문법 요소의 현재 시퀀스에 추가합니다. |
Append(String) |
구를 문법 요소의 현재 시퀀스에 추가합니다. |
Append(String, Int32, Int32) |
반복된 구를 문법 요소의 현재 시퀀스에 추가합니다. |
Append(String, SubsetMatchingMode) |
구의 하위 집합에 대한 요소를 문법 요소의 현재 시퀀스에 추가합니다. |
AppendDictation() |
기본 받아쓰기 문법을 문법 요소의 현재 시퀀스에 추가합니다. |
AppendDictation(String) |
지정된 받아쓰기 문법을 문법 요소의 현재 시퀀스에 추가합니다. |
AppendRuleReference(String) |
문법 정의 파일을 문법 요소의 현재 시퀀스에 추가합니다. |
AppendRuleReference(String, String) |
문법 정의 파일의 지정된 규칙을 문법 요소의 현재 시퀀스에 추가합니다. |
AppendWildcard() |
입력과 일치하는 인식 문법 요소를 문법 요소의 현재 시퀀스에 추가합니다. |
Equals(Object) |
지정된 개체가 현재 개체와 같은지 확인합니다. (다음에서 상속됨 Object) |
GetHashCode() |
기본 해시 함수로 작동합니다. (다음에서 상속됨 Object) |
GetType() |
현재 인스턴스의 Type을 가져옵니다. (다음에서 상속됨 Object) |
MemberwiseClone() |
현재 Object의 단순 복사본을 만듭니다. (다음에서 상속됨 Object) |
ToString() |
현재 개체를 나타내는 문자열을 반환합니다. (다음에서 상속됨 Object) |
연산자
Addition(Choices, GrammarBuilder) |
Choices 개체와 GrammarBuilder 개체를 차례로 포함하는 새 GrammarBuilder를 만듭니다. |
Addition(GrammarBuilder, Choices) |
GrammarBuilder와 그 뒤에 GrammarBuilder를 포함하는 새 Choices를 만듭니다. |
Addition(GrammarBuilder, GrammarBuilder) |
두 GrammarBuilder 개체의 시퀀스를 포함하는 새 GrammarBuilder를 만듭니다. |
Addition(GrammarBuilder, String) |
GrammarBuilder와 그 뒤에 구를 포함하는 새 GrammarBuilder를 만듭니다. |
Addition(String, GrammarBuilder) |
구와 그 뒤에 GrammarBuilder를 포함하는 새 GrammarBuilder를 만듭니다. |
Implicit(Choices to GrammarBuilder) |
Choices 개체를 GrammarBuilder 개체로 변환합니다. |
Implicit(SemanticResultKey to GrammarBuilder) |
SemanticResultKey 개체를 GrammarBuilder 개체로 변환합니다. |
Implicit(SemanticResultValue to GrammarBuilder) |
SemanticResultValue 개체를 GrammarBuilder 개체로 변환합니다. |
Implicit(String to GrammarBuilder) |
문자열을 GrammarBuilder 개체로 변환합니다. |