NuGram IDE

NuGram IDE is an Eclipse plug-in that offers a complete development environment for speech recognition grammars. Designed to fully support the rigorous grammar development processes required in order to efficiently produce solid grammars, it:

  • Enables the developer to author static or dynamic grammars using one single concise and legible format, regardless of the target speech recognition engines.
  • Offers a full-featured editor, with syntax coloring, content-assist (code completion, quick fixes, code templates, etc.), sophisticated refactoring tools, and more.
  • Provides powerful grammar analysis, visualization, and debugging tools.
  • Provides tools to test grammar coverage and semantic interpretation correctness.

Features

NuGram IDE offers many sophisticated tools to help author, debug, and tune speech recognition grammars. These tools are:

ABNF Grammar Editor
This editor provides the most advanced features found in modern editors: syntax coloring, code folding, code assist (contextual completion, quick fixes, code templates), refactorings (renamings, extractions, etc.), and much more.
Instantiation Debugger
The instantiation debugger is a tool that shows the result of instantiating a dynamic grammar with a given instantiation context. Using this tool, the grammar author can visualize which parts of the resulting grammar were produced by dynamic fragments.
Coverage Test Editor
Using this editor, coverage test sets for a grammar can be devised. A coverage test set typically includes sentences that must be recognized by a grammar, as well as sentences that should NOT be covered. Each sentence can also specify the expected semantic interpretation.

Sentences can be associated with contexts, thus providing a structural organization to large test sets. For dynamic grammars, these contexts specify the data used to populate the dynamic grammar in order to generate the actual grammar used for the coverage test.
Coverage Test Runner
When run, coverage tests results are presented in a dedicated view that shows key metrics about the test (number of tests that passed, number of tests that failed, percentage of grammar words covered by the tests, etc.).
Sentence Interpreter
The Sentence Interpreter is used to parse sentences interactively. The graphical parse tree (how rules are combined to generate the sentence) is displayed and clicking on any tree node automatically highlights the corresponding source element in the appropriate grammar file.
Semantics Stepper
The Semantics Stepper is useful when a parsed sentence does not generate the correct semantic interpretation. It allows one to see the execution of each semantic tag and the context in which the execution takes place.
Sentence Explorer
Using this tool, the structure of a grammar can be explored interactively. The user selects rules to be expanded one at a time until complete sentences are produced.
Sentence Generator
The Sentence Generator is a sophisticated tool to generate sentences interactively. The generation algorithm is highly configurable and can be used for many different purposes (random generation, full language generation, full grammar coverage, full semantic tags coverage, etc.).

Supported Grammar Languages

The NuGram platform natively support the W3C's SRGS ABNF format with extensions to support the development of dynamic grammars. The ABNF format was chosen since it is a W3C standard and is without a doubt much more readable and maintainable than the XML format.

Grammars can be translated to and from other formats as well. The currently supported languages are: GrXML (W3C SRGS XML), and Nuance GSL.

The NuGram platform also supports the most widely used semantic tag languages: W3C SISR (including the SISR 2004 Working Draft syntax), Nuance's GSL semantic tags, and Nuance's OSR. tags.

For more information on NuGram IDE, consult the NuGram IDE documentation.