Basic IFC Structure
Last updated
Last updated
© 2024 Autodesk Inc.
The structure of the IFC schema is complex and contains many abstract layers that are not visible to the end user. For building projects, the structure visible in IFC viewers typically looks like this:
The top 3 entities (IfcProject, IfcSite, and IfcBuilding) are containers carrying relevant information about the project and the setting.
The top-level entity is typically the main container in the tree structure as seen in IFC viewers. It doesn’t have any standard Psets defined in the schema.
Following Revit project properties will be automatically attached to the IfcProject if populated, and it is also possible to attach custom (user-defined) properties:
Note: The parameters grouped under IFC Parameters have been added manually and assigned as Instance parameters to the category Project Information. (More information: Using IFC Shared Parameters)
Layer name / Color is only relevant for entities that represent physical objects, while IfcProject is a container and therefore has no physical representation in CAD software.
The second level represents the Site and is a bit more complex than the project, as it can also be associated with a topography object in Revit. In a scenario without topography, the main properties can be added to Project Information in Revit, using the shared parameter file provided with Revit IFC:
The RefLatitude and RefLongitude are derived from the Location set in the Manage tab in Revit.
If the project contains a Topography object, the IFC properties can also be assigned on this level and will override the previously shown properties specified in Project Information.
This can be repeated with the other properties available, like LongName.
According to the IFC4 RV documentation, IfcSite has two predefined Psets: Pset_SiteCommon and Pset_LandRegistration. These are both supported and included in the shared parameters file. If added to Revit (either to the Project Information or to the Topography Category) and populated, they will be exported and attached to IfcSite.
The third container is also the first spatial container and represents the building. Its properties are again defined using the Revit project information. Additional supported properties can be added from the IFC Shared Parameters file and attached to the Project Information Category in Revit:
As long as the properties are populated, the PSets defined in the IFC schema will also be automatically exported.
The IFC schema itself supports multiple buildings; however, due to its internal structure, Revit exports only one building per project.
The fourth container is equivalent to building stories and hosts the building elements, like Walls or Furniture. Since Revit often has many reference levels that do not represent the building structure, every Revit level has the property Building Story, which defines whether the level will be exported to IFC.
If this option is checked, the level will be exported to IFC; if not, it will be ignored. The elements that are assigned to a non-building story in Revit will be automatically assigned to the next lower building story. If there is no lower building story, they are assigned to the next upper. Every project should have at least one Building Story.
The following videos provide an overview of the topics discussed in this section: ▶️ IfcProject, IfcSite, IfcBuilding - default properties and naming ▶️Revit Levels in IFC