5. AnaROXIN–ana-maria.roxin@u-bourgogne.fr
TracisioMENDESDEFARIAS-tarcisio.mendes-de-farias@u-bourgogne.fr
Model View Definition (MVD)
◼ Model View Definitions (MVDs) can be serialized in mvdXML format
mvdXML 1.0
mvdXML 1.1 - outcome of the buildingSMART International Project S1015
"Enabling trust in BIM deliveries"
◼ The main drawbacks of such approach for extracting building views
are:
Lack of logical formalisms (e.g. Description logic, Horn-like
rules)
MVD solely considers the IFC schema
An MVD-based view constructor is less flexible and dynamic
when compared with our approach
April 12th 2016 MVD 5
10. AnaROXIN–ana-maria.roxin@u-bourgogne.fr
TracisioMENDESDEFARIAS-tarcisio.mendes-de-farias@u-bourgogne.fr
Case study : COBieMVD
◼ MVD: external data constraints
COBie Table Column Reference
Contact Email IfcActor.Name
Contact CreatedBy
IfcActor.OwnerHistoryIfcOwnerHistory.OwningUser
IfcPersonAndOrganization.ThePersonIfcPerson.Ide
ntification
Contact CreatedOn IfcActor.OwnerHistoryIfcOwnerHistory.CreationDate
Contact Category
IfcActor.HasAssociations[*]IfcRelAssociatesClassifi
cation.RelatingClassificationIfcClassificationRefere
nce.Identification
Contact Company
IfcActor.TheActorIfcPersonAndOrganization.TheOrg
anizationIfcOrganization.Name
Floor Description IfcBuildingStorey.Description
Floor Elevation IfcBuildingStorey.Elevation
April 12th 2016 MVD 10
11. AnaROXIN–ana-maria.roxin@u-bourgogne.fr
TracisioMENDESDEFARIAS-tarcisio.mendes-de-farias@u-bourgogne.fr
Case study : COBieMVD
◼ MVD data constraints translated into Horn-like rules
Schema alignment (reducing heterogeneity)
◼ Concept rule-based alignment
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)
April 12th 2016 MVD 11
12. AnaROXIN–ana-maria.roxin@u-bourgogne.fr
TracisioMENDESDEFARIAS-tarcisio.mendes-de-farias@u-bourgogne.fr
Case study : COBieMVD
◼ Look up the ifcOWL vocabulary (URIs) to produce rules
Column Reference Horn-like Rule based on ifcOWL terms
Email
(Contact)
IfcActor.Name
ifcowl:IfcActor(X) ∧ ifcowl:name_IfcRoot (X, Y) ∧
expr:hasString(Y, Z) → cobieowl:name(X,Z)
CreatedBy
(Contact)
IfcActor.OwnerHistoryIfcOwn
erHistory.OwningUserIfcPers
onAndOrganization.ThePerson
IfcPerson.Identification
ifcowl:IfcActor(X) ∧ ifcowl:ownerHistory… (X, Y) ∧
ifcowl:owningUser…(Y,Z) ∧ ifcowl:thePerson…(Z, K) ∧
ifcowl:identification…(K, L) ∧ expr:hasString(L, M) →
cobieowl:createdBy (X, M)
Company
(Contact)
IfcActor.TheActorIfcPersonAn
dOrganization.TheOrganizatio
nIfcOrganization.Name
ifcowl:IfcActor(X) ∧ ifcowl:theActor… (X, Y) ∧
ifcowl:theOrganization…(Y,Z) ∧ ifcowl:name…(Z, K) ∧
expr:hasString(K, M) →
cobieowl:company (X, M)
Description
(Floor)
IfcBuildingStorey.Description
ifcowl:IfcBuildingStorey(X) ∧ ifcowl:description… (X, Y) ∧
expr:hasString(Y, Z) → cobieowl:description(X,Z)
Elevation
(Floor)
IfcBuildingStorey.Elevation
ifcowl:IfcBuildingStorey(X) ∧ ifcowl:elevation
… (X, Y) ∧ expr:hasDouble(Y, Z) → cobieowl:elevation(X,Z)
April 12th 2016 MVD 12
13. AnaROXIN–ana-maria.roxin@u-bourgogne.fr
TracisioMENDESDEFARIAS-tarcisio.mendes-de-farias@u-bourgogne.fr
Case study : COBieMVD
◼ The choice of a horn-like rule syntax depends on the semantic graph
database or reasoner
Stardog: SWRL, Stardog Rules Syntax
Ontobroker: RIF, ObjectLogic
EYE reasoner: N3Logic…
◼ Main benefits:
Formal and logic-based
― Inference engine
Ease of implementation for COBie MVD
― We only need to import rules in the database
― No needs to code a parser for mvdXML
April 12th 2016 MVD 13
26. AnaROXIN–ana-maria.roxin@u-bourgogne.fr
TracisioMENDESDEFARIAS-tarcisio.mendes-de-farias@u-bourgogne.fr
Conclusions
Benefits of MVD by using
Web semantic technologies
Less or no code needed
Storage of abstract view along with data
and schema
Users can easily define building views:
•GUIDs, IFC concepts or personalized concepts (rules)
Benefits of semantic web
rule syntax
Automatic generation of concrete views
Easier exchange and implementation of
abstract views
No needs to develop a parser for mvdXML
Everything is already coded in the semantic
graph database
April 12th 2016 MVD 26
34. AnaROXIN–ana-maria.roxin@u-bourgogne.fr
TracisioMENDESDEFARIAS-tarcisio.mendes-de-farias@u-bourgogne.fr
COBie standard
◼ Construction-Operations Building information exchange
◼ Created under the National Institute of Building Sciences (NIBS)
Facility Maintenance and Operations Committee
◼ For contractors, builders, designers and facility managers
◼ Novel method for sharing data during building life-cycle:
Spreadsheet-based, no geometric/3D data
Can be used on all building projects regardless of size and
technological complexity
One COBie file per building project
General information about the COBie version and data
Yellow if required Green if specified as required
April 12th 2016 MVD 34
35. AnaROXIN–ana-maria.roxin@u-bourgogne.fr
TracisioMENDESDEFARIAS-tarcisio.mendes-de-farias@u-bourgogne.fr
COBie deliverables
Early design
phase
• Sheet: Project,
site and facility
• Floor: Vertical
levels and
exterior areas
• Space: Spaces
• Zone: Sets of
spaces sharing
a specific
attribute
• Type: Types of
equipment,
products, and
materials
Detailed design
phase
• Component:
Individually
named or
schedule items
• System: Sets of
components
providing a
service
• Assembly:
Constituents for
types,
components
and others
• Connection:
Logical
connections
between
components
• Impact:
Economic,
environmental
and social
impacts at
various stages
in the life cycle
Construction
phase
• Document:
Inclusion of
submission and
approval
documents
• Type: Insertion
of manufacturer
and model
information
• Component:
Inclusion of
serial and tag
data
Facility
Management
phase
• Spare: Onsite
and
replacement
parts
• Resource:
Required
materials, tools,
and training
• Job: PM, safety,
and other job
plans
All Phases
• Document: All
applicable
document
references
• Attribute:
Properties of
referenced item
• Coordinate:
Spatial
locations in box,
line, or point
format
• Issue: Other
issues
remaining at
handover.
• Contact: People
and companies
April 12th 2016 MVD 35
39. AnaROXIN–ana-maria.roxin@u-bourgogne.fr
TracisioMENDESDEFARIAS-tarcisio.mendes-de-farias@u-bourgogne.fr
Current approaches
• Adapting IFC into OWL [1]
• For leveraging all modelling constraints required by the object-oriented structure
of the IFC schema
• Integration with the LOD cloud - IfcWOD
Adapting BIM standards to OWL
• Connor et al. [2] “Mapping Master: a Flexible Approach for Mapping Spreadsheets to
OWL »
• Mapping language M² for generating OWL ontologies
• Bowers et al. [3] “Owlifier: Creating OWL-DL ontologies from simple spreadsheet-
based knowledge descriptions”
• Rules for creating, relating, and constraining concepts through spreadsheets
• Software-based conversion into OWL-DL ontologies
• Jupp et al. [4] “Populous: A tool for populating Templates for OWL ontologies”
• Ontology population from table-based forms
Converting spreadsheets into OWL
[1] De Farias, T.M., Roxin, A., Nicolle, C.: IfcWoD, Semantically Adapting IFC Model Rela-tions into OWL Properties. Proceedings of the
32nd CIB W78 Conference on Information Technology in Construction, Oct 2015, Eindhoven, Netherlands
[2] O’Connor, M. J., Halaschek-Wiener, C. and Musen, M. A.: Mapping Master: A flexible approach for mapping spreadsheets to OWL. In
The Semantic Web–ISWC 2010 (pp. 194-208). Springer Berlin Heidelberg (2010).
[3] Bowers, S., Madin, J. S., & Schildhauer, M. P.: Owlifier: Creating OWL-DL ontologies from simple spreadsheet-based knowledge
descriptions. Ecological Informatics, 5(1), 19-25 (2010).
[4] Jupp, S., Horridge, M., Iannone, L., Klein, J., Owen, S., Schanstra, J., Stevens, R. and Wolstencroft, K.: Populous: A Tool for Populating
Templates for OWL Ontologies. In SWAT4LS. (2010)
April 12th 2016 MVD 39
40. AnaROXIN–ana-maria.roxin@u-bourgogne.fr
TracisioMENDESDEFARIAS-tarcisio.mendes-de-farias@u-bourgogne.fr
Lacks of the current approaches
Current approaches
• Use a mapping language:
• Each new version of
COBie standard implies
an update of the
mapping ensemble.
• Users need to learn the
mapping language
• Go against COBie’s initial
aim – avoiding additional
training
• Do not consider COBie
column color codes
Our approach
• Make use of the
spreadsheet data
validation functionality
for stating restriction
axioms and object
properties in the
ontology.
• Take column color codes
into consideration.
April 12th 2016 MVD 40
42. AnaROXIN–ana-maria.roxin@u-bourgogne.fr
TracisioMENDESDEFARIAS-tarcisio.mendes-de-farias@u-bourgogne.fr
Our contributions
• Each sheet from the COBie 2.4 template is
mapped as an OWL class.
• Columns from sheets are mapped as
OWL properties.
• Cells from each sheet are mapped as
property values.
Semi-automatic
conception of
the COBieOWL
ontology, based
on conversion
rules:
• Java-based COBieOWL generator
• Relies on Apache POI API (for handling
spreadsheets) and on OWL API
Method for
automatic
population of
COBieOWL
April 12th 2016 MVD 42
44. AnaROXIN–ana-maria.roxin@u-bourgogne.fr
TracisioMENDESDEFARIAS-tarcisio.mendes-de-farias@u-bourgogne.fr
COBie 2.4
template
OWL
Axioms
Example
Column that
points to
another
column
using “Data
Validation”
rule.
Functional
Object
Property
All COBie sheets, CreatedBy column has values from the
Email column from the Contact sheet.
cobie:createdBy = OWL object property with cobie:Contact as
its range
𝐶𝑜𝑛𝑡𝑎𝑐𝑡 ⊑ ⊤
⊤ ⊑ ∀𝑐𝑟𝑒𝑎𝑡𝑒𝑑𝐵𝑦. 𝐶𝑜𝑛𝑡𝑎𝑐𝑡
∃𝑐𝑟𝑒𝑎𝑡𝑒𝑑𝐵𝑦. ⊤ ⊑ 𝐶𝑜𝑏𝑖𝑒𝑠ℎ𝑒𝑒𝑡
Column that
points to
other sheet
rows using
cell values
separated
by commas.
Non-
functional
Object
Property
Contact sheet, ResourceNames column has values defined in
the Name column from the Resource sheet.
cobie:resourceNames = OWL non-functional property with
values from cobie:Resource
𝐽𝑜𝑏 ⊑ ⊤
𝑅𝑒𝑠𝑜𝑢𝑟𝑐𝑒 ⊑ ⊤
⊤ ⊑ ∀𝑟𝑒𝑠𝑜𝑢𝑟𝑐𝑒𝑁𝑎𝑚𝑒𝑠. 𝑅𝑒𝑠𝑜𝑢𝑟𝑐𝑒
∃𝑟𝑒𝑠𝑜𝑢𝑟𝑐𝑒𝑁𝑎𝑚𝑒𝑠. ⊤ ⊑ 𝐽𝑜𝑏
Specific Column Mapping Rules (1)
April 12th 2016 MVD 44
45. AnaROXIN–ana-maria.roxin@u-bourgogne.fr
TracisioMENDESDEFARIAS-tarcisio.mendes-de-farias@u-bourgogne.fr
COBie 2.4
template
OWL
Axioms
Example
Columns
with values
from a
PickList
sheet
OWL
datatype
property with
values from
an OWL
enumeration
(owl:oneOf)
Category column in the Zone sheet takes values from the
ZoneType column
𝑍𝑜𝑛𝑒 ⊑ ∀𝑐𝑎𝑡𝑒𝑔𝑜𝑟𝑦. 𝑍𝑂𝑁𝐸𝑇𝑌𝑃𝐸
𝑍𝑂𝑁𝐸𝑇𝑌𝑃𝐸
≡ {𝐶𝑖𝑟𝑐𝑢𝑙𝑎𝑡𝑖𝑜𝑛 𝑍𝑜𝑛𝑒} ⊔ {𝐹𝑖𝑟𝑒 𝐴𝑙𝑎𝑟𝑚 𝑍𝑜𝑛𝑒} ⊔ …
⊔ {𝑉𝑒𝑛𝑡𝑖𝑙𝑎𝑡𝑖𝑜𝑛 𝑍𝑜𝑛𝑒}).
Column
with values
from
PickList
sheet with a
cardinality ≤
threshold t.
Functional
Datatype
Property
Category column, threshold t = 16
1) In Type sheet, it has values from CategoryProduct column
(about 6900) values become instances of
cobie:CategoryProduct class.
∀𝑐𝑎𝑡𝑒𝑔𝑜𝑟𝑦. 𝐶𝑎𝑡𝑒𝑔𝑜𝑟𝑦𝑃𝑟𝑜𝑑𝑢𝑐𝑡
𝑠𝑢𝑝𝑒𝑟𝑐𝑙𝑎𝑠𝑠 𝑜𝑓 𝑐𝑜𝑏𝑖𝑒: 𝑇𝑦𝑝𝑒
2) In Floor sheet, it has values from PickList sheet (less than
16)
⊤ ⊑ ∀𝑐𝑎𝑡𝑒𝑔𝑜𝑟𝑦𝐷𝑎𝑡𝑎𝑡𝑦𝑝𝑒. 𝑥𝑠𝑑: 𝑠𝑡𝑟𝑖𝑛𝑔
𝐹𝑙𝑜𝑜𝑟
⊑ ∀𝑐𝑎𝑡𝑒𝑔𝑜𝑟𝑦𝐷𝑎𝑡𝑎𝑡𝑦𝑝𝑒. ({𝐹𝑙𝑜𝑜𝑟} ⊔ {𝑅𝑜𝑜𝑓 } ⊔ {𝑆𝑖𝑡𝑒}).
Specific Column Mapping Rules (2)
April 12th 2016 MVD 45
46. AnaROXIN–ana-maria.roxin@u-bourgogne.fr
TracisioMENDESDEFARIAS-tarcisio.mendes-de-farias@u-bourgogne.fr
COBie 2.4
template
OWL
Axioms
Example
Required
Columns
(yellow)
Existential
restriction
𝐶𝑜𝑏𝑖𝑒𝑆ℎ𝑒𝑒𝑡 ⊑ ∃𝑐𝑟𝑒𝑎𝑡𝑒𝑑𝐵𝑦. 𝐶𝑜𝑛𝑡𝑎𝑐𝑡
𝐷𝑜𝑐𝑢𝑚𝑒𝑛𝑡 ⊑ ∃𝑛𝑎𝑚𝑒. 𝑥𝑠𝑑: 𝑠𝑡𝑟𝑖𝑛𝑔
Range definition for those properties is done via subsumption,
when it depends on their domain class:
∃𝑐𝑎𝑡𝑒𝑔𝑜𝑟𝑦. ⊤
⊑ 𝐶𝑜𝑛𝑡𝑎𝑐𝑡 ⊔ 𝐷𝑜𝑐𝑢𝑚𝑒𝑛𝑡 ⊔ 𝑇𝑦𝑝𝑒 ⊔ ⋯ ⊔ 𝐹𝑎𝑐𝑖𝑙𝑖𝑡𝑦 )
𝐶𝑜𝑛𝑡𝑎𝑐𝑡 ⊑ ∀𝑐𝑎𝑡𝑒𝑔𝑜𝑟𝑦. 𝐶𝑎𝑡𝑒𝑔𝑜𝑟𝑦𝑅𝑜𝑙𝑒
𝐷𝑜𝑐𝑢𝑚𝑒𝑛𝑡 ⊑ ∀𝑐𝑎𝑡𝑒𝑔𝑜𝑟𝑦. 𝐷𝑜𝑐𝑢𝑚𝑒𝑛𝑡𝑇𝑦𝑝𝑒
𝐹𝑎𝑐𝑖𝑙𝑖𝑡𝑦 ⊑ ∀𝑐𝑎𝑡𝑒𝑔𝑜𝑟𝑦. 𝐶𝑎𝑡𝑒𝑔𝑜𝑟𝑦𝐹𝑎𝑐𝑖𝑙𝑖𝑡𝑦
Other COBie
Columns
Functional
Datatype
Property
Property range missing in COBie template, we use COBie
Responsibility Matrix as an input for COBieOWL generator:
⊤ ⊑ ∀𝑐𝑜𝑜𝑟𝑑𝑖𝑛𝑎𝑡𝑒𝑋𝐴𝑥𝑖𝑠. 𝑥𝑠𝑑: 𝑑𝑜𝑢𝑏𝑙𝑒
⊤ ⊑ ∀𝑐𝑜𝑙𝑜𝑟. 𝑥𝑠𝑑: 𝑠𝑡𝑟𝑖𝑛𝑔
⊤ ⊑ ∀𝑐𝑟𝑒𝑎𝑡𝑒𝑑𝑂𝑛. 𝑥𝑠𝑑: 𝑖𝑛𝑡𝑒𝑔𝑒𝑟
Specific Column Mapping Rules (3)
April 12th 2016 MVD 46
49. AnaROXIN–ana-maria.roxin@u-bourgogne.fr
TracisioMENDESDEFARIAS-tarcisio.mendes-de-farias@u-bourgogne.fr
Extending COBieOWL (2)
◼ Sheets with columns that point to rows in other sheets
Identify all sheets having 2 columns with references to rows in other
sheets
Definition of a new OWL object property [sheet name]To:
― Range: cobie:CobieSheet
– [𝑠ℎ𝑒𝑒𝑡 𝑛𝑎𝑚𝑒] ⊑ ⊤
– ⊤ ⊑ ∀[𝑠ℎ𝑒𝑒𝑡 𝑛𝑎𝑚𝑒]𝑇𝑜. 𝐶𝑜𝑏𝑖𝑒𝑆ℎ𝑒𝑒𝑡
– ∃[𝑠ℎ𝑒𝑒𝑡 𝑛𝑎𝑚𝑒]𝑇𝑜. ⊤ ⊑ [𝑠ℎ𝑒𝑒𝑡 𝑛𝑎𝑚𝑒]
― Domain: OWL class corresponding to the identified sheet
Definition of respective inverse properties
― 𝑐𝑜𝑏𝑖𝑒: [𝑠ℎ𝑒𝑒𝑡 𝑛𝑎𝑚𝑒]𝑇𝑜
― 𝑐𝑜𝑏𝑖𝑒: ℎ𝑎𝑠[𝑠ℎ𝑒𝑒𝑡 𝑛𝑎𝑚𝑒]
April 12th 2016 MVD 49
53. AnaROXIN–ana-maria.roxin@u-bourgogne.fr
TracisioMENDESDEFARIAS-tarcisio.mendes-de-farias@u-bourgogne.fr
Inferring new information
◼ By applying a DL reasoner over a KB
Backward-chaining reasoner as implemented in Stardog
◼ Object property cobie:hasDocument that is stated as an inverse
property of cobie:documentTo
Automatic inference of new assertions regarding cobie:hasDocument property
Based on explicitly asserted cobie:documentTo properties
And vice-versa
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)
April 12th 2016 MVD 53