IfcPropertySet: IFC object properties
IfcPropertySet: the difference between predefined and custom properties. How to read, edit and add them to an IFC model
In this post we will take a closer look at what IfcPropertySet
is, what it is used for and how a user can edit it.
We’ll also provide you with some practical examples that will allow you to manage your object properties and an IFC file ready for you to download and use for:
- reading the entity properties of your 3D model;
- adding custom properties;
- editing existing properties.
To open this sample file you can use usBIM.viewer+ (the freeware for managing IFC files) or an online IFC editor.

IfcPropertySet | How to read a wall properties in usBim.viewer+
IfcPropertySet
definition
IfcPropertySet
is a set of properties that can be assigned to an IFC model object.
The properties contained in this set can be of two types:
- predefined;
- additional / customized (ie user defined).
The predifined properties within a property set are defined as part of the standard; they are automatically generated by the authoring software that we used to model the project and are listed in the specifications of each entity of the 3D model.
These properties are identified by a string with the Name attribute which needs be of the type: Pset_NAME.
To read and verify the properties assigned to each entity in your project:
- open the project with usBIM.viewer+;
- select an entity of the 3D model;
- read the properties in the toolbox on the right-hand side.
The illustration below shows how you can read the IfcWindow entity’s IfcPropertySet
. You can download the example model and open it using the freeware usBIM.viewer+ to easily read the predefined properties of an object.

How to view the IfcPropertySet in usBIM.viewer+
In addition to the predefined properties, you can also define custom properties, i.e. those added to the model directly by the user. These properties follow a non-standardized but conventionally chosen nomenclature among the different actors involved in the construction process
To know more about the IfcPropertySet
, take a look at the article “IFC schema: IfcPropertyDefinition”.
Further on this article, we’ll show you an example that shows how to add and edit the custom properties of a 3D model.
What is theIfcPropertySet
for?
The IfcPropertySet
, being a proprietary container, serves to communicate project information to all the actors involved and throughout a building’s life cycle.
As above mentioned, by opening an IFC file generated by any BIM authoring software that is certified by buildingSMART, you can find various entities and Pset (PropertySets) for the information exchange relating to the model.
However, it may happen that the properties envisaged by the standard are not sufficient to communicate all aspects of the entire life cycle of a building.
In these cases, the information system can be implemented by adding custom properties (IfcPropertySet
). In an IFC file they are generated as references to external data and therefore do not modify the IFC schema. The “implemented” data schema can be used without issues in all BIM software that support the IFC.
The predefined properties from buildingSMART
The Property Sets predefined by bS for the IfcSharedBldgElements
are the following:
- Pset_BeamCommon
- Pset_ColumnCommon
- Pset_CurtainWallCommon
- Pset_DoorCommon
- Pset_DoorWindowGlazingType
- Pset_DoorWindowShadingType
- Pset_MemberCommon
- Pset_PlateCommon
- Pset_RailingCommon
- Pset_RampCommon
- Pset_RampFlightCommon
- Pset_RoofCommon
- Pset_SlabCommon
- Pset_StairCommon
- Pset_StairFlightCommon
- Pset_WallCommon
- Pset_WindowCommon
In practice, for each type of element (doors, windows, walls, etc.) there are “standard” properties that characterize it.
Let’s try to analyze the Pset_WallCommon
as example. The wall properties are:
Reference
: this is a property defined by a single value that provides an object ID within the project (eg. tipo “A-1”);AcousticRating:
indicates the object’s acoustic properties, such as its resistance to sound transmission (instead of providing the complete sound absorption values);FireRating:
indicates the fire resistance properties of materials according to the national fire classification;Combustible
: simply indicates whether the material is flammable (true) or not (false);SurfaceSpreadOfFlame:
indicates the way in which the flames spread around the material surface, according to national regulations on materials behaviour in case of fire;ThermalTransmittance:
indicates a material thermal transmittance coefficient (U value);IsExternal:
property that answers the question “is the object intended to carry loads (TRUE) or not (FALSE)?”ExtendToStructure:
indica se l’oggetto si estende alla struttura sopra (VERO) o meno (FALSO);LoadBearing:
proprietà che risponde alla domanda “l’oggetto è destinato a trasportare carichi (VERO) o meno (FALSO)?”Compartmentation:
indicates if the object is designed to act as a fire compartment (TRUE) or not (FALSE).
Custom properties
If the predefined properties are not sufficient or suitable for your project, you can customize them or create new ones.
How to set /edit custom properties
To edit the properties of a 3D model, and then be able to customize them, follow these simple steps:
- open the project with usBIM.viewer+ clicking on:
- create document from 3D file
- create document from IFC file
- click on Edit IFC>edit;
- select the entity;
- from the tool bar, in the properties section, click on Edit;
- change Name, Type or Value acoording to your needs;
- confirm the change just made by clicking on the green tick.
Once completed, you can check the changes made by reading the properties in the tool box on the right-hand side.
How to add a new property to an IFC model
To add new properties to the entities of a model, and then to yourIfcPropertySet
you simply need to:
- download usBIM.viewer+
- open the file clicking on:
- create document from 3D file
- create document from IFC file
- click on Edit IFC>edit
- select the entity
- from the tool bar, in the properties section, click on Edit
- click on Add group> Add property
- assign the Name, Type and Value to the new property
- confirm the change just made by clicking on the green tick.
Once finished, you can check the changes made by reading the properties in the tool box on the right.