Relation between a Object Diagram and a Class Digram in MOF Layer terms

540 views Asked by At

I want to express the relationship between object diagrams and class diagrams in terms of the MOF Layer Model.

As an Object Diagram (OD) is an instance of a Class Diagram (CD), I conclude that an OD must be on a Layer below a CD (e.g. OD in M0 and CD in M1).

What confuses me is that both, Object Diagrams and Class Diagrams seem to be in the M1 layer as they're both instances of the UML-metamodel which is in the M2-layer.

What am I missing here?

1

There are 1 answers

3
xmojmr On BEST ANSWER

AFAIK for the purpose of diagram interchange in a MOF container the diagram relationships are not defined (nor needed) and thus do not impose any layer constraints.

This is where I drew my conclusion from:

1.

uml-diagrams.org: Class and Object Diagrams Overview says:

...Object diagram could be considered as instance level class diagram which shows instance specifications of classes and interfaces (objects), slots with value specifications, and links (instances of association)...

2.

uml-diagrams.org: Object Diagram says:

Object diagram was defined in now obsolete UML 1.4.2 Specification as...

UML 2.4 specification simply provides no definition of object diagram...

Note, that UML 2.5 standard hierarchy of diagrams (see UML 2.5 diagrams overview), shows class diagrams and object diagrams as completely unrelated...

...I really have a headache with all this mess-up… OMG please fix it!

3.

omg.org: Diagram Definition, Version 1.0, July 2012 says:

Figure 7.2 - Example of Diagram Definition Architecture For UML

enter image description here

9.3.1 Diagram Interchange → Classifier Descriptions → Diagram [Class]

Diagram is an abstract container of a graph of diagram elements...

...It can also be owned by elements of the abstract syntax model, or by no element at all...

...a diagram may reference a model element from an abstract syntax model, in which case the whole diagram is considered a depiction of that element (e.g., an activity diagram is a depiction of a UML activity).

Alternatively, a diagram without such a reference is simply a layout container for its diagram elements (e.g., a class diagram is a container for UML class shapes and edges)