If we want to use the interface file to build a complete command set, the procedure is:
. Does the stanza describe a class? * Is the `variant="instance"` attribute extant (with the value `instance`)? * Does the stanza have a `cd:instances` element, with non-zero children?# . Does the stanza describe a pair? * Is either or both of the `begin=` or `end=` attributes extant? (Hopefully both!)# . Does the stanza describe a command? * Does the stanza not describe a class? * Does the stanza not describe a pair? * Does the stanza not have a `variant` attribute?
Orthogonal to this, a stanza may describe an environment, if the `type="environment"` attribute is extant (with the value `environment`). This implied further automatically generated commands based ont he command stem, but interactions with commands, pairs, and classes is unclear.