GrammarBuilder.AppendRuleReference Метод
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Добавляет файл грамматики или правило грамматики к текущей последовательности элементов грамматики.
Перегрузки
| Имя | Описание |
|---|---|
| AppendRuleReference(String) |
Добавляет файл определения грамматики в текущую последовательность элементов грамматики. |
| AppendRuleReference(String, String) |
Добавляет указанное правило файла определения грамматики в текущую последовательность элементов грамматики. |
Комментарии
Методы AppendRuleReference могут добавлять файл грамматики или правило грамматики из файла. Эти методы позволяют приложениям использовать предварительно развернутые или общедоступные правила грамматики. Приложение должно иметь доступ на чтение к расположению указанных файлов грамматики.
Эти методы могут читать грамматику распознавания речи из следующих форматов.
XML-форматированные файлы, соответствующие спецификации грамматики распознавания речи W3C версии 1.0
Двоичные файлы, соответствующие двоичному формату грамматики распознавания речи Майкрософт (расширение CFG)
Компиляция xml-формата SRGS-файла грамматики в двоичный файл грамматики с расширением CFG может сократить время поиска совпадения, особенно если грамматика требует распознавания большого количества слов и фраз. Сведения о компиляции грамматик SRGS в двоичный формат CFG см. в статье SrgsGrammarCompiler.
AppendRuleReference(String)
- Исходный код:
- GrammarBuilder.cs
- Исходный код:
- GrammarBuilder.cs
- Исходный код:
- GrammarBuilder.cs
- Исходный код:
- GrammarBuilder.cs
Добавляет файл определения грамматики в текущую последовательность элементов грамматики.
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 (SRGS) может определять корневое правило. Этот метод добавляет грамматику, начиная с его корневого правила, к текущей последовательности элементов грамматики. Чтобы добавить определенное правило грамматики, используйте AppendRuleReference этот метод.
См. также раздел
Применяется к
AppendRuleReference(String, String)
- Исходный код:
- GrammarBuilder.cs
- Исходный код:
- GrammarBuilder.cs
- Исходный код:
- GrammarBuilder.cs
- Исходный код:
- GrammarBuilder.cs
Добавляет указанное правило файла определения грамматики в текущую последовательность элементов грамматики.
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 метода можно добавить файл грамматики, начинающийся с корневого правила.