In IFC, most information about an element that is not geometry is held in property sets: named groups of properties attached to an element or its type. Measured values such as length, area and volume are held in quantity sets. IFC defines standard sets for many classes; projects add custom sets for anything else.
At a glance
| Property set | Quantity set | |
|---|---|---|
| IFC class | IfcPropertySet | IfcElementQuantity |
| Standard prefix | Pset_ (for example Pset_WallCommon) | Qto_ (for example Qto_WallBaseQuantities) |
| Holds | Properties: text, numbers, booleans, enumerations, lists | Quantities: length, area, volume, count, weight, time |
| Attached to | Elements (occurrences) or types | Usually occurrences |
Standard sets
buildingSMART defines property sets for most IFC classes. Two examples:
| Set | Some properties |
|---|---|
| Pset_WallCommon | Reference, IsExternal, LoadBearing, FireRating, AcousticRating, ThermalTransmittance |
| Pset_DoorCommon | Reference, FireRating, SecurityRating, IsExternal, HandicapAccessible |
The ...Common sets exist for most building elements. Standard names matter: checkers, viewers and other tools know where to find a standard property.
Custom sets
When a project needs information that no standard set covers, it defines its own set, often with a company or project prefix (for example ABC_Maintenance). Custom set and property names should be defined once in the information standard, ideally referencing a data dictionary such as bSDD, so every team exports them identically.
The Pset_ prefix is reserved for buildingSMART's standard sets; custom sets should not use it.
Type or occurrence
A property can be attached to the type (all doors of type D01 share a fire rating) or to the occurrence (each door has its own room number). If both carry the same property, the occurrence value takes priority. Putting shared values on types keeps models consistent and files smaller.
From authoring tools
Authoring tools hold information as parameters or properties in their own structure. On IFC export, a mapping decides which parameters go into which sets. Without a mapping, information may be missing, in the wrong set, or exported under internal names.
Common mistakes
- Custom sets using the
Pset_prefix, or standard properties exported into custom sets. - The same property under several spellings across teams.
- Quantities typed in as properties, so tools that read Qto_ sets ignore them.
- Values stored as text when a number with a unit is needed.
Where to read more
The IFC documentation lists the standard property and quantity sets for each class. bSDD publishes the same definitions with an API.