IFC 4.3.0.1 (IFC4X3) development

4.4.1.4 Spatial Composition

Provision of a spatial structure of the project by aggregating spatial elements. The spatial structure is a hierarchical tree of spatial elements ultimately assigned to the project. Composition refers to the relationship to a higher level element (e.g. this storey is part of a building or this road segment is part of a road).

The project spatial structure may be made up of a selection of different spatial structure elements with the most generic and simplest form from high to low level as follows: IfcProject, IfcSite, IfcFacility (or any of its subtypes), IfcFacilityPart (or IfcBuildingStorey in the case of buildings), and _IfcSpace with IfcSite, FacilityPart and IfcSpace being optional levels. Therefore a spatial structure element should only be part of an element at the same or higher level, with the exception of IfcFacility which can be part of an IfcFacilityPart to allow for the regional or longitudinal division of a higher level facility into sections which can then contain one or more smaller functional facilities.

Where possible, the relevant subtype of IfcFacility should be used to describe the spatial structure element in question. When an adequate subtype of IfcFacility with predefined or user defined type is not available the higher level, generic IfcFacility entity can be instantiated with the relevant and agreed typing identifier defined in IfcFacility.ObjectType. This allows for nearly full coverage of built environment domains and/or scenarios that have yet to be addressed with specific extensions.

In addition to the identified spatial structure elements IfcSpatialZone can be used to provide cross domain or functional zones within a project, these elements are included into the hierarchy using the Spatial Containment concept (IfcRelContainedInSpatialStructure) and can be aggregated into a functional hierarchy in the same manner as other spatial structure elements with the constraint that an IfcSpatialZone can only be composed within another IfcSpatialZone.

The following diagram shows the generic classes and relationships used when applying this concept. In addition, concepts may have particular importance to common or standardised industry practices and scenarios. For these specific usage scenarios, the tables below shows a recommended list of general usage patterns that users may adopt.

G IfcSpatialElement_0 IfcSpatialElement 1. GlobalId [1:1] 2. OwnerHistory [0:1] 3. Name [0:1] 4. Description [0:1]      HasAssignments [0:?]      Nests [0:1]      IsNestedBy [0:?]      HasContext [0:1]      IsDecomposedBy [0:?]      Decomposes [0:1]      HasAssociations [0:?] 5. ObjectType [0:1]      IsDeclaredBy [0:1]      Declares [0:?]      IsTypedBy [0:1]      IsDefinedBy [0:?] 6. ObjectPlacement [0:1] 7. Representation [0:1]      ReferencedBy [0:?]      PositionedRelativeTo [0:?]      ReferencedInStructures [0:?] 8. LongName [0:1]      ContainsElements [0:?]      ServicedBySystems [0:?]      ReferencesElements [0:?]      IsInterferedByElements [0:?]      InterferesElements [0:?] IfcRelAggregates IfcRelAggregates 1. GlobalId [1:1] 2. OwnerHistory [0:1] 3. Name [0:1] 4. Description [0:1] RelatingObject 5. RelatingObject [1:1] 6. RelatedObjects [1:?] IfcSpatialElement_0:Decomposes1->IfcRelAggregates:RelatedObjects0 IfcProject IfcProject 1. GlobalId [1:1] 2. OwnerHistory [0:1] ProjectName 3. Name [0:1] 4. Description [0:1]      HasAssignments [0:?]      Nests [0:1]      IsNestedBy [0:?]      HasContext [0:1]      IsDecomposedBy [0:?]      Decomposes [0:1]      HasAssociations [0:?] 5. ObjectType [0:1] 6. LongName [0:1] 7. Phase [0:1] 8. RepresentationContexts [1:?] 9. UnitsInContext [0:1]      IsDefinedBy [0:?]      Declares [0:?] IfcRelAggregates:RelatingObject1->IfcProject:IfcProject0 IfcSpatialElement_1 IfcSpatialElement 1. GlobalId [1:1] 2. OwnerHistory [0:1] SpatialElementName 3. Name [0:1] 4. Description [0:1]      HasAssignments [0:?]      Nests [0:1]      IsNestedBy [0:?]      HasContext [0:1]      IsDecomposedBy [0:?]      Decomposes [0:1]      HasAssociations [0:?] 5. ObjectType [0:1]      IsDeclaredBy [0:1]      Declares [0:?]      IsTypedBy [0:1]      IsDefinedBy [0:?] 6. ObjectPlacement [0:1] 7. Representation [0:1]      ReferencedBy [0:?]      PositionedRelativeTo [0:?]      ReferencedInStructures [0:?] 8. LongName [0:1]      ContainsElements [0:?]      ServicedBySystems [0:?]      ReferencesElements [0:?]      IsInterferedByElements [0:?]      InterferesElements [0:?] IfcRelAggregates:RelatingObject1->IfcSpatialElement_1:IfcSpatialElement0 IfcLabel_0 IfcLabel IfcProject:Name1->IfcLabel_0:IfcLabel0 IfcLabel_1 IfcLabel IfcSpatialElement_1:Name1->IfcLabel_1:IfcLabel0
Figure 4.4.1.4.A

General Usage

ApplicableEntity
RelatingObject
IfcRelAggregates.RelatingObject
IfcBridgePart IfcBridge
IfcBridge IfcProject
IfcBridge IfcSite
IfcBridge IfcBridge
IfcBuilding IfcProject
IfcBuilding IfcSite
IfcBuilding IfcBuilding
IfcBuildingStorey IfcBuilding
IfcBuildingStorey IfcBuildingStorey
IfcExternalSpatialElementIfcProject
IfcExternalSpatialElementIfcSite
IfcExternalSpatialElementIfcExternalSpatialElement
IfcFacilityPartCommon IfcFacility
IfcFacility IfcProject
IfcFacility IfcSite
IfcFacility IfcFacility
IfcMarineFacility IfcProject
IfcMarineFacility IfcSite
IfcMarineFacility IfcMarineFacility
IfcMarinePart IfcMarineFacility
IfcRailwayPart IfcRailway
IfcRailway IfcProject
IfcRailway IfcSite
IfcRailway IfcRailway
IfcRoadPart IfcRoad
IfcRoad IfcProject
IfcRoad IfcSite
IfcRoad IfcRoad
IfcSite IfcProject
IfcSite IfcSite
IfcSpace IfcProject
IfcSpace IfcSite
IfcSpace IfcBuilding
IfcSpace IfcBuildingStorey
IfcSpace IfcSpace
IfcSpace IfcFacility
IfcSpace IfcBridge
IfcSpace IfcMarineFacility
IfcSpace IfcRailway
IfcSpace IfcRoad
IfcSpace IfcFacilityPartCommon
IfcSpace IfcBridgePart
IfcSpace IfcMarinePart
IfcSpace IfcRailwayPart
IfcSpace IfcRoadPart
Table 4.4.1.4.B

Edit on Github


Is this page difficult to understand? Let us know!