Share via


GrammarBuilder Constructor (String)

Constructs a GrammarBuilder object from a phrase expressed as a string.

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

Syntax

'Declaration
Public Sub New ( _
    phrase As String _
)
public GrammarBuilder (
    string phrase
)
public:
GrammarBuilder (
    String^ phrase
)
public GrammarBuilder (
    String phrase
)
public function GrammarBuilder (
    phrase : String
)

Parameters

Example

The code sample below constructs a Grammar which recognizes either of two phrases: "Make background [color]" or "Configure background as [color]" using a explicit creation of and implicit conversion to GrammarBuilder instances.

The explicit construction of a GrammarBuilder object from a System.String instance is highlighted in the example code below.

private Grammar CreateGrammarBuilderRGBSemantics(params int[] info) {
    //Create a set of choices, each  a lookup from a color name to RGB
    //Choices constructors do not take SematicResultValue, so cast SematicResultValue to GramarBuilder
    Choices colorChoice = new Choices();
    foreach (string colorName in System.Enum.GetNames(typeof(KnownColor))) {
        colorChoice.Add((GrammarBuilder)
                                (new SemanticResultValue(colorName, Color.FromName(colorName).ToARGB())));
    }

    GrammarBuilder choiceBuilder = new SemanticResultKey("RGB", colorChoice);
    //Create two intermediate grammars with introductory phrase and the color choice
    GrammarBuilder makeBackgroundBuilder = "Make background";
    //Uses implicit conversion of SystemString to GrammarBuilder
    makeBackgroundBuilder.Append(choiceBuilder);
    GrammarBuilder configureBackgroundBuilder = new GrammarBuilder("Configure background as");
//Construct GrammarBuilder from string.
    configureBackgroundBuilder.Append(new SemanticResultKey("RGB", colorChoice));

    //Create the final grammar, which recognizes either intermediate grammar
    Grammar grammar = new Grammar(new Choices(makeBackgroundBuilder, configureBackgroundBuilder));
    /
    grammar.Name = "Make Background /Configure background as";

    return grammar;
}

Platforms

Development Platforms

Windows XP Professional with Service Pack 2 (SP2), Windows Server 2003, Windows Vista Ultimate Edition, Windows Vista Business Edition, Windows Vista Enterprise Edition

Target Platforms

See Also

Reference

GrammarBuilder Class
GrammarBuilder Members
Microsoft.Speech.Recognition Namespace