SrgsNameValueTag Classe

Définition

Représente un élément pour associer une valeur sémantique avec une expression dans une syntaxe.

public ref class SrgsNameValueTag : System::Speech::Recognition::SrgsGrammar::SrgsElement
[System.Serializable]
public class SrgsNameValueTag : System.Speech.Recognition.SrgsGrammar.SrgsElement
[<System.Serializable>]
type SrgsNameValueTag = class
    inherit SrgsElement
Public Class SrgsNameValueTag
Inherits SrgsElement
Héritage
Attributs

Exemples

L’exemple suivant crée une grammaire pour choisir les villes d’un vol. L’exemple utilise SrgsNameValueTag pour affecter une valeur sémantique à chaque ville, qui est le code de l’aéroport de la ville.

L’exemple construit deux SrgsRuleRef instances, chacune spécifiant une clé sémantique. Les deux références de règle ciblent le même SrgsRule objet, nommé cities, mais balisent le résultat de reconnaissance de la référence de règle avec une clé sémantique différente. La clé sémantique identifie une ville reconnue comme la ville de départ ou la ville d’arrivée du vol. Le gestionnaire de l’événement SpeechRecognized utilise les clés pour récupérer les valeurs sémantiques créées à l’aide SrgsNameValueTag du résultat de reconnaissance.

using System;  
using System.Speech.Recognition;  
using System.Speech.Recognition.SrgsGrammar;  

namespace SampleRecognition  
{  
  class Program  
  {  
    static void Main(string[] args)  

    // Initialize a SpeechRecognitionEngine object.  
    {  
      using (SpeechRecognitionEngine recognizer =  
         new SpeechRecognitionEngine(new System.Globalization.CultureInfo("en-US")))  
      {  

        // Build a rule with a list of cities, assign a semantic value to each city.  
        SrgsItem chi = new SrgsItem("Chicago");  
        chi.Add(new SrgsNameValueTag("ORD"));  
        SrgsItem bos = new SrgsItem("Boston");  
        bos.Add(new SrgsNameValueTag("BOS"));  
        SrgsItem mia = new SrgsItem("Miami");  
        mia.Add(new SrgsNameValueTag("MIA"));  
        SrgsItem dal = new SrgsItem("Dallas");  
        dal.Add(new SrgsNameValueTag("DFW"));  

        SrgsOneOf cities = new SrgsOneOf(new SrgsItem[] { chi, bos, mia, dal });  
        SrgsRule citiesRule = new SrgsRule("flightCities");  
        citiesRule.Add(cities);  

        // Build the root rule, add rule references to the cities rule.  
        SrgsRule flightBooker = new SrgsRule("bookFlight");  
        flightBooker.Add(new SrgsItem("I want to fly from"));  
        flightBooker.Add(new SrgsRuleRef(citiesRule, "departureCity"));  
        flightBooker.Add(new SrgsItem("to"));  
        flightBooker.Add(new SrgsRuleRef(citiesRule, "arrivalCity"));  

        // Build an SrgsDocument object from the flightBooker rule and add the cities rule.  
        SrgsDocument cityChooser = new SrgsDocument(flightBooker);  
        cityChooser.Rules.Add(citiesRule);  

        // Create a Grammar object from the SrgsDocument and load it to the recognizer.  
        Grammar departArrive = new Grammar(cityChooser);  
        departArrive.Name = ("Cities Grammar");  
        recognizer.LoadGrammarAsync(departArrive);  

        // Configure recognizer input.  
        recognizer.SetInputToDefaultAudioDevice();  

        // Attach a handler for the SpeechRecognized event.  
        recognizer.SpeechRecognized +=  
          new EventHandler<SpeechRecognizedEventArgs>(recognizer_SpeechRecognized);  

        // Start asynchronous recognition.  
        recognizer.RecognizeAsync();  
        Console.WriteLine("Starting asynchronous recognition...");  

        // Keep the console window open.  
        Console.ReadLine();  
      }  
    }  

    // Handle the SpeechRecognized event.  
    static void recognizer_SpeechRecognized(object sender, SpeechRecognizedEventArgs e)  
    {  
      Console.WriteLine("Speech recognized: " + e.Result.Text);  
      Console.WriteLine();  
      Console.WriteLine("Semantic results:");  
      Console.WriteLine("  The departure city is: " + e.Result.Semantics["departureCity"].Value);  
      Console.WriteLine("  The destination city is: " + e.Result.Semantics["arrivalCity"].Value);  
    }  
  }  
}  

Remarques

Cet objet est similaire à l’élément tag défini par la spécification de grammaire de reconnaissance vocale (SRGS) du World Wide Web Consortium (W3C) version 1.0. Toutefois, la Value propriété de cet objet ne peut pas être un script. Le contenu de Value peut être du type Boolean, Double, Int32ou String. Les valeurs de chaîne doivent être placées entre guillemets doubles.

Pour ajouter de la sémantique en tant que script, utilisez SrgsSemanticInterpretationTag.

Constructeurs

SrgsNameValueTag()

Initialise une nouvelle instance de la classe SrgsNameValueTag.

SrgsNameValueTag(Object)

Initialise une nouvelle instance de la classe SrgsNameValueTag en spécifiant une valeur pour l'instance.

SrgsNameValueTag(String, Object)

Initialise une nouvelle instance de la classe SrgsNameValueTag en spécifiant un nom et une valeur pour l'instance.

Propriétés

Name

Obtient ou définit le nom de l'instance SrgsNameValueTag.

Value

Obtient ou définit la valeur contenue dans l'instance SrgsNameValueTag.

Méthodes

CreateObjRef(Type)

Crée un objet contenant toutes les informations appropriées requises pour générer un proxy permettant de communiquer avec un objet distant.

(Hérité de MarshalByRefObject)
Equals(Object)

Détermine si l'objet spécifié est égal à l'objet actuel.

(Hérité de Object)
GetHashCode()

Fait office de fonction de hachage par défaut.

(Hérité de Object)
GetLifetimeService()
Obsolète.

Récupère l'objet de service de durée de vie en cours qui contrôle la stratégie de durée de vie de cette instance.

(Hérité de MarshalByRefObject)
GetType()

Obtient le Type de l'instance actuelle.

(Hérité de Object)
InitializeLifetimeService()
Obsolète.

Obtient un objet de service de durée de vie pour contrôler la stratégie de durée de vie de cette instance.

(Hérité de MarshalByRefObject)
MemberwiseClone()

Crée une copie superficielle du Object actuel.

(Hérité de Object)
MemberwiseClone(Boolean)

Crée une copie superficielle de l'objet MarshalByRefObject actuel.

(Hérité de MarshalByRefObject)
ToString()

Retourne une chaîne qui représente l'objet actuel.

(Hérité de Object)

S’applique à

Voir aussi