An
a R
OX
IN –
an
a-m
ari
a.r
oxi
n@
u-b
ou
rgo
gn
e.f
r
Tarcisio Mendes de Farias, Ana Roxin, Christophe Nicolle
An
a R
OX
IN –
an
a-m
ari
a.r
oxi
n@
u-b
ou
rgo
gn
e.f
r
Agenda
11
•Problems with existing knowledge models in AEC/FM
22
•Federated Architecture for OWL Ontologies (FOWLA)
33
•FOWLA Application (IFC and COBie)
2
An
a R
OX
IN –
an
a-m
ari
a.r
oxi
n@
u-b
ou
rgo
gn
e.f
r
Knowledge models in AEC/FM
ifcOWL
ifcWOD
simpleBIM
COBieOWL
SIMModel
3
An
a R
OX
IN –
an
a-m
ari
a.r
oxi
n@
u-b
ou
rgo
gn
e.f
r
Related Problem
Data Integration
ifcOWL
ifcWOD
COBieOWL
simpleBIM
SIMModel
4
An
a R
OX
IN –
an
a-m
ari
a.r
oxi
n@
u-b
ou
rgo
gn
e.f
r
Layers of Data Interoperability
Semantic Interoperability
• Automatically interpret the information exchanged.
• To achieve semantic interoperability, both sides must refer to a common information exchange reference model.
Organizational Interoperability
• Business processes and cross-enterprise collaboration activities
Technical Interoperability
• Ensures that systems can send and receive data successfully.
• Defines the degree to which the information can be successfully “transported” between systems.
5
Source: ISO 19439:2006 Enterprise integration - Framework for enterprise modelling
Image sources: http://ecotechitsolutions.com/enterprises/application-interoperability/
An
a R
OX
IN –
an
a-m
ari
a.r
oxi
n@
u-b
ou
rgo
gn
e.f
r
Achieving Semantic Interoperability
6
Full data integration is only possible
considering integration at both Schema
and Data level…
Semantic Web technologies do not
leverage semantic heterogeneity…
An
a R
OX
IN –
an
a-m
ari
a.r
oxi
n@
u-b
ou
rgo
gn
e.f
r
A double Goal
Interoperability at the schema
level
Rule-based integration
Interoperability at the data
level
Federated architecture
7
An
a R
OX
IN –
an
a-m
ari
a.r
oxi
n@
u-b
ou
rgo
gn
e.f
r
Federated Architecture for OWL Ontologies
• Preserving each system's autonomy
Autonomous ontologies
• Avoiding data redundancy
• Modularizing maintenability
Aligned through rules
• Reducing the number of alignments to be defined
Controlled by inference
8
An
a R
OX
IN –
an
a-m
ari
a.r
oxi
n@
u-b
ou
rgo
gn
e.f
r
Federated Architecture for OWL Ontologies
9
Autonomous ontologies
Mapped through rules
Controlled by inference
FOWLA
OntoN
Onto2Onto1
Onto1
Onto2
OntoN
Rule inference performed at query time (backward-chaining):
- automatic "translation" between formats
- automatic inference of modifications in aligned ontologies
An
a R
OX
IN –
an
a-m
ari
a.r
oxi
n@
u-b
ou
rgo
gn
e.f
r
FOWLA – General architecture
10
Autonomous
ontologies
Ontology
alignments
(rule-based)
Inference
mechanisms
An
a R
OX
IN –
an
a-m
ari
a.r
oxi
n@
u-b
ou
rgo
gn
e.f
r
FOWLA Benefits
Avoiding data redundancy
Inferring new ontology alignments
Modularizing maintainability
Querying with vocabulary terms issued from different ontologies
Improving query execution time
11
An
a R
OX
IN –
an
a-m
ari
a.r
oxi
n@
u-b
ou
rgo
gn
e.f
r
FOWLA Application Illustration – IFC & COBie
ifcOWL• OWL version
of IFC2x3
COBieOWL
• COBie 2.4• Semi-
automatically conceived
Alignment
• Construction Operations MVD
• Only IFC2x3 mappings
12
FOWLA
An
a R
OX
IN –
an
a-m
ari
a.r
oxi
n@
u-b
ou
rgo
gn
e.f
r
Avoiding Data Redundancy
13
Contact ≡ IfcActor
ifcowl:IfcActor(x) → cobieowl:Contact(x)
cobieowl:Contact(x) → ifcowl:IfcActor(x)
Floor ≡ IfcBuildingStorey
ifcowl:IfcBuildingStorey (x) → cobieowl:Floor(x)
cobieowl:Floor(x) → ifcowl:IfcBuildingStorey (x)
?x a cobieowl:Contact .
?x cobieowl:email ?email.
?x a ifcowl:IfcActor .
?x ifcowl:name_IfcRoot ?y.
?y expr:hasString ?z
becomes
We can directly use a query language to retrieve COBie data originally described using IFC !
An
a R
OX
IN –
an
a-m
ari
a.r
oxi
n@
u-b
ou
rgo
gn
e.f
r
Zoom on Alignment (Federal Descriptor)
14
ifcOWLTBox
ifcOWLABox
COBieOWL TBox
COBieOWLABox
swrl1: ifcowl:IfcBuildingStorey (?x) → cobieowl:Floor (?x)
swrl2: cobieowl:Floor (?x)→ ifcowl:IfcBuildingStorey (?x)
swrl3: ifcowl:IfcBuildingStorey(?x) ∧ ifcowl:description… (?x, ?y) ∧ifcowl:hasString(?y, ?z) → cobieowl:description(?x,?z)
Federal Logic
Schema(FOWLA)
An
a R
OX
IN –
an
a-m
ari
a.r
oxi
n@
u-b
ou
rgo
gn
e.f
r
Alignment (FD) – Instance to class mapping
15
ifcOWL & COBieOWL
ABox
swrl1: ifcowl:IfcBuildingStorey (?x) → cobieowl:Floor (?x)
swrl2: cobieowl:Floor (?x)→ ifcowl:IfcBuildingStorey (?x)
swrl3: ifcowl:IfcBuildingStorey(?x) ∧ ifcowl:description… (?x, ?y) ∧ifcowl:hasString(?y, ?z) → cobieowl:description(?x,?z)
Federal Logic
Schema(FOWLA)
ifcOWLTBox
COBieOWL TBox
rdf:type
An
a R
OX
IN –
an
a-m
ari
a.r
oxi
n@
u-b
ou
rgo
gn
e.f
r
Alignment (FD) – Creating missing instances
16
ifcOWL & COBieOWL
ABox
swrl1: ifcowl:IfcBuildingStorey (?x) → cobieowl:Floor (?x)
swrl2: cobieowl:Floor (?x)→ ifcowl:IfcBuildingStorey (?x)
swrl3: ifcowl:IfcBuildingStorey(?x) ∧ ifcowl:description… (?x, ?y) ∧ ifcowl:hasString(?y, ?z) →cobieowl:description(?x,?z)
swrl4: cobieowl:Floor(?x) ∧ cobieowl:description(?x, ?y) ∧ ifcowl:description…(?x, ?z) ∧ ifcowl:IfcText(?z) → ifcowl:hasString(?z,?y)
Federal Logic
Schema(FOWLA)
ifcOWLTBox
COBieOWL TBox
ifcowl:hasString
rdf:type rdf:type
An
a R
OX
IN –
an
a-m
ari
a.r
oxi
n@
u-b
ou
rgo
gn
e.f
r
Inferring new Information
◼ Object property cobie:hasDocument defined as an inverse property of cobie:documentTo
� Automatic inference of new assertions for cobie:hasDocument
� Based on explicitly asserted cobie:documentTo properties
� And vice-versa
17
Assertions:
cobie:documentTo(doc1,type1)
cobie:hasDocument(type2, doc2)
Inferences:
cobie:documentTo(type2,doc2)
cobie:hasDocument(type1, doc1),
(type1, type2 instances of cobie:Type)
(doc1, doc2 instances of cobie:Document)
An
a R
OX
IN –
an
a-m
ari
a.r
oxi
n@
u-b
ou
rgo
gn
e.f
r
Query Execution
18
Onto1
Onto2
OntoN
How to express queries ?How long does it take to get an answer ?
An
a R
OX
IN –
an
a-m
ari
a.r
oxi
n@
u-b
ou
rgo
gn
e.f
r
How to express queries ?
◼ One can use all terms from any of the aligned ontologies
� In this example, one can use terms from both ifcOWL and COBieOWL
19
Query name SPARQL Query
Q1 SELECT ?x ?y WHERE { ?x cobieowl:name ?y . }
Q2SELECT ?x ?y WHERE { ?x a ifcowl:IfcElement.
?x cobieowl:name ?y.}
Q3SELECT ?x ?y WHERE{ ?x rdf:type ifcowl:IfcBuildingStorey.
?x cobieowl:description ?y }
An
a R
OX
IN –
an
a-m
ari
a.r
oxi
n@
u-b
ou
rgo
gn
e.f
r
◼ The number of rules highly impacts query execution time
◼ Our approach allows selecting only the rules that apply to a given query
And what about query performance ?
20
ifcOWL 2x3 COBieOWL
Aligned through
474 SWRL rules (extracted from COBie MVD)
Selection of the subset
of rules necessary for
answering the query !
An
a R
OX
IN –
an
a-m
ari
a.r
oxi
n@
u-b
ou
rgo
gn
e.f
r
◼ Each repository’s ABox contains 1,146,294 triples
◼ Server: Intel Xeon CPU E5-2430 at 2.2GHz with 2 cores out of 6, 8GB of DDR3 RAM memory (Java Heap = 6GB)
◼ Client: Intel Core CPU I7-4790 at 3.6GHz with 4 cores, 8GB of DDR3 RAM memory at 1600MHz (Java Heap = 1GB)
Experiment Environment
21
OWL entities COBieOWL ifcOWL v2x3
Classes 30 802
Object properties
32 1292
Data properties 125 247
Inverse properties
7 115
Triples in the Tbox
2212 9978
DL expressivity ALCHIF(D) ALUIF(D)
Rules Characteristics
KB1 474All the rules contained in the FLS (all the rules forming the alignment between COBieOWL and ifcOWL)
KB2 266All subsumption rules along with all the rules that have elements from COBieOWL in their head
KB3 178All rules from KB2 minus some of the rules that have elements from COBieOWL in their head (we aimed at reducing the data inferred)
KB4 variable All the rules contained in the Activated Rule Set (ARS) conceived by the RS.
An
a R
OX
IN –
an
a-m
ari
a.r
oxi
n@
u-b
ou
rgo
gn
e.f
r
So let's see query execution time…Query name SPARQL Query
Q1 SELECT ?x ?y WHERE { ?x cobieowl:name ?y . }
Q2 SELECT ?x ?y WHERE { ?x a ifcowl:IfcElement. ?x cobieowl:name ?y.}
Q3SELECT ?x ?u WHERE { ?x a onto1:C11 . ?y a onto2:C22 .
?x onto1:p12 ?y . ?y onto1:p11 ?x . }
22
Query KBMean execution
time (s)
Standard
deviation (σσσσ)#RuleSet #Results
Q1
KB1 - - 474 0
KB2 - - 266 0
KB3 9.25 12.21 178 1683
KB4 2.23 1.78 16 38318
Q2
KB1 - - 474 0
KB2 - - 266 0
KB3 32.99 0.75 178 74
KB4 0.16 0.04 2 74
Q3
KB1 - - 474 0
KB2 - - 266 0
KB3 71.62 0.95 178 0
KB4 0.88 0.43 5 9
An
a R
OX
IN –
an
a-m
ari
a.r
oxi
n@
u-b
ou
rgo
gn
e.f
r
Conclusion
◼ An approach for ontology federation
◼ Addresses semantic heterogeneity
◼ Advantages:� Deducing new knowledge
� Flexible query composition
� Reduced query execution time
23
An
a R
OX
IN –
an
a-m
ari
a.r
oxi
n@
u-b
ou
rgo
gn
e.f
r
Tarcisio Mendes de Farias, Ana Roxin, Christophe Nicolle
Thank you for your attention !