SemanticResultValue Construtores
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Inicializa uma nova instância da classe SemanticResultValue.
Sobrecargas
SemanticResultValue(Object) |
Inicializa uma nova instância da classe SemanticResultValue e especifica um valor semântico. |
SemanticResultValue(GrammarBuilder, Object) |
Inicializa uma nova instância da classe SemanticResultValue e associa um valor semântico a um objeto GrammarBuilder. |
SemanticResultValue(String, Object) |
Inicializa uma nova instância da classe SemanticResultValue e associa um valor semântico a um objeto String. |
Comentários
Os SemanticResultValue
construtores dão suporte à especificação de uma Object instância com um tipo de dados subjacente de bool
, int
, float
ou string
.
Um construtor pode criar uma SemanticResultValue
instância em uma das duas circunstâncias:
A
SemanticResultValue
instância deve ser explicitamente associada a um elemento Grammar ao usar um GrammarBuilder para construir um Grammar .O
SemanticResultValue
já está associado a uma frase de valor de cadeia de caracteres ou a um GrammarBuilder objeto.
SemanticResultValue(Object)
Inicializa uma nova instância da classe SemanticResultValue e especifica um valor semântico.
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)
Parâmetros
- value
- Object
O valor gerenciado pelo SemanticResultValue. Deve ser do tipo bool
, int
, float
ou string
.
Exemplos
O exemplo a seguir retorna um Grammar que reconhece o comando "Set/Change/ALTER primeiro plano/plano de fundo... [lista de cores] ". SemanticResultValue as SemanticResultKey instâncias e (em conjunto Choices com GrammarBuilder objetos e) são usadas para definir a semântica que pode ser analisada no reconhecimento. A semântica analisada determinará qual cor foi solicitada e se o primeiro ou segundo plano deve ser modificado.
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;
}
Comentários
Um SemanticResultValue
retornado por esse construtor não está associado a nenhum elemento de gramática específico. A associação deve se tornar explícita usando a instância do SemanticResultValue
em conjunto com GrammarBuilder .
Por exemplo, no fragmento de código abaixo, se um Grammar construído usando essa GrammarBuilder instância reconhecer a palavra "background", um valor de true
será definido na semântica de frase reconhecida.
GrammarBuilder backgroundGB=new GrammarBuilder("background");
backgroundGB.Append(new SemanticResultValue(true));
Aplica-se a
SemanticResultValue(GrammarBuilder, Object)
Inicializa uma nova instância da classe SemanticResultValue e associa um valor semântico a um objeto 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)
Parâmetros
- builder
- GrammarBuilder
Um componente de gramática a ser usado no reconhecimento.
- value
- Object
O valor gerenciado pelo SemanticResultValue. Deve ser do tipo bool
, int
, float
ou string
.
Exemplos
O exemplo a seguir retorna um Grammar que reconhece o comando "Set/Change/ALTER primeiro plano/plano de fundo... [lista de cores] ". SemanticResultValue as SemanticResultKey instâncias e (em conjunto Choices com GrammarBuilder objetos e) são usadas para definir a semântica que pode ser analisada no reconhecimento. A semântica analisada determinará qual cor foi solicitada e se o primeiro ou segundo plano deve ser modificado.
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;
}
Comentários
Se o elemento Grammar especificado por GrammarBuilder for usado na lógica de reconhecimento, value
será definido na semântica da saída reconhecida.
No fragmento de código abaixo, se a lógica de reconhecimento construída com a GrammarBuilder instância ( myGb
) usar o Choices objeto ( myChoice
) para identificar a entrada, o valor true
será adicionado à semântica reconhecida.
myGb.Append(new SemanticResultValue(myChoice, true);
Como o GrammarBuilder dá suporte à conversão implícita para Choices , SemanticResultValue
e SemanticResultKey , esse construtor também pode usar esses objetos.
Aplica-se a
SemanticResultValue(String, Object)
Inicializa uma nova instância da classe SemanticResultValue e associa um valor semântico a um objeto 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)
Parâmetros
- phrase
- String
Uma frase para ser usada no reconhecimento.
- value
- Object
O valor gerenciado pelo SemanticResultValue. Deve ser do tipo bool
, int
, float
ou string
.
Exemplos
O exemplo a seguir retorna um Grammar que reconhece o comando "Set/Change/ALTER primeiro plano/plano de fundo... [lista de cores] ". SemanticResultValue as SemanticResultKey instâncias e (em conjunto Choices com GrammarBuilder objetos e) são usadas para definir a semântica que pode ser analisada no reconhecimento. A semântica analisada determinará qual cor foi solicitada e se o primeiro ou segundo plano deve ser modificado.
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;
}
Comentários
Se a cadeia de caracteres especificada por phrase
for usada na lógica de reconhecimento, value
será definida na semântica da saída reconhecida.
No fragmento de código a seguir, se a lógica de reconhecimento construída com a GrammarBuilder instância ( myGb
) usar a cadeia de caracteres "minha hipoteca" para identificar a entrada, o valor true
será adicionado à semântica reconhecida.
myGb.Append(new SemanticResultValue("my mortgage", true);