IFC file structure (part1): the IfcObjectDefinition
IFC file structure: The IfcObjectDefinition is one of the pillars of data structure. What is it and what is it used for?
The IFC file format was not only conceived as an exchange open file format, but also as a true interoperability standard with a precise data structure.
In practice, the IFC schema can be considered as a storage system for organizing and transferring digital data to facilitate interoperability between the various BIM professionals within a given workflow.
The schema of an IFC model
An IFC model is integrated with hundreds of entities that are organized in a hierarchical manner.
Some examples of these entities are:
- construction elements, such as
IfcWall
,IfcWindow
,IfcDoor
- geometric elements, such as
IfcExtrudedAreaSolid
(solid extrusion from an area) - basic constructs, such as
IfcCartesianPoint
.
The IFC logic is based on 3 fundamental concepts, which represent the structure itself:
- The
IfcObjectDefinition
defining the entities themselves (objects) - The
IfcRelationship
defining the relationship between entities - The
IfcPropertyDefinition
defining the properties associated with the entities.
In this week’s article we’ll be focusing on entities, while in the upcoming posts we’ll also cover the remaining concepts. These 3 links refer to the IFC architecture contents:
- 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 Data schema
IfcObjectDefinition
The IfcObjectDefinition
class contains all the useful objects to fully describe a construction asset.
The word object refers to an abstract or tangible entity that represents the description of a construction part that we are digitizing. Let’s see some examples..
The IfcObject
can include:
- physically tangible objects, such as walls, beams or roofs
- physically existing objects, such as spaces or conceptual objects, like grids or virtual borders
- processes, such as work tasks and controls, like cost items, actors or people involved in the design process, etc.
Going into detail, the schema also identifies 6 fundamental concepts that are directly connected to the IfcObject
class:
- The
IfcActor
defines all the actors involved in the construction process. It easily identifies actors and it includes information such as name, address, organizations and roles - The
IfcControl
is the abstract generalization of all the concepts that control or limit the use of products, processes or resources in general. Therefore, it represents the design constraints. For example, within this class we can include the elements that influence project planning, for instance:- client’s requests
- project costs
- regulations and standards
- delivery times
IfcGroup
is a generalization of any arbitrary group. A group is a logical collection of objects, it does not have its own position, nor it can contain its own shape representation. Therefore, a group is a topological aggregation. For example, we can associate a selection of elements of a structural frame in a group that are warped according to a specific direction.- The
IfcProcess
represents activities, events and procedures that occur over time. TheIfcProcess
is defined as a single activity or event, that is:- ordered in time
- has sequence relationships with other processes
- transforms input into output.
IfcResource
contains the information needed to represent costs, planning and other impacts from the use of an asset in a process. For example, for cost estimating purposes, construction equipment such as vehicles or earthworks machinery, which are not currently modelled within the IFC, these can be considered as anIfcResource
.- The
IfcProduct
includes any entity that can be related to a geometric / spatial context. Each entity has a specific location in space when it has a geometric representation assigned. This representation can be expressed in relation to other entities, but it will certainly be referenced with respect to the project coordinate system. In addition to real entities, theIfcProduct
also includes non-physical elements, such as grids, notes, structural actions.

The IFC file structure | IfcObjectDefinition scheme subdivision
IfcProduct
Looking further into theIfcProduct
, we can say that it is the base class for all the entities of a project and is therefore made up of spatial elements, physical elements, structural analysis elements and other concepts. Products can have materials associated, shape representations and position in space. Let’s see some examples:
- Spatial elements include:
IfcSite
IfcBuilding
IfcBuildingStorey
IfcSpace
- Physical construction elements include:
IfcWall
IfcBeam
IfcDoor
IfcWindow
IfcStair

IFC file structure | IfcProduct class distribution scheme
Here’s a screenshot of an example of IfcProduct
and of the window entity with its relating properties within the usBIM.viewer+ working space.

UsBIM.viewer + software Identification of an IfcObject (IfcWindow) and its properties
Download usBIM.viewer+
All you need to do now is download the IFC viewer usBIM.viewer+ freeware to easily open, analyze and edit IFC files (…and a lot more too).
Read more about the IFC schema in our previous and upcoming posts:
- article regarding the IfcObject (IFC schema part 1)
- article regarding the IfcRelationship (IFC schema part 2)
- article reharding the IfcPropertyDefinition (IFC schema part 3).