Home » IFC and openBIM » IFC schema (part2): the IfcRelationship concept

IfcRelationShip: IFC schema

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:

  1. article regarding the IfcObject (IFC schema part 1)
  2. article regarding the IfcRelationship (IFC schema part 2)
  3. article regarding 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.

IfcRelationship: the IFC Data Schema

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 entities
  • IfcPropertyDefinition: describes properties associated with the entities.
IfcRelationship with examples

IFC schema | Scheme describing the 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:

  1. 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 slab
  2. IfcRelAssociates 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 example
  3. IfcRelDecomposes 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 columns
  4. IfcRelDefines 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 information
  5. IfcRelAssigns 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 schema: IfcRelationship

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 the IfcBuilding with all the levels in which it is subdivided, i.e. IfcBuildingStorey
  • in the second illustration it is shown how IfcRelContainedInSpatialStructure links together IfcBuildingStorey with all the entities belonging to it
  • in the third one it is highlighted how IfcRelConnectsPathElements relates the two contiguous entities (walls) contained in IfcWallStandardCase.
IfcRelationship, the IFC schema

IfcRelAggregates | IfcBuilding relationship with all the levels of IfcBuildingStorey

IfcRelationship: IFC Data schema

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

IfcRelationship: The IFC Data schema

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