5.1.3.20 IfcRelAggregates
5.1.3.20.1 Semantic definition
The aggregation relationship IfcRelAggregates is a special type of the general composition/decomposition (or whole/part) relationship IfcRelDecomposes. The aggregation relationship can be applied to all subtypes of IfcObjectDefinition.
In cases of aggregation of physical elements into a physical aggregate the shape representation of the whole (within the same representation identifier) can be taken from the sum of the shape representations of the parts.
Decompositions imply a dependency, implying that the whole depends on the definition of the parts and the parts depend on the existence of the whole. The behaviour that is implied from the dependency relationship has to be established inside the applications.
5.1.3.20.2 Entity inheritance
5.1.3.20.3 Attributes
# | Attribute | Type | Description |
---|---|---|---|
IfcRoot (4) | |||
Click to show 4 hidden inherited attributes Click to hide 4 inherited attributes | |||
IfcRelAggregates (2) | |||
5 | RelatingObject | IfcObjectDefinition |
The object definition, either an object type or an object occurrence, that represents the aggregation. It is the whole within the whole/part relationship. |
6 | RelatedObjects | SET [1:?] OF IfcObjectDefinition |
The object definitions, either object occurrences or object types, that are being aggregated. They are defined as the parts in the whole/part relationship. No order is implied between the parts. |
5.1.3.20.4 Formal propositions
Name | Description |
---|---|
NoSelfReference |
The instance to with the relation points as provided by RelatingObject shall not be contained in the set of RelatedObjects. |
|
5.1.3.20.5 Concept usage
Concept | Usage | Description | |
---|---|---|---|
IfcRoot (2) | |||
Click to show 2 hidden inherited concepts Click to hide 2 inherited concepts |
5.1.3.20.6 Formal representation
ENTITY IfcRelAggregates SUBTYPE OF (IfcRelDecomposes); RelatingObject : IfcObjectDefinition; RelatedObjects : SET [1:?] OF IfcObjectDefinition; WHERE NoSelfReference : SIZEOF(QUERY(Temp <* RelatedObjects | RelatingObject :=: Temp)) = 0; END_ENTITY;