# 5.1.3.40 IfcRelDefinesByType

## 5.1.3.40.1 Semantic definition

The objectified relationship IfcRelDefinesByType defines the relationship between an object type and object occurrences. The IfcRelDefinesByType is a 1-to-N relationship, as it allows for the assignment of one type information to a single or to many objects. Those objects then share the same object type, and the property sets and properties assigned to the object type.

The IfcRelDefinesByType links the object type definition with the object occurrence. Both may define properties by assigning an IfcPropertySet, including one or many subtypes of IfcProperty to either the object type or object occurrence, as shown in Figure 5.1.3.40.A.

There are several scenarios to define the same property set on the object type definition and object occurrence side:

1. All properties for all object occurrences of a common object type have the same value - then only the object type definition has a property set assigned.
2. All properties for all object occurrences are different, that is there are no common property values for the object type definition - then each of the object occurrence has a property set assigned.
3. Some properties within the same property set have common values and are assigned to the object type definition and some are occurrence specific and assigned (with potentially different values) to the object occurrences - then:
• The sum of all properties within a given property set applicable to an object occurrence is the union of properties assigned to the object type definition plus the properties assigned to the object occurrence.
• If the object occurrence has a property with the same IfcProperty.Name in an IfcPropertySet, as the corresponding object type definition, then the occurrence property value overrides the type property value.

The following table provides an example of assigning properties that can be overridden.

## 5.1.3.40.5 Formal representation

ENTITY IfcRelDefinesByType
SUBTYPE OF (IfcRelDefines);
RelatedObjects : SET [1:?] OF IfcObject;
RelatingType : IfcTypeObject;
END_ENTITY;