Many attribute names have the same format everywhere
(some contents may choose to place further restrictions).
Declare those global rules here.
Attributes which rely on these rules will have no `stringtype ref'
Currently: name, qname, ref, size, alignment, value, scoped, loc
A unique identifier for the entity denoted by this element. For
instance, a "variable-ref" and a "variable" denoting the same C
variable will have the same unique value for their ref attribute.
The name of a nesC component or interface. This is guaranteed to be
unique, so serves as an identifier. The name of generic component
instantiations represents their instantiation "path", e.g., generic
module Foo instantiated in configuration Bar is Bar.Foo, and generic
module Foo instantiated in generic configuration Baz, itself instantiated
in configuration Main is Main.Baz.Foo
Present on entities (e.g., variables) that are non-global
A source code location.