IFC 4.3.x development

5.1.3.39 IfcRelDefinesByProperties

Change log

IFC4

additions attributes RelatingPropertyDefinition
additions where_rules NoRelatedTypeObject
modificationsattributes RelatingPropertyDefinition definitionChanged from IfcPropertySetDefinition to set[1:?] of IfcObjectDefinition
modificationsattributes RelatingPropertyDefinition name Changed from RelatingPropertyDefinition to RelatedObjects

IFC4X1

additionswhere_rulesNoRelatedTypeObject
deletionswhere_rulesNoRelatedTypeObject

IFC4X2

additionswhere_rulesNoRelatedTypeObject
deletionswhere_rulesNoRelatedTypeObject

IFC4X3_RC3

additionswhere_rulesNoRelatedTypeObject
deletionswhere_rulesNoRelatedTypeObject

5.1.3.39.1 Semantic definitions at the entity

The objectified relationship IfcRelDefinesByProperties defines the relationships between property set definitions and objects. Properties are aggregated in property sets. Property sets can be either directly assigned to occurrence objects using this relationship, or assigned to an object type and assigned via that type to occurrence objects. The assignment of an IfcPropertySet to an IfcTypeObject is not handled via this objectified relationship, but through the direct relationship HasPropertySets at IfcTypeObject.

The IfcRelDefinesByProperties is an N-to-N relationship, as it allows for the assignment of one or more property sets to one or more objects. Those objects then share the same property definition.

HISTORY  New entity in IFC2.0. Has been renamed from IfcRelAssignsProperties in IFC2x.

IFC4 CHANGE  The attribute RelatedObjects had been demoted from the supertype IfcRelDefines to IfcRelDefinesByProperties. This relationship has been modified to support multiple property sets referenced by a single relationship.

5.1.3.39.1 Attributes

#Attribute Type Description
IfcRoot
1GlobalId IfcGloballyUniqueId Assignment of a globally unique identifier within the entire software world.
2OwnerHistory OPTIONAL IfcOwnerHistory Assignment of the information about the current ownership of that object, including owning actor, application, local identification and information captured about the recent changes of the object,

> NOTE  only the last modification in stored - either as addition, deletion or modification.

> IFC4 CHANGE  The attribute has been changed to be OPTIONAL.
3Name OPTIONAL IfcLabel Optional name for use by the participating software systems or users. For some subtypes of IfcRoot the insertion of the Name attribute may be required. This would be enforced by a where rule.
4Description OPTIONAL IfcText Optional description, provided for exchanging informative comments.
IfcRelationship
IfcRelDefines
IfcRelDefinesByProperties
5RelatedObjects IfcContext Reference to the objects (or single object) to which the property definition applies.

> IFC4 CHANGE  Data type promoted from subtype IfcObject.
6RelatingPropertyDefinitionIfcPropertySetDefinitionSelectReference to the property set definition for that object or set of objects.

5.1.3.39.2 Entity inheritance

dot_inheritance IfcRelDefinesByProperties IfcRelDefinesByProperties IfcRelDefines IfcRelDefines IfcRelDefinesByProperties->IfcRelDefines IfcRelDefines_children 3 more... IfcRelDefines_children->IfcRelDefines IfcRelationship IfcRelationship IfcRelDefines->IfcRelationship IfcRelationship_children 5 more... IfcRelationship_children->IfcRelationship IfcRoot IfcRoot IfcRelationship->IfcRoot IfcObjectDefinition IfcObjectDefinition IfcObjectDefinition->IfcRoot IfcPropertyDefinition IfcPropertyDefinition IfcPropertyDefinition->IfcRoot

5.1.3.39.3 Definitions applying to General Usage

5.1.3.39.3.1 Identity

IfcRoot assigns the globally unique ID. In addition it may provide for a name and a description about the concept.

5.1.3.39.3.2 Revision Control

Ownership, history, and merge state is captured using IfcOwnerHistory.

5.1.3.39.4 Formal representations

ENTITY IfcRelDefinesByProperties
 SUBTYPE OF (IfcRelDefines);
	RelatingPropertyDefinition : IfcPropertySetDefinitionSelect;
	RelatedObjects : IfcContext;
 WHERE
	NoRelatedTypeObject : SIZEOF(QUERY(Types <* SELF\IfcRelDefinesByProperties.RelatedObjects |  'IFC4X3_DEV.IFCTYPEOBJECT' IN TYPEOF(Types))) = 0;
END_ENTITY;