Teil zu Ganzes Beziehung ungeordnet - Relation | |
Rel Aggregates | |
Regroupement |
Item | SPF | XML | Change | Description | IFC2x3 to IFC4 |
---|---|---|---|---|
IfcRelAggregates | ||||
OwnerHistory | MODIFIED | Instantiation changed to OPTIONAL. |
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.
EXAMPLE A roof is the aggregation of the roof elements, such as roof slabs, rafters, purlins, etc. Within the same representation identifier (such as the body geometric representation), the shape representation of the roof is given by the shape representation of its 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.
HISTORY New entity in IFC2x.
IFC4 CHANGE The attributes RelatingObject and RelatedObjects are demoted from the supertype IfcRelDecomposes.
# | Attribute | Type | Cardinality | Description | C |
---|---|---|---|---|---|
5 | RelatingObject | IfcObjectDefinition | [1:1] | The object definition, either an object type or an object occurrence, that represents the aggregation. It is the whole within the whole/part relationship. | X |
6 | RelatedObjects | IfcObjectDefinition | S[1:?] | 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. | X |
Rule | Description |
---|---|
NoSelfReference | The instance to with the relation points as provided by RelatingObject shall not be contained in the set of RelatedObjects. |
# | Attribute | Type | Cardinality | Description | C |
---|---|---|---|---|---|
IfcRoot | |||||
1 | GlobalId | IfcGloballyUniqueId | [1:1] | Assignment of a globally unique identifier within the entire software world. | X |
2 | OwnerHistory | IfcOwnerHistory | [0:1] |
Assignment of the information about the current ownership of that object, including owning actor, application, local identification and information captured about the recent changes of the object,
NOTE only the last modification in stored - either as addition, deletion or modification. | X |
3 | Name | IfcLabel | [0:1] | Optional name for use by the participating software systems or users. For some subtypes of IfcRoot the insertion of the Name attribute may be required. This would be enforced by a where rule. | X |
4 | Description | IfcText | [0:1] | Optional description, provided for exchanging informative comments. | X |
IfcRelationship | |||||
IfcRelDecomposes | |||||
IfcRelAggregates | |||||
5 | RelatingObject | IfcObjectDefinition | [1:1] | The object definition, either an object type or an object occurrence, that represents the aggregation. It is the whole within the whole/part relationship. | X |
6 | RelatedObjects | IfcObjectDefinition | S[1:?] | 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. | X |
# | Concept | Model View |
---|---|---|
IfcRoot | ||
Software Identity | Common Use Definitions | |
Revision Control | Common Use Definitions |
<xs:element name="IfcRelAggregates" type="ifc:IfcRelAggregates" substitutionGroup="ifc:IfcRelDecomposes" nillable="true"/>
<xs:complexType name="IfcRelAggregates">
<xs:complexContent>
<xs:extension base="ifc:IfcRelDecomposes">
<xs:sequence>
<xs:element name="RelatedObjects">
<xs:complexType>
<xs:sequence>
<xs:element ref="ifc:IfcObjectDefinition" maxOccurs="unbounded"/>
</xs:sequence>
<xs:attribute ref="ifc:itemType" fixed="ifc:IfcObjectDefinition"/>
<xs:attribute ref="ifc:cType" fixed="set"/>
<xs:attribute ref="ifc:arraySize" use="optional"/>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
ENTITY IfcRelAggregates
SUBTYPE OF (IfcRelDecomposes);
RelatingObject : IfcObjectDefinition;
RelatedObjects : SET [1:?] OF IfcObjectDefinition;
WHERE
NoSelfReference : SIZEOF(QUERY(Temp <* RelatedObjects | RelatingObject :=: Temp)) = 0;
END_ENTITY;