Grammar Класс
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Объект среды выполнения, ссылающийся на грамматику распознавания речи, которую приложение может использовать для определения ограничений для распознавания речи.
public ref class Grammar
public class Grammar
type Grammar = class
Public Class Grammar
- Наследование
-
Grammar
- Производный
Примеры
В следующем примере создается объект Grammar из грамматики распознавания речи, определенной в XML-файле (cities.xml). Содержимое файла cities.xml отображается в следующем примере XML.
// Load a cities grammar from a local file and return the grammar object.
private static Grammar CreateGrammarFromFile()
{
Grammar citiesGrammar = new Grammar(@"c:\temp\cities.xml");
citiesGrammar.Name = "SRGS File Cities Grammar";
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.xml:
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>
Комментарии
Грамматика распознавания речи — это набор правил или ограничений, определяющих, какой механизм распознавания речи может распознавать как значимые входные данные. Дополнительные сведения о создании и использовании грамматик распознавания речи см. в распознавания речи и создании грамматик с помощью SrgsGrammar.
После создания грамматики необходимо создать его в объект Grammar, который может загрузить модуль распознавания речи, и что приложение может использовать во время выполнения для управления распознаванием речи. Конструктор Grammar можно использовать для создания экземпляра Grammar из GrammarBuilder или объекта SrgsDocument, файла или Stream, содержащего описание грамматики в поддерживаемом формате. Поддерживаемые форматы включают следующие:
XML-форматированные файлы, соответствующие спецификации грамматики распознавания речи W3C версии 1.0
Грамматики, скомпилированные в двоичный файл с расширением CFG
Конструкторы грамматики, принимаюющие файлы грамматики формата XML в своих аргументах, компилируют грамматики XML в двоичный формат, чтобы оптимизировать их для загрузки и потребления подсистемой распознавания речи. Вы можете сократить время, необходимое для создания объекта Grammar из грамматики формата XML, скомпилируя грамматику заранее с помощью одного из методов Compile.
Модуль распознавания речи приложения, управляемый объектом SpeechRecognizer или SpeechRecognitionEngine, может загружать несколько грамматик распознавания речи. Приложение может независимо включить или отключить отдельные грамматики, задав свойство Enabled и изменив поведение распознавания с помощью свойств Grammar, таких как Priority и Weight свойства.
Событие грамматики SpeechRecognized возникает, когда входные данные соответствуют пути через грамматику.
Заметка
Рекомендуется проверить безопасность любого URI или библиотеки DLL, используемого для создания объекта Grammar.
Windows и платформа "Речь" обеспечивают безопасность приложений, создающих экземпляр Grammar из библиотеки DLL или грамматики, поддерживающей скрипты.
Скрипты в объектах Grammar всегда выполняются так, как если бы они загружались с веб-страницы в Internet Zone
. Среда CLR изолирует любую библиотеку DLL, загруженную для получения определения грамматики.
Конструкторы
Grammar() |
Инициализирует новый экземпляр класса Grammar. |
Grammar(GrammarBuilder) |
Инициализирует новый экземпляр класса Grammar из объекта GrammarBuilder. |
Grammar(SrgsDocument, String, Object[]) |
Инициализирует новый экземпляр класса Grammar из экземпляра SrgsDocumentи задает имя правила, которое будет точкой входа в грамматику. |
Grammar(SrgsDocument, String, Uri, Object[]) |
Инициализирует новый экземпляр класса Grammar из экземпляра SrgsDocument, а также указывает имя правила для точки входа в грамматику и базовый URI для разрешения относительных ссылок. |
Grammar(SrgsDocument, String, Uri) |
Инициализирует новый экземпляр класса Grammar из объекта SrgsDocument, задает корневое правило и определяет базовый универсальный идентификатор ресурса (URI) для разрешения относительных ссылок на правила. |
Grammar(SrgsDocument, String) |
Инициализирует новый экземпляр класса Grammar из объекта SrgsDocument и задает корневое правило. |
Grammar(SrgsDocument) |
Инициализирует новый экземпляр класса Grammar из объекта SrgsDocument. |
Grammar(Stream, String, Object[]) |
Инициализирует новый экземпляр класса Grammar из Stream и задает корневое правило. |
Grammar(Stream, String, Uri, Object[]) |
Инициализирует новый экземпляр класса GrammarStream и задает корневое правило и базовый URI для разрешения относительных ссылок. |
Grammar(Stream, String, Uri) |
Инициализирует новый экземпляр класса Grammar из потока, задает корневое правило и определяет базовый универсальный идентификатор ресурса (URI) для разрешения относительных ссылок на правила. |
Grammar(Stream, String) |
Инициализирует новый экземпляр класса Grammar из Stream и задает корневое правило. |
Grammar(Stream) | |
Grammar(String, String, Object[]) |
Инициализирует новый экземпляр класса Grammar из файла, содержащего определение грамматики, и задает имя правила, которое должно быть точкой входа в грамматику. |
Grammar(String, String) |
Инициализирует новый экземпляр класса Grammar из файла и задает корневое правило. |
Grammar(String) |
Инициализирует новый экземпляр класса Grammar из файла. |
Свойства
Enabled |
Возвращает или задает значение, которое определяет, может ли Grammar использоваться распознавательом речи для выполнения распознавания. |
IsStg |
Возвращает, является ли грамматика строго типизированной. |
Loaded |
Возвращает, загружен ли Grammar распознаватель речи. |
Name |
Возвращает или задает имя объекта Grammar. |
Priority |
Возвращает или задает значение приоритета объекта Grammar. |
ResourceName |
Возвращает или задает значение с именем двоичного ресурса, который использовался для загрузки текущего Grammar. |
RuleName |
Возвращает имя корневого правила или точки входа объекта Grammar. |
Weight |
Возвращает или задает значение веса объекта Grammar. |
Методы
Equals(Object) |
Определяет, равен ли указанный объект текущему объекту. (Унаследовано от Object) |
GetHashCode() |
Служит хэш-функцией по умолчанию. (Унаследовано от Object) |
GetType() |
Возвращает Type текущего экземпляра. (Унаследовано от Object) |
LoadLocalizedGrammarFromType(Type, Object[]) |
Метод |
MemberwiseClone() |
Создает неглубокую копию текущей Object. (Унаследовано от Object) |
StgInit(Object[]) |
Метод |
ToString() |
Возвращает строку, представляющую текущий объект. (Унаследовано от Object) |
События
SpeechRecognized |
Вызывается, когда распознаватель речи выполняет распознавание с помощью объекта Grammar. |
Применяется к
См. также раздел
- SrgsDocument
- GrammarBuilder
- SpeechRecognitionEngine
- SpeechRecognizer
- спецификации грамматики распознавания речи