- Pset_*Common is buildingSMART's standard property set for each element type
- "Common" means the minimum you may expect from any tool — vendor psets are a separate thing
- Quantities do not live in a Pset; they live in Qto_*BaseQuantities
- An empty property usually means the exporter never wrote it, not that the file is broken
You open an IFC someone sent you, look at the properties panel, and see Pset_WallCommon and Qto_SlabBaseQuantities staring back — with no obvious way to tell which of it is standard and which is whatever their authoring tool decided to add. This is a lookup table for the standard sets you actually meet on projects.
What Pset_*Common means
Properties in IFC do not hang off an element one at a time. They arrive in bundles called property sets (psets). The mechanics are covered in property sets and classification; for this page one distinction is enough.
A name that starts with Pset_ and ends in Common is defined by buildingSMART in the schema. Anything else — Pset_ACME_Something, ArchiCADProperties, Pset_TQS_Padrao — was added by an authoring tool or a template.
The distinction earns its keep when you do not know what the sender used. A standard pset is something you can expect under the same name whether the file came out of Revit or ArchiCAD. A vendor pset is only reliable if you run the same tool they do.
Standard psets by element type
These are the properties observed across real IFC files. Not every exporter writes every field — whether it appears at all is an export setting on the sending side.
| Element | Pset | Main properties |
|---|---|---|
| Wall | Pset_WallCommon |
Reference / IsExternal / LoadBearing / FireRating / AcousticRating / ThermalTransmittance / ExtendToStructure |
| Slab / floor | Pset_SlabCommon |
Reference / IsExternal / LoadBearing / FireRating / AcousticRating / ThermalTransmittance / PitchAngle |
| Column | Pset_ColumnCommon |
Reference / IsExternal / LoadBearing / FireRating / Slope / Roll |
| Beam | Pset_BeamCommon |
Reference / IsExternal / LoadBearing / FireRating / Slope / Span |
| Roof | Pset_RoofCommon |
Reference / IsExternal / LoadBearing / TotalArea / ProjectedArea |
| Door | Pset_DoorCommon |
Reference / IsExternal / FireRating / FireExit / SelfClosing / SmokeStop / AcousticRating / SecurityRating / ThermalTransmittance / GlazingAreaFraction / HandicapAccessible |
| Window | Pset_WindowCommon |
Reference / IsExternal / FireRating / SmokeStop / AcousticRating / SecurityRating / ThermalTransmittance / GlazingAreaFraction |
| Stair | Pset_StairCommon |
Reference / IsExternal / NumberOfRiser / NumberOfTreads / RiserHeight / TreadLength / NosingLength / RequiredHeadroom / HasNonSkidSurface / WalkingLineOffset |
| Covering / finish | Pset_CoveringCommon |
Reference / IsExternal / Material / Finish / TotalThickness / FireRating / AcousticRating / Combustible / FlammabilityRating / SurfaceSpreadOfFlame |
| Member (brace, strut) | Pset_MemberCommon |
Reference / IsExternal / LoadBearing / FireRating / Slope / Span |
| Plate | Pset_PlateCommon |
Reference / IsExternal / LoadBearing / FireRating / AcousticRating / ThermalTransmittance |
| Unclassified element | Pset_BuildingElementProxyCommon |
Reference / IsExternal / LoadBearing / FireRating |
The four you will see almost everywhere
Reference
The type mark. Usually the drawing's own code — "W-01", "S-200" — as a string.
IsExternal
Whether the element faces outside. A boolean, and the starting point for envelope take-offs and thermal work.
LoadBearing
Whether it is structural. The first thing a structural engineer filters on.
FireRating
Fire performance — and note it is a string, not a number: "60", "1 hour", "REI 60".
Quantities live in Qto, not Pset
Looking for area or volume in Pset_WallCommon will not find them. Quantities sit in a parallel family, Qto_*BaseQuantities (some exporters write plain BaseQuantities).
| Quantity set | Main quantities |
|---|---|
Qto_WallBaseQuantities | Length / Width / Height / GrossSideArea / NetSideArea / GrossFootprintArea / NetFootprintArea / GrossVolume / NetVolume |
Qto_SlabBaseQuantities | Width / Length / Depth / Perimeter / GrossArea / NetArea / GrossVolume / NetVolume / GrossWeight / NetWeight |
Qto_ColumnBaseQuantities / Qto_BeamBaseQuantities | Length / CrossSectionArea / OuterSurfaceArea / GrossVolume / NetVolume |
Do not mix up Gross and Net. Gross is before openings are deducted, Net is after. On a heavily glazed wall the two are very different numbers, and picking the wrong one quietly changes the take-off. Quantity takeoff from IFC goes into it.
When a property is empty, check in this order
It was never exported
By far the most common cause. Property output is off by default in some authoring tools' IFC settings, so start with the export configuration rather than the file.
It is in a vendor pset instead
Fire rating may be sitting under a tool-specific name, sometimes in the sender's own language. Searching only for the standard name will miss it.
It is on the type, not the occurrence
Properties attach to element types as well as to individual elements, and some viewers show type properties in a separate place — easy to walk past.
The IFC version differs
Some properties moved or were renamed between IFC2x3 and IFC4, so check which version you are holding.
Turning “it should be there” into something checkable
Reading a list and eyeballing the model stops working somewhere past a few thousand elements. Writing a requirement like “every wall must carry Pset_WallCommon.FireRating” in a machine-readable form is what IDS is for, and running that requirement against the model is model checking. Missing properties are close to invisible to the eye, so the reference above is only useful in combination with those two.