Changes between Version 2 and Version 3 of DeveloperGuidelines/PersonEntityModel


Ignore:
Timestamp:
03/07/12 20:58:59 (10 years ago)
Author:
Dominic König
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • DeveloperGuidelines/PersonEntityModel

    v2 v3  
    66== Introduction ==
    77
    8 We start with an obviously simple (read: small) set of person entities:
     8We start with an obviously simple (read: ''small'') set of person entities:
    99
    1010[[Image(pe_hierarchy1.png)]]
    1111
    12 Each of these entities can define a number of roles which affiliated entities can have:
     12=== Roles ===
     13
     14Each of these entities can define a number of roles by which other entities can be ''affiliated'' with them:
    1315
    1416[[Image(pe_hierarchy2.png)]]
    1517
    16 Now we link the respective entities to the roles, which defines an already pretty complex relationship network:
     18=== Affiliation ===
     19
     20If we link the ''affiliated'' entities to these roles, then we get an already pretty complex network of relationships:
    1721
    1822[[Image(pe_hierarchy3.png)]]
    1923
    20 Some of these relationships define a hierarchy, while others don't:
     24=== Hierarchy ===
     25
     26Some affiliations define a hierarchy (in the sense of "reporting units" or "organisational units"), while others don't:
    2127
    2228[[Image(pe_hierarchy4.png)]]
    2329
    24 This hierarchy defines ancestor paths among the person entities:
     30=== Ancestor Paths ===
     31
     32To analyze this hierarchy, we look at the ancestor paths from one entity to another entity:
    2533
    2634[[Image(pe_hierarchy5.png)]]
    2735
    28 If we remove the roles, this becomes more obvious:
     36It becomes a little bit more obvious if we remove the roles from the diagram:
    2937
    3038[[Image(pe_hierarchy6.png)]]
    3139
    32 Now we can make the actual "hierarchy" visible by moving each entity to a certain "hierarchy level":
     40These paths can easily be expressed as tuples of IDs, e.g. for Person Y we have two paths [4,1] and [5,2], and for Person X we have [5,2] and [2]. Apparently, Person Y is affiliated with two different organisations here.
     41
     42=== Hierarchy Levels ===
     43
     44To make the actual "hierarchy" visible, we need to move each entity to a particular "hierarchy level":
    3345
    3446[[Image(pe_hierarchy7.png)]]
    3547
    36 As you can see, "Person Y" belongs to two different organisations here - with two different ancestor paths.
     48Due to the heterogenous nature of this network, the "hierarchy" is not universal, but rather limited to each path - i.e. it isn't clear whether a "team" is higher in the hierarchy than a "facility" or vice versa, but within each path it becomes explicit.
    3749
    3850----