# A Systematic Review of the Trends and Advances in IFC Schema Extensions for BIM Interoperability
## 4 Limitations and Extension Approaches for the IFC Schema
### Approaches for IFC Schema Extension  
The IFC schema can be extended primarily using two approaches: either by creating entirely new entities or integrating and/or linking additional information to existing entities. Within the scope of this study, they are designated as an 'entity extension' and a 'property extension', respectively. 1. Entity extensions:  
Entity extension is a method where users directly define new entities. This approach typically involves creating sub-entities to an existing schema or modifying the schema with grouped entities for a novel domain. When defining a new IFC entity, several key considerations come into play: object-oriented principles, inheritance mechanism, attributes, relationships, and compliance with the IFC specification. This approach offers the advantage of allowing users to express previously unsupported domains and inherent entities according to their specific definitions alongside corresponding specialized attributes with sub-typing, which means a methodology for adding specifications under IFC schema according to EXPRESS data modeling rules [35]. However, if these extensions are not registered as part of the standard schema, they can only be used by software that has been customized to recognize the new entities. Thus, for general applicability, the new entities have to be formally introduced into the IFC schema to be recognized in general software and their built-in MVDs [36]. 2. Property extensions:  
Property extension refers to the technique of adding and integrating new classifications, taxonomies, and attributes to further qualify existing entities. The IFCs enable property extensions mainly by using type entities or defining custom property sets. Type entities, such as element type (_IfcElementType_) or space type (_IfcSpatialElementType_), are used to qualify specific entities into more detailed classifications. For example, _IfcBeam_ uses _IfcBeamType_, which is a subtype of _IfcBuiltElementType_ in _IfcElementType_, to further denote beam types. These entities also allow custom types through the use of USERDEFINED attributes. For property sets, the _IfcPropertySetDefinition_, part of the property segment, is linked to the _IfcObject_ from the object segment through _IfcRelDefinesByProperties_, a relational entity. Additionally, for widely used items, predefined entities for properties are established in advance to ensure the transparent conveyance of information. In such instances, _IfcPre-DefinedProperties_ are deployed. Compared to the entity extension method, this approach is advantageous in direct compatibility with general software, as it does not alter the IFC schema itself. More recent developments allow linking external data using reference pointers or linking features. This approach offers enhanced usability as it links and integrates information into an already-existent entity, preserving the integrity of the schema. Three methodologies for implementing this latter approach have been proposed by bSI, which are detailed as follows [37]:  
1. _IfcClassification_:  
Classification is the systematic arrangement or categorization of objects or elements based on specific characteristics or criteria. The _IfcClassification_ entity within the IFC schema symbolizes such classification systems, offering a conduit to reference an external classification system. It can establish associations with other entities in the IFC model, such as objects or property definitions, using _IfcRelAssociatesClassification_. This mechanism enables the application of diverse classification systems in conjunction with IFC, promoting a standardized and consistent classification of objects within an IFC model. 2. Linkage with the bSDD and OTL:  
The buildingSMART Data Dictionary (bSDD) and other object-type libraries (OTLs) offer industry-specific terminology in a structured, computer-readable format. To facilitate this computer-readability, ontologies, which define concepts, properties, and relationships,are employed.