Class Ifc4::IfcPropertySet

Nested Relationships

This class is a nested type of Struct Ifc4.

Inheritance Relationships

Base Type

Class Documentation

class Ifc4::IfcPropertySet : public Ifc4::IfcPropertySetDefinition

IfcPropertySet defines all dynamically extensible properties. The property set is a container class that holds properties within a property tree. These properties are interpreted according to their name attribute. The same IfcPropertySet can be assignd to multiple object occurrences, it should then be assigned by a single instance of IfcRelDefinedByProperties to a set of related objects. Those property sets are referred to as shared property sets. It can also be assigned to an object type. The underlying structure, i.e. the required name, the applicable object or object types to which the property set can be attached and the individual properties that maybe included can be assigned using the property set template.

NOTE See IfcRelDefinesByType for how to override property sets assigned to an object type within the object occurrence.

HISTORY New Entity in IFC Release 1.0

IFC2x4 CHANGE All statically defined property set entities are no longer subtypes of IfcPropertySet.

Relationship use definition Property sets are related to other objects by using the relationship object that refers to the corresponding object:

Occurrence Object: IfcRelDefinesByProperties using the inverse attribute DefinesOccurrence. Type Object: using a direct link by inverse attribute DefinesType. External reference: subtypes of IfcRelAssociates are used to provide a link to a classification system, or external library providing further reference to the property set. Accessible by inverse attribute HasAssociations. Underlying template: IfcRelDefinesByTemplate using the inverse attribute IsDefinedBy.

Attribute use definition Instances of IfcPropertySet are used to assign named sets of individual properties (complex or single properties). Each individual property has a significant name string. Some property sets are included in the IFC specification and havea predefined set of properties indicated by assigning a significant name. These property sets are listed under “property sets” main menu item within this specification and from the object documentation sheet for those object to which they are applicable. The naming convention “Pset_Xxx” applies to all those property sets that are defined as part of the IFC specification and it shall be used as the value of the Name attribute. In addition any user defined property set can be captured. Property sets that are not declared as part of the IFC specification shall have a Name value not including the “Pset_” prefix.

Public Types

typedef IfcTemplatedEntityList<IfcPropertySet> list

Public Functions

IfcTemplatedEntityList<::Ifc4::IfcProperty>::ptr HasProperties() const

Contained set of properties. For property sets defined as part of the IFC Object model, the property objects within a property set are defined as part of the standard. If a property is not contained within the set of predefined properties, its value has not been set at this time.

void setHasProperties(IfcTemplatedEntityList<::Ifc4::IfcProperty>::ptr v)
const IfcParse::entity &declaration() const
IfcPropertySet(IfcEntityInstanceData *e)
IfcPropertySet(std::string v1_GlobalId, ::Ifc4::IfcOwnerHistory *v2_OwnerHistory, boost::optional<std::string> v3_Name, boost::optional<std::string> v4_Description, IfcTemplatedEntityList<::Ifc4::IfcProperty>::ptr v5_HasProperties)

Public Static Functions

const IfcParse::entity &Class()