GrammarBuilder Kelas
Definisi
Penting
Beberapa informasi terkait produk prarilis yang dapat diubah secara signifikan sebelum dirilis. Microsoft tidak memberikan jaminan, tersirat maupun tersurat, sehubungan dengan informasi yang diberikan di sini.
Menyediakan mekanisme untuk membangun batasan untuk tata bahasa pengenalan ucapan secara terprogram.
public ref class GrammarBuilder
public class GrammarBuilder
type GrammarBuilder = class
Public Class GrammarBuilder
- Warisan
-
GrammarBuilder
Contoh
Contoh berikut menggunakan GrammarBuilder objek dan Choices untuk membuat tata bahasa yang dapat mengenali salah satu dari dua frasa, "Buat warna latar belakangChoice" atau "Atur latar belakang ke colorChoice".
Contoh menggunakan Choices objek untuk membuat daftar nilai yang dapat diterima untuk colorChoice dari array String objek. Objek Choices dianalogikan dengan one-of elemen dalam spesifikasi SRGS, dan berisi sekumpulan frasa alternatif, yang salah satunya dapat dikenali saat diucapkan. Contoh ini juga menggunakan Choices objek untuk mengelompokkan array dua GrammarBuilder objek ke dalam sepasang frasa alternatif yang dapat dikenali tata bahasa yang dihasilkan. Kata atau frasa alternatif adalah komponen dari sebagian besar tata bahasa, dan Choices objek menyediakan fungsionalitas ini untuk tata bahasa yang dibangun dengan GrammarBuilder.
Contoh akhirnya membuat Grammar objek dari yang GrammarBuilder dibangun dari Choices objek.
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;
}
Keterangan
Tata bahasa pengenalan ucapan umumnya ditulis dalam format XML yang ditentukan oleh Spesifikasi Tata Bahasa Pengenalan Ucapan (SRGS) Versi 1.0. Jika Anda terbiasa dengan SRGS tetapi ingin menghasilkan tata bahasa secara terprogram, Anda dapat menggunakan System.Speech.Recognition.SrgsGrammar namespace, yang anggotanya sesuai erat dengan elemen dan atribut yang ditentukan oleh SRGS. Jika Anda tidak terbiasa dengan SRGS, atau Anda menginginkan pendekatan yang ringan dan terprogram untuk menulis tata bahasa yang dengannya Anda dapat menyelesaikan banyak skenario umum secara efisien; Anda dapat menggunakan GrammarBuilder kelas dan Choices .
Gunakan GrammarBuilder objek untuk membangun pohon hierarkis yang terdiri dari Choices objek yang berisi frasa alternatif, diselingi dengan frasa yang dapat diandalkan dan pasca-amble pada setiap simpul, dan diunggulkan dengan nilai semantik yang menyampaikan makna kembali ke aplikasi.
Untuk menggunakan GrammarBuilder untuk membuat Grammar objek, gunakan langkah-langkah berikut.
Buat objek GrammarBuilder.
Tambahkan batasan ke GrammarBuilder, seperti String objek, Choices, , SemanticResultValueSemanticResultKey, DictationGrammar, dan objek lain GrammarBuilder yang menentukan batasan untuk tata bahasa.
Gunakan salah Grammar satu konstruktor untuk membuat Grammar objek dari tata bahasa yang telah selesai GrammarBuilder .
Penulisan dengan GrammarBuilder paling cocok untuk tata bahasa yang memiliki satu aturan yang berisi daftar, atau mungkin daftar daftar. Untuk menyusun tata bahasa secara terprogram yang memiliki beberapa aturan, atau yang perlu membuat referensi aturan internal, gunakan kelas System.Speech.Recognition.SrgsGrammar namespace layanan.
Instans GrammarBuilder juga dapat diperoleh dengan konversi implisit dari kelas lain tertentu atau dengan menggabungkan GrammarBuilder dengan objek kedua yang berisi batasan untuk tata bahasa. Untuk informasi selengkapnya, lihat Implicit operator dan Addition dan Add metodenya.
Untuk menambahkan aturan ke metode , , Add, Append, AppendRuleReferenceAppendDictation, dan AppendWildcard yang sudah adaGrammarBuilder.
Penting
Pengenal ucapan dapat melemparkan pengecualian saat menggunakan tata bahasa pengenalan ucapan yang berisi elemen semantik duplikat dengan nama kunci yang sama atau beberapa elemen semantik yang dapat berulang kali memodifikasi nilai elemen semantik yang sama.
Untuk membantu penelusuran kesalahan, DebugShowPhrases properti mengembalikan status GrammarBuilder saat ini sebagai string.
Konstruktor
| Nama | Deskripsi |
|---|---|
| GrammarBuilder() |
Menginisialisasi instans baru yang kosong dari GrammarBuilder kelas. |
| GrammarBuilder(Choices) |
Menginisialisasi instans GrammarBuilder baru kelas dari serangkaian alternatif. |
| GrammarBuilder(GrammarBuilder, Int32, Int32) |
Menginisialisasi instans GrammarBuilder baru kelas dari elemen berulang. |
| GrammarBuilder(SemanticResultKey) |
Menginisialisasi instans GrammarBuilder baru kelas dari kunci semantik. |
| GrammarBuilder(SemanticResultValue) |
Menginisialisasi instans GrammarBuilder baru kelas dari nilai semantik. |
| GrammarBuilder(String, Int32, Int32) |
Menginisialisasi instans GrammarBuilder baru kelas dari urutan kata dalam dan String menentukan berapa kali String dapat diulang. |
| GrammarBuilder(String, SubsetMatchingMode) |
Menginisialisasi instans GrammarBuilder baru kelas untuk subset urutan kata. |
| GrammarBuilder(String) |
Menginisialisasi instans GrammarBuilder baru kelas dari urutan kata. |
Properti
| Nama | Deskripsi |
|---|---|
| Culture |
Mendapatkan atau mengatur budaya tata bahasa pengenalan ucapan. |
| DebugShowPhrases |
Mendapatkan string yang menunjukkan konten dan struktur tata bahasa yang dimuat oleh GrammarBuilder. |
Metode
| Nama | Deskripsi |
|---|---|
| Add(Choices, GrammarBuilder) |
Membuat baru GrammarBuilder yang berisi Choices objek diikuti oleh GrammarBuilder objek. |
| Add(GrammarBuilder, Choices) |
Membuat baru GrammarBuilder yang berisi GrammarBuilder objek diikuti oleh Choices objek. |
| Add(GrammarBuilder, GrammarBuilder) |
Membuat baru GrammarBuilder yang berisi urutan dua GrammarBuilder objek. |
| Add(GrammarBuilder, String) |
Membuat baru GrammarBuilder yang berisi GrammarBuilder objek diikuti dengan frasa. |
| Add(String, GrammarBuilder) |
Membuat baru GrammarBuilder yang berisi frasa diikuti oleh GrammarBuilder objek. |
| Append(Choices) |
Menambahkan sekumpulan alternatif untuk urutan elemen tata bahasa saat ini. |
| Append(GrammarBuilder, Int32, Int32) |
Menambahkan elemen tata bahasa berulang ke urutan elemen tata bahasa saat ini. |
| Append(GrammarBuilder) |
Menambahkan elemen tata bahasa ke urutan elemen tata bahasa saat ini. |
| Append(SemanticResultKey) |
Menambahkan kunci semantik ke urutan elemen tata bahasa saat ini. |
| Append(SemanticResultValue) |
Menambahkan nilai semantik ke urutan elemen tata bahasa saat ini. |
| Append(String, Int32, Int32) |
Menambahkan frasa berulang ke urutan elemen tata bahasa saat ini. |
| Append(String, SubsetMatchingMode) |
Menambahkan elemen untuk subset frasa ke urutan elemen tata bahasa saat ini. |
| Append(String) |
Menambahkan frasa ke urutan elemen tata bahasa saat ini. |
| AppendDictation() |
Menambahkan tata bahasa dikte default ke urutan elemen tata bahasa saat ini. |
| AppendDictation(String) |
Menambahkan tata bahasa dikte yang ditentukan ke urutan elemen tata bahasa saat ini. |
| AppendRuleReference(String, String) |
Menambahkan aturan yang ditentukan dari file definisi tata bahasa ke urutan elemen tata bahasa saat ini. |
| AppendRuleReference(String) |
Menambahkan file definisi tata bahasa ke urutan elemen tata bahasa saat ini. |
| AppendWildcard() |
Menambahkan elemen tata bahasa pengenalan yang cocok dengan input apa pun dengan urutan elemen tata bahasa saat ini. |
| Equals(Object) |
Menentukan apakah objek yang ditentukan sama dengan objek saat ini. (Diperoleh dari Object) |
| GetHashCode() |
Berfungsi sebagai fungsi hash default. (Diperoleh dari Object) |
| GetType() |
Mendapatkan Type instans saat ini. (Diperoleh dari Object) |
| MemberwiseClone() |
Membuat salinan dangkal dari Objectsaat ini. (Diperoleh dari Object) |
| ToString() |
Mengembalikan string yang mewakili objek saat ini. (Diperoleh dari Object) |
Operator
| Nama | Deskripsi |
|---|---|
| Addition(Choices, GrammarBuilder) |
Membuat baru GrammarBuilder yang berisi Choices objek diikuti oleh GrammarBuilder objek. |
| Addition(GrammarBuilder, Choices) |
Membuat baru GrammarBuilder yang berisi GrammarBuilder diikuti oleh Choices. |
| Addition(GrammarBuilder, GrammarBuilder) |
Membuat baru GrammarBuilder yang berisi urutan dua GrammarBuilder objek. |
| Addition(GrammarBuilder, String) |
Membuat baru GrammarBuilder yang berisi GrammarBuilder diikuti dengan frasa. |
| Addition(String, GrammarBuilder) |
Membuat baru GrammarBuilder yang berisi frasa diikuti oleh GrammarBuilder. |
| Implicit(Choices to GrammarBuilder) |
Choices Mengonversi objek menjadi GrammarBuilder objek. |
| Implicit(SemanticResultKey to GrammarBuilder) |
SemanticResultKey Mengonversi objek menjadi GrammarBuilder objek. |
| Implicit(SemanticResultValue to GrammarBuilder) |
SemanticResultValue Mengonversi objek menjadi GrammarBuilder objek. |
| Implicit(String to GrammarBuilder) |
Mengonversi string menjadi GrammarBuilder objek. |