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
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
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.