You are on page 1of 12

See discussions, stats, and author profiles for this publication at: https://www.researchgate.

net/publication/340658166

Application of signature-based matching for IFC model comparison

Article in International Journal of Construction Management · April 2020


DOI: 10.1080/15623599.2020.1742630

CITATIONS READS

2 234

2 authors, including:

Muhammad Tariq Shafiq


United Arab Emirates University
25 PUBLICATIONS 192 CITATIONS

SEE PROFILE

Some of the authors of this publication are also working on these related projects:

BIM4Safery View project

All content following this page was uploaded by Muhammad Tariq Shafiq on 06 June 2020.

The user has requested enhancement of the downloaded file.


International Journal of Construction Management

ISSN: 1562-3599 (Print) 2331-2327 (Online) Journal homepage: https://www.tandfonline.com/loi/tjcm20

Application of signature-based matching for IFC


model comparison

Muhammad Tariq Shafiq & Stephen R. Lockley

To cite this article: Muhammad Tariq Shafiq & Stephen R. Lockley (2020): Application of
signature-based matching for IFC model comparison, International Journal of Construction
Management, DOI: 10.1080/15623599.2020.1742630

To link to this article: https://doi.org/10.1080/15623599.2020.1742630

View supplementary material

Published online: 15 Apr 2020.

Submit your article to this journal

View related articles

View Crossmark data

Full Terms & Conditions of access and use can be found at


https://www.tandfonline.com/action/journalInformation?journalCode=tjcm20
INTERNATIONAL JOURNAL OF CONSTRUCTION MANAGEMENT
https://doi.org/10.1080/15623599.2020.1742630

Application of signature-based matching for IFC model comparison


Muhammad Tariq Shafiqa and Stephen R. Lockleyb
a
Department of Architectural Engineering, UAE University, Al Ain, UAE; bDepartment of Architecture and Built Environment, Northumbria
University, Newcastle-upon-Tyne, Northumbria, UK

ABSTRACT KEYWORDS
The paper highlights the problem of Industry Foundation Classes (ISCs) model comparison in a platform- BIM; IFC; model
neutral collaboration of Building Information Models (BIMs). A critical issue in the IFC model comparison comparison; signature
is establishing the right candidates for comparison, which typically depends upon using Globally Unique matching; collaboration
Identifiers (GUIDs). GUIDs are criticised for inconstancies that result because of complex modelling opera-
tions and nature of BIM authoring tools that are used to exchange IFC data. This paper presents a signa-
ture-matching approach that advocates using dynamic object identities, calculated from the
characteristics and attributes of IFC objects, using hash keys that can create a unique signature for an
object. Exemplars of creating IFC object signatures are presented. The proposed methodologies for creat-
ing IFC object signatures are implemented in a custom-built tool, xBIM Signatures exporter, and are veri-
fied using a test case. This research is limited to discussing signatures for IfcBuildingElements and has not
considered a level of details and signature weighting of various object characteristics to formulate a
robust solution. The proposed signature matching approach can benefit model comparison functionality
for model servers and cloud-based collaboration tools.

Introduction a deep tree comparison procedure. GUID is a unique identifier


for object instances that follow the universally unique identifier
The problem of interoperable information exchanges using het- standard (UUID) that provides a way of uniquely identifying an
erogeneous Building Information Modelling (BIM) application object. GUIDS are a reliable base if these are properly main-
has been well researched and has led to the development and tained during the IFC roundtripping in data exchange transac-
implementation of Industry Foundation Classes (IFC) over the tions. However, GUIDS exports are not always consistent due to
last 20 years. IFC has now become a widely accepted open and the complexity of modelling operations, application imprints and
neutral data format specification to facilitate interoperable infor- different internal data structures of BIM tools, which leads to
mation exchanges using Building Information Models in the costly calculations, quality compromises and inaccuracies due to
AEC industry (Gao et al. 2017; Shi et al. 2018). inconsistent GUIDs in IFC model comparison processes (Nour
A platform-neutral BIM-enabled collaboration relies on effect- and Beucke 2008, 2010; Kang and Hong 2015). To address these
ive management of IFC models using a Model Collaboration issues, this paper presents a signature-matching approach that
System or a Model Server. A model server is a type of database advocates using dynamic object identities, calculated from the
system that allows upload, download, sharing and coordination value of its properties and attributes using hash keys that can
(e.g. model comparison, and model checking) of models or com- create a unique signature for an object. In BIM collaboration
ponents by multiple users (Berlo et al. 2012; Cho et al. 2018; operations, a change can be in (1) an object’s position, (2) shape
Shafiq et al. 2018). An IFC enabled model server is expected to and (3) properties. Therefore, an object’s position (Topology),
facilitate the exchange of information between the applications shape (Geometry) and properties (Semantics) can be used to for-
used throughout a building project lifecycle (Singh et al. 2011). mulate partial, default or complete signature for an object, which
The workflow of such a collaboration is built around the concept would be useful in establishing candidates for IFC comparison
of finding changes in two versions or variants of IFC model process, independently from GUIDs, and would reduce the over-
instances and merging them together with the shared data reposi- all workload of the IFC compression process. Signature matching
tory. Thus, the issue of IFC model comparison becomes critical to is useful even if a complete solution is not feasible, as signature
keep track of the changes during the information exchanges. matching can be used to eliminate a significant proportion of
The purpose of IFC comparison process is to identify similar- elements to downsize the comparison criteria for any fur-
ities and differences between two IFC models. A fundamental ther processing.
requirement of an effective IFC comparison process is identifying
comparable objects or identifying candidates for comparison in
The problem of IFC model comparison
the two matching IFC files. Existing IFC Comparisons mecha-
nisms are usually based on using Globally Unique Identifiers A critical issue in managing collaboration operations on a model
(GUIDS) to establish candidates for comparison, in a shallow or server is the management of iterative changes during BIM

CONTACT Muhammad Tariq Shafiq muhammad.tariq@uaeu.ac.ae


Supplemental data for this article can be accessed here.
ß 2020 Informa UK Limited, trading as Taylor & Francis Group
2 M. T. SHAFIQ AND S. R. LOCKLEY

collaboration operations. The shared data repository on the ser- geometry and other semantic characteristics, in addition to using
ver must be updated with any changes because of modifications GUIDs for object recognition and identification in a compari-
made in a check-in/check out the operation, such as new data son process.
instances added, deleted or changed. The information in the
shared repository (i.e. Model server) is defined in terms of a
moment in time and associated versions in other moments in Previous work
time, resulting in several versions and variants of a shared Several authors and research projects have addressed the general
repository instance and discipline-specific information models. issue of change management in IFC models and only a few stud-
Thus, the issue of IFC model comparison becomes critical to ies have focused on IFC model comparison strategies. Jeong
keep track of the changes during the information et al. (2009) argued that traditional plain text-based comparison
exchange workflows. tools do not consider specific data organization and representa-
Typically, the IFC model comparison is a post-rationalisation tion of comparable files and therefore are not suitable for IFC
activity in a collaboration operation where the data management Comparison. Alternatively, GUID-based comparison strategies
system (i.e. model server or another comparison tool) must deal were presented to compare IFC models. GUID-based strategies
with what has already happened on a set of data with no or lim- consider two instances in two comparing files as same if their
ited knowledge of prerequisites about the incoming data. The GUIDS are matching and vice versa. Ma et al. (2006) developed
comprising IFC files may include changes, application imprints EVASYS (EXPRESS Evaluation System), one of the first tools
and other data instances due to IFC round-tripping. The process that can calculate a number of identical instances in two com-
of IFC comparison will require establishing the right candidates paring IFC models under EXPRESS schema. The comparison
for comparison before a comparison algorithm can be applied to algorithm proposed in EVASYS was based on using GUIDs to
determine similarities and differences. In post rationalization sit- identify matching object pairs and then used a sequence of steps
uations, establishing the right candidates (corresponding objects to filter out matching and different objects by comparing object
in comparing versions) for comparisons becomes difficult, for types < instances < attribute value. The IFC model comparison
which static object identities are typically used in a shallow or methodology of EVASYS was based on GUIDs accuracy, which
deep tree comparison of IFC models (Nour 2007). The use of provided unreliable results and therefore the tool had limited
static object identities in IFC model comparison has been heavily success. Lee et al. (2011) reported four weaknesses of EVASYS:
criticised in the literature (Weise et al. 2003; Kiviniemi et al. (1) it ignores redundant instances; (2) it does not provide any
2005; Nour and Beucke 2008; Hjelseth and Nisbet 2010) as it mechanism to analyses IFC owner history; (3) it does not con-
leads to costly calculations, quality compromises and inaccuracies sider if object identifiers are changed but that the property values
due to inconsistencies in IFC data round-tripping. Moreover, dif- are maintained; and (4) it is limited to counting structural
ferent BIM authoring tools may have different semantic repre- instances in comparison, ignoring semantics. In addition, the
sentation for a same physical object which triggers another GUIDs of instances are often changed during the data exchange
concern that is how to compare models which are constructed between different systems even without a modification to the
independently using different model authoring tools. model itself (Shi et al. 2018). Although the GUID-based com-
Furthermore, support is required from the client-side applica- parison approach is simple and can provide fast results but is
tion when submitting changes to the model server, for example, error-prone and therefore cannot be relied on.
to maintain object owner history and the consistent preservation A graph-based approach was presented by Arthaud and
of object identifiers. However, the internal data storage structures Lombardo (2006) which compares two oriented graphs generated
of client-side BIM applications tend to be different from each by two IFC files. They proposed converting IFC file into RFD-
other, with limited support for database-level change manage- RDF graph-based signature algorithms for computing differences
ment within proprietary BIM applications for server enabled col- of IFC models. However, the matching process in graph-based
laboration. For example, if a structural engineer decides to comparisons still complies with object identifiers comparison.
change the position of 4 columns, there is no predefined stand- Another IFC comparison approach uses a tree-based compari-
ard workflow for executing this change. The engineer may son of two IFC models using the hierarchal structure of IFC to
change each column individually, leading to four changes in the map instances of two comparing files. This approach was pre-
model; or may decide to change one, delete the other three and sented by East et al. (2009) and implemented in an IFC compari-
then copy and paste the first one three times. This will result in son tool ‘BIMServices’. This approach uses IFC spatial and
one change, three deletions and addition of three new columns containment hierarchies to base model comparison as the path
in a model, but ultimately the design change would be the same along model hierarchy tree will typically have incremental
in both cases. changes, starting from IfcProject, across different versions of the
Therefore, when exporting the latest version of IFC models same IFC model. Also, the IFC spatial hierarchy (geometry) is a
(or model subsets), the IFC versioning can be different, as the relatively reliable base across BIM authoring tools and end-users,
two editing operations could result in different metadata for the which can help better understanding of the comparison results.
same model elements. Therefore, two objects can still constitute The bimServices tool provided a better way of comparing IFC
a comparable pair even if these are assigned different object models through a sequential pass to calculate differences and
identifiers. Most model comparison applications (e.g. Solibri, similarities by using a tree comparison. However, the identifica-
BIMServices, or proprietary applications etc) use GUIDs to tion of comparable pairs still relies on the assumption that the
establish candidates for comparison and therefore fail if these are object identifiers of two instances will match in the compar-
different for two comparable objects. Tracking comparable ing models.
objects across versions is a fundamental task in managing the Most recently, Shi et al. (2018) proposed a similar tree com-
workflows of model server enabled collaboration on IFC Models. parison approach which uses data instances, instead of GUIDS,
Therefore, there is a need to consider other characteristics, such to establish candidates for comparison to initiate the comparison
as location (same bounding box), containment (same address), process. Their approach extracts three basic terms (i.e. instance
INTERNATIONAL JOURNAL OF CONSTRUCTION MANAGEMENT 3

Table 1. Criteria for IFC model comparisons in previous studies (Extended from Lee et al. 2011).
Criterion Ma et al. (2006) Lim et al. (2008) Pazlar and Turk (2008) Jeong et al. (2009) East et al. (2009) Shi et al. (2018)
GUIDs Used Mentioned Mentioned Used Used Ignored
Number of instances Used Not used Not used Not used Used Used
Number of missing or new entities Used Not used Not used Not used Not used Used
Attribute value differences Used Optional Not used Not used Used Used
Owner history Not used Not used Not used Not used Not used Ignored
Schema version Used Not used Not used Not used Not used Not Used
Entities related to shape representation. Not used Not used Used Not used Not used Not Used

name, entity name and attribute values from each data instances) In a signature-matching approach, the identity of an object is
and their referencing relationships to construct IFC file hierarchy not static but calculated dynamically from the value of its prop-
to perform the further comparison. This approach can reduce erties and attributes creating a unique signature for an object
the number of redundant instances and can provide fast com- (Reddy and France 2005). Oliveira and Breitman (2009) defined
parison results without relying on the matching GUIDS. that ‘a signature is the collection of values assigned to a subset of
However, various BIM tools use the different naming structure syntactic properties in the model elements’. The set of values
for instances and can export two different names for the same that can be used to determine a signature for an object is called
object in an IFC Import/Export operation. Therefore, construct- ‘signature type’ (Reddy and France 2005). Signature types can be
ing the IFC tree comparison using instance or entity names may divided into three categories, which are (1) a complete signature
not lead to accurate candidates for comparison to support the that covers all the syntactic properties associated with a model
rest of the comparison process. Also, this is a flattening-based element; (2) a partial signature that covers a certain range of
comparison approach suggests replacing all referencing with element properties; and (3) a default signature that is only com-
actual values in two IFC files and then compares the flattened posed of name properties. The selection of a signature type for
data instances instead of original files. In this way, the compari- an object requires user configuration which can be defined using
son process becomes simplified to a string comparison as it over- a query language. A signature can be calculated using any num-
comes the differences of reference numbers included in attribute ber of properties associated with an object that can provide a
values. However, the proposed flattening process can result in distinguisher for the object. For example, a signature for an
quite long strings of data due to complex inheritance and refer- object can be its name, type and location or a combination of
ence of IFC instances. Therefore, the flattening-based approach these characteristics (e.g. wall, wall type, position coordinates).
is time-consuming and may not be suitable to compare large Several characteristics can be used to generate signatures for ele-
IFC files. ments, which may have different usage and weighting for their
Previous authors have recognised that in order to get a more reliability. However, in a signature-based matching scenario,
meaningful result for IFC model comparisons an extended set of each element should be assigned at least one signature. An object
metrics need to be considered that is not solely based on GUIDs signature does not rely on precedent identity (e.g. GUIDs);
but also consider other physical, structural and semantic proper- therefore, it can also be applied to the models which are created
ties of the IFC models (Nour 2007). Table 1 presents a summary independently of each other using different tools (i.e. as in the
of the IFC model comparison criterion proposed by vari- case of IFC models populated from Revit or AECOsim).
ous authors. However, the creation of unique object signatures needs to
A fundamental problem with inaccurate object identifiers (i.e. define a series of functions to calculate accurate signatures for
GUIDs) is an inaccurate selection of candidates for comparison model objects based on their signature types. Using the pre-
that can lead to completely wrong results. The IfOwnerHistory defined signature types, a hash value can be computed for the
contains information about the model owner, organisation, soft- relevant properties sets which are used to establish a match dur-
ware used and a timestamp, but it changes every time a model is ing the comparison process.
For example, an IfcDoor has a geometry, a local placement,
exported/imported from a BIM tool, irrelevant of if any changes
width and height, optionally a material association, a set of other
or revisions. Therefore, Lee et al. (2011) stressed ignoring
properties (e.g. door number, colour), a few relationships and
IfcOwnerHistory in calculating model comparison results. Shi
some characterises which define it inside a database (i.e. GUID,
et al.’s (2018) methodology also suggests ignoring the change in
IfcOwnerHistory etc). In order to create a signature for a door, a
GUIDs, IfcOwnerHistory and order of change in property sets.
combination of these characteristics of IfcDoor can be used,
Pazlar and Turk (2008) looked at the entities that constitute geo-
which can uniquely identify two records related to doors in com-
metric representations if these can be used to establish a candi-
paring datasets. It is costly to calculate a complete signature for
date for comparison and reported that shape representations are
IFC objects (for all the characteristics and properties), therefore,
not consistent among BIM authoring tools. For example, some
a subset of characteristics is needed that can be used as a min-
tools use boundary representation (B-rep) and some use solids of
imum to create efficient signatures for IFC building elements.
same shape representation. Lockley et al. (2013) tested several Another issue is to consider the level of details (LOD) of objects
BIM authoring tools and confirmed the issue of different shape in a BIM model to calculate effective signatures for model com-
representations in BIM authoring tools. Therefore, shape repre- parison. For example, in early design stages, if a designer
sentation also cannot be used solely as a reliable base to perform changes the appearance of a door but not the size and location,
model matching or comparison. it is unlikely that the other disciplines will care about this
change. But if the size of a door is changed, it may interfere with
A signature matching approach for IFC models other building systems and therefore will become a concern.
Similarly, if a door undergoes any change at the handover stage,
This paper proposes a signature-matching approach to establish the only concern will be the attributes related to its maintenance
object identities in model matching and comparison processes. if these are changed or not. Therefore, the makeup of these
4 M. T. SHAFIQ AND S. R. LOCKLEY

Figure 1. Matching rule for RadiusBoundingSphere signatures.

signatures may be specific to the stage of development of the process. Moreover, the position and shape are a way of reflecting
building model. Signature matching is useful even if a complete an object on a drawing and in a 3D presentation. Therefore,
solution is not feasible, as signature matching can be used to these two components are compelling candidates to create a
eliminate a significant proportion of elements to downsize the unique object signature. However, the case with object properties
comparison criteria for any further comparison. is different as it involves the degree of change that needs to be
incorporated into creating the relevant signatures. The following
section demonstrates examples of developing IFC object signa-
Signature matching application in IFC models tures from the shape, position and properties.
This paper proposes that characteristics of IFC objects can be
used to create signatures for IFC objects, in addition to GUIDs,
Creating a signature from geometric representations (shape)
to effectively identify corresponding objects in an IFC model
The geometry of an IFC element is defined by a shape definition
comparison process. This leads to a new research question:
(i.e. 2D, 3D body and 3D path), the IfcProductDefinitionShape
‘What should constitute an effective signature for IFC objects?’.
and IfcLocalPlacement allowing multiple geometric representa-
It is suggested that this can be answered by considering the
structural and semantic characteristics of an IFC model and the tions. For example, an IfcDoor may have a profile, footprint,
type of changes an IFC object can undergo. Fundamentally, a bounding box and several 3D body definitions at different levels
change can be in (1) an object’s position, (2) shape and (3) prop- of detail. There is an unlimited number of shapes within the IFC
erties. Position and shape are absolute for change, as if two schema, but it is a schema requirement that it must have at least
objects in a comparing process are at the same position and con- one 3D body. Therefore, the 3D shape of an element can be a
tains the same geometrical shape, then these are likely to be a signature type as it is populated every time for an IFC element.
similar object and thus, are candidates for comparison. Another aspect is bounding box representation, as an
Therefore, the characteristics of an object related to its position IfcBuildingElement may be represented as a bounding box,
and shape can be used to create a signature for object recogni- which shows the maximum extent of the body within the coord-
tion. For example, in an ‘IfcDoor’, the ‘IfcLocalPlacement’ inate system established by the IfcLocalPlacement. The bounding
defines the local coordinate system that is referenced by all geo- box representation is the simplest geometric representation avail-
metric representations. The three-dimensional (3D) shape of able. The same element shape should always be contained in the
‘IfcDoor’ is represented using ‘SweptSolid’, ‘SurfaceModel’, or same bounding box representation. Therefore, bounding box rep-
‘Brep’ to define the door geometry. Most BIM authoring tools resentation and 3D shape definitions can be used as strong sig-
exchange arbitrary shape extrusions in IFC, which can be used nature types where a hash code signature can be calculated by
to create a unique object signature. the radius from the middle point that contains all the points in
On the other hand, creating a signature from element proper- the shepheId that contains the shape of an element. In simple
ties is complex, as it involves a degree of change in object prop- words, if two objects occupy a similar 3D space then they are
erties. It needs to determine what properties are important and candidates for similarity checking. A shape-based matching rule
the degree of importance in IFC properties, to create a signature is represented in Figure 1.
based on the key properties. Several signatures can be created A key aspect in defining shape signature type is to determine
from object properties, such as (1) The total number of property how 3D shapes are being generated from BIM authoring tools,
count can be used as a signature; (2) A name key for all the as different BIM authoring tool may populate same 3D shape
property sets names attached to an object can be used as a signa- using different profile definitions, due to their internal structural
ture; (3) A name key of property names can be used as a signa- differences and end-user domain applications. For example,
ture and (4) A property value key can be used as a signature etc. Autodesk Revit uses arbitrary profile definitions to generate 3D
These signatures can be used as passes to determine the degree shapes, whereas Tekla Structures uses parameterized profile defi-
of change in a potentially matching pair in a model comparison nitions (IfcIShapeProfileDef, IfcEllipseProfileDef etc) as these
INTERNATIONAL JOURNAL OF CONSTRUCTION MANAGEMENT 5

Figure 2. Matching rule for the position (centroid) signatures.

profiles can create more efficient shapes related to structural ele- comparable dataset, then it indicates that the element is ‘moved’
ments (e.g. beam, columns etc). The next step in a 3D shape cre- in the updated version of the dataset, thus helps to identify the
ation is executed by ‘IfcTopologyRepresentation’ that include a changes undergone.
number of representation concepts as predefined representations
(e.g. vertex, edge, path, face shell and undefined). The topology
of a shape is a useful component of its signature, it deals with Creating a signature from a set of properties and
connectivity rather than geometry, and topological signatures can relationships
provide a good basis for matching objects prior to similarity Each IFC element also has a set of properties that reference to
checking using their geometric data. The point of looking at how all attached properties, including quantities. There are objectified
a shape is created for an IFC element is that it follows a number relationships, IfcRelDefinesByProperties, which defines the rela-
of computational steps, each of which can be used as a signature tionships between property set definitions and objects. Properties
and a combination of these signatures can produce a potent par- are aggregated in property sets; property sets can be grouped to
tial signature for the corresponding IFC element for a match and define an object type and properties can be attached to multiple
even to identify possible areas of changes if a shape has been objects (1 to N relationships) that share some properties
changed. In theory, IfcRectangleProfiledef should always create (BuildingSMART, 2014). Creating a signature from element
and refer to the same shape and thus can be used as a signature properties is complex, as properties have a degree of change and
type using an ID for the shape profile definition. A shape-based how that change is important in term of a comparison result
partial signature is particularly important in determining the and in the context of change management from end user’s per-
changes, rather identifying the candidates for comparison. spective. For example, in versions A and B of the same IFC
model, change in properties can have the following scenarios
Properties of object A (version 1 of a dataset) ¼ P [A]
Creating signature from local placement
Properties of object B (version 2 of a dataset) ¼ P [B]
The geometry of an IFC element is defined by a shape definition
P [A] ¼ P [B] ¼ No change in properties
and a local placement (i.e. IfcLocalPlacement). The
P [A] > P [B] ¼ some properties have been deleted
IfcLocalPlacement defines the relative placement of a product in
P [A] < P [B] ¼ some properties have been added
relation to the placement of another product or the absolute
P [A]  P [B] ¼ Properties have been updated/edited
placement of a product within the geometric representation con-
text of the project (BuildingSMART, 2014). A signature for local Therefore, it is important to determine what properties are
placement can be calculated by a hash code that represents pos- important and if we can determine the degree of importance in
ition signature of an element calculated from X, Y and Z posi- IFC properties, then it can be used to create a signature based
tions from the middle of an element (Centroid x, Centroid y and on the key properties. However, another issue to deal with in
Centroid z). A local placement based matching rule is presented property signature comparison is the granularity level of com-
in Figure 2. parison; a shallow comparison or deep comparison based on the
Likewise, the shape signature, the local placement signature level we go down in comparing referencing from an object. A
cannot decide on its own for identification of corresponding shallow comparison of properties does not go outside from the
element pairs in the comparison process, but it can be used in encapsulated properties. If an attribute is encapsulated inside an
combination with other signature types, to detect potentially object then it is owned by the object, it is a strong reference and
matching pairs or also to reduce the amount of work in calculat- not expected to change outside the object. For example, a door
ing and identifying potential changes. If two elements have the has a material and a door width. The material is a referenced
same local placement and shape, it is quite strong to say that it property as it is pointing to another object, IfcMaterial, but the
is a potentially equivalent pair and can be a candidate for com- door width is a totally encapsulated property which is not going
parison. If the local placement coordinates are different for an to be shared with any other object. The encapsulated properties
element, in relation to its corresponding element in a are often simple types, called Defined types in the IFC schema,
6 M. T. SHAFIQ AND S. R. LOCKLEY

Figure 3. Matching rule for PropertyCount signatures.

also called value types in computer science. These properties can change to the door at this stage? Who needs to be made aware
be used as a default signature in shallow comparison. A number of this change? Clearly, it’s a matter of perspective and is
of signatures can be created from object properties, such as (1) dependent upon a situation in a domain. A signature for an
The total number of property count can be used as a signature; element in a model comparison needs to consider the undergone
(2) A name key for all the property sets names attached to an changes in the process and how it is related to the end-user. A
object can be used as a signature; (3) A name key of property simple principle to follow is if a change affects graphical repre-
names can be used as a signature and (4) A property value key sentation then it should be reflected graphically to the end-user,
can be used as a signature etc. and the end-user should be provided with a reasonable indica-
For example, in two comparing datasets, IFC model A and tion about what has been changed. For example, if a door name
IFC model version B, a partial signature can be computed where is changed from door number 46 to door number 47, then it is
hash code that represents total properties given to an element by not particularly important to show in a 3D model as the infor-
the author in addition to what it would have by default mation is held relationally in the database. Similarly, a door
(PropertyCount Signature). Another partial signature can be cal- swing is not usually reflected in a 3D model, but it is reflected
culated from a hash code that represents the names of all prop- on 2D drawings, which makes a huge difference if the door
erty sets in alphabetical order (ElementPropertySetName swing is changed in a drawing. Therefore, considering all the
signature). If the hash codes are matching, then the elements are relationships is important for signature matching but it has more
equivalent and can consulate a matching pair and vice versa. value in the fine-grained comparison analysis and can be used in
Figure 3 reflects a simple flow chart for the PropertyCount deep comparisons to identify changes in IFC models, which is
matching rule. excluded in this research.
Similarly, matching rules can be defined for property names,
property values, tags, HasAssociations, ReferencedBy,
HasStructuralMember, HasCoverings, or HasProjections etc. Creating signature from other IFC characteristics
These are all inverse relationships which point outside the object Similarly, signatures can be created from other IFC object char-
to external objects. However, all the properties may not be acteristics (e.g. Schema type, Object Type, Name, Property Count
important for comparison purposes if these are not usually (see Table 2) and can be used to support establish similar candi-
populated and if these have less value for change identification dates for comparison.
from a user’s perspective. Statistical evidence from the current Each IfcBuildingElement has a schema type that defines what
models being generated by end-users is needed in order to deter- type of building element it is, for example, IfcDoor, IfcWindow,
mine the value and contribution that these Properties and IfcWall etc. These type definitions can be useful as a default sig-
Relationships have for signature matching. nature to start a comparison process, especially the schema
In the IFC schema, a relationship object is used to associate a TYPE, because a door should only be compared to a door and
material, to an element, the relationship object would have a ref- so on. If the schema TYPE does not match, there should be no
erence to a material layer and the elements to which the material further comparison for two records, as they are fundamentally
has been applied. To generate an effective signature, all the rela- different and should not be a candidate for comparison in the
tionships need to be considered and a methodology must be first place. Hence, a Schema Type based signature can be devel-
developed to decide which relationships are important to be oped. It is to be noted that GUID itself can be used as a signa-
included in an object-specific signature. There are also changes tures type as matching GUIDs would constitute a match but
in associations of IFC objects that need to be considered. For different GUIDs can be ignored (i.e. same objects can have dif-
example, if a door has a material association pointed out by a ferent GUIDS).
relationship object, what impact will a material change have on The name of an IFC element is a label in the term by which
the use of the door at a specific stage of design development? If something may be referred to, i.e. IfcLabel ¼ String (Max.255
the material changes from glass to wood, is it a significant characteristics). It is generally a string that represents the
INTERNATIONAL JOURNAL OF CONSTRUCTION MANAGEMENT 7

Table 2. The signature types defined for IFC objects in the research.
Signature type Description
Model ID A number that represents the internal ID of an element inside the model. E.g.
2552 for an IfcDoor.
SchemaType A name for a type of building element. E.g. IfcDoor for a door.
DefinedTypeId A total number of defined types attached to an element. E.g. the value for the
defined type of IfcDoor is calculated as 2539, in the test model.
GUID A fixed 22-character length string, which is associated with each element and
is exchanged with the IFC exchange file structure.
Name The name of an IFC element is a label in the term by which something may be
referred to, i.e. IfcLabel ¼ String (Max.255 characteristics).
ObjectType The type of object of an element.
PropertyCount A number representing the count of total properties given to an element by
the author in addition to what it would have by default (i.e. Extension
properties in Revit)
PropertySetNamesKey These are single value property sets that can be used to generate a signature,
considering that the complex property sets are hardly ever used in real
examples of IFC models
PropertyNamesKey Similarly, a hash key is created from ‘Names’ of the properties (e.g. level, the
height of offset from level etc) by sorting out names of the properties in
alphabetical order and creating a hash code signature
PropertyValuesKey Similarly, a signature is calculated for the values of the properties
MaterialId This is the name of the material attached to an IFC building element
Centroid X This is the position signature calculated by x, y, z positions of the middle of an
Centroid Y object. Thus, centroid determines the local placement of the object that can be
Centroid Z used as a unique identification signature for object recognition and also detect
if there is any change in the object’s position
RadiusBoundingSphere This is a number that represents a radius from a middle point that will contain
all the point in the shepherd that contains the shape of an element. In
simple words, it is the radius of the bounding box of the shape of an
element. If the shape of an element is changed, it will change the bounding
box and vice versa. Thus, it can be used as a unique signature for the shape
of an object
ShapeId This is the shape ID that defines the shape of an object

human-readable name in natural language. Name of an element (xBIM) Toolkit, which is an open-source, software development
is not expected to change even if the element undergoes any tool that supports IFC schema (Please see http://www.openbim.
change. Therefore, the name can be considered as another org/ for more information). The xBIM toolkit supports IFC
default signature type to recognise candidates for comparison in models for geometric, topological operations and visualisation
the first step, however different BIM tools handle name differ- that can be used to create bespoke BIM middleware for IFC-
ently. For example, Autodesk Revit inserts its database accession based applications. The xBIM signature exporter reads an IFC
number within the name string, the name of an IfcDoor file and creates an xBIM model from where it will calculate and
exported from a Revit model is ‘IntSgl (1): 1010  2110 mm: export the element signatures according to the defined method-
1010  2110 mm: 195846’, where last 6 digits of the name string ologies. The tool creates an output file with changed extension as
represent Revit’s own database number for that door. This is a a CSV file and writes the results in an excel sheet. The xBIM
mechanism to effectively make the name unique. Therefore, the model first writes the header of the input IFC file in the CSV
name can be a strong signature type, if it is populated (some-
file and analyzes every IfcBuildingElement in the IFC file and get
times it is not populated as it is optional in the schema) consist-
the assigned signatures, then it writes the signatures in a loop for
ently in the models. However, name signature type is tool
all the building elements in the output excel file. The proposed
dependent, as different tools may create the name string differ-
approach is not project-specific and independent from authoring
ently or even completely ignore as it is optional in the IFC
schema (e.g. ArchiCAD uses a sequential hash number for ele- software of the exported model. The xBIM signature exporter
ments in the name field). works as a plug-in to xBIM toolkit and export signatures using
These signatures can be used to uniquely identify matching defined methodologies in this paper. The XBIM signature
(equivalent) element pairs to start the comparison process and to exporter was developed in a commercially funded research pro-
identify potential changes in more fine-grain analysis. For ject; therefore, the source code of the tool is not presented in
example, if two elements have matching signatures for schema this paper.
type, shape and position, and then these are most likely the same
element, even if their GUIDs are different. The proposed meth-
odologies for creating IFC building element signatures are imple- The test case
mented in a signature calculation tool, xBIM signature exporter, The xBIM signature exporter tool is tested for an IFC model,
and implemented on a test case models to verify the usefulness ‘Standard classroom’ model corresponding to IFC coordination
of signature matching for IFC models. view 2.0. A small-scale example is used (1) the model should val-
idate against IFC coordination view 2.0 to minimize authoring
software imprints during IFC export which is simple to control
Implementation: XBIM signature exporter
in a smaller model; (2) It is easier to visually see changes in two
The xBIM signature exporter is developed on the platform of the versions of models and verify against comparison or signature
xBIM toolkit, the eXtensible Building Information Modelling validation result (3) Even for a larger model, only samples of
8 M. T. SHAFIQ AND S. R. LOCKLEY

Table 3. Examples of door and slab signature from xBIM signature exporter.
Signature Type Example of door signatures Example of a slab signatures
Model ID 2552 249
SchemaType IfcDoor IfcSlab
DefinedTypeId 2539 0
GUID 3A3Tihl61FQRUYE_9VB72L 3A3Tihl61FQRUYE_9VB75i
Name IntSgl (1): 1010  2110 mm: 1010  2110 mm: 195846 Floor: Ground Bearing Concrete: 195839
ObjectType 1010  2110 mm Floor: Ground Bearing Concrete
PropertyCount 56 29
PropertySetNamesKey 863509959 1452519724
PropertyNamesKey 1703689443 1976711505
PropertyValuesKey 570000713 1589767974
MaterialId (empty, no material assigned) Floor: Ground Bearing Concrete
Centriod X 3908.871582 1556.871582
Centriod Y 4958.726563 828.9765625
Centriod Z 1072.5 250
RadiusBoundingSphere 1205.268555 6259.641113
ShapeId 914375451 444593825

IFCBuildingElements can be presented, therefore size of the more fine-grained analysis in later stages to detect changes in
model is irrelevant for the purpose of this paper. IFC models.
The test model contains several IfcBuildingElements, such as The results suggest that the schema type, GUID, position and
IfcDoor, IfcSlab, IfcWallStandardCase, IfcWindow and bounding box signatures are strong signature types. Considering
IfcOpeningElement. The xBIM signature exporter has extracted the volatile nature of GUIDs, schema type, position and centroid
signatures for the building elements using the signature calcula- signatures provide enough evidence to establish candidates for
tion methodologies, as described in Table 2. A summary of sig- comparison in the first pass, even if the GUIDs are not matched.
natures exported for a door and a slab in the test model is After establishing matching pairs for comparison analysis, signa-
presented in Table 3. ture matching can also help to reduce the size data for detecting
In theory, each signature for an element should be unique if fine-grain changes if there are any. For example, if a matching
there is no change in the element in all the versions and variants pair has a different PropertyCount or PropertySetNamesKey, it
where that element is populated. To verify the signature match- means some properties have been added or deleted, and it
ing approach, another version, version B, of the test model is should be checked for more detailed analysis. Thus, the signature
created and the same signatures are exported using the xBIM types, such as NAME, Object Type, properties, can reduce the
signature exporter. Version B of the test model has a lot more amount of workload to precisely detect changes in further ana-
details than the previous version and several things have been lysis. It is not a brilliant way of calculating differences, but it
added to this version, which exactly represents a typical design reduces the amount of work required for further analysis.
development scenario in a real-world situation. The changes in
test model version A and version B are shown in Figure 4.
The xBIM signature exported has extracted the defined signa- Conclusions and future work
tures for all the building elements for an updated test model, This paper describes that model matching and comparison strat-
which can be used to compare it with the signatures from the egies for platform-neutral models (i.e. IFC models) are the keys
original test model. The signatures should be identical for identi- to solve the problem of iterative change management. A critical
cal elements and vice versa, and it should also indicate potential issue IFC model comparison is establishing the right candidates
areas for changes to help reduce the amount of work for a fine- for comparison, regardless of what comparison mechanical is
grained analysis in the later stages of the model comparison pro- being used. Typically, GUIDs are being used to identify corre-
cess. A comparison of signatures for the test model version A sponding objects in IFC model comparison methodologies,
and Version B is presented in Table 4. which is criticised for their accuracy and efficiency. This paper
The results presented in Table 4, verify several signature proposes that the characteristics of an IFC object can be used to
methodologies as proposed in this paper. The signature matching create unique signatures for IFC elements, in addition to GUIDs,
establishes a door as a candidate for comparison as it has the to effectively compare corresponding objects in a model com-
same signature for Schema Type, GUID, Position and bounding parison process. An object’s position, shape and properties can
box representation (centroids). So, even, without the GUID sig- be used to formulate partial, default or complete signature for an
nature match, when GUIDs are inaccurate or unavailable, object, which can be used as passes to establish candidates for
schema Type, position and centroid signatures provide enough comparison and to highlight changes in a comparable object
evidence to establish the door as a candidate for comparison in pair. This approach is useful in establishing accurate candidates
both models. The unmatched signatures indicate where the for IFC model comparison and model merging without GUID
comparison process should check for potential changes in fur- dependence and can reduce the workload of the overall model
ther analysis. Mainly, the door object type has been updated comparison process, especially for model server enabled collabor-
and thus, the related properties are also changed. The signa- ation. Also, the application of signature-based matching supports
tures for NAME, Object Type, properties indicate these changes pre-defined protocols to control data concurrency and iterative
and help to reduce the amount of workload to precisely detect changes in server-enabled BIM collaboration. Pre-defined proto-
changes in further analysis. Thus, verifies the signature-match- cols use methods similar to library management, where slots and
ing of IFC building elements that can be used in establishing prerequisites for data inputs and outputs are defined in advance
candidates for comparison, without GUID dependency, and that make the object recognition and changes identification pro-
helps to downsize the problem of model comparison for a cess significantly easier. The proposed signature-based matching
INTERNATIONAL JOURNAL OF CONSTRUCTION MANAGEMENT 9

Figure 4. Version A and Version B of the standard classroom test model.

Table 4. Door signature exported from xBIM signature exported for model version A and Version B.
Signature type Door signatures_ TestModel_CIC_2 Door signatures_ TestModel_CIC_3 Comments
Model ID 2552 3734 Changes every time, not useful
for comparison
SchemaType IfcDoor IfcDoor Match; signature for Schema type
matching verified
DefinedTypeId 2539 3721 Unmatched for a door; some building
elements do not have
this signature
GUID 3A3Tihl61FQRUYE_9VB72L 3A3Tihl61FQRUYE_9VB72L Match; GUID is maintained. GUID
signature verified
Name IntSgl (1): 1010  2110 mm: IntSgl (dis): Ed Building - Glazed Int Unmatched; Name matching signature
1010  2110 mm: 195846 Single 1010  2110 mm: Ed Building indicates a change; the door may
- Glazed Int Single be changed (and it is changed).
1010  2110 mm: 195846 NAME signature is verified
ObjectType 1010  2110 mm Ed Building - Glazed Int Single Unmatched; Indicates a change in the
1010  2110 mm object type (the door type is
updated in the new version).
Object TYPE signature verified
PropertyCount 56 66 Unmatched: indicate that some
properties are added.
PropertyCount signature verified
PropertySetNamesKey 863509959 81069332 Unmatched; indicates that some
property sets are different, and it
should be further analysed to
detect changes. PropertySetName
signature verified
PropertyNamesKey 1703689443 1159863088 Unmatched; again, indicate changes in
properties. PropertyNameKey
signature verified
PropertyValuesKey 570000713 1468664780 Unmatched; indicates that values of
the properties are also changed.
PropertyValueKey signature verified
MaterialId (empty) No signature available
Centriod X 3908.871582 3908.871582 Matched
Centriod Y 4958.726563 4958.726563 Position has not changed
Centriod Z 1072.5 1072.5 Position signature verified
RadiusBoundingSphere 1205.268555 1205.268555 Matched; RadiusBoundingSphere
signature verified
ShapeId 914375451 561216383 Unmatched; Because Object Type is
changed, so it has a
different shapeID

approach can lead a way towards defining predefined protocols which are largely optional and may have different population if
for the IFC schema which will not only improve the iterative models are created using heterogeneous applications. In the con-
change management process but will reduce interoperabil- text of creating unique signatures from these optional attributes,
ity issues. such questions need to be answered that what level of utilisation
In terms of creating an element’s signature, there are several these optional properties are in the IFC models? And how likely
issues that need to be considered in the broader perspective of these are to be found in real-world examples? Potentially, a sub-
change management in a model server environment. This set of data can be derived, with the statistical reasoning that
research has only developed signatures for IfcBuildingElements some characteristics, relationships and properties of IFC objects
as it has the highest importance for an end-user from a change can be neglected or be focused on in creating object signatures,
management prospectus. Even for IfcBuildingElement, the depending upon the usability proof from a wider and real-world
research has defined signatures for IFC object characteristics dataset. This abstraction would require further empirical
10 M. T. SHAFIQ AND S. R. LOCKLEY

evidence from the analysis of real-world IFC models, reflecting a Kang TW, Hong CH. 2015. A study on software architecture for effective
cross-sectional view of different BIM authoring tools that are BIM/GIS-based facility management data integration. Autom Constr. 54:
used in creating IFC models. A critical issue is to consider the 25–38.
Kiviniemi A, Fischer M, Bazjanac V. 2005. Integration of multiple product
associated weighting of different signature-type attributes of IFC models: IFC model servers as a potential solution. Proceedings to the
objects to constitute an effective signature for IFC objects. 22nd Conference on Information Technology in Construction CIB W78,
This study is limited to using optional object properties to Dresden, Germany.
create a property-based signature (such as PropertyCount, Lee G, Ph D, Won J, Ham S, Shin Y. 2011. Metrics for quantifying the simi-
PropertyValuesKey), however, these optional properties can be larities and differences between IFC files. J Comput Civ Eng. 25(2):
referring to the same object but on a different LOD. Therefore, 172–181.
Future research is needed to explore property signatures in more Lim JI, Kim JW, Kwon HD, Yoon SW, Kwon SW, Chin SY. 2008. IFC test
between commercial 3D CAD application using IFC. J Korea Inst Constr
details, considering associated LOD and degree of change in an
Eng Manage. 9 (3):85–94.
object’s properties. Future research will explore the application Lockley S, Greenwood D, Matthews J, Benghi C. 2013. Constraints in author-
of the proposed signature-based matching strategy on IFC mod- ing BIM components for optimal data reuse and interoperability. Int J 3D
els with different LOD and complexity within a model server Inform Model. 2(1):29–44.
enabled collaboration environment. Ma H, Ha K, Chung C, Amor R. 2006. Testing semantic interoperability.
Proceedings of the Joint International Conference on Computing and
Decision Making in Civil and Building Engineering, Montreal, QC,
Disclosure statement Canada.
Nour M. 2007. Manipulating IFC sub-models in collaborative teamwork envi-
No potential conflict of interest was reported by the authors. ronments. Proceedings of the 24th CIB W-78 Conference on Information
Technology in Construction, Maribor, Slovenia, p. 26–29.
Nour M, Beucke K. 2008. An open platform for processing IFC model ver-
sions. Tinshhua Sci Technol. 13:126–131.
References Nour M, Beucke K. 2010. Object versioning as a basis for design change
Arthaud G, Lombardo JC. 2006. Automatic semantic comparison of STEP management within a BIM context. International Conference on
product models. In: van Leeuwen JP, Timmermans HJP, editors. Computing in Civil and Building Engineering, Nottingham.
Innovations in design & decision support systems in architecture and Oliveira K, Breitman K. 2009. A flexible strategy-based model comparison
urban planning. Amsterdam: Springer. p. 447–463. approach: bridging the syntactic and semantic gap. J Univ Comput Sci.
Berlo LAHM, Beetz J, Bos P, Hendriks H, Tongeren RCJ. 2012. Collaborative 15(11):2225–2253.
engineering with IFC: new insights and technology. Proceedings of the  2008. Interoperability in practice: geometric data exchange
Pazlar T, Turk Z.
9th European Conference on Process and Product Modelling, Reykjavik, using the IFC standard. J Inform Technol Constr. 13:362–380.
Iceland. Reddy R, France R. 2005. Model composition - a signature-based approach.
Cho CY, Won J, Ham S. 2018. IFC model restructuring framework for effi- In AOM Workshop, 2005. [accessed 2019 Feb 2]. https://pdfs.semanti-
cient bulk-loading to object-relational IFC model server. KSCE J Civ Eng. cscholar.org/1cd6/de7807b59d5d7d82f323adc88d26753c74a0.pdf.
22(12):4930–4939. Shafiq MT, Matthews J, Lockley S, Love PED. 2018. Model server enabled
East E, Nisbet N, Wix J. 2009. Lightweight capture of As-built construction
management of collaborative changes in building information models.
information. 26th International Conference on IT in Construction,
Istanbul. Front Eng. 5(3):298–306.
Gao G, Liu YS, Lin P, Wang M, Gu M, Yong JH. 2017. BIMTag: Concept- Shi X, Liu YS, Gao G, Gu M, Li H. 2018. IFCdiff: a content-based automatic
based automatic semantic annotation of online BIM product resources. comparison approach for IFC files. Autom Constr. 86:53–68.
Adv Eng Inf. 31:48–61. Singh V, Gu N, Wang X. 2011. A theoretical framework of a BIM-based
Hjelseth E, Nisbet N. 2010. Overview of concepts for model checking. multi-disciplinary collaboration platform. Autom Constr. 20(2):134–144.
Proceedings of the CIB W78: 27th International Conference, Cairo, Egypt. Weise M, Katranuschkov P, Scherer RJ. 2003. Generalised model subset def-
Jeong YS, Eastman CM, Sacks R, Kaner I. 2009. Benchmark tests for BIM inition schema. CIB Report, 284, 440. [accessed 2019 Feb 2]. http://www.
data exchanges of precast concrete. Autom Constr. 18(4):469–484. irbnet.de/daten/iconda/CIB20597.pdf.

View publication stats

You might also like