SrgsOneOf Constructors

Definitie

Hiermee maakt u een nieuw exemplaar van de SrgsOneOf klasse.

Overloads

Name Description
SrgsOneOf()

Initialiseert een nieuw exemplaar van de SrgsOneOf klasse.

SrgsOneOf(SrgsItem[])

Initialiseert een nieuw exemplaar van de SrgsOneOf klasse op basis van een matrix met SrgsItem objecten.

SrgsOneOf(String[])

Initialiseert een nieuw exemplaar van de SrgsOneOf klasse op basis van een matrix met String objecten.

Opmerkingen

U kunt een exemplaar van de SrgsOneOf klasse maken op basis van een matrix met String objecten, uit een matrix met SrgsItem objecten of als een lege lijst. Als SrgsItem u objecten gebruikt in plaats van String objecten in een lijst met alternatieven, kunt u eigenschappen van SrgsItem elk item in de lijst toepassen, zoals MinRepeat, MaxRepeat, RepeatProbabilityen Weight.

SrgsOneOf()

Initialiseert een nieuw exemplaar van de SrgsOneOf klasse.

public:
 SrgsOneOf();
public SrgsOneOf();
Public Sub New ()

Voorbeelden

In het volgende voorbeeld wordt het SrgsOneOf element gebruikt om lijsten te maken met SrgsItem elementen met land-/regionamen, die elk element kunnen worden gebruikt om de bijbehorende woordgroep te herkennen. In het voorbeeld wordt vervolgens een van de resulterende SrgsOneOf objecten toegevoegd aan hun respectieve regels voor Europese en Zuid-Amerikaanse landen/regio's. Verder gebruikt het voorbeeld het SrgsOneOf object om regelverwijzingen naar ruleEurope en ruleSAmerica in een lijst met twee alternatieven te groeperen, die beide kunnen worden gebruikt om gesproken invoer te herkennen.

public void WorldSoccerWinners ()
{
  // Create an SrgsDocument, create a new rule
  // and set its scope to public.
  SrgsDocument document = new SrgsDocument();
  SrgsRule winnerRule = new SrgsRule("WorldCupWinner");
  winnerRule.Scope = SrgsRuleScope.Public;

  // Add the introduction.
  winnerRule.Elements.Add(new SrgsItem("A nation that has won the world cup is: "));

  // Create the rule for the European nations.
  SrgsOneOf oneOfEurope = new SrgsOneOf(new SrgsItem[] {new SrgsItem("England"),
    new SrgsItem("France"), new SrgsItem("Germany"), new SrgsItem("Italy")});
  SrgsRule ruleEurope = (new SrgsRule("EuropeanNations", new SrgsElement[] {oneOfEurope}));

  // Create the rule for the South American nations.
  SrgsOneOf oneOfSAmerica = new SrgsOneOf(new SrgsItem[] {new SrgsItem("Argentina"),
    new SrgsItem("Brazil"), new SrgsItem("Uruguay")});
  SrgsRule ruleSAmerica = (new SrgsRule("SouthAmericanNations", new SrgsElement[] {oneOfSAmerica}));

  // Add references to winnerRule for ruleEurope and ruleSAmerica.
  winnerRule.Elements.Add(new SrgsOneOf(new SrgsItem[] {(new SrgsItem
    (new SrgsRuleRef(ruleEurope))), new SrgsItem(new SrgsRuleRef(ruleSAmerica))}));

  // Add all the rules to the document and make winnerRule
  // the root rule of the document.
  document.Rules.Add(new SrgsRule[] {winnerRule, ruleEurope, ruleSAmerica});
  document.Root = winnerRule;
}

Zie ook

Van toepassing op

SrgsOneOf(SrgsItem[])

Initialiseert een nieuw exemplaar van de SrgsOneOf klasse op basis van een matrix met SrgsItem objecten.

public:
 SrgsOneOf(... cli::array <System::Speech::Recognition::SrgsGrammar::SrgsItem ^> ^ items);
public SrgsOneOf(params System.Speech.Recognition.SrgsGrammar.SrgsItem[] items);
new System.Speech.Recognition.SrgsGrammar.SrgsOneOf : System.Speech.Recognition.SrgsGrammar.SrgsItem[] -> System.Speech.Recognition.SrgsGrammar.SrgsOneOf
Public Sub New (ParamArray items As SrgsItem())

Parameters

items
SrgsItem[]

De alternatieve items die u wilt toevoegen.

Uitzonderingen

items is null.

Elk element in de items matrix is null.

Voorbeelden

In het volgende voorbeeld wordt een grammatica gemaakt die de zin 'Een natie die de Wereldbeker heeft gewonnen' herkent, gevolgd door de naam van een land of regio die de Wereldbeker heeft gewonnen. Er wordt een openbare regel gemaakt met de naam WorldCupWinner. Vervolgens worden twee SrgsRule objecten gemaakt met behulp van SrgsOneOf objecten die matrices van nieuwe SrgsItem objecten bevatten. Als u de grammatica wilt zien die in dit voorbeeld wordt gegenereerd, raadpleegt u SrgsRule.

 public void WorldSoccerWinners ()
{

  // Create an SrgsDocument, create a new rule
  // and set its scope to public.
  SrgsDocument document = new SrgsDocument();
  SrgsRule winnerRule = new SrgsRule("WorldCupWinner");
  winnerRule.Scope = SrgsRuleScope.Public;

  // Add the introduction.
  winnerRule.Elements.Add(new SrgsItem("A nation that has won the world cup is: "));

  // Create the rule for the European nations.
  SrgsOneOf oneOfEurope = new SrgsOneOf(new SrgsItem[] {new SrgsItem("England"), new SrgsItem("France"), new SrgsItem("Germany"), new SrgsItem("Italy")});
  SrgsRule ruleEurope = (new SrgsRule("EuropeanNations", new SrgsElement[] {oneOfEurope}));

  // Create the rule for the South American nations.
  SrgsOneOf oneOfSAmerica = new SrgsOneOf(new SrgsItem[] {new SrgsItem("Argentina"), new SrgsItem("Brazil"), new SrgsItem("Uruguay")});
  SrgsRule ruleSAmerica = (new SrgsRule("SouthAmericanNations", new SrgsElement[] {oneOfSAmerica}));

  // Add references to winnerRule for ruleEurope and ruleSAmerica.
  winnerRule.Elements.Add(new SrgsOneOf(new SrgsItem[] {(new SrgsItem
    (new SrgsRuleRef(ruleEurope))), new SrgsItem(new SrgsRuleRef(ruleSAmerica))}));

  // Add all the rules to the document and make winnerRule
  // the root rule of the document.
  document.Rules.Add(new SrgsRule[] {winnerRule, ruleEurope, ruleSAmerica});
  document.Root = winnerRule;
}

Zie ook

Van toepassing op

SrgsOneOf(String[])

Initialiseert een nieuw exemplaar van de SrgsOneOf klasse op basis van een matrix met String objecten.

public:
 SrgsOneOf(... cli::array <System::String ^> ^ items);
public SrgsOneOf(params string[] items);
new System.Speech.Recognition.SrgsGrammar.SrgsOneOf : string[] -> System.Speech.Recognition.SrgsGrammar.SrgsOneOf
Public Sub New (ParamArray items As String())

Parameters

items
String[]

De alternatieve items die u wilt toevoegen.

Uitzonderingen

items is null.

Elk element in de items matrix is null.

Voorbeelden

In het volgende voorbeeld wordt een grammatica gemaakt die de zin 'Een natie die de Wereldbeker heeft gewonnen' herkent, gevolgd door de naam van een land of regio die de Wereldbeker heeft gewonnen. In het voorbeeld wordt het SrgsOneOf element gebruikt om lijsten te maken met acceptabele land-/regionamen van een matrix met String objecten. In het voorbeeld wordt vervolgens een van de resulterende SrgsOneOf objecten toegevoegd aan hun respectieve regels voor Europese en Zuid-Amerikaanse landen/regio's.

public void WorldSoccerWinners ()
{
    // Create a grammar from an SRGSDocument, create a new rule
  // and set its scope to public.
  SrgsDocument srgsGrammar = new SrgsDocument ();
  SrgsRule winnerRule = new SrgsRule ("WorldCupWinner");
  winnerRule.Scope = SrgsRuleScope.Public;

  // Add the introduction.
  winnerRule.Elements.Add (new SrgsItem ("A nation that has won the world cup is"));

  // Create the rule for the European nations.
  SrgsOneOf oneOfEurope = new SrgsOneOf (new string[] {"England","France","Germany","Italy"});
  SrgsRule ruleEurope = (new SrgsRule("EuropeanNations", new SrgsElement[] {oneOfEurope}));

  // Create the rule for the South American nations.
  SrgsOneOf oneOfSAmerica = new SrgsOneOf (new string[] {"Argentina","Brazil","Uruguay"});
  SrgsRule ruleSAmerica = (new SrgsRule("SouthAmericanNations", new SrgsElement[] {oneOfSAmerica}));

  // Add references to winnerRule for ruleEurope and ruleSAmerica.
  winnerRule.Elements.Add(new SrgsOneOf(new SrgsItem[] {(new SrgsItem
    (new SrgsRuleRef(ruleEurope))), new SrgsItem(new SrgsRuleRef(ruleSAmerica))}));

  // Add all the rules to the grammar and make winnerRule
  // the root rule of the grammar.
  srgsGrammar.Rules.Add (new SrgsRule[] {winnerRule, ruleEurope, ruleSAmerica});
  srgsGrammar.Root = winnerRule;
}

Zie ook

Van toepassing op