SemanticResultValue Конструкторы
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Инициализирует новый экземпляр класса SemanticResultValue.
Перегрузки
SemanticResultValue(Object) |
Инициализирует новый экземпляр класса SemanticResultValue и указывает семантическое значение. |
SemanticResultValue(GrammarBuilder, Object) |
Инициализирует новый экземпляр класса SemanticResultValue и связывает семантическое значение с объектом GrammarBuilder. |
SemanticResultValue(String, Object) |
Инициализирует новый экземпляр класса SemanticResultValue и связывает семантическое значение с объектом String. |
Комментарии
SemanticResultValue
Конструкторы поддерживают указание Object экземпляра с базовым типом данных bool
,, int
float
или string
.
Конструктор может создать SemanticResultValue
экземпляр в одном из двух случаев:
SemanticResultValue
Экземпляр должен быть явно связан с элементом грамматики при использовании GrammarBuilder для создания Grammar .SemanticResultValue
Объект уже связан с фразой строки или GrammarBuilder объектом.
SemanticResultValue(Object)
Инициализирует новый экземпляр класса SemanticResultValue и указывает семантическое значение.
public:
SemanticResultValue(System::Object ^ value);
public SemanticResultValue (object value);
new System.Speech.Recognition.SemanticResultValue : obj -> System.Speech.Recognition.SemanticResultValue
Public Sub New (value As Object)
Параметры
- value
- Object
Значение, управляемое объектом SemanticResultValue. Должен иметь тип bool
, int
, float
или string
.
Примеры
В следующем примере возвращается объект Grammar , который распознает команду Set/Change/ALTER переднего плана/Background... [список цветов] ". SemanticResultValueSemanticResultKeyэкземпляры и (в сочетании с Choices GrammarBuilder объектами и) используются для определения семантики, которая может быть проанализирована при распознавании. Проанализированная семантика определяет, какой цвет был запрошен, а также будет ли изменен передний план или фон.
private Grammar FgBgColorGrammar()
{
Grammar grammar = null;
// Allow the command to begin with set, alter, change.
Choices introChoices = new Choices();
foreach (string introString in new string[] { "Change", "Set", "Alter" })
{
GrammarBuilder introGB = new GrammarBuilder(introString);
introChoices.Add(
new SemanticResultValue(introGB,
String.Format("Command: {0}", introString)));
}
GrammarBuilder cmdIntro = new GrammarBuilder(introChoices);
// Define the arguments for the command to select foreground or background
// and to change their color as semantic values.
Choices fgOrbgChoice = new Choices();
GrammarBuilder backgroundGB=new GrammarBuilder("background");
backgroundGB.Append(new SemanticResultValue(true));
fgOrbgChoice.Add(backgroundGB);
fgOrbgChoice.Add((GrammarBuilder)new SemanticResultValue("foreground", false));
SemanticResultKey fgOrbgChoiceKey = new SemanticResultKey("BgOrFgBool", fgOrbgChoice);
Choices colorChoice = new Choices();
foreach (string colorName in System.Enum.GetNames(typeof(KnownColor)))
{
// Use implicit conversion of SemanticResultValue to GrammarBuilder.
colorChoice.Add(
(GrammarBuilder) (new SemanticResultValue(colorName, (Color.FromName(colorName)).Name)));
}
// Create a GrammarBuilder for CmdArgs to be appended to CmdIntro using
// semantic keys.
GrammarBuilder cmdArgs = new GrammarBuilder();
cmdArgs.Append(new SemanticResultKey("BgOrFgBool", fgOrbgChoice));
cmdArgs.AppendWildcard();
cmdArgs.Append(new SemanticResultKey("colorStringList", colorChoice));
GrammarBuilder cmds =
GrammarBuilder.Add(
cmdIntro,
new GrammarBuilder(new SemanticResultKey("Cmd Args", cmdArgs)));
grammar = new Grammar(cmds);
grammar.Name = "Tree [Set,change,alter] [foreground,background] * color";
return grammar;
}
Комментарии
Объект, SemanticResultValue
возвращенный этим конструктором, не связан с каким-либо определенным элементом грамматики. Связь необходимо сделать явной с помощью экземпляра SemanticResultValue
в сочетании с GrammarBuilder .
Например, в приведенном ниже фрагменте кода, если Grammar созданный с помощью этого GrammarBuilder экземпляра код распознает слово "Background", значение true
задается в распознанной семантике фразы.
GrammarBuilder backgroundGB=new GrammarBuilder("background");
backgroundGB.Append(new SemanticResultValue(true));
Применяется к
SemanticResultValue(GrammarBuilder, Object)
Инициализирует новый экземпляр класса SemanticResultValue и связывает семантическое значение с объектом GrammarBuilder.
public:
SemanticResultValue(System::Speech::Recognition::GrammarBuilder ^ builder, System::Object ^ value);
public SemanticResultValue (System.Speech.Recognition.GrammarBuilder builder, object value);
new System.Speech.Recognition.SemanticResultValue : System.Speech.Recognition.GrammarBuilder * obj -> System.Speech.Recognition.SemanticResultValue
Public Sub New (builder As GrammarBuilder, value As Object)
Параметры
- builder
- GrammarBuilder
Компонент грамматики, используемый при распознавании.
- value
- Object
Значение, управляемое объектом SemanticResultValue. Должен иметь тип bool
, int
, float
или string
.
Примеры
В следующем примере возвращается объект Grammar , который распознает команду Set/Change/ALTER переднего плана/Background... [список цветов] ". SemanticResultValueSemanticResultKeyэкземпляры и (в сочетании с Choices GrammarBuilder объектами и) используются для определения семантики, которая может быть проанализирована при распознавании. Проанализированная семантика определяет, какой цвет был запрошен, а также будет ли изменен передний план или фон.
private Grammar FgBgColorGrammar()
{
Grammar grammar = null;
// Allow the command to begin with set, alter, change.
Choices introChoices = new Choices();
foreach (string introString in new string[] { "Change", "Set", "Alter" })
{
GrammarBuilder introGB = new GrammarBuilder(introString);
introChoices.Add(
new SemanticResultValue(introGB,
String.Format("Command: {0}", introString)));
}
GrammarBuilder cmdIntro = new GrammarBuilder(introChoices);
// Define the arguments for the command to select foreground or background
// and to change their color as semantic values.
Choices fgOrbgChoice = new Choices();
GrammarBuilder backgroundGB=new GrammarBuilder("background");
backgroundGB.Append(new SemanticResultValue(true));
fgOrbgChoice.Add(backgroundGB);
fgOrbgChoice.Add((GrammarBuilder)new SemanticResultValue("foreground", false));
SemanticResultKey fgOrbgChoiceKey = new SemanticResultKey("BgOrFgBool", fgOrbgChoice);
Choices colorChoice = new Choices();
foreach (string colorName in System.Enum.GetNames(typeof(KnownColor)))
{
// Use implicit conversion of SemanticResultValue to GrammarBuilder.
colorChoice.Add(
(GrammarBuilder) (new SemanticResultValue(colorName, (Color.FromName(colorName)).Name)));
}
// Create a GrammarBuilder for CmdArgs to be appended to CmdIntro using
// semantic keys.
GrammarBuilder cmdArgs = new GrammarBuilder();
cmdArgs.Append(new SemanticResultKey("BgOrFgBool", fgOrbgChoice));
cmdArgs.AppendWildcard();
cmdArgs.Append(new SemanticResultKey("colorStringList", colorChoice));
GrammarBuilder cmds =
GrammarBuilder.Add(
cmdIntro,
new GrammarBuilder(new SemanticResultKey("Cmd Args", cmdArgs)));
grammar = new Grammar(cmds);
grammar.Name = "Tree [Set,change,alter] [foreground,background] * color";
return grammar;
}
Комментарии
Если элемент грамматики, заданный параметром, GrammarBuilder используется в логике распознавания, value
будет установлен в семантике распознаваемых выходных данных.
В приведенном ниже фрагменте кода, если логика распознавания, созданная с помощью GrammarBuilder экземпляра ( myGb
), использует Choices объект ( myChoice
) для обнаружения входных данных, значение true
добавляется к распознанной семантике.
myGb.Append(new SemanticResultValue(myChoice, true);
Так как GrammarBuilder поддерживает неявное преобразование для Choices , SemanticResultValue
и SemanticResultKey , этот конструктор также может использовать эти объекты.
Применяется к
SemanticResultValue(String, Object)
Инициализирует новый экземпляр класса SemanticResultValue и связывает семантическое значение с объектом String.
public:
SemanticResultValue(System::String ^ phrase, System::Object ^ value);
public SemanticResultValue (string phrase, object value);
new System.Speech.Recognition.SemanticResultValue : string * obj -> System.Speech.Recognition.SemanticResultValue
Public Sub New (phrase As String, value As Object)
Параметры
- phrase
- String
Фраза, используемый при распознавании.
- value
- Object
Значение, управляемое объектом SemanticResultValue. Должен иметь тип bool
, int
, float
или string
.
Примеры
В следующем примере возвращается объект Grammar , который распознает команду Set/Change/ALTER переднего плана/Background... [список цветов] ". SemanticResultValueSemanticResultKeyэкземпляры и (в сочетании с Choices GrammarBuilder объектами и) используются для определения семантики, которая может быть проанализирована при распознавании. Проанализированная семантика определяет, какой цвет был запрошен, а также будет ли изменен передний план или фон.
private Grammar FgBgColorGrammar()
{
Grammar grammar = null;
// Allow command to begin with set, alter, change.
Choices introChoices = new Choices();
foreach (string introString in new string[] { "Change", "Set", "Alter" })
{
GrammarBuilder introGB = new GrammarBuilder(introString);
introChoices.Add(
new SemanticResultValue(introGB,
String.Format("Command: {0}", introString)));
}
GrammarBuilder cmdIntro = new GrammarBuilder(introChoices);
// Define the arguments for the command to select foreground or background
// and to change their color as semantic values.
Choices fgOrbgChoice = new Choices();
GrammarBuilder backgroundGB=new GrammarBuilder("background");
backgroundGB.Append(new SemanticResultValue(true));
fgOrbgChoice.Add(backgroundGB);
fgOrbgChoice.Add((GrammarBuilder)new SemanticResultValue("foreground", false));
SemanticResultKey fgOrbgChoiceKey = new SemanticResultKey("BgOrFgBool", fgOrbgChoice);
Choices colorChoice = new Choices();
foreach (string colorName in System.Enum.GetNames(typeof(KnownColor)))
{
// Use implicit conversion of SemanticResultValue to GrammarBuilder.
colorChoice.Add(
(GrammarBuilder) (new SemanticResultValue(colorName, (Color.FromName(colorName)).Name)));
}
// Create a GrammarBuilder for CmdArgs to be appended to CmdIntro using
// semantic keys.
GrammarBuilder cmdArgs = new GrammarBuilder();
cmdArgs.Append(new SemanticResultKey("BgOrFgBool", fgOrbgChoice));
cmdArgs.AppendWildcard();
cmdArgs.Append(new SemanticResultKey("colorStringList", colorChoice));
GrammarBuilder cmds =
GrammarBuilder.Add(cmdIntro,
new GrammarBuilder(new SemanticResultKey("Cmd Args", cmdArgs)));
grammar = new Grammar(cmds);
grammar.Name = "Tree [Set,change,alter] [foreground,background] * color";
return grammar;
}
Комментарии
Если строка, заданная параметром, phrase
используется в логике распознавания, value
будет задана семантика распознаваемых выходных данных.
В следующем фрагменте кода, если логика распознавания, созданная с помощью GrammarBuilder экземпляра ( myGb
), использует строку "Моя закладная" для обозначения входных данных, значение true
будет добавлено к распознанной семантике.
myGb.Append(new SemanticResultValue("my mortgage", true);