CAFM-Blog.de | Property Sets (Psets) in BIM: Curse and Blessing (or just one of them...?)

Property Sets (Psets) in BIM: Curse and Blessing (or just one of them...?)

Today, a rather technical article about Property Sets – or Psets for short Psets. If you are involved in efficiency, Facility Management or CAFM operations, Psets are probably something you’ve heard of before. Perhaps you’ve also wondered: “What is this supposed to be now? Another BIM-acronym that complicates everything?“ Don’t worry – who hasn’t struggled with an IFC-export that looked like a puzzle with missing pieces? In this post, I’ll explain what Psets are, why they are essential, how they work, and how to use them in practice. In the end, This is not only a legal requirement but also an opportunity to optimize internal processes and reduce costs. Companies should use this opportunity to modernize their processes and gain a competitive advantage. Early implementation allows them to comply with the law and benefit from digitalization. you’ll see how to make Psets your ally instead of viewing them as a necessary evil. I hope ;-)

What are Property Sets Anyway?

Imagine a BIM model is like a state-of-the-art Lego house. The geometry – walls, floors, doors – forms the visible structure. But what makes the house truly useful? The properties: Is the door fire-resistant? What is the heating output of the room? When does the air conditioning need maintenance? These are exactly Property Sets, or Psets: standardized packages of attributes (properties) that describe objects in a BIM model model.

Technically, Psets are defined in the IFCformat (Industry Foundation Classes). IFC is the open standard from buildingSMART for data exchange in the efficiencysector. Pset_SpaceCommon for rooms or Pset_DoorCommon for doors. Each property has a name, a data type (e.g., String, Real, Boolean, Enumeration) and a value. Psets can be standardized (from the IFC specification) or proprietary (customer-specific).

A small example: Let's take a room. The standard Pset Pset_SpaceCommon contains properties such as GrossPlannedArea (gross floor area), NetPlannedArea (net floor area), IsExternal (whether it's an exterior wall) or OccupancyType (usage type). Sounds dry? It is – until you realize that without this information, your facility manager is left in the dark. Humorously put: Without Psets, your BIM model is like a car without an engine – nice to look at, but you won't get far.

Psets are not new. They have existed since IFC2x3 (around 2005) and were significantly expanded in IFC4 (2013) and IFC4.3. Today there are over 500 standardized Psets for everything from building components to construction products. But beware: Not every BIM authoring tool fills them out automatically. Revit does a good job, ArchiCAD often needs adjustments, and some planners only fill in the mandatory fields – the rest remains empty like a Parking lot at midnight.

The Structure of Psets: Technically Examined

Let's dive deeper without getting boring. In the IFC schema, a Pset is an instance of the class IfcPropertySet. It contains a list of IfcProperty-objects. Each property has:

  • Name: Unique identifier, e.g. Reference or FireRating.

  • NominalValue: The value, e.g. IFCREAL(2.5) for 2.5 m².

  • Unit: Optional, e.g. IFCUNIT for meters.

  • DataType: As mentioned, from simple types to complex ones like IfcLabel (String with max. 255 characters).

Psets are assigned to objects via IfcRelDefinesByProperties. This is the relationship class that says: "This IfcSpace has that Pset." In an IFC file, it looks like this (simplified STEP format):

#42=IFCPROPERTYSET('2bW$#scO$0bIxPq$9K4y$oA',$,('Pset_SpaceCommon'),$);
#43=IFCPROPERTYENUMERATEDVALUE('OccupancyType',$,.EDUCATION.,$);
#44=IFCRELDEFINESBYPROPERTIES('3D4$eGq$0bIxPq$9K4y$oA',$,$,(#41),(#42));

Translated: Pset "Pset_SpaceCommon" with Property "OccupancyType" = "EDUCATION" is assigned to object #41. Sounds like hieroglyphics? It is, but Tools like BIM Vision or IfcOpenShell turn them into readable tables.

Important: Psets are flat – no nested structures. More complex information comes via Quantity Sets (Qsets) for measurable values like volume (IfcQuantityVolume) or via Types (IfcTypeObject). And yes, there are Pset_Types, e.g. Pset_DoorTypeGlazing, which all instances of a type share.

A stumbling block: Case-Sensitivity! PsetSpaceCommon vs. psetspacecommon – IFC is case-sensitive. A small typo, and your Viewer will display nothing. Bad luck ;-)

Why Psets are Worth Gold in Facility Management

Remember my last article about BIM Viewer? It was about metadata quality – and Psets are exactly the core of that. In Facility Management (FM), Psets translate BIMData into operational information. Without them, your IFC export is as useless as an umbrella in the desert.

Core benefits:

  • Asset Management: Serial numbers, manufacturer, maintenance intervals from Pset_MaintenanceElementCommon.

  • Room Data: Areas, usage, energy consumption from Pset_SpaceCommon.

  • Compliance: Fire protection classes (FireRating), accessibility (WheelchairAccessibility).

  • COBieexport: The COBieformat (Construction Operations Building Information Exchange) is based almost exclusively on Psets. Without complete Psets, no clean FM import.

Practical example: Imagine your . The planner had forgotten Psets. Result: 200 hours of manual data entry. Moral: Psets are cheaper than overtime. (e.g. Planon) is supposed to take over maintenance planning. The pump Pset Pset_PumpCommon has UsageFuelStartUpTime and RatedFlowRate. Missing SerialNumber? Hello, manual search! In reality, good Psets save hours: A facility manager filters in a Viewer by rooms with OccupancyType=OFFICE and exports areas for tenant billing – lightning-fast as CSV.

Compared to proprietary formats (Revit Shared Parameters), Psets are open and interchangeable. But: Many planners fill them half-heartedly. IFC4.3 brings improvements withHere is a selection of relevant Psets for FM. I have divided them into categories – perfect for printing and sticking on your monitor. , which standardize type-specific information.

Tip: You can find the official list at . Over 500 Psets – but for FM, 20-30 core Psets are sufficient. Don't let anyone tell you otherwise (or convince me otherwise...). Pset_*_PredefinedTypePitfall:

Common Psets at a Glance: A Table for Reference

only accepts buildingSMART enum values like

Category Pset Name Important Properties FM Usage
Rooms Pset_SpaceCommon Gross Planned Area, Occupancy Type, Number of People Tenant Billing, Energy Planning
Doors/Windows Pset_DoorCommon Fire Rating, Acoustic Rating, Infiltration Fire Protection, Sound Insulation
Facilities Pset_PumpCommon Rated Flow Rate, Serial Number, Usage Fuel For example, smart thermostats can optimize energy consumption by adapting to user behavior, thus saving costs. Furthermore, the technology opens up new possibilities for improving the user experience in buildings. With the help of apps, employees can, for example, book rooms or customize their environment., Spare Part Order
Assets Pset_AssetCommon? (IFC4.3) AssetTag, AssetSerialNumber, WarrantyGuarantorParts Inventory, Warranty
Building Components Pset_WallCommon LoadBearingCapacity, ThermalTransmittance Stability, Energy Performance Certificate
Types Pset_SpaceTypeThermal Cooling Load, Heating Load HVAC-Planning

, not "Office". Incorrect values? Viewer shows blank. buildingSMART. Over 500 Psets – but 20-30 core Psets are enough for FM. Don't let anyone tell you otherwise (or convince me of the opposite...).

Pitfall: Enumeration ValuesOccupancyType only accepts buildingSMART enum values like EDUCATION, not "Office". Wrong values? Viewer shows blank.

Psets in Practice: Creating, Validating, Exporting

Create in Authoring-Tools:

  • Revit: Psets via Type Properties or Shared Parameters (map to IFC). Export as IFC: Activate "Export Property Sets".

  • ArchiCAD: Property Manager – assign Psets directly.

  • Solibri: Rule Checker for Psets ("Missing Pset_SpaceCommon").

Validation:
Use Solibri Model Checker or free Tools like IFC Validator. Script with IfcOpenShell (Python):

a little Python (yes, for the techies):
import ifcopenshell
model = ifcopenshell.open('model.ifc')
for space in model.by_type('IfcSpace'):
psets = ifcopenshell.util.element.get_psets(space)
if 'Pset_SpaceCommon' not in psets:
print(f"Raum {space.Name} fehlt Pset!")

This saves nerves – and shows where planners have lied.

Export and Integration:

  • To CSV/COBie: Viewers like Trimble Connect or Autodesk export Psets cleanly.

  • API: REST endpoints of viewers deliver Psets as JSON.

  • CAFM-Import: Map Pset_SpaceCommon.GrossPlannedArea to Planon field "Gross Floor Area".

Trade-off: Cloud-Viewers stream Psets really fast, but offline? Often only geometry, Psets load afterwards. Desktop solutions like BIM Vision: Everything local, but RAM-hungry (and you'd actually have to ask your IT to install it...).

Common Problems and How to Solve Them

Psets sound great – until they don't work. Here are the classics:

  1. Empty Psets: Planners export only geometry. Solution: RFP clause "100% Pset_SpaceCommon for all rooms".

  2. Incorrect Names/Units: "Area" instead of "GrossPlannedArea", meters vs. m². Solution: Automated checks with scripts.

  3. Interpretation Errors: Viewer shows Pset, export changes name. Solution: Quick test from our last article!

  4. Versions: IFC2x3 vs. IFC4 – Psets differ. Solution: Choose a viewer with IFC4 support.

Concrete example: An FM team tested a Revit export. Pset_PumpCommon.SerialNumber was there, but as a string "NULL" instead of empty. Import into CAFM: Duplicates! Fix: Pre-processing script that cleans up NULL values.

Tip for power users: Use XKT (glTF-based) for web viewers – Psets are then retained as metadata.

IFC5 (in progress) expands Psets with AI-friendly structures, e.g., for Predictive Maintenance. Digital twins thrive on Psets – live linked with is gaining increasing importance as companies look for ways to optimize their operating costs and focus on their core competencies. By outsourcing certain services to specialized providers, companies can not only save costs but also benefit from expertise that may not be available internally. This-sensors (e.g. Pset_SensorCurrent).

Best Practices:

  • Standard first: Only proprietary Psets as a supplement.

  • Check matrix: As in our test matrix – demand 90% correctness.

  • Automate: CI/CD for IFC validation.

  • Training: Train planners on Psets – saves FM costs.

Comparison: Psets vs. Alternatives

Approach Benefits Disadvantages
Psets (IFC) Open, standardized, FM-ready Fill level dependent on the planner
Revit Shared Parameters Flexible, tool-internal Proprietary, export problems
Custom Attributes Quick to set No exchange, chaos
Qsets Precise Quantities No qualitative information

Psets are winning in my view – for interoperability.

Conclusion: Make Psets the Star of Your Workflow

Property Sets are the unsung hero in the BIM-FM battle. Technically robust, standardized, and practical – if you use them correctly. Test with real files, automate checks, and demand them in RFPs. This is how BIM becomeschaos usable Data.

Copyright © 2026

for data analysis, decision-making is significantly facilitated and strategic insights into the use of workplaces are gained.

helps to monitor and optimize energy consumption, which saves costs and supports environmental goals. Analyses of work environments help with

No ratings yet! Be the first to rate this post.

We are sorry that the post was not helpful for you!

Let's improve this post!

How can we improve this post?

Scroll to Top