IFC schema (part2): the IfcRelationship concept
IfcRelationship is the second pillar of the IFC data schema. Here are different relationship types between entities and properties explained in just a few steps
In this blog post we’re going to make a brief overview of the second pillar on which the IFC (Industry Foundation Classes) format data schema is based, the IfcRelationShip
, i.e. different types of relationships that are established within the IFC schema.
If you need to practically verify the concept of IfcRelationship between entities in a building (or parts of a building), such as, walls, floors, windows, you can use an online BIM viewer that allows you to open, analyze and manage an IFC file.
In our previous blog post, we’ve already looked at theIfcObject
, the generalization of any semantically treated thing or process within the IFC, and the entities. Here are the links to the 3 contents forming the first level of specialization within the IFC class hierarchy:
- article regarding the IfcObject (IFC schema part 1)
- article regarding the IfcRelationship (IFC schema part 2)
- article reharding the IfcPropertyDefinition (IFC schema part 3).
The IFC model structure
The IFC schema can be considered as a storage system for organizing and transferring digital data, in order to facilitate interoperability between different subjects.
Additionally, the IFC defines a model integrated with hundreds of entities organized hierarchically.

IFC Data schema composition
There are 3 fundamental concepts on which the IFC logic is based and that represent its structure:
IfcObjectDefinition
: stands for all entities (objects)IfcRelationship
: summarizes relationships between entitiesIfcPropertyDefinition
: describes properties associated with the entities.

IFC schema | Scheme describing the IfcRelationship
IfcRelationship
IfcRelationship
describes different types of relationships.
Specifically, there are 5 basic types of relationships in the IFC model, which are subtypes of the IfcRelationship class:
IfcRelConnects
is a connectivity relationship that connects objects based on certain criteria. For example, a slab connected to a beam or a partition wall supported on a floor slabIfcRelAssociates
serves to relate external sources of information and associates them with objects or property definitions. The association relationship is one-way. An external IFC library in which the object or the information on the classification for a particular space inside a building is defined, could represent a valid exampleIfcRelDecomposes
defines the general concept of elements that are composed or decomposed. Decompositions imply a hierarchy, where, the definition of the whole depends on the definition of the single parts and vice versa. Therefore, a cost item can be included in other items or a structural frame can be considered an aggregation of beams and columnsIfcRelDefines
is a relationship that allows an object instance to inherit a property set. For example, different instances of windows within the IFC model may be of the same type, (belonging to the same catalogue or manufacturer). Thereby they share the same informationIfcRelAssigns
makes explicit assignment relationships that arise when an object needs the services of another object. For example, we can assign a certain resource to an object.
Each of these 5 types allows the development of further relationships between objects, types, properties, etc. (subtypes trees) as shown in the following scheme:

IFC file structure | Scheme showing the IfcRelationship subdivision
The screenshots below taken from the usBIM.viewer+ working space outline different examples of relationships:
- in the first illustration we see how
IfcRelAggregates
relates theIfcBuilding
with all the levels in which it is subdivided, i.e.IfcBuildingStorey
- in the second illustration it is shown how
IfcRelContainedInSpatialStructure
links togetherIfcBuildingStorey
with all the entities belonging to it - in the third one it is highlighted how
IfcRelConnectsPathElements
relates the two contiguous entities (walls) contained inIfcWallStandardCase
.

IfcRelAggregates | IfcBuilding relationship with all the levels of IfcBuildingStorey

IfcRelContainedInSpatialStructure | IfcBuildingStorey relationship with its belonging entities, such as IfcDoor, IfcWallStandardCase, IfcSlab, IfcWindow

IfcRelConnectsPathElements | Relationship between two contiguous entities included in IfcWallStandardCase IfcRelationship: IFC Data schema