You are on page 1of 16

Automation in Construction 92 (2018) 214–229

Contents lists available at ScienceDirect

Automation in Construction
journal homepage: www.elsevier.com/locate/autcon

A rule-based methodology to extract building model views T


a,b,c,* c c
Tarcisio Mendes de Farias , Ana Roxin , Christophe Nicolle
a
Department of Computational Biology, University of Lausanne, Lausanne, Switzerland
b
SIB Swiss Institute of Bioinformatics, Lausanne, Switzerland
c
Laboratory LE2I, CNRS, Arts et Métiers, Univ. Bourgogne Franche-Comté (UBFC), Dijon, France

A R T I C LE I N FO A B S T R A C T

Keywords: In this paper, we present a novel approach called IfcView that relies on Semantic Web technologies for creating
ifcOWL building views. To do so, we consider an ifcOWL ontology proposed by buildingSMART. The ifcOWL is an
Rule checking Industry Foundation Classes (IFC) based ontology. By combining the ifcOWL ontology with logical rules (ex-
Model view definition (MVD) pressed in Semantic Web Rule Language, SWRL), we demonstrate through several case studies that our approach
Reasoning
can perform a more intuitive and flexible extraction of building views when compared to the Model View
Semantic web
Definition (MVD) approach. This is because our rule-based approach dynamically creates sub-graphs (i.e. views)
by specifying the IFC elements to extract as Globally Unique Identifiers (GUID), relationships or entities. Another
benefit of our approach is the fact that it simplifies the maintenance and definition of building views. Once our
rule-based system extracts such a building view (i.e. sub-graph), this view can be exported by using STEP
(STandard for the Exchange of Product) or Turtle (a Resource Description Framework (RDF) syntax) formats.

1. Introduction interoperability among the data produced with the various software
tools used by the different actors from the AEC domain. Still, manip-
A building life-cycle mainly comprises the following stages: the in- ulating the data contained inside such IFC-based building representa-
itial planning and design, the construction of the facility, the operation tions remains a fastidious process, mainly performed manually (by se-
and maintenance and the dismantling and recycling of buildings and lecting IFC elements) and therefore source of numerous errors. Notably,
engineering structures. The data produced throughout the building’s in order to facilitate the handling of such IFC files, there is an increasing
life-cycle is handled and updated by several different actors each in- need to display only the information pertaining to a given business logic
tervening in different associated processes. BIM (Building Information or context (i.e. view). This need also arises when a given stakeholder
Modeling) [1] is one of the latest approaches proposed in the AEC wishes to update or to modify the information contained in an IFC file,
(Architecture, Engineering and Construction) domain for bridging the and then forward the result to another stakeholder, or insert it into a
existing interoperability gap among systems in this field. A BIM system global BIM representation. Such workflow can be compared to loosely
is a tool that allows users to integrate and reuse building-related data coupled federated architectures as defined in Ref. [7]. Thus, in our
along with pertaining domain knowledge, throughout the considered vision, BIM stands as a cooperative system of unified views of the same
building’s life-cycle [2]. building. Each stakeholder is allowed to locally keep a view of the
The first step in BIM standardization was conducted in 1999 by global building model. Such view is defined as the sum of necessary and
buildingSMART International (bSI) organization (formerly sufficient building information needed for the correct realization of
International Alliance for Interoperability, IAI) [3]. It resulted in the their related business processes (e.g. plumbing, building renovation,
development of a model for representing all components of a physical window cleaning). In other words, to deliver such a view, one has to
building, namely the IFC model (Industry Foundation Classes). Unlike correctly extract the minimal sub-graph of elements from the IFC file(s)
previous formats such as DXF (Drawing eXchange Format) [4] or DWG representing the whole building.
(DraWinG) [5], which were graph- and respectively vector-oriented Given the fact that organizations (such as bSI, but also the
representation formats, the IFC standard (ISO 10303-21) relies on ob- International Organization for Standardization, ISO) have been re-
ject-oriented modeling (i.e. EXPRESS language based) [6]. cognized Semantic Web technologies as a potential mean to solve issues
In the context of BIM, a digital representation of the building comes related to the handling of IFC files, the approach we present here is
in the form of one or several IFC files, therefore ensuring solely based on the OWL version of the IFC standard (i.e. ifcOWL

*
Corresponding author.
E-mail addresses: tarcisio.mendesdefarias@unil.ch (T.M.d. Farias), ana-maria.roxin@u-bourgogne.fr (A. Roxin), cnicolle@u-bourgogne.fr (C. Nicolle).

https://doi.org/10.1016/j.autcon.2018.03.035
Received 27 July 2017; Received in revised form 2 March 2018; Accepted 29 March 2018
Available online 25 April 2018
0926-5805/ © 2018 Elsevier B.V. All rights reserved.
T.M.d. Farias et al. Automation in Construction 92 (2018) 214–229

ontology, as pushed by bSI [8]). Our goal is to demonstrate that Se- IfcDoc2 tool. At the moment, the MVD specification relies on modular
mantic Web technologies are suited for extracting pieces of data from Concept Templates [18], namely bricks of IFC schema snippets. After
building models. We aim at proving that this approach allows a more composing an MVD with the IfcDoc tool, the MVD can be exported as an
intuitive extraction of building views and mitigates the gap of semantic mvdXML file [17], both for future reuse and for inclusion in an IDM
heterogeneity for building software interoperability. Indeed, our ap- (Information Delivery Manual). In addition, any IFC file can be vali-
proach is a rule-based system, where rules are expressed by means of dated according to an MVD loaded in the IfcDoc tool. In other words,
terms either extracted from the ifcOWL ontology or inferred (see the IfcDoc tool allows validating a given IFC file with respect to a given
Section 4 and Appendix A). In other words, our main focus is to show MVD. Thus the main issue with IFC files remains the information ex-
that Semantic Web technologies can be used to efficiently (semi)-au- traction. This is why, in this paper, we investigate to what extent Se-
tomatically extract building views. mantic Web technologies can be applied for extracting data from an IFC
Section 2 begins with a brief overview of the most pertaining related file. Our present scope does not cover using Semantic Web technologies
works in the context of the ifcOWL ontology and building model views. for validating an IFC file. With this being mentioned, the MVD ap-
Section 2 also includes a review of several recent rule-based systems as proach, as defined by bSI, has several main drawbacks listed below:
implemented in a BIM context. Section 3 depicts Semantic Web con-
cepts that are needed to understand the rest of the work presented here. 1. MVDs lack logical formalisms (e.g. description logic, horn-like rules
Section 4 briefly describes how we create the knowledge graph based and shape expressions or constraints) which can take advantage of
on the ifcOWL ontology and how we define our logical rules to ease the reasoners and rule engines. For instance, such formalism eases the
model view extraction. Section 5 explains the implementation of our implementation of validation rules [19].
rule-based system prototype for extracting building views. Section 6 2. The MVD solely considers the IFC schema. Our approach (described
evaluates the implemented prototype in terms of query execution time in Section 4) goes beyond this, by addressing both IFC schema and
and number of expected results. Finally, we conclude this article by instances’ GUIDs (Globally Unique Identifier3), thus making
discussing the benefits of such a rule-based system compared to tradi- building views’ definition process more flexible.
tional approaches. We end this article by enumerating several im- 3. An MVD-based constructor is based on static and previously defined
provements that could be implemented in order to enhance the per- XML files (mvdXML). These mvdXML files have to be entirely parsed
formance of our prototype. before extracting a building view from an IFC project file.
4. In addition, in the MVD approach, a simple view modification
2. Related work implies reconstructing the entire mvdXML file.

This section covers three research fields. The first one is dedicated to Our approach relies on logical rules to express the elements that are
the conversion of the IFC standard into an OWL ontology. The second part of a building view. These rules are dynamically applied during a
one concerns the most relevant approaches for defining building model view extraction by a rule engine. Thus, as rules can be easily added or
views. Finally, the third one presents two recent BIM systems that use removed from the knowledge base (see related definition in Section 3),
logical rules. our approach has a higher level of flexibility. It can be seen as a way to
filter an IFC file according to a specific need or context. With our ap-
2.1. IFC-to-OWL converters proach, all irrelevant data can be removed from the BIM before gen-
erating the ifcOWL file. The queries further addressed on this file are
IFC-to-OWL converters studied in this section rely on automatic solely handled by Semantic Web technologies, thus allowing the two
methods for conceiving an OWL ontology from the EXPRESS schema following advantages:
of the IFC standard. Developed in the context of the IntelliGrid EU
FP6 project [9], the approach described by Beetz et al. in [10] is the 1. High maintainability: only one ifcOWL file derived from one master
first well-defined approach to translate the IFC standard into OWL IFC model along with the set of queries or rules (as adapted from the
(i.e. ifcOWL). Over the last few years, various IFC-to-OWL converters considered mvdXML files) need to be maintained. All subset gen-
were proposed (see related approaches in Refs. [10-15] for further eration is based on ifcOWL graphs and will be done automatically on
details). query time.
Dibley et al. in Ref. [16] present how to conceive an IFC ontology by 2. High modularity: one is able to intuitively generate new MVDs by
parsing STEP1 files that contain IFC entities. Unfortunately, this trans- combining queries and rules. Our approach thus matches the ori-
lation of the IFC standard into OWL only covers a limited set of IFC ginal MVD modularity; in our approach Concept Templates are re-
classes, namely the classes considered relevant for the project at hand presented as formal logical rules or queries.
(that is the implementation of an augmented environment for in-
telligent agents). Today, the reference (candidate standard) version of In Ref. [20], the authors describe a partial building view extraction
an ifcOWL ontology is proposed by buildingSMART and available in method (as RDF graphs and schemas), mostly based on a preliminary
Ref. [8]. The IFC-to-OWL converter to generate the buildingSMART’s version of the ifcOWL ontology [21]. However, this method has two
ifcOWL version is fully described by Pauwels et al. in Ref. [11]. As a major limitations when compared with our approach. Firstly, this ap-
reminder, an IFC-to-OWL converter is a method for generating an OWL proach doesn’t allow for generating a view as an IFC-STEP file. Thus, in
ontology starting from the IFC EXPRESS schema. other words, the output in Beetz et al.’s approach cannot be used as an
input to Computer-aided design (CAD) software tools handling IFC files.
Secondly, the authors in Ref. [20] do not propose a semi-automatic way
2.2. Defining model views
to define building model views. Actually, the building view is defined
by manually writing a unique SPARQL CONSTRUCT4 query.
The approach defined in the context of the buildingSMART com-
munity for specifying sub-parts of IFC files is called Model View
Definition (MVD). An MVD “defines a subset of the IFC schema that is
needed to satisfy one or many Exchange Requirements of the AEC industry”
[17]. The specification of MVDs is currently enabled through the
2
http://www.buildingsmart-tech.org/specifications/specification-tools/ifcdoc-tool.
3
http://www.buildingsmart-tech.org/implementation/get-started/ifc-guid.
1 4
https://www.iso.org/standard/63141.html. https://www.w3.org/TR/rdf-sparql-query/#construct.

215
T.M.d. Farias et al. Automation in Construction 92 (2018) 214–229

2.3. Other related works conceptual entities form the so-called the terminological box (TBox)
and the statements involving concrete entities form the assertional box
In Ref. [22], the authors created a rule-based system to semantically (ABox) [27].
enrich an IFC building model. This system takes as an input a rule set When adding logical rules to DL-based ontologies, we obtain rule
and uses a forward-chaining inference engine to process the rules over systems, which are seen today as a key knowledge representation and
the IFC data and infer new information. By doing so, implicit in- reasoning technology. Indeed, logical rules allow for reasoning over
formation becomes explicit based on the considered rules. Thus, this machine-readable descriptions of a domain of discourse (the KB itself).
system outputs an enriched IFC file with the inferred (now explicit) Definition 3 . (Inference) The mechanism that allows deriving new
information. In our work, we focus on extracting building model views assertions based on existing axioms according to rules is called
instead of enriching a given IFC file. Our system is also rule-based, inference [28].
however we rely on semantic web standards or recommendations such
Main ontology description languages, OWL [29] and OWL 2 [30],
as OWL and Semantic Web Rule Language (SWRL) to conceive rules.
are directly based on Description Logics (DL) [31]. Therefore, they both
Therefore, by using such standards, we enhance interoperability with
include a logical framework comprising syntax and model-theoretic
other systems rather than defining a new specific rule language. An-
semantics. Another “heritage” from DL is the concern for practical
other main difference between the two approaches (ours and the one
reasoning and having effective reasoners (mainly extended from DL
from Ref. [22]) is the fact that we use a backward-chaining reasoner to
reasoners such as Pellet [32] and HermiT [33]). Effective reasoning
infer new information. Therefore, we avoid unnecessary data materi-
means reaching conclusions: the axioms present in the considered KB
alization when extracting a building view (see Section 5 for further
(and forming the so-called explicit knowledge) are processed compu-
details). Moreover, our approach is not restricted to the IFC CV 2.0
tationally in order to deduce implicit knowledge. Such reasoning pro-
schema [23]. Our system is based on the IFC2x3 ontology nevertheless
cess is mainly performed based on formal logic, because it allows for
can be easily extended to the IFC 4 ontology. Another recent work that
specifying (through formal semantics) the consequences of a set of
might seem similar to our approach is the work presented in Ref. [24].
axioms.
Authors rely on different rule types, validation logic, and checking
Definition 4 . (Rule or rule axiom) A rule is composed of a rule head
scenarios, all of them specifically “identified, developed and organized”
(also called consequent) and a body (called antecedent). If the body of a
for the IFC standard. In Ref. [24] , authors do not mention the logical
rule is true, then its head is derived as a new assertion [34, 35].
formalism on which they rely, neither how the considered rules were
developed (apparently manually and solely for the IFC standard in Rule-based systems rely on rules for expressing knowledge through
combination with the IfcDoc tool). Our approach can be adapted in logic programming paradigm IF-THEN, which is considered a special
order to generate rules based on another OWL version of the standard. form of axiomatization [26]. Several languages exist for integrating
Still, the approach in Ref. [24] may be considered as complementary to such rules into ontologies. Among them we may cite RIF (Rule Inter-
ours, with respect to the following constraints: a) rules (or logical ex- change Format), RuleML (Rule Markup Language) or SWRL (Semantic
pressions) used in Ref. [24] have to be adapted in some Semantic Web Web Rule Language) [36]. SWRL is a DL-safe rule language i.e. it pre-
rule language e.g. SWRL or RIF; b) these rules have to be mapped to serves decidability when combined with OWL-DL. Moreover, SWRL
elements from the ifcOWL ontology; c) the so-generated set of rules has extends the set of existing OWL axioms in order to include Horn clauses
to be further curated in order to verify that consistency rules inherent to [34].
the Semantic Web language chosen are not duplicated or altered when Definition 5 . (Horn clause) A Horn clause is a disjunction of literals
implementing logical constraints suggested by the authors in Ref. [24]. (i.e atomic formulas) with at most one positive literal [34, 35]. A
In Ref. [25], Ma et al. suggest formalizing specifications for con- definite clause is a type of Horn clause. The definite clause can be
struction cost estimation by using ontologies and logical rules. By doing interpreted as conjunctive positive literals that imply a positive literal.
so, the authors claim that the working efficiency and accuracy of esti-
Such reasoning process is mainly performed based on formal logic,
mation is greatly improved. Ma et al.’s approach is based on OWL and
because it specifies the consequences of a set of axioms.
SWRL languages. SWRL is used to define the rule set corresponding to
Definition 6 . (Consequence of an ontology) The consequences of an
the associated rule library for cost estimation.
ontology are represented by the set of assertions implicitly caused by an
The next section (i.e. Section 3) gives some formal definitions of
ontology. These assertions directly impact answering to queries
concepts employed in this article.
addressed to the ontology [37].
3. Background definitions
3.2. Reasoning
This section formally defines what an ontology is in the context of
the Semantic Web. Section 3.2 contains an overview of existing OWL- For interpreting Horn-like rules at query execution, traditional logic
based reasoners. programming languages, such as Prolog, use a method called SLD
(Selective Linear Definite) resolution [38]. SLD stands for “SL resolu-
3.1. Definitions tion with Definite clauses” and consists in interpreting the top clause
(the query) as a negation of a conjunction of sub-goals (sub-queries). To
Definition 1 . (Ontology) An ontology O is a tuple O = (S , A ) , S being do so, it relies on a backward reasoning technique [39, 40].
its signature (conceptual entities used for knowledge representation) When applied to OWL-based reasoners, four main approaches exist
and A its associated set of axioms (expressed in a specific ontology for managing SWRL rules (Horn clauses):
language or knowledge representation formalism) [26].
1. SWRL rules can be translated into FOL (First Order Logic) — in this
Definition 2 . (Signature of an ontology) The signature of an ontology
case reasoning tasks are demonstrated by means of theorem provers.
is defined as the union S = C ∪ I ∪ P of the ensemble of classes C ,
This is the case for the Hoolet reasoner [41];
instances I and properties P [26].
2. OWL-DL can be translated into rules which are then passed to a
The definitions for conceptual (abstract objects of the domain) and forward-chaining or backward-chaining engine. This is used by the
concrete entities (concrete data values) can be found in [26]. All Bossam [42], KAON2 [43, 44], DL2DB [45], SWRL-IQ [46],
statements defined regarding conceptual and concrete entities form a SWRL2COOL [47] and O-Device [48] reasoners;
knowledge box (KB). More specifically, the statements regarding 3. SWRL rules are translated into DL axioms based on a rolling-up

216
T.M.d. Farias et al. Automation in Construction 92 (2018) 214–229

technique [49]. These rules are then processed by an OWL-DL rea-


Query answering
soner based on the Tableaux calculus. This is the case for the Pellet
[32] and RacerPro [50] reasoners or for the Hypertableau calculus
[51] (e.g. the HermiT reasoner [33]);
support

4. Reasoning is performed by applying a query rewriting approach. In


Yes
Yes

Yes

Yes

Yes

Yes

Yes

Yes

Yes
No
this approach, SWRL rules are taken into account during query re-
writing process. This is the case for the reasoner implemented in the
Yes, with AllegroGraph
Large-scale triple store

Stardog triple store [52], a semantic graph database.

Some reasoners use a hybrid approach where both backward- and


triple store.

forward-chaining techniques are implemented to improve query ex-


ecution time. This is the case for DL2DB [45] and Jena [53], still the
latter does not support the SWRL syntax. Table 1 summarizes the main

Yes
No

No

No

No

No

No

No

No
reasoners which, to the best of our knowledge, support both OWL and
Language) for performing reasoning based on CLIPS. The CLIPS is

SWRL languages.
An inference engine based on XSB Prolog. Therefore, it reduces

Reduces KB to a datalog program. It is also based on rewriting


An inference engine based on the first-order theorem prover

Deriving implicit facts from SWRL rules at query execution can in-
Conversion of SWRL rules to COOL (CLIPS Object-Oriented

An inference engine based on the forward-chaining RETE deed significantly extend query processing time. Moreover, all rea-
soners which perform inferences at query execution time are OWL/
Based (mostly) on a query rewriting technique SWRL general purpose reasoners (see Table 1).
The next section describes our approach based on Semantic Web
Reduces KB to disjunctive datalog program.

technologies for extracting building views.


a RETE-based production rule engine.

techniques for answering queries.


Based on Hypertableau calculus.

4. Combining Horn-like rules with ifcOWL to leverage building


model view definitions
Based on Tableaux calculus.

Based on Tableaux calculus.

KB to a datalog program.

4.1. Creating the knowledge base(KB)

In order to be able to manipulate building data with Semantic Web


Methodology

algorithm.

technologies, we have to be able to represent such data in a Semantic


Vampire.

Web language (e.g. OWL). As described in Section 2, several approaches


have addressed the translation of the IFC standard into OWL. Our ap-
proach is based on the ifcOWL version as defined by buildingSMART5.
To create a knowledge base allowing us to manipulate building-
related information, we followed these steps:
SHIF(D) and it supports some
nominal and cardinality,

1. First, we considered the buildingSMART’s ifcOWL ontology based


on the IFC2x3 Technical Corrigendum 1 (TC) standard [6]. There-
constructors,(ON).

fore, this ontology forms the terminological box (TBox) of the KB.
DL-expressivity

The IFC EXPRESS schema converter used to generate this ontology is


SHOIN(D)

SROIQ(D)

SROIQ(D)

SROIQ(D)
SHIQ(D)

available in Ref. [54].


SHIQ

2. By considering the ifcOWL ontology, we use software tools (such as


SHI

SHI

SHI

Protégé6) which provide a simple interface for the ontology engineer


to define SWRL rules on top of the considered TBox. The rules are
Yes and supports incremental

manually created following the expressivity needed by domain ex-


during each consistency test.
Yes. Partial materialization

perts from AEC/FM (Architecture, Engineering and Construction/


Facility Management).
ABox materialization

3. The resulting terminological model is then uploaded into a triple


store. In our context, we have used the Stardog RDF database ac-
cording to the reasons mentioned in Section 5 (namely support of
reasoning.
Overview: SWRL-supporting semantic web reasoners.

SWRL rule reasoning and the DL expressiveness level of ifcOWL


ontology).
Yes

Yes

Yes
No

No

No

No

No

4. For populating the so-built TBox with information from IFC files,
we considered the parser available in Ref. [55] that extracts data
Reasoning at query

from an IFC STEP file and creates the respective concept instances in
execution time

the KB. During this process, we create a distinct database in the


triple store for each IFC STEP file.
Yes

Yes

Yes

Yes

Yes
No

No

No

No

No

Based on the above considerations, the following subsections illus-


trate the key benefits obtained by implementing DL-safe Horn-like rules
on top of this ontological model of the IFC standard. Notably we explain
SWRL2COOL & O-

the benefits achieved by defining and using DL-safe rules for the ex-
traction of IFC data.
Device
Pellet 2.0
Reasoner

RacerPro

SWRL-IQ

Stardog
KAON2

Bossam
Hermit

DL2DB
Table 1

Hoolet

5
http://www.buildingsmart-tech.org/ifcOWL/IFC2X3_TC1.
6
http://protege.stanford.edu/.

217
T.M.d. Farias et al. Automation in Construction 92 (2018) 214–229

Table 2
The prefixes used throughout this article.
Prefix Namespace IRI

ifcowl http://www.buildingsmart-tech.org/ifcOWL/IFC2X3_TC1#
express https://w3id.org/express#
ifcview http://purl.org/ifcview/
xsd http://www.w3.org/2001/XMLSchema#

4.2. Defining building views by using DL-safe Horn-like rules

4.2.1. Dynamic classification of eligible IFC components in a specific


industrial context Listing 2. A SPARQL query to retrieve all external walls of a building.
In many application contexts, the IFC standard fails to deliver a
proper solution tailored to the exact needs of the building actors. For Considering the definition of an external wall, this can be defined
example, the facility manager will not directly handle IFC entities, but through a DL-safe rule as follows:
will search for “façade” walls, determine spaces that cannot be ac-
cessed, or ask the system for the number of rooms in a building. This
information is implicitly described in the IFC model. However, it is not
easily exploitable when relying exclusively on the IFC standard, be-
cause this implies complex calculus that is based solely on the geometry
of the elements contained in the IFC file.
In order to address these limitations, our approach allows for de-
fining novel concepts as used by AEC/FM actors by means of SWRL
rules. A set of rules allows for specifying additional information re-
garding the concepts defined in the TBox. Notably, they specify means
for discovering and generating new knowledge from the exiting one. Listing 3. A Horn-like rule that classifies external walls (i.e. IfcWall instances)
of a building as a ExternalWall concept.
Therefore, the implicit information becomes explicit. By doing so, we
can conceive a more fine-grained ontology.
Table 2 describes the namespaces IRI (Internationalized Resource This rule (see Listing 3) populates the concept of ExternalWall which
Identifier) and the respective prefixes used throughout this article. does not exist in the IFC standard. By integrating the concept of Ex-
For example, considering the case of a facility manager that needs to ternalWall defined through the Horn-like rule, we greatly simplify the
plan the cleaning of all windows of a given building. The concept of a writing of the SPARQL query, making it more comprehensible and
windowed-space is not present in the IFC standard, so identifying such understandable. Listing 4 presents this simplified query.
spaces would represent a lot of manual work for the facility manager.
However, this information can be easily exploited, if we create the
concept ifcview:SpaceWithWindow instantiated by applying the Horn-
like rule in Listing 1 which identifies spaces that have one or more
windows.
Listing 4. Simplifying the query in Listing 2 when considering the DL-safe rule
in Listing 3.

5. IfcView approach to extract building views

Based on the ifcOWL ontology (see Section 4) and the benefits of using
Horn-like rules to classify instances that belongs to a given BIM context (or
Listing 1. A Horn-like rule that identifies spaces with windows.
view), we developed a prototype to automatically deliver a business view of
an IFC building project. This prototype was programmed in Java language.
We can easily extend this example to the case where logical rules are Given the reasoners described in Table 1, we have chosen to apply our
used to specify precise business contexts (i.e. views) and processes. approach (described in the next section) over a 5.0.3 Stardog triple store
[52], which uses a backward-chaining reasoner (based on query rewriting
techniques) to perform inferences. Besides reasoning techniques, we also use
4.2.2. Simplifying SPARQL queries’ writing the 5.0.3 Stardog for data persistence.
Defining DL-safe Horn-like rules using ifcOWL terms gives the ad- The DL-safe rule syntax used in the IfcView prototype is the SWRL
vantage of simplifying the writing of SPARQL [56] queries because we language. Our choice of SWRL is mainly motivated by the will to enhance
can use inferred terms from a more fine-grained ontology. rule interoperability with other existing triple stores or systems. In this
For example, let us consider the following SPARQL query (in Listing section, we consider the ontology’s TBox and ABox as one single graph.
2) that retrieves all external walls of a building: To better justify our choice of Stardog, it is mainly motivated by the

218
T.M.d. Farias et al. Automation in Construction 92 (2018) 214–229

Fig. 1. Implemented prototype for extracting building views.

three following reasons: Stardog supports OWL and SWRL rules, it en- Algorithm 3). This module acquires instances recursively. In order to do
ables performing reasoning at query execution (backward-chaining) this, the SCM module retrieves all asserted properties of each visited
and it is a large-scale triple store. Indeed, we want to avoid data ma- node (i.e. instance) in the graph. If the property value is an object (i.e.
terialization (as a reminder, in forward-chaining reasoning all entailed another concept instance such as an instance of IfcDoor, see Fig. 2) then
facts are materialized). Furthermore, we need a reasoner associated to a SCM also retrieves this object and its asserted properties. This process
large-scale triple store for handling large KBs when considering (nu- continues until the property value found is a data type (e.g. string,
merous) building projects. We have also performed query execution double, integer, etc.), as it is the case for the express:hasString property
time benchmarks [57] and Stardog, in several cases, outperformed all value illustrated in Fig. 2. The presented recursive process also con-
considered approaches, notably JENA+SPIN [58] and EYE [59]. siders related instances which use relationships assigned in R .
Fig. 1 illustrates an architecture view of the implemented prototype. For illustrating this, let us consider the IfcRelDefinesByProperties
Firstly, the IFC project data serialized by using the STEP Physical relationship, an instance IR of this relationship and its two related in-
File (SPF) [60] format is converted into Turtle (TTL) [61] format. Ad- stances I and I ′. According to the IFC2x3 TC1 standard [6], the If-
ditionally, the ifcOWL ontology is also serialized in TTL format. Both cRelDefinesByProperties entity is “an objectified relationship that defines
IFC project data and schema (i.e. ifcOWL) are loaded into a new KB that the relationships between property set definitions and objects. Properties are
is created in the Stardog triple store. The related processes for con- aggregated in property sets, property sets can be grouped to define an object
version and loading form the import phase of our system prototype. type”. Thus, the SCM retrieves I , I ′ and IR instances and their asserted
Secondly, our prototype comprises an export phase. This phase allows properties. To better illustrate this example, let us consider
for exporting a subpart of a building project (or a view) either in STEP R = {IfcRelDefinesByProperties} and the example in Fig. 2. This figure
or TTL formats. The export phase takes the following elements as in- shows a direct graph where I , I ′, IR and IR2 are instances of IfcDoor,
puts: IfcPropertySetDefinition, IfcRelDefinesByProperties and IfcRelFillsElement,
respectively. In this example, SCM does not retrieve IR2 instance and its
1. C is a set of concepts that can contain asserted concepts (e.g. associated instances and property values. This is because IfcRelFillsEle-
IfcDoor) or inferred concepts (e.g. BuildingEnvelope, ExternalDoor, ment is not included in R and there is no edge in the graph pointing to
ExternalWall and so on) by applying Horn-like rules such as the IR2 (an instance of IfcRelFillsElement).
Duplex apartment case study discussed in Section 6.1. Once the desired sub-graph (i.e. building view) is created, the TTL
2. R is a set of IFC relationship entities. These entities are asserted to Serializer Module (TSM) takes this sub-graph as an input and serializes
related IFC objects such as a door to a opening element and this it using the TTL format. If a SPF serialization is required, this sub-graph
opening element to a wall. is represented as Java objects. Afterwards, these objects are used to
3. G is a set of IFC GUIDs. create an IFC STEP file by the SPF Serializer Module (SSM).
To output an IFC STEP file, the SSM module considers the STEP IDs
The Sub-Graph Constructor Module (SCM) (see Fig. 1) is responsible encoded in the names of ifcOWL class instances during the import
for composing a sub-graph that contains all instances (according to the phase. In the export phase, the SSM module composes a list of all STEP
C and G inputs) and their directly asserted properties (see Algorithms 1 identifiers (IDs) which represent the IFC instances selected by the SCM
and 2). In addition, this sub-graph is also composed of instances which to construct a building view. This list of STEP IDs is used to select
are related to each other through a given set of IFC relationships (see corresponding lines from the original IFC file (the whole building

219
T.M.d. Farias et al. Automation in Construction 92 (2018) 214–229

Fig. 2. Sub-graph extraction example.

project). By doing so, the data of the extracted building model views Algorithm 2 . Function to create in-memory OWL individuals based on
correspond exactly to the data from the original IFC STEP file. Actually, a given instance URI stored in a knowledge base.
we select STEP lines from an IFC STEP file as related to the desired
building view.
Algorithm 1 presents the pseudo-code corresponding to the export
phase of a view extraction from an IFC STEP-based file (see Fig. 1). In
this pseudo-code, URI is an acronym for Uniform Resource Identifier.
Algorithm 1 . The pseudo-code of the export phase of our IfcView
approach.

Algorithm 3 . Function to create in-memory OWL individuals based on


a set of IFC relationships (e.g. IfcRelDefinesByProperties) and a given
instance URI stored in a knowledge base.

220
T.M.d. Farias et al. Automation in Construction 92 (2018) 214–229

6. Evaluating our IfcView prototype the 14 available, 22 Windows (out of 24) and 23 Walls (out of 49) to
compose the building envelope. However, we also have to consider the
The above-described prototype has been tested in the following instances which are somehow connected to these 49 instances of doors,
environment: windows and walls such as Cartesian points, IfcProperties and IfcRela-
tionship subclasses (i.e. R ). By including these elements, we obtain the
• Micro-processor i5 1.7 GHz, SSD 128 GB and 8 GB RAM memory. resulting set of 3676 STEP instances’ IDs, that was used to construct the
• Stardog triple store and API version 5. IFC building envelope view for the Duplex apartment project.
• Java version 1.8, Java(TM) SE Runtime Environment Fig. 5 also shows what seems to be an “internal” wall (highlighted in
(build1.8.0_31-b13). green). However, this wall has the IsExternal property from the Pset_-
• OPEN IFC JAVA TOOLBOX package is available online . 7
WallCommon10 asserted as “TRUE” in the original IFC model of the
• Eclipse Standard/SDK Version: Kepler Service Release 1 Build id: “Duplex apartment” (see Fig. 3). According to the IFC standard, the
20130919-0819. “IsExternal” property indicates whether the element is to be considered
external (“TRUE”) or not (“FALSE”). Hence, this explains why the
In the context of this environment, we test our prototype using building envelope view illustrated in Fig. 5 also contains this wall.
several case studies, notably over a publicly available building model Regarding building elements’ colors, these are not present in the IFC
(see Section 6.1), and over four additional building models (see Section model. They are defined by the Solibri Viewer tool. This is why one may
6.2), all publicly available except one. The results obtained are dis- notice a change of colors between the original “Duplex” model and the
cussed in Section 6.3. building envelope view generated with our approach.

6.1. Case study: the Duplex building project 6.2. Additional case studies

The Duplex apartment building project was produced in Weimar In order to evaluate the performance in terms of expected results
Germany for a design competition. This IFC building model is available and execution time, we extracted, using our prototype, several building
online8. Fig. 3 shows the original Duplex model using the Solibri Model views. Tables 3 and 4 describe three considered case studies, namely
Viewer tool9. the Institute Var project, the Medical Clinic project and the High-School
In this section, we use this IFC model as a case study to validate our project (private IFC file).
proposed rule-based approach to extract building model views. For each case study, we addressed a different query, extracting each
Moreover, in this case study, we define the “Building Envelope” concept time a different building view. Starting with the first case study
as the ensemble of external doors, windows and walls (i.e. (Institute Var project), the complexity of the considered queries grows.
ifcview:ExternalDoor in Listing 5, ifcview:ExternalWindow in Listing 6 and In the first case, we extract only all building doors, in the second case
ifcview:ExternalWall in Listing 3, respectively). The “Building Envelope” we extract all building doors and windows, and finally, for the third
concept (i.e. ifcview:BuildingEnvelope) is formally defined using Horn- case study, we extract all doors and stairs. For each of the considered
like rules in Listing 7. case studies, we also retrieve all related instances by considering the
Appendix A describes Horn-like rules (similar to those in Listings 3, following relationship set: R= {IfcRelDecomposes,
5 and 6) that allow for defining external building elements in a modular IfcRelContainedInSpatialStructure, IfcRelVoidsElement, IfcRelFillsElement,
way. The rules in Appendix A were adapted from Ref. [57]. The inputs IfcRelDefinesByProperties}. The model views based on these queries are
of our system (for further details, see Section 5) for this case study are automatically generated by considering G = {} and a set of concepts (i.e.
described as follows: C ) that depends on the query. We also list the results obtained when
addressing the above-mentioned queries over the different projects
• The IFC STEP file: Duplex_A_20110505.ifc considered. The # symbol in Tables 3 and 5 represents the cardinality of
• C = {BuildingEnvelope}. a given set (e.g. the number of STEP instances).
• G = { }. We consider the set of IFC GUIDs as an empty set (i.e. ϕ) Table 4 gives additional details regarding the IfcView queries and
since it is irrelevant for test purposes. their descriptions.
• R ={IfcRelDecomposes, IfcRelContainedInSpatialStructure, Table 3 demonstrates that for each STEP instance in the extracted
IfcRelVoidsElement, IfcRelFillsElement, IfcRelDefinesByProperties}. building view, our approach creates an in-memory Java object. To il-
lustrate the impact of R in the IfcView query, let us consider the In-
A full description of IFC relationship entities is available in Ref. [6]. stitute Var IFC project. It contains 77 doors. When querying a view
Fig. 4 based on the EXPRESS-G graphical notation [62] illustrates holding all these doors, we could naively expect that only 77 in-
various IFC relationships that belong to the R set. Moreover, the sub- memory objects (i.e. STEP instances) would be created. However, this is
classes of the ifcOWL relationship classes in R are also considered by not true, as 40,294 in-memory objects are created. Consequently, the
our Algorithm 3. view holding all the doors of the Institute Var project contains 40,294
With those inputs, instances of the considered external building STEP instances. This is because of two main reasons:
elements will be classified as instances of the ifcview:BuildingEnvelope
class by applying rules in Listings 3, 5, 6 and 7 at the KB level. 1. Our approach considers all R relations of each door instance with
Therefore, the output of our rule-based system is the building envelope other IFC objects by also including their R relations.
illustrated in Fig. 5. To assess the performance of IfcView in terms of 2. For each IFC object or relationship, our approach retrieves their
execution time, this building view envelope was generated in ≈ attributes. An attribute value can be an instance of some IFC entity.
49 seconds; it created 3676 in-memory JAVA objects and a STEP file For example, the geometric data (e.g. a Cartesian point set) of a door
with 3685 lines out of which 3676 represent STEP instances. The im- encapsulated in an IfcRepresentation11 instance.
port phase (converting the IFC STEP file into RDF file and importing it
in the triple store) lasted ≈ 6 seconds. IfcView selected 4 Doors out of Table 7 illustrates the different buildings as contained in the

7 10
http://www.openifctools.com. http://www.buildingsmart-tech.org/ifc/IFC2x3/TC1/html/psd/
8
http://openifcmodel.cs.auckland.ac.nz/Model/Details/274. IfcSharedBldgElements/Pset_WallCommon.xml.
9 11
http://www.solibri.com/products/solibri-model-viewer/. http://purl.org/ifcview/ifcrepresentation.

221
T.M.d. Farias et al. Automation in Construction 92 (2018) 214–229

Fig. 3. The “Duplex apartment” building project.

Listing 7. An ensemble of Horn-like rules that defines the external building


elements (i.e. the building envelope).

associated STEP files used to evaluate our prototype. Table 7 also dis-
Listing 5. A Horn-like rule that classifies external doors (i.e. IfcDoor instances)
plays the different building views obtained when using our prototype.
of a building as a BimExternalDoor concept.
All extracted building views include IFC objects associated somehow
with queried elements by using IfcRelationship subtypes (i.e. R set). For
example, for all mentioned building projects, resulted views contain
various walls from the original building, although we did not directly
query for these building objects. This is due to the fact that doors and
windows are obligatorily related to opening spaces in walls by using
IfcRelVoidsElement and IfcRelFillsElement relationships. Thus, the walls
related to windows and doors are also considered for the building view
construction.

Listing 6. A Horn-like rule that classifies external windows (i.e. IfcWindow


instances) of a building as a BimExternalWindow concept.

222
T.M.d. Farias et al. Automation in Construction 92 (2018) 214–229

Fig. 4. An example of IFC relationships that are present in R such as IfcRelContainedInSpatialStructure and IfcRelVoidsElement. The IfcRelAggregates relationship is a
subtype of IfcRelDecomposes relationship.

Fig. 5. The building envelope of the “Duplex apartment” building project.


223
T.M.d. Farias et al. Automation in Construction 92 (2018) 214–229

Table 3
The description of additional case studies and generated model views based on the queries described in Table 4 using our IfcView prototype. The “–” character means
not applicable and the "#" character means cardinality.
Institute Var project Institute Var extracted Medical clinic project Medical clinic extracted High-school project High-school extracted
original data IFC STEP view original data IFC STEP view original data IFC STEP view

IFC STEP file In Ref. [63] In Ref. [64] In Ref. [65] In Ref. [64] < Private model > In Ref. [64]
SPF file size 6.1 MB 2.2 MB 112.6 MB 1.7 MB 117.2 MB 22.6 MB
TTL file size 27.6 MB – 784.4 MB – 1.02 GB –
#STEP instances 104,226 40,294 1,904,600 23,484 2,057,114 417,341
#Triples 341,473 – 9,770,674 – 12,649,101 –
#In-memory – 40,294 – 23,484 – 417,341
objects
#Door instances 77 77 247 247 347 347
#Window instances 0 0 47 47 0 0
#Stair instances 0 0 0 0 48 48

Table 4
The IfcView queries and performance results in terms of execution time for the additional case studies described in Table 3 using our IfcView prototype.
IFC Project Query description IfcView query Execution time

Institute Var Retrieve all building doors and related instances such as property sets, opening C = {IfcDoor}, R and G = ϕ -Import phase: ≈17 s
elements and walls (based on R set). -Total(import+export):≈12.2 min
Medical clinic Retrieve all building doors, windows and related instances such as property sets, C = {IfcDoor, IfcWindow}, R and -Import phase: ≈169 s
opening elements and walls (based on R set). G =ϕ -Total(import+export):≈17.5 min
High-school Retrieve all building doors, stairs and related instances such as property sets, C = {IfcDoor, IfcStair}, R and -Import phase: ≈219 s
opening elements and walls (based on R set.) G =ϕ -Total (import+export): ≈19 h

Table 5 value is an instance i of a given IFC entity, additional queries are re-
The description of Vileda Dach case study and extracted IFC STEP based model cursively executed to retrieve instance i’s attribute values. By calling the
views by considering the Q1, Q2 and Q3 queries using our IfcView prototype. function in Algorithm 3, our IfcView approach also takes into account
Table 6 describes these queries. The “–" and “#” characters mean not applicable R set. Hence, more queries are executed to retrieve instances related to
and cardinality, respectively. the two wall instances initially selected (according to R set and their
Characteristics IFC original (Q1) (Q2) IFC (Q3) IFC attributes). Therefore, the number of queries addressed over a KB sig-
data IFC view view nificantly increases with the number of instances in C . Table 5 shows
view that the C sets generated by applying Q1, Q2 and Q3 queries contain
Vileda SPF file size 80.1 MB 55 KB 3.9 MB 20.1 MB
2989 and 2700 instances, respectively. Consequently, the number of in-
Dach TTL file size 903.9 MB – – – memory Java objects (i.e. I in Algorithm 1) and STEP instances in the
pro- #STEP instances 1,341,280 456 43,812 301,609 IFC view can only increase when comparing Q1 to Q3. Table 5 ex-
ject #Triples 11,037,833 – – – emplifies this fact. Q3 retrieves 2 walls, 987 columns and 1711 beams
#In-memory Java – 456 43,812 301,609
and other 298,909 connected instances by considering the R set and
objects
#Wall instances 2 2 2 2 instances’ attributes such as geometric data.
#Column 987 0 987 987 Although the main contribution of this paper is to demonstrate the
instances feasibility of applying semantic web technologies to automate the IFC
#Beam instances 1711 0 0 1711 STEP based model view extraction, in the next paragraphs, we focus on
(#Wall + 2700 2 989 2700
#Column +
explaining the performance issues in terms of execution time.
#Beam) instances Furthermore, we list several potential optimization for improving the
IFC STEP file Available in Model views for Q1, Q2 and Q3 overall approach presented here.
Ref. [66] queries are available in Ref. [64] As an improvement, one could envision parallelizing the “SELECT”
queries in Algorithm 1. Still, each query execution time comprises la-
tency time (i.e. disk access and memory load). As a reminder, we don’t
6.3. Results discussion
load any portions of the building model in memory. Because of this,
several accesses are made to the SSD disk used for implementation. For
When looking at the different benchmarks presented in Tables 3, 4,
creating these objects, our current IfcView prototype implementation
5 and 6, one may notice that, with our prototype, the time needed to
(based on Algorithm 1) demands to execute numerous queries over the
extract the different views drastically raises when compared to the
KB. Therefore, several disk accesses are necessary. By further analyzing
query complexity and its retrieved results. This is mainly justified by
Table 6, we notice that the time needed to populate the I set in
the fact that our prototype does not load the building model into
Algorithm 1, represents 73%, 50% and 69% for Q1, Q2 and respectively
memory (see Algorithm 1). Moreover, thousands of queries are exe-
Q3, of the total time needed for the export phase. These rates demon-
cuted sequentially. To illustrate this, let us consider the execution of the
strate that in average more than half of the execution time during the
Q1, Q2 and Q3 queries to extract model views from the Vileda Dach IFC
export phase is due to the various queries sequentially addressed over
project. These queries are described in Table 6. When considering Q1 as
the KB and implying numerous disk accesses. Algorithm 1 contains as a
an input of Algorithm 1, two wall instances are retrieved by querying
final instruction the writing of the extracted the view as an IFC STEP
the KB. Once these instances are retrieved, for each attribute of a wall
file. In our prototype, we naively implement an IFC STEP writer that
instance a query is executed. As a reminder, an IfcWall instance con-
reads the original file line by line. For each line, we verify if the line’s
tains eight attributes, thus eight queries are executed for each wall
STEP identifier is in the lines list (see Algorithm 1). If yes, then the line
instance for retrieving its attribute values. Moreover, if an attribute
is added to a string list. This list is used for the creation the IFC STEP-

224
T.M.d. Farias et al. Automation in Construction 92 (2018) 214–229

Table 6
The description of the Q1, Q2 and Q3 IfcView queries and performance results in terms of execution time to extract three different model views from the Vileda Dach
project using our IfcView prototype. Table 5 describes the original Vileda Dach IFC project and the resulted IFC STEP based views by applying Q1, Q2 and Q3 queries.
Query Query description IfcView query Execution time

Q1 Retrieve all building walls and related instances such as property sets (based on R C = {IfcWall}, R and G = ϕ – Import phase: ≈181 s
set). – Export phase: ≈16.9 s
– In-memory objects: ≈12.3 s
– Total (import + export):
≈197.9 s
Q2 Retrieve all building walls, columns and related instances such as property sets C = {IfcWall, IfcColumn}, R and G = ϕ – Import phase: ≈181 s
(based on R set). – Export phase: ≈64 min
– In-memory objects: ≈31.9 min
– Total (import + export):
≈67 min
Q3 Retrieve all building walls, columns, beams and related instances such as property C = {IfcWall, IfcColumn, IfcBeam}, R and – Import phase: ≈181 s
sets (based on R set). G=ϕ – Export phase: ≈22.35 h
– In-memory objects: ≈16.10 h
– Total (import + export): ≈22.4 h

based file representing the extracted view. The so-implemented IFC complex queries.
writer is far from being optimized for large IFC files. This is why, with 3. Use query parallelization and in memory access. As a reminder,
our approach, ≈6 hours are needed to write the IFC view corre- each query in our prototype has a latency time that is composed of
sponding to the execution of Q3 over the Vileda Dach project, out of the the disk access time (a time-consuming task). Therefore, a result of
22 hours needed for the total extraction time (see Tables 6 and 7). the current implementation is that the total query time increases
Finally, for all these tests, we created one single KB containing all exponentially with the number of executed queries. Indeed, with the
building data. As our approach is based on STEP identifiers, we could current implementation, queries are processed sequentially. But, not
limit the portion of data to be loaded — we do not need to load all every query depends on results from previous ones. Thus, some of
building data, solely a portion of it is necessary. This can significantly them could be executed in parallel, therefore reducing the overall
optimize the time needed for constructing the building view. The next view extraction time.
section gives additional optimization ideas for our prototype. 4. Optimize the writing of an IFC partial file. Our prototype for writing
The partial IFC models generated by our prototype (after view ex- and reading IFC files can be further improved (at the code level).
traction, see Fig. 5 and Table 7) are available in Ref. [64] . 5. Reduce the size of data imported into the KB. Indeed, our prototype
considers STEP IDs for select lines from the original SPF file.
7. Conclusions and future works Therefore, the vast majority of data values present in an IFC file (e.g.
string and number values) are not necessary to construct building
In this article, we have depicted a methodology for extracting views with our approach. As an optimization, we may solely con-
building views based on logical rules applied on top of the standard sider object values (e.g. instances of concepts, classes). By doing so,
OWL/RDF serialization of the IFC standard [6]. This approach answers we can significantly reduce the size of the KB, and improve query
the need of stakeholders (acting in the context of BIM) for having in- execution time.
teroperability among standards while being able to adapt those to their 6. Use in memory load of a portion of (or all of) the so-created KB (that
specific needs (e.g. by conceiving model views). In our approach, we does not contain data values). As mentioned before, disk access time
have used semantic web technologies for defining new concepts by highly impacts query latency time. In other words, with the current
means of logical rules, thus separating the BIM data structure model implementation, each query must access the disk to retrieve data
(e.g. the IFC schema) from its semantics. Therefore, we can increase the (nothing is previously stored in memory). This optimization would
expressivity of the data model without compromising interoperability allow for reducing the time needed for extracting a view.
when exchanging IFC files. The article at hand has illustrated the main
benefits of having developed such business-specific rules. These rules Besides the above considerations, future work will address the
allow for enriching the semantics of a building model. Such semantical comparison of using SWRL syntax against other rule syntaxes (e.g. the
enrichment contributes to a flexible and easy implementation of a rule- RIF syntax, as defined by the W3C) in order to address SWRL limitations
based approach to extract building model views. As a reminder, this as identified in Ref. [36]. Last but not least, we will consider the need
work focuses on extracting a portion of a given IFC file rather than for inconsistencies or ambiguities checking by introducing new rules
enriching the IFC file. In the context of this work, we enrich the and for automatically updating the rule set based on changes in the IFC
building model only at the ontological level in order to extract building standard, and consequently, in the ifcOWL ontology.
views. Our building view extraction approach is not able to auto-
matically update the set of rules based on changes in the IFC schema.
Several optimizations are possible and can be applied to our IfcView Acknowledgments
prototype. They are enumerated below:
The authors would like to thank the Burgundy Regional Council for
1. Compose more complex queries. For instance, currently, a query is its help and financing. The work presented in this paper is part of a
executed to retrieve each IFC object property value. This could be collaborative project with the French company Active3D who has fi-
adapted into one unique query for retrieving all the properties of an nanced this research. The authors would also like to thank the Editors
IFC object. and the anonymous reviewers for their constructive comments and
2. Analyze the trade-off between composing simple queries and valuable suggestions to improve the quality of the article.

225
Table 7
Original building models and building views extracted with our prototype.
Case Original 3D building model Extracted 3D building view
study
T.M.d. Farias et al.

Institute
Var

Medical
clinic

226
High-
scho-
ol

(continued on next page)


Automation in Construction 92 (2018) 214–229
T.M.d. Farias et al. Automation in Construction 92 (2018) 214–229

Appendix A

The rules defined in Listings 8–13 were adapted from Ref. [57] and the
rules are ordered from general (e.g. Listings 8–10) to more specific (e.g.
Listings 11–13). The rule in Listing 14 also demonstrates how we define
rules in a modular way (by considering the rules in Listings 8 and 9).

Listing 8. Rule S1 allows for inferring ifcview:hasPropertySet properties


that directly link objects and their property sets.

Listing 9. Rule S2 relies on rule S1 (Listing 8) and allows for inferring ifcvie-
w:hasProperty properties that directly link objects to individual properties.
Extracted 3D building view

Listing 10. Rule S3 relies on rule S2, which in turn relies on rule S1 (Listings 8 and
9), and allows for inferring the value for the property ifcview:isExternal,
which is typically associated to door, window, and wall elements.

Listing 11. Rule S4 relies on rule S3 (Listing 10), which furthermore relies on rule
S1 and S2 (Listings 8 and 9). Rule S4 allows for inferring whether a wall is of type
ifcview:ExternalWall or not.

Listing 12. Rule S5 relies on rule S3 (Listing 10), which furthermore relies on rule
S2 and S1 (Listings 8 and 9). Rule S5 allows for inferring whether a window is of
type ifcview:ExternalWindow or not.

Listing 13. Rule S5 relies on rule S3 (Listing 10), which furthermore relies on rule
S2 and S1 (Listings 8 and 9). Rule S5 allows for inferring whether a door is of type
ifcview:ExternalDoor or not.
Original 3D building model
Table 7 (continued)

Listing 14. Rule S7 relies on rule S2, which in turn relies on rule S1 (Listings 8 and
9), and allows for inferring the value of the property ifcview:occupancy-
Dach
(Q3)

Number, which is typically associated to an architectural program for a space (i.e.


Vileda
study
Case

IfcSpaceProgram) in the building being designed.

227
T.M.d. Farias et al. Automation in Construction 92 (2018) 214–229

References [23] buildingSMART, Coordination View Version 2.0 Summary, (2018) available online
at http://www.buildingsmart-tech.org/specifications/ifc-view-definition/
coordination-view-v2.0 last accessed: 2018-02-20.
[1] R. Volk, J. Stengel, F. Schultmann, Building Information Modeling (BIM) for [24] Y.-C. Lee, C.M. Eastman, W. Solihin, Logic for ensuring the data exchange in-
existing buildings — literature review and future needs, Autom. Constr. 38 (2014) tegrity of building information models, Autom. Constr. 0926-5805, 85 (2018)
109–127 http://www.sciencedirect.com/science/article/pii/ 249–262 http://www.sciencedirect.com/science/article/pii/
S092658051300191Xhttp://dx.doi.org/10.1016/j.autcon.2013.10.023. S0926580517307276http://dx.doi.org/10.1016/j.autcon.2017.08.010.
[2] G. Lee, R. Sacks, C.M. Eastman, Specifying parametric building object behavior [25] Z. Ma, Z. Liu, Z. Wei, Formalized representation of specifications for construction
(BOB) for a building information modeling system, Autom. Constr. 15 (6) (2006) cost estimation by using ontology, Comput. Aided Civ. Infrastruct. Eng. 31 (1)
758–776 http://www.sciencedirect.com/science/article/pii/S0926580505001445 (2016) 4–17, http://dx.doi.org/10.1111/mice.12175.
http://dx.doi.org/10.1016/j.autcon.2005.09.009 (knowledge Enabled Information [26] S. Grimm, A. Abecker, J. Völker, R. Studer, Ontologies and the Semantic Web,
System Applications in Construction). Springer Berlin Heidelberg, Berlin, Heidelberg, 978-3-540-92913-0, 2011, pp.
[3] R. Vanlande, C. Nicolle, C. Cruz, IFC and building lifecycle management, Autom. 507–579, http://dx.doi.org/10.1007/978-3-540-92913-0_13.
Constr. 18 (1) (2008) 70–78 http://www.sciencedirect.com/science/article/pii/ [27] V. Haarslev, H.-I. Pai, N. Shiri, Uncertainty Reasoning for the Semantic Web I,
S0926580508000800http://dx.doi.org/10.1016/j.autcon.2008.05.001. Springer-Verlag, Berlin, Heidelberg, 2008, pp. 385–402, http://dx.doi.org/10.
[4] Autodesk, Inc., AutoCAD 2012 - DXF Reference, (2011) available online at http:// 1007/978-3-540-89765-1_22 (Ch. Uncertainty Reasoning for Ontologies with
images.autodesk.com/adsk/files/autocad_2012_pdf_dxf-reference_enu.pdf last ac- General TBoxes in Description Logic).
cessed: 2018-02-20. [28] World Wide Web Consortium (W3C), Semantic Web: Inference, (2015) available
[5] Open Design Alliance Inc., Open Design Specification for .dwg files (version 5.4.1), online at http://www.w3.org/standards/semanticweb/inference last accessed:
(2018) available online at http://opendesign.com/files/guestdownloads/ 2018-02-20.
OpenDesign_Specification_for_.dwg_files.pdf last accessed: 2018-02-20. [29] M. Dean, G. Schreiber, S. Bechhofer, F. Van Harmelen, J. Hendler, I. Horrocks,
[6] buildingSMART, IFC Overview summary, (2018) available online at http://www. D.L. McGuinness, P.F. Patel-Schneider, L.A. Stein, OWL Web Ontology Language
buildingsmart-tech.org/specifications/ifc-overview last accessed: 2018-02-20. Reference. W3C Recommendation, (2004) available online at www.w3.org/TR/
[7] A.P. Sheth, J.A. Larson, Federated database systems for managing distributed, 2004/REC-owl-ref-20040210 last accessed: 2018-02-20.
heterogeneous, and autonomous databases, ACM Comput. Surv. 22 (3) (1990) [30] B. Motik, P.F. Patel-Schneider, B.C. Grau, OWL 2 Web Ontology Language Direct
183–236 http://doi.acm.org/10.1145/96602.96604http://dx.doi.org/10.1145/ Semantics (Second Edition). W3C Recommendation, (2012) available online at
96602.96604. https://www.w3.org/TR/owl2-direct-semantics/ last accessed: 2018-02-20.
[8] buildingSMART, Linked Data — Overview Page for the Linked Data Working [31] F. Baader, D. Calvanese, D.L. McGuinness, D. Nardi, P.F. Patel-Schneider (Eds.), The
Group, (2018) available online at http://www.buildingsmart-tech.org/future/ description logic handbook: theory, implementation, and applications, Cambridge
linked-data/linked-data last accessed: 2018-02-20. University Press, 0-521-78176-0, 2003.
[9] Žiga Turk (project coordinator), Interoperability of Virtual Organizations on a [32] E. Sirin, B. Parsia, B.C. Grau, A. Kalyanpur, Y. Katz, Pellet: a practical OWL-DL
Complex Semantic Grid. (2007) available online at http://inteligrid.eu-project.info reasoner, Web Semant. 5 (2) (2007) 51–53, http://dx.doi.org/10.1016/j.websem.
last accessed: 2018-02-20. 2007.03.004.
[10] J. Beetz, J. Van leeuwen, B. De vries, IfcOWL: a case of transforming EXPRESS [33] B. Glimm, I. Horrocks, B. Motik, G. Stoilos, Z. Wang, HermiT: an OWL 2 reasoner,
schemas into ontologies, Artif. Intell. Eng. Des. Anal. Manuf. 23 (1) (2009) 89–101, J. Autom. Reason. 0168-7433, 53 (3) (2014) 245–269, http://dx.doi.org/10.1007/
http://dx.doi.org/10.1017/S0890060409000122. s10817-014-9305-1.
[11] P. Pauwels, W. Terkaj, EXPRESS to OWL for construction industry: towards a [34] I. Horrocks, P.F. Patel-Schneider, H. Boley, S. Tabet, B. Grosof, M. Dean, SWRL: A
recommendable and usable ifcOWL ontology, Autom. Constr. 63 (2016) 100–133 Semantic Web Rule Language Combining OWL and RuleML, (2004) This W3C
http://www.sciencedirect.com/science/article/pii/S0926580515002435http://dx. Member submission is available online at https://www.w3.org/Submission/SWRL/
doi.org/10.1016/j.autcon.2015.12.003. last accessed: 2018-02-20.
[12] R. Barbau, S. Krima, S. Rachuri, A. Narayanan, X. Fiorentini, S. Foufou, R.D. [35] B. Motik, U. Sattler, R. Studer, Query answering for OWL-DL with rules, Web
Sriram, OntoSTEP: enriching product model data using ontologies, Comput. Aided Semant. Sci. Serv. Agents World Wide Web 1570-8268, 3 (1) (2005) 41–60 http://
Des. 44 (6) (2012) 575–590 http://www.sciencedirect.com/science/article/pii/ www.sciencedirect.com/science/article/pii/S157082680500003X http://dx.doi.
S001044851200022Xhttp://dx.doi.org/10.1016/j.cad.2012.01.008. org/10.1016/j.websem.2005.05.001 Rules Systems.
[13] P. Pauwels, T. Krijnen, W. Terkaj, J. Beetz, Enhancing the ifcOWL ontology with [36] buildingSMART, Report on Open Standards for Regulations, Requirements and
an alternative representation for geometric data, Autom. Constr. 80 (2017) 77–94 Recommendations Content, (2017) available online at https://buildingsmart-
http://www.sciencedirect.com/science/article/pii/S0926580517301826http://dx. 1xbd3ajdayi.netdna-ssl.com/wp-content/uploads/2017/11/17-11-08-Open-
doi.org/10.1016/j.autcon.2017.03.001. Standards-for-Regulation.pdf last accessed: 2018-02-20.
[14] T.M. de Farias, A. Roxin, C. Nicolle, IfcWoD, Semantically Adapting IFC Model [37] J. Euzenat, Networks of Ontologies and Alignments, M2R SWXO Lecture Notes,
Relations into OWL Properties, Proceedings of the 32nd CIB W78 Conference on (2011) available online at https://pdfs.semanticscholar.org/c6c5/
Information Technology in Construction, Eindhoven, The Netherlands, 27-29 6c90b1fc60d74a2fe3545cab50ccdae2dbec.pdf last accessed: 2018-02-20.
October, 2015, pp. 175–185 http://itc.scix.net/cgi-bin/works/Show?w78-2015- [38] K.R. Apt, From Logic Programming to Prolog, Prentice-Hall, Inc., Upper Saddle
paper-018. River, NJ, USA, 0-13-230368-X, 1996.
[15] T.M. Farias, A. Roxin, C. Nicolle, A Rule Based System for Semantical Enrichment of [39] J.H. Gallier, Logic for Computer Science: Foundations of Automatic Theorem
Building Information Exchange, Proceedings of the RuleML 2014 Challenge and the Proving, Second Edition, Dover Publications, Inc., New York, NY, USA, 2015
RuleML 2014 Doctoral Consortium hosted by the 8th International Web Rule ISBN:0486780821, ISBN:9780486780825.
Symposium, Challenge+DC@RuleML 2014, Prague, Czech Republic, August 18-20, [40] S. Russell, P. Norvig, The Artificial Intelligence, 3rd Edition, Prentice Hall Press,
2014, 2014 http://ceur-ws.org/Vol-1211/paper2.pdf. Upper Saddle River, NJ, USA, 2010 ISBN:9780136022923.
[16] M.J. Dibley, An Intelligent System for Facility Management (Doctoral Dissertation), [41] S. Bechhofer, Hoolet, (2004) available online at http://owl.man.ac.uk/hoolet/ last
(2011) available online at https://orca.cf.ac.uk/23277/1/2012DibleyMJPhD.pdf accessed: 2018-02-20.
last accessed: 2018-02-20. [42] M. Jang, J.-C. Sohn, Bossam: an extended rule engine for OWL inferencing, in:
[17] buildingSMART, MVD Overview Summary, (2018) available online at http://www. G. Antoniou, H. Boley (Eds.), Rules and Rule Markup Languages for the Semantic
buildingsmart-tech.org/specifications/mvd-overview/mvd-overview-summary last Web, Springer Berlin Heidelberg, Berlin, Heidelberg, 978-3-540-30504-0, 2004, pp.
accessed: 2018-02-20. 128–138.
[18] M. Venugopal, C. Eastman, R. Sacks, J. Teizer, Semantics of model views for [43] B. Motik, Reasoning in Description Logics using Resolution and Deductive
information exchanges using the industry foundation class schema, Adv. Eng. Databases, (2006) available online at https://publikationen.bibliothek.kit.edu/
Inform. 1474-0346, 26 (2) (2012) 411–428 http://www.sciencedirect.com/ 1000003797/1437 last accessed: 2018-02-20.
science/article/pii/S1474034612000067 http://dx.doi.org/10.1016/j.aei.2012.01. [44] B. Motik, U. Sattler, A Comparison of Reasoning Techniques for Querying Large
005 Knowledge based engineering to support complex product design. Description Logic ABoxes, Proceedings of the 13th International Conference on
[19] P. Pauwels, D.V. Deursen, R. Verstraeten, J.D. Roo, R.D. Meyer, R.V. de Walle, Logic for Programming, Artificial Intelligence, and Reasoning, LPAR’06, Springer-
J.V. Campenhout, A semantic rule checking environment for building performance Verlag, Berlin, Heidelberg, 978-3-540-48282-6, 2006, pp. 227–241, , http://dx.doi.
checking, Autom. Constr. 20 (5) (2011) 506–518 http://www.sciencedirect.com/ org/10.1007/11916277_16.
science/article/pii/S0926580510001962http://dx.doi.org/10.1016/j.autcon.2010. [45] J. Mei, L. Ma, Y. Pan, Ontology Query Answering on Databases, Proceedings of the
11.017. 5th International Conference on The Semantic Web, ISWC’06, Springer-Verlag,
[20] J. Beetz, B. De Vries, J. Van Leeuwen, RDF-based distributed functional part spe- Berlin, Heidelberg, 978-3-540-49029-6, 2006, pp. 445–458, , http://dx.doi.org/10.
cifications for the facilitation of service-based architectures, Proceedings of the 24th 1007/11926078_32.
CIB-W78 Conference on Information Technology in Construction, Maribor, [46] D. Elenius, SWRL-IQ: A Prolog-based Query Tool for OWL and SWRL, Proceedings
Slovenia, June, 2007, pp. 183–188 http://itc.scix.net/cgi-bin/works/Show?w78_ of OWL: Experiences and Directions (OWLED) Workshop, Heraklion, Crete, Greece,
2007_39. May 27–28, 2012 http://ceur-ws.org/Vol-849/paper_17.pdf.
[21] J. Beetz, J. van Leeuwen, B. de Vries, An ontology web language notation of the [47] E. Rigas, G. Meditskos, N. Bassiliades, SWRL2COOL: Object-oriented
industry foundation classes, Proceedings of the 22nd CIB W78 Conference on Transformation of SWRL in the CLIPS Production Rule Engine, Proceedings of the
Information Technology in Construction, 2005, pp. 193–198 http://itc.scix.net/cgi- 7th Hellenic Conference on Artificial Intelligence: Theories and Applications,
bin/works/Show?w78-2005-d1-4-beetz. SETN’12, Springer-Verlag, Berlin, Heidelberg, 978-3-642-30447-7, 2012, pp.
[22] M. Belsky, R. Sacks, I. Brilakis, Semantic enrichment for building information 49–56, , http://dx.doi.org/10.1007/978-3-642-30448-4_7.
modeling, Comput. Aided Civ. Infrastruct. Eng. 31 (4) (2016) 261–274, http://dx. [48] G. Meditskos, N. Bassiliades, A rule-based object-oriented OWL reasoner, IEEE
doi.org/10.1111/mice.12128. Trans. Knowl. Data Eng. 1041-4347, 20 (3) (2008) 397–410, http://dx.doi.org/10.

228
T.M.d. Farias et al. Automation in Construction 92 (2018) 214–229

1109/TKDE.2007.190699. [59] J. De Roo, Euler Yet Another Proof Engine — EYE, (2018) available online at
[49] B. Parsia, E. Sirinb, B.C. Graua, E. Ruckhausa, D. Hewlettb, Cautiously approaching http://eulersharp.sourceforge.net/ last accessed: 2018-02-20.
SWRL, University of Maryland, Tech. Rep, 2005 available online at http://citeseerx. [60] International Organization for Standardization (ISO), ISO 10303-21:2016 Industrial
ist.psu.edu/viewdoc/download?doi=10.1.1.222.7885&rep=rep1&type=pdf last Automation Systems and Integration — Product Data Representation and Exchange
accessed:2018-02-20. — Part 21: Implementation Methods: Clear Text Encoding of the Exchange
[50] V. Haarslev, K. Hidde, R. Möller, M. Wessel, The Racerpro knowledge re- Structure, (2016) available online at https://www.iso.org/standard/63141.html
presentation and reasoning system, Semant. Web 1570-0844, 3 (3) (2012) 267–277, last accessed: 2018-02-20.
http://dx.doi.org/10.3233/SW-2011-0032. [61] D. Beckett, T. Berners-Lee, E. Prud’hommeaux, G. Carothers, RDF 1.1 Turtle - Terse
[51] B. Motik, R. Shearer, I. Horrocks, Hypertableau Reasoning for Description Logics, RDF Triple Language - W3C Recommendation 25 February 2014, (2014) available
J. Artif. Int. Res. 1076-9757, 36 (1) (2009) 165–228 http://dl.acm.org/citation. online at https://www.w3.org/TR/turtle/ last accessed: 2018-02-20.
cfm?id=1734953.1734957. [62] International Organization for Standardization (ISO), Industrial Automation
[52] Stardog Union, Stardog 5: The Manual, (2018) available online at http://docs. Systems and Integration - Product Data Representation and Exchange — Part 11:
stardog.com/ last accessed: 2018-02-20. Description Methods: The EXPRESS Language Reference Manual, (2004) available
[53] The Apache Software Foundation, Reasoners and Rule Engines: Jena Inference online at https://www.iso.org/standard/38047.html last accessed: 2018-02-20.
Support, (2017) available online at https://jena.apache.org/documentation/ [63] P. Pauwels, IFC Repository — The IFC STEP File of the Institute-Var Project, (2008)
inference/ last accessed: 2018-02-20. available online at http://smartlab1.elis.ugent.be:8889/IFC-repo/http.
[54] P. Pauwels, EXPRESS to OWL tool, (2017) available online at https://github.com/ openifcmodel.cs.auckland.ac.nz/261110Allplan-2008-Institute-Var-2-IFC.ifc last
pipauwel/EXPRESStoOWL last accessed: 2018-02-20. accessed: 2018-02-20.
[55] P. Pauwels, IFC to RDF tool, (2017) available online at https://github.com/ [64] T.M. de Farias, A. Roxin, C. Nicolle, IfcView Approach — Building Model View
pipauwel/IFCtoRDF last accessed: 2018-02-20. Extraction Examples, (2017) available online at https://github.com/tarcisiotmf/
[56] The W3C SPARQL Working Group, SPARQL 1.1 Overview W3C Recommendation ifcview/tree/master/ifcview%20results last accessed: 2018-02-20.
21 March 2013, (2013) available online at https://www.w3.org/TR/sparql11- [65] P. Pauwels, IFC Repository — The IFC STEP File of the Medical Clinic Project,
overview/ last accessed: 2018-02-20. (2010) available ontline at http://smartlab1.elis.ugent.be:8889/IFC-repo/http.
[57] P. Pauwels, T.M. de Farias, C. Zhang, A. Roxin, J. Beetz, J.D. Roo, C. Nicolle, A openifcmodel.cs.auckland.ac.nz/161210Med_Dent_Clinic_Combined.ifc last ac-
performance benchmark over semantic rule checking approaches in construction cessed: 2018-02-20.
industry, Adv. Eng. Inform. 33 (2017) 68–88 http://www.sciencedirect.com/ [66] P. Pauwels, IFC Repository — The IFC STEP File of the Vileda Dach Project, (2014)
science/article/pii/S1474034617301945http://dx.doi.org/10.1016/j.aei.2017.05. available online at http://smartlab1.elis.ugent.be:8889/IFC-repo/20151023_
001. TeklaBIMAwards2014/modell-vileda/08001_Vileda_Dach.ifc last accessed: 2018-
[58] The Apache Software Foundation, Apache Jena, (2015) available online at https:// 02-20.
jena.apache.org/ last accessed: 2018-02-20.

229

You might also like