Aggregated Components
If the parent or child component is mapped to a table then:
- Unrelated attribute implementations must be defined for each identifying attribute that is not linked to the component’s identifiers but is related to the identifier of a parent component.
- An aggregation relation must be defined. The relationship implementation attributes in that aggregation relation must relate to identifying columns of the parent and child. Each of the parent’s identifiers must be used in that aggregation relation.
- Calculated attributes must not be used to define an aggregation relation. Relations between components must always be defined at the ‘inside’. For example, a public identifying attribute is used for a component which is mapped to two internal identifiers in the component implementation. In that case, the internal identifiers must be used in the aggregation relationship to child component implementations.