If you are familiar with drafts of the SISR 1.0 specification, it is pretty easy to convert grammars
to use the 2006 final recommendation. There are a few changes to be aware of:
- $ is now called out.
- $$ is now called rules.latest().
- Instead of using $rulename to access a rule's variable, use rules.rulename.
- $$$ is now called meta.current().
You can now access meta information for a rule by using meta.rulename and specifying
text or score as a property.
The literals shortcut provided by a colon and quote marks is no longer valid. So the following SISR is not
$one = one:"1";
To use literals, you must specify the appropriate
Tag Format in the grammar's header and place
literals inside of SISR tags. See SISR Basics and
Rule Variables for more information. You can no longer mix literals and
script tags within the same grammar.
Please note that the LumenVox implementation of SISR 1.0 uses different tag formats than is specified
in the official SISR 1.0 standard (this is to maintain backwards compatibility with older versions of
SISR). Be sure to check Tag Formats for a complete list of supported
tag formats, and read
SISR Basics for more information on the differences.