SRGS 1.0 XML Data Binding  - Nuget packge LiquidTechnologies.XmlObjects.SRGS1-0 SRGS 1.0 XML Data Binding - Nuget packge LiquidTechnologies.XmlObjects.SRGS1-0

Home > XML Data Binding Nuget Packages > SRGS 1.0

 

Speech Recognition Grammar Specification

Speech Recognition Grammar Specification (SRGS) is a W3C standard for how speech recognition grammars are specified. A speech recognition grammar is a set of word patterns, and tells a speech recognition system what to expect a human to say. For instance, if you call a voice directory application, it will prompt you for the name of the person you would like to talk with. It will then start up a speech recognizer, giving it a speech recognition grammar. This grammar contains the names of the people in the directory, and the various sentence patterns callers typically respond with.

NuGet Package ID LiquidTechnologies.XmlObjects.SRGS1-0
Description An object model for the SRGS 1.0 standard providing strongly typed classes that can be serialized/deserializsed to XML.
Documentation Liquid XML Objects API
Schema Documentation https://schemas.liquid-technologies.com/W3C/SRGS/1.0/
Official Schema Site http://www.w3.org/TR/speech-grammar/
License EULA
Supported Platforms
  • .Net Standard 2.0 and above
  • .Net Core 2.0 and above
  • .Net Framework 4.0 and above
  • Create a new Visual Studio Project
  • Add a reference to the nuget package @myModel.NugetID
  • Create an LxSerializer<> for your root element
    • If the root element in your XML document is 'MyRoot' then the object generated to represent it should be called 'MyRootElm'*1
    • Hint - In Visual Studio placing the caret within the code LxSerializer<MyRootElm> and pressing Alt-Shift-F10 will give you the option to add the appropriate using statement.
  • Use the LxSerializer to read in the XML Document using the Deserialize method
  • Setting a break point after this line will allow you to explore the structure of the object in the visual studio watch windows.
  • Use the LxSerializer to write in the XML Document back out using the Serialize method
*1 - If the element contains non-alphanumeric characters, then the name may be slightly different.
LxSerializer<ExamplePersonElm> serializer = LxSerializer<ExamplePersonElm>();

// Reading an XML file
ExamplePersonElm person = serializer.Deserialize("MyPersonData.xml");
foreach(ExampleFriendElm friend in person.Friends)
{
    Console.Write("Name = " + friend.Name);
}

// Edit the objects
ExampleFriendElm newFriend = new ExampleFriendElm();
newFriend.Name = "Joe Blogs";
person.Friends.Add(newFriend);

// Write the new data out as XML
serializer.Serialize("MyNewPersonData.xml", person);

Video Tutorial

This video tutorial demonstrates the basic usage of the XML Objects tool. It shows how to generated the code from an XML Schema, how to deserialize an XML document and then Serialize it back out.

Like what you see? Try Liquid Studio Free Free Trial