| additions | where_rules | WR31 |
| deletions | where_rules | WR31 |
| modifications | attributes RelatingStructure definition | Changed from IfcSpatialStructureElement to IfcSpatialElement |
| additions | where_rules | WR31 |
| deletions | where_rules | WR31 |
| additions | where_rules | WR31 |
| deletions | where_rules | WR31 |
| additions | where_rules | WR31 |
| deletions | where_rules | WR31 |
This objectified relationship, IfcRelContainedInSpatialStructure, is used to assign elements to a certain level of the spatial project structure. Any element can only be assigned once to a certain level of the spatial structure. The question, which level is relevant for which type of element, can only be answered within the context of a particular project and might vary within the various regions.
EXAMPLE A multi-storey space is contained (or belongs to) the building storey at which its ground level is, but it is referenced by all the other building storeys, in which it spans. A lift shaft might be contained by the basement, but referenced by all storeys, through which it spans.
The containment relationship of an element within a spatial structure has to be a hierarchical relationship; an element can only be contained within a single spatial structure element. The reference relationship between an element and the spatial structure need not be hierarchical; that is, an element can reference many spatial structure elements.
NOTE The reference relationship is expressed by IfcRelReferencedInSpatialStructure.
Predefined spatial structure elements to which elements can be assigned are
Occurrences of the same element type can be assigned to different spatial structure elements depending on the context of the occurrence.
EXAMPLE A wall might be normally assigned to a storey, however the curtain wall might be assigned to the building and the retaining wall in the terrain might be assigned to the site.
Figure 1 shows the use of IfcRelContainedInSpatialStructure to assign a stair and two walls to two different levels within the spatial structure.

HISTORY New entity in IFC2x.
IFC2x CHANGE The data type of the attribute RelatedElements has been changed from IfcElement to its supertype IfcProduct with upward compatibility for file based exchange.
| # | Attribute | Type | Description |
|---|---|---|---|
| IfcRoot | |||
| 1 | GlobalId | IfcGloballyUniqueId | Assignment of a globally unique identifier within the entire software world. |
| 2 | OwnerHistory | OPTIONAL IfcOwnerHistory | 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. > IFC4 CHANGE The attribute has been changed to be OPTIONAL. |
| 3 | Name | OPTIONAL IfcLabel | 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. |
| 4 | Description | OPTIONAL IfcText | Optional description, provided for exchanging informative comments. |
| IfcRelationship | |||
| IfcRelConnects | |||
| IfcRelContainedInSpatialStructure | |||
| 5 | RelatedElements | SET [1:?] OF IfcProduct | Set of products, which are contained within this level of the spatial structure hierarchy. > IFC2x CHANGE The data type has been changed from IfcElement to IfcProduct with upward compatibility |
| 6 | RelatingStructure | IfcSpatialElement | Spatial structure element, within which the element is contained. Any element can only be contained within one element of the project spatial structure. > IFC4 CHANGE The attribute RelatingStructure as been promoted to the new supertype IfcSpatialElement with upward compatibility for file based exchange. |
IfcRoot assigns the globally unique ID. In addition it may provide for a name and a description about the concept.
Ownership, history, and merge state is captured using IfcOwnerHistory.
ENTITY IfcRelContainedInSpatialStructure SUBTYPE OF (IfcRelConnects); RelatedElements : SET [1:?] OF IfcProduct; RelatingStructure : IfcSpatialElement; WHERE WR31 : SIZEOF(QUERY(temp <* RelatedElements | 'IFC4X3_RC3.IFCSPATIALSTRUCTUREELEMENT' IN TYPEOF(temp))) = 0; END_ENTITY;