Share via


Note

Please see Azure Cognitive Services for Speech documentation for the latest supported speech solutions.

GrammarBuilder.Append Method (String, Int32, Int32)

Appends a repeated phrase to the current sequence of grammar elements.

Namespace:  Microsoft.Speech.Recognition
Assembly:  Microsoft.Speech (in Microsoft.Speech.dll)

Syntax

'Declaration
Public Sub Append ( _
    phrase As String, _
    minRepeat As Integer, _
    maxRepeat As Integer _
)
'Usage
Dim instance As GrammarBuilder
Dim phrase As String
Dim minRepeat As Integer
Dim maxRepeat As Integer

instance.Append(phrase, minRepeat, maxRepeat)
public void Append(
    string phrase,
    int minRepeat,
    int maxRepeat
)

Parameters

  • phrase
    Type: System.String
    The repeated sequence of words to append.
  • minRepeat
    Type: System.Int32
    The minimum number of times that input matching phrase must occur to constitute a match.
  • maxRepeat
    Type: System.Int32
    The maximum number of times that input matching phrase can occur to constitute a match.

Remarks

The value of minRepeat must be greater than or equal to 0 and less than or equal to the value of maxRepeat.

Examples

The following example creates a speech recognition grammar for phrases such as "Call James at work" and "Call Anne on her cell phone", where the word "phone" is optional. GrammarBuilder and Choices objects are used to construct the grammar. The example highlights the use of the Append method.

public static Grammar CreatePhonePhrase()
{
  // Create alternatives for person names, locations, devices, and pronouns.
  Choices personChoice = new Choices(new string[] {"Anne", "James", "Mary", "Sam"});
  Choices locationChoice = new Choices(new string[] {"home", "work"});
  Choices deviceChoice = new Choices(new string[] {"home", "work", "cell"});
  Choices pronounChoice = new Choices(new string[] {"his", "her"});

  // Create a phrase for the receiving device, which optionally contains the word "phone".
  GrammarBuilder devicePhrase = new GrammarBuilder(pronounChoice);
  devicePhrase.Append(deviceChoice);
  devicePhrase.Append("phone", 0, 1);

  // Create alternatives for phrases specifying a device or a location.
  GrammarBuilder atLocation = new GrammarBuilder("at");
  atLocation.Append(locationChoice);

  GrammarBuilder onDevice = new GrammarBuilder("on");
  onDevice.Append(devicePhrase);

  Choices howChoice = new Choices(new GrammarBuilder[] {atLocation, onDevice});

  // Build the final phrase.
  GrammarBuilder callWho = new GrammarBuilder("Call");
  callWho.Append(personChoice);
  callWho.Append(howChoice);

  // Create the Grammar object.
  Grammar callGrammar = new Grammar(callWho);
  callGrammar.Name = "Call Grammar";

  return callGrammar;
}

See Also

Reference

GrammarBuilder Class

GrammarBuilder Members

Append Overload

Microsoft.Speech.Recognition Namespace