# A Systematic Review of the Trends and Advances in IFC Schema Extensions for BIM Interoperability
## 5 Evaluation of IFC Schema Extension Cases
### Detailed Analysis of Extension Implementation and Validation Approaches  
#### 5.4.1 Analysis of Implementation Approaches  
The corpus of extension cases used different approaches to implement their extensions, and these approaches could also be largely categorized by the extension approaches, i.e., entity or property extensions.  
For entity extension cases, the main approach for implementation was the use of STEP toolkits. As delineated in Section 4.2, integrating new entities requires associating their geometry and relations in accordance to the existing entities of the IFC schema while conforming to object-oriented principles and inheritance hierarchies. STEP toolkits facilitate this process. For example, ST-Developer enables the creation of class libraries for geometry and associated information pertaining to new entities using either C++ or Java. The class libraries can be subsequently compiled and added into the IFC export functions of BIM authoring tools, enabling BIM elements to be mapped to the new entities. Extension cases conducted by [30,87] used STEP toolkits for such purposes. They first designed new entities utilizing EXPRESS, which were subsequently translated into Java/C# class libraries using ST-Developer and added into the Revit API as part of its IFC translator.  
Cases limited to property extensions predominantly used mapping functions directly supplied by major BIM authoring tools. As mentioned in Section 4.1, these tools provide export functionalities that allow the mapping of parameters to IFC properties. For instance, Revit allows property extensions by enabling users to define new parameters and then subsequently to provide mapping functionalities prior to exporting an IFC. The process can be semi-automated by loading predefined text-based mapping tables. This method was employed by [83] to define additional properties required for representing cost information in road construction.  
Figure 8: Trends of extension purpose of architecture domain.  
Figure 9: Trends of extension purpose of infrastructure domain.  
Other cases did not document their implementation approach but expressed their design using EXPRESS-X or EXPRESS-G, which are extensions of the EXPRESS language. EXPRESS-X is a model mapping language developed for the purpose of transforming models defined according to ISO 10303 standards. For IFC extensions, it facilitates the provision of mapping information during the transition of a BIM model to an IFC physical file (IPF). For instance, ref. [95] documented entities, relationships, and attributes in EXPRESS-X to articulate georeferencing data. Alternatively, EXPRESS-G offers a graphical notation syntax for a visual representation of the extended entities and properties within the context of the existing standard schema. Ref. [96] introduced the necessary entities for the product representation of river facilities and exclusively outlined the conceptual relationships between entities using EXPRESS-G. Although both approaches represent the extensions in legitimate formats, they differ in their depth and detail: EXPRESS-X cases not only presented the conceptual framework but also depicted the structural mapping of properties associated with entities. EXPRESS-G cases were slightly more abstract, focusing only on defining semantic mappings between models, foregoing a deeper structural representation.