MetaModelDiag
MetaModel diagram
MetaModel used for representing data model.
Broad-headed orange arrows are used for inheritance, black lines for
object-to-object links. In addition to the operations shown in the
diagram the model includes getter and setter functions for all
attributes and roles (not shown). All MetaPackages except the topmost
one must have a container. Underlined attributes are not currently
used and are fixed at the given default values – they are
implemented as class (static) attributes.
The MetaModel has been limited to single inheritance, which means that some type constraints could not be represented properly in the diagram – these are enforced separately by the underlying code. Specifically, MetaAttribute.valueType must be a MetaDataObjType or MetaDataType, and MetaOperation.target must be an AbstractDataType, a ClassElement, or a MetaOperation.