#### IfcRelationship

Natural language names

##### Semantic definitions at the entity

Entity definition

The abstract generalization of all objectified relationships in IFC. Objectified relationships are the preferred way to handle relationships among objects. This allows to keep relationship specific properties directly at the relationship and opens the possibility to later handle relationship specific behavior.

There are two different types of relationships, 1-to-1 relationships and 1-to-many relationship. used within the subtypes of IfcRelationship. The following convention applies to all subtypes:

- The two sides of the objectified relationship are named
  - Relating+<name of relating object> and
  - Related+<name of related object>
- In case of the 1-to-many relationship, the related side of the relationship shall be an aggregate SET 1:N

> HISTORY: New entity in IFC Release 1.0.

##### Inherited definitions from supertypes

Entity inheritance
Attribute inheritance

# | Attribute | Type | Cardinality | Description | A
--- | --- | --- | --- | --- | ---
IfcRoot
1 | GlobalId | IfcGloballyUniqueId | [1:1] | Assignment of a globally unique identifier within the entire software world. | X
2 | OwnerHistory | IfcOwnerHistory | [1:1] | 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. | X
3 | Name | IfcLabel | [0:1] | 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. | X
4 | Description | IfcText | [0:1] | Optional description, provided for exchanging informative comments. | X
IfcRelationship

##### Formal representations

XSD Specification
`<xs:element name="IfcRelationship" type="ifc:IfcRelationship" abstract="true" substitutionGroup="ifc:IfcRoot" nillable="true"/>
<xs:complexType name="IfcRelationship" abstract="true">
<xs:complexContent>
<xs:extension base="ifc:IfcRoot"/>
</xs:complexContent>
</xs:complexType>
`
EXPRESS Specification
`ENTITY IfcRelationship
ABSTRACT SUPERTYPE OF(ONEOF(IfcRelAssociates, IfcRelConnects, IfcRelDecomposes, IfcRelDefines))
SUBTYPE OF (IfcRoot);
END_ENTITY;

EXPRESS-G diagram

`

Link to this page