ARCH-SPEC-DEFN ::= arch-spec-defn ARCH-SPEC-NAME ARCH-SPEC
ARCH-SPEC ::= basic-arch-spec UNIT-DECL-DEFN+ RESULT-UNIT
| ARCH-SPEC-NAME
UNIT-DECL-DEFN ::= UNIT-DECL | UNIT-DEFN
UNIT-DECL ::= unit-decl UNIT-NAME UNIT-SPEC UNIT-IMPORTS
UNIT-IMPORTS ::= unit-imports UNIT-TERM*
UNIT-DEFN ::= unit-defn UNIT-NAME UNIT-EXPRESSION
! UNIT-SPEC-DEFN ::= unit-spec-defn SPEC-NAME UNIT-SPEC
! UNIT-SPEC ::= UNIT-TYPE | SPEC-NAME | ARCH-SPEC
! | closed UNIT-SPEC
UNIT-TYPE ::= unit-type SPEC* SPEC
RESULT-UNIT ::= result-unit UNIT-EXPRESSION
UNIT-EXPRESSION ::= unit-expression UNIT-BINDING* UNIT-TERM
UNIT-BINDING ::= unit-binding UNIT-NAME UNIT-SPEC
UNIT-TERM ::= unit-translation UNIT-TERM RENAMING
| unit-reduction UNIT-TERM RESTRICTION
| amalgamation UNIT-TERM+
| local-unit UNIT-DEFN+ UNIT-TERM
| unit-appl UNIT-NAME FIT-ARG-UNIT*
FIT-ARG-UNIT ::= fit-arg-unit UNIT-TERM SYMB-MAP-ITEMS*
ARCH-SPEC-NAME ::= SIMPLE-ID
UNIT-NAME ::= SIMPLE-ID