예제 문법

다음 예제는 문법을 음성 인식에 사용하는 더 복잡한 경우에 대해 설명합니다. 대부분의 예제는 ABNF(application/srgs) 및 XML(application/srgs+xml) 형식 모두로 제공됩니다. 다음 예제를 사용하여 문법을 시작하는 데 도움을 받으십시오.

문법에 대한 프로덕션 규칙에서, \(백슬래시)를 포함시키는 것은 ABNF에서는 구문 오류, XML에서는 리터럴 값으로 해석됩니다.

문법을 지원하는 언어 및 모델과 이들의 지원 수준(GA(General Availability) 또는 베타)은 사용자 정의에 대한 언어 지원을 참조하십시오.

확인 문법

확인 문법은 질문에 대한 응답으로 한 단어 응답을 예상하는 애플리케이션에 유용합니다. 다음 문법은 가능한 예 및 아니오 응답의 목록을 정의합니다.

목록 문법

목록 문법은 사용자가 사전 정의된 문자열 세트에서 옵션을 선택할 것으로 예상하는 애플리케이션에 유용합니다. 이 세트를 일반 목록이라고도 합니다. 이 문법은 일반적으로 터미널 요소의 목록으로 구성되며 복잡한 규칙 구조를 포함하지 않습니다.

  • 다음 문법은 숫자에 대한 구문 목록을 정의합니다.

  • 다음 문법은 사용자가 전화번호부에서 개인을 선택하기 위해 선택할 수 있는 유효한 이름의 목록을 정의합니다.

차대 번호(VIN) 문법

차대 번호(VIN)는 신용카드 번호, 전화번호 및 미국 사회 보장 번호와 마찬가지로 고정된 영숫자 형식을 사용합니다. 기존의 n-그램에 비해 문법의 큰 장점은 문법이 이러한 형식을 지정하는 데 매우 효과적이라는 점입니다.

VIN 형식은 잘 표준화되어 있으며 고정된 수의 문자를 포함합니다. 기존의 n-그램은 이러한 유형의 태스크에 제대로 작동하지 않습니다. 문법과 달리 n-그램은 필수 문자 수가 제공되었는지 확인할 수 없습니다.

다음 문법은 Honda VIN 코드를 인식합니다. 이전 예제보다 더 복잡하지만 문법의 강점을 잘 보여줍니다.

VIN 형식에 대한 자세한 내용은 차량 식별 번호를 참조하세요.

선택적 요소가 있는 문법

응답의 특정 요소를 선택 가능하게 하여 사용자가 응답하는 방식을 예측함으로써 문법을 보다 유연하게 만들 수 있습니다. 다음 문법은 $optionalphrase 요소 주위에 대괄호를 추가하여 선택사항으로 만듭니다. 사용자가 사회 보장 번호를 언급하기 전에 몇 가지 추가 구문 중 하나를 말할 수 있습니다. 예를 들어, 사용자가 "my social is xxx xx xxxx"라고 말하거나 "xxx xx xxxx"만 말할 수 있습니다.

문법의 선택적 확장에 대한 자세한 내용은 음성 인식 문법 사양의 섹션 2.5 반복 참조하세요.

명확화 문법

가능한 다른 예제 문법에는 인식된 응답의 신뢰도가 높지 않지만 애플리케이션이 사용자의 응답을 확신해야 하는 상황이 포함됩니다. 이 경우 애플리케이션이 가장 가능성 있는 응답을 포함하는 문법을 동적으로 작성하고 사용자에게 응답을 반복하도록 요청할 수 있습니다. 예를 들어, 애플리케이션이 가장 가능성 있는 두 개의 옵션을 포함하는 문법을 작성하고 둘 중 하나를 선택하도록 사용자에게 요청할 수 있습니다(Did you mean 'option 1' or 'option 9'?).

명확화 문법은 프로그래밍 방식으로 생성됩니다. 예제는 제공되지 않습니다.