Using ACE

ACE is a very efficient processing engine for DELPH-IN grammars (i.e. grammars in tdl) that is included in the Ubuntu+LKB distribution.

ACE documentation

Suggested workflow with ACE in 567

Grammar compilation

ACE will give different error messages than the LKB in some cases, so it canbe informative to try ACE if you are not succeeding in compiling the grammar with the LKB. (Also, you'll need to compile the grammar before parsing.)

The following example replaces the name of the directory for the grammar with `iso' --- use the actual iso code for your language instead:
ubuntu@UbuntuLKB:~/iso$ ace -G iso.dat -g ace/config.tdl

If the grammar compiles successfully, the result will be in a file called iso.dat in your current working directory. If it does not compile successfully, the error messages will hopefully be helpful. You can always post to GoPost if you have questions about them.

Note that ACE (like the LKB) will cheerfully skip over instances (rules, lex rules, lex entries) that don't compile, and give you a grammar that's just missing them. So even if it does compile successfully, look for any error messages/warnings along the way.


Once you've compiled your grammar, you can use ACE to parse single sentences from the command line.
ubuntu@UbuntuLKB:~/iso$ echo "sentence to parse" | ace -g iso.dat


If you have a sentence that parses, you can also use ACE to see what the grammar generates on the basis of the semantics associated with each parse of the sentence:
ubuntu@UbuntuLKB:~/iso$ echo "sentence to parse" | ace -g iso.dat | ace -g iso.dat -e

ebender at u dot washington dot edu
Last modified: 2/5/15