irstly, the productions may be given in any order, but
a production must be given for a <I>GoalIdentifier</I> that matches the name used
for the grammar.</P>

<P>The <I>formal attributes</I> enclosed in angle brackets "<" and ">"
or "<." and ".>" essentially consist of parameter declarations in Java. Since
grammar symbols may have output attributes, while Java does not have reference
parameters, the first attribute in an attribute declaration is considered to
be an output attribute if it is preceded by the 