Skip to content

Object Types

In IFC, objects can have a type that defines commonly shared information for occurrences of that object type. The set of shared information may include:

  • common properties within shared property sets
  • common material information
  • common shape representations

And for each object type some characteristics that are peculiar to that object type such as e.g. for Windows:

  • common partitioning of panels
  • common operation types of panels

Hereunder a list of some objects and corresponding types

Object Type
IfcWall IfcWallType
IfcCurtainWall IfcCurtainWallType
IfcSlab IfcSlabType
IfcBeam IfcBeamType
IfcColumn IfcColumnType
IfcCovering IfcCoveringType
IfcWindow IfcWindowType
IfcDoor IfcDoorType
IfcPlate IfcPlateType
IfcStair IfcStairType
IfcSpace IfcSpaceType
IFCRailing IFCRailingType
IFCMember IFCMemberType

The relationship between these object and their correponding object type is embodied in the IfcRelDefinesByType relationship where the RelatingType is the Object Type and the RelatedObjects are the objects with that type.

To make things a little bit more complex, the RelatingType can also be an Object Style for some objects. This applies to IFC2X3 files and has been deprecated in IFC4.

Object Style
IfcDoor IfcDoorStyle (deprecated in IFC4; IfcDoorType used instead)
IfcWindow IfcWindowStyle (deprecated in IFC4; IfcDoorType used instead)

There are still a lot of IFC2X3 files

The following figure illustrates the relationship for property sets

IfcRelDefinesbyType

This means that an object (e.g. an IfcWindow) will have properties from all the propertySets:

  • associated with the object via an IfcRefDefinesByProperties relationship where the propertySet reference is the RelatingPropertyDefinition and the object reference is part of the RelatedObjects list.
  • associated with the objectType (i.e. IfcWindowType) associated to the object via the relationship IfcRelDefinesByType where the objectType reference is the RelatingType and the object is part of the Related Objects list and the propertySet reference is part of the hasPropertySets list of the objectType
  • associated with the objectStyle (i.e. IfcWindowStyle) in the same as with an objectType

The following figure illustrates the relationship for material

IfcWallStandardCase_MaterialUsage

The following two figures illustrates the relationship for representations

The product representations are defined as representation maps (at the level of the supertype IfcTypeProduct (Wall, Slab, ...)), which gets assigned by an element occurrence instance through the IfcShapeRepresentation.Item being an IfcMappedItem.

IfcWallStandardCase_MaterialUsage 1

IfcWallStandardCase_MaterialUsage 2