Get to know about the relational data- and object model used in [[{{UBIK}}]] beginning from a rather figurative and abstract point of view. We will introduce the essential parts of the object model and show how these items are connected to a real system.
==Introduction==
===Objectives===
<strong>
{{Checkedcheck_mark}} Theoretical blocks representing the parts of the system
{{Checkedcheck_mark}} Necessary properties of these blocks
</strong>
An important aspect of the datamodel has not been discussed yet, namely <b>how are the blocks (=[[MetaClass|MetaClasses]]) related to each other?</b>
== Relating objects ==
[[File:IL_DOM_004.png|thumb|220px|alt=Relations of plant parts|Possible relations between parts of plant]]
Assuming that all three pumps are clearly parts of the plant „UBIK1“, the descriptive model has to be extended in order to include this information as well. In our "table" view we account for this by adding a property to the „Pump“ ''PUMP'' block refering to the plant. This additional property represents the link information between the pumps #1 - #3 and the plant „UBIK1“.
<table>
Now we introduce two armatures with the properties from the descriptive model above. Assume that, due to the piping, pumps #1 and #2 are controlled by both armatures, whereas A200 regulates pump #3 only. This situation is depicted below already indicating, that the implementation of the relation requires a more complex structure. We find three pumps on the left side and two armatures on the right side of the relation, respectively. Managing this control relation in the Metamodel requires to introduce a relation block „CONTROL“ ''CONTROL'' with two MetaProperties „Armature#“ and „Pump#“
<table>
===Entity Relationship Model (ER model)===
[[File:IL_DOM_007.png|thumb|220 px|alt=ER-model|Entitiy-Relationship-Model]]
In software engineering, such an abstract descriptive model is called Entity–Relationship model (ER model) and describes the entities (={{UBIK}} MetaClasses) and relationships between them. Usually this information is depicted in an entity-relationship-diagram (ERD), which draws the corresponding data objects and relations as rectangles and lines between them, respectively. The MetaClass ''„CONTROL“CONTROL'' can be drawn as diamond, signalling the additional block between these two MetaClasses, which is always needed for each relation of cardinality n : n.
===About References and Relations===
Congratulations, we integrated another important issue in our data- and object model:
{{Checkedcheck_mark}} <b>Relationships between blocks (MetaClasses)</b>
==MetaClasses and Instances==
==Conclusion==
{{UMM|* The descriptive model consists of '''MetaClasses''' and '''MetaProperties''' and relations between these objects.* Each MetaClass is defined by** a collection of MetaProperties** the line of inheritance** classification information
* A MetaProperty implements different features and settings.
* In this MetaModel we explicitely distinguish between the description (structure, relations,…) and '''instances''' (actual occurences) of data objects
* The MetaClasses might be on an equal hierarchy level from the descriptive point of view, whereas the instances are then related using '''references''' and '''relations'''
Each MetaClass is defined by* a collection of MetaProperties* the line of inheritance* classification information A MetaProperty implements different features and settings In this MetaModel we explicitely distinguish between the description (structure, relations,…) and '''instances''' (actual occurences) of data objects The MetaClasses might be on an equal hierarchy level from the descriptive point of view, whereas the instances are then related using '''references''' and '''relations'''}}[[Category:UBIK|Entity Data Model]]