Speech applications that improve caller experience

Sample customers and partners:

OOPS. Your Flash player is missing or outdated.Click here to update your player so you can see this content.
Home arrow Grammar IDE
Grammar IDE
rea_eclipse_pos_logo_fc_sm.gif

The challenge of dealing with complex grammars

As speech applications get broader user acceptance, the need for more sophisticated applications grows proportionately. More sophisticated applications, however, usually mean grammars of significantly increased complexity, many of which also often need to be dynamically generated based on data obtained at run-time.

When problems do occur with a grammar - as they inevitably do - effective tools can make all the difference in helping rapidly diagnose and solve them. Visualizing the static structure of the grammar (how it is written) is of no help here. We want to know why a certain sentence is not recognized, which part of it caused the interpretation to fail, or why a given semantic tag raised an error.

The Nü Echo grammar development environment

The Nü Echo grammar environment provides an answer to these challenges by providing effective tools for grammar design, debugging, and testing, which address the complete lifecycle of a speech application. In addition to a sophisticated editor for ABNF grammars, the environment features a test set editor and a coverage tool. The editor is used to enter sentences that should - or should not - be supported by the grammar. The coverage tool is used to check the grammar against the test set.

A comprehensive set of debugging tools is also provided, including a sentence interpreter, a semantic single-stepper, and an interactive sentence explorer. The sentence interpreter displays parse trees obtained as a result of parsing a given input sentence, thereby showing how rules were used to generate the sentence. The semantic single-stepper helps find bugs in the grammar's semantic interpretation tags. The sentence explorer, which offers an innovative way of interactively exploring sentences accepted by the grammar, provides a unique and very effective way of finding problems in the grammar.

Grammar templates

The environment also features an innovative template language for dynamic grammar generation. This language is based on the ABNF format, to which template directives have been added. This language eases the migration of static to dynamic grammars. A powerful Java API (application programming interface) lets application developers insert grammar fragments programmatically. The dynamic grammar can then be rendered in any of the supported grammar formats (ABNF, GrXML, or GSL).

The tools used to test and debug ABNF grammars can still be used with dynamic grammars, which are simply seen as a special case of a more general framework.

Main Features

  • ABNF editor. ABNF grammars are authored with a sophisticated syntax-coloring editor with integrated syntax checking, rule folding, parenthesis and brackets matching, rulename completion, powerful refactoring tools, and much more.
  • Coverage editor. Used to specify which sentences should be supported by the grammar and which shouldn't. With a single mouse click, a detailed report of the actual grammar coverage can be obtained.
  • Sentence interpreter (utterance matcher). Enables developers to see how rules are used to parse any sentence.
  • Semantics single-stepper. Execute semantics tags one at a time to find the most subtle bugs.
  • Interactive sentence explorer (phrase enumerator). Selectively expand rules and find what phrases they generate.
  • Grammar converters. Convert grammars from ABNF to XML or vice versa, in batch or individually. Grammars can also be exported in Nuance GSL format.
  • Templating engine. Migrate static ABNF grammars to fully dynamic grammars, and render them in any format (ABNF, GrXML, GSL). Insert grammar fragments programmatically from you Java code.

Screenshots

(Click to enlarge)

abnf-editor.png abnf-explorer.png abnf-interp.png
abnf-stepper.png
abnf-coverage.png
ABNF editor
Sentence explorer Semantic interpreter
Semantic stepper
Coverage editor

Advantages

Field-tested. The various tools have been incrementally developed and refined jointly with some of the most demanding speech scientists of the industry, ensuring that they meet their specific needs and optimize their workflow.

Test-oriented. All tools have been designed to ease the debugging and tuning of grammars at all levels and help the developer find problems in a fast and intuitive way.

Truly integrated environment. Grammars can be developed in the same environment as the rest of the speech application. Also, the development tools are integrated in such a way that each tool is accessible from most other tools on a single mouse click.

Standards-based. The grammar development environment comes as an Eclipse plug-in. Eclipse is an open, Java-based extensible integrated development environment, supported by a growing number of organizations.

Vendor independent. The environment can support grammar formats from multiple vendors