SemanticResultValue Constructores
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Inicializa una nueva instancia de la clase SemanticResultValue.
Sobrecargas
SemanticResultValue(Object) |
Inicializa una nueva instancia de la clase SemanticResultValue y especifica un valor semántico. |
SemanticResultValue(GrammarBuilder, Object) |
Inicializa una nueva instancia de la clase SemanticResultValue y asocia un valor semántico con un objeto GrammarBuilder. |
SemanticResultValue(String, Object) |
Inicializa una nueva instancia de la clase SemanticResultValue y asocia un valor semántico con un objeto String. |
Comentarios
Los SemanticResultValue
constructores admiten la especificación Object de una instancia de con un tipo de datos subyacente de bool
, int
, float
o string
.
Un constructor puede crear una SemanticResultValue
instancia en cualquiera de estas dos circunstancias:
La
SemanticResultValue
instancia de se debe asociar explícitamente a un elemento de gramática al utilizar GrammarBuilder para construir un Grammar .SemanticResultValue
Ya está asociado a una frase de valor de cadena o a un GrammarBuilder objeto.
SemanticResultValue(Object)
Inicializa una nueva instancia de la clase SemanticResultValue y especifica un 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
El valor que administra SemanticResultValue. Debe ser del tipo bool
, int
, float
o string
.
Ejemplos
En el ejemplo siguiente se devuelve un Grammar que reconoce el comando "Set/Change/Alter Foreground/background... [lista de colores] ". SemanticResultValueSemanticResultKeylas instancias de y (junto con los Choices GrammarBuilder objetos y) se usan para definir la semántica que se puede analizar en el reconocimiento. La semántica analizada determinará qué color se solicitó y si se va a modificar el primer plano o el fondo.
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;
}
Comentarios
Un objeto SemanticResultValue
devuelto por este constructor no está asociado a ningún elemento de gramática determinado. La asociación se debe hacer explícita mediante la instancia de SemanticResultValue
junto con GrammarBuilder .
Por ejemplo, en el fragmento de código siguiente, si un Grammar construido con esta GrammarBuilder instancia reconoce la palabra "background", el valor true
se establece en la semántica de la frase reconocida.
GrammarBuilder backgroundGB=new GrammarBuilder("background");
backgroundGB.Append(new SemanticResultValue(true));
Se aplica a
SemanticResultValue(GrammarBuilder, Object)
Inicializa una nueva instancia de la clase SemanticResultValue y asocia un valor semántico con un 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
Un componente de la gramática que se usará en el reconocimiento.
- value
- Object
El valor que administra SemanticResultValue. Debe ser del tipo bool
, int
, float
o string
.
Ejemplos
En el ejemplo siguiente se devuelve un Grammar que reconoce el comando "Set/Change/Alter Foreground/background... [lista de colores] ". SemanticResultValueSemanticResultKeylas instancias de y (junto con los Choices GrammarBuilder objetos y) se usan para definir la semántica que se puede analizar en el reconocimiento. La semántica analizada determinará qué color se solicitó y si se va a modificar el primer plano o el fondo.
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;
}
Comentarios
Si el elemento de gramática especificado por GrammarBuilder se usa en la lógica de reconocimiento, se value
establecerá en la semántica de la salida reconocida.
En el fragmento de código siguiente, si la lógica de reconocimiento construida con la GrammarBuilder instancia ( myGb
) utiliza el Choices objeto ( myChoice
) para identificar la entrada, el valor true
se agrega a la semántica reconocida.
myGb.Append(new SemanticResultValue(myChoice, true);
Como GrammarBuilder admite la conversión implícita para Choices , SemanticResultValue
y SemanticResultKey , este constructor también puede usar esos objetos.
Se aplica a
SemanticResultValue(String, Object)
Inicializa una nueva instancia de la clase SemanticResultValue y asocia un valor semántico con un 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
Una frase que se usará en el reconocimiento.
- value
- Object
El valor que administra SemanticResultValue. Debe ser del tipo bool
, int
, float
o string
.
Ejemplos
En el ejemplo siguiente se devuelve un Grammar que reconoce el comando "Set/Change/Alter Foreground/background... [lista de colores] ". SemanticResultValueSemanticResultKeylas instancias de y (junto con los Choices GrammarBuilder objetos y) se usan para definir la semántica que se puede analizar en el reconocimiento. La semántica analizada determinará qué color se solicitó y si se va a modificar el primer plano o el fondo.
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;
}
Comentarios
Si la cadena especificada por phrase
se usa en la lógica de reconocimiento, se value
establecerá en la semántica de la salida reconocida.
En el fragmento de código siguiente, si la lógica de reconocimiento construida con la GrammarBuilder instancia ( myGb
) utiliza la cadena "My hipoteca" para identificar la entrada, el valor se true
agregará a la semántica reconocida.
myGb.Append(new SemanticResultValue("my mortgage", true);