Download - iKNOW2014 - SimModel and IFC: a short introduction to the ontologies

Transcript
Page 1: iKNOW2014 - SimModel and IFC: a short introduction to the ontologies

SimModel and IFCshort introduction to the ontologies

Building Knowledge Workshop at iKnow conference 2014 Graz

Pieter Pauwels, Ghent University, BelgiumMatthias Weise, AEC3, Germany

Page 2: iKNOW2014 - SimModel and IFC: a short introduction to the ontologies

SIMMODEL

Page 3: iKNOW2014 - SimModel and IFC: a short introduction to the ontologies

original image in Bazjanac et al., 2011“Data environments and processing in semi-automated simulation with EnergyPlus.”

28th International CIB W078-W102 Conference.

SimModel for BEP information exchange

Page 4: iKNOW2014 - SimModel and IFC: a short introduction to the ontologies

original SimModel schema:set of six XSD schema’s

1. SIM core http://www.lbl.gov/namespaces/Sim/SimModelCore simcore.xsd

2. SIM building modelhttp://www.lbl.gov/namespaces/Sim/BuildingModelsimbldg.xsd

3. SIM resources generalhttp://www.lbl.gov/namespaces/Sim/ResourcesGeneralsimres.xsd

4. SIM resources geometryhttp://www.lbl.gov/namespaces/Sim/ResourcesGeometrysimgeom.xsd

5. SIM MEP modelhttp://www.lbl.gov/namespaces/Sim/MepModelsimmep.xsd

6. SIM modelhttp://www.lbl.gov/namespaces/Sim/Modelsimmodel.xsd

Page 5: iKNOW2014 - SimModel and IFC: a short introduction to the ontologies

complexType SimFlowMoverabstract complexType SimFlowMover_Default

complexType SimFlowMover_Default_Defaultabstract complexType SimFlowMover_Fan

complexType SimFlowMover_Fan_NightVentilationcomplexType SimFlowMover_Fan_ZoneExhaust

abstract complexType SimFlowMover_PumpcomplexType SimFlowMover_Pump_ConstantSpeedReturncomplexType SimFlowMover_Pump_ConstantSpeedSupplycomplexType SimFlowMover_Pump_UserDefinedcomplexType SimFlowMover_Pump_VariableSpeedReturncomplexType SimFlowMover_Pump_VariableSpeedSupplycomplexType SimFlowMover_Pump_VarSpeedCondensateReturncomplexType SimFlowMover_Pump_VarSpeedCondensateSupply

XSD Class Hierarchy

Page 6: iKNOW2014 - SimModel and IFC: a short introduction to the ontologies

Input XSD<xs:complexType name="SimActor"><xs:complexContent>

<xs:extension base="simres:SimActorDefinition"><xs:sequence> <xs:element ref="simres:GlobalId" minOccurs="0"

maxOccurs="1"/> <xs:element ref="simres:OwnerHistory" minOccurs="0"

maxOccurs="1"/> <xs:element ref="simres:ObjectType" minOccurs="0"

maxOccurs="1"/> <xs:element ref="simres:TheActor" minOccurs="0"

maxOccurs="1"/></xs:sequence>

</xs:extension></xs:complexContent>

</xs:complexType>

<xs:complexType name="SimResourceObject" abstract="true"><xs:attribute name="RefId" type="xs:ID" use="required"/>

</xs:complexType>

<xs:element name="GlobalId" type="xs:string"/><xs:element name="OwnerHistory" type="xs:IDREF"/><xs:element name="ObjectType" type="xs:string"/><xs:element name="TheActor" type="xs:IDREF"/>

Class

Class

Properties + Property Ranges

Property Domains

Page 7: iKNOW2014 - SimModel and IFC: a short introduction to the ontologies

Output OWLsimres:SimActor rdfs:subClassOf simres:SimActorDefinition ; rdf:type owl:Class .

simres:simActor_GlobalIdrdf:type owl:DatatypeProperty; rdfs:domain simres:SimActor; rdfs:range xsd:string .

simres:simActor_OwnerHistoryrdf:type owl:ObjectProperty; rdfs:domain simres:SimActor; rdfs:range simres:SimResourceObject .

simres:simActor_ObjectTyperdf:type owl:DatatypeProperty; rdfs:domain simres:SimActor; rdfs:range xsd:string .

simres:simActor_TheActorrdf:type owl:ObjectProperty; rdfs:domain simres:SimActor; rdfs:range simres:SimResourceObject .

Page 8: iKNOW2014 - SimModel and IFC: a short introduction to the ontologies

alternative SimModel schema:set of six OWL ontologies

1. SIM core http://www.lbl.gov/namespaces/Sim/SimModelCore simcore.owl

2. SIM building modelhttp://www.lbl.gov/namespaces/Sim/BuildingModelsimbldg.owl

3. SIM resources generalhttp://www.lbl.gov/namespaces/Sim/ResourcesGeneralsimres.owl

4. SIM resources geometryhttp://www.lbl.gov/namespaces/Sim/ResourcesGeometrysimgeom.owl

5. SIM MEP modelhttp://www.lbl.gov/namespaces/Sim/MepModelsimmep.owl

6. SIM modelhttp://www.lbl.gov/namespaces/Sim/Modelsimmodel.owl

Page 9: iKNOW2014 - SimModel and IFC: a short introduction to the ontologies

SIMMODELRDF

Page 10: iKNOW2014 - SimModel and IFC: a short introduction to the ontologies

Select a simmodel .xml-file http://smartlab1.elis.ugent.be:8889/SIMXML-repo/

Page 11: iKNOW2014 - SimModel and IFC: a short introduction to the ontologies

Input XML

Page 12: iKNOW2014 - SimModel and IFC: a short introduction to the ontologies

Output .TTL

Page 13: iKNOW2014 - SimModel and IFC: a short introduction to the ontologies

Output .RDF

Page 14: iKNOW2014 - SimModel and IFC: a short introduction to the ontologies

IFC – INDUSTRY FOUNDATION CLASSES

Page 15: iKNOW2014 - SimModel and IFC: a short introduction to the ontologies
Page 16: iKNOW2014 - SimModel and IFC: a short introduction to the ontologies

original IFC schema:EXPRESS file

1. IFC2x32. IFC2x3 TC13. IFC4

time

Page 17: iKNOW2014 - SimModel and IFC: a short introduction to the ontologies

Input EXPTYPE IfcActionTypeEnum = ENUMERATION OF(PERMANENT_G,VARIABLE_Q,EXTRAORDINARY_A,USERDEFINED,NOTDEFINED);

END_TYPE;

TYPE IfcActuatorTypeEnum = ENUMERATION OF(ELECTRICACTUATOR,HANDOPERATEDACTUATOR,HYDRAULICACTUATOR,PNEUMATICACTUATOR,THERMOSTATICACTUATOR,USERDEFINED,NOTDEFINED);

END_TYPE;

Page 18: iKNOW2014 - SimModel and IFC: a short introduction to the ontologies

Output OWL

Page 19: iKNOW2014 - SimModel and IFC: a short introduction to the ontologies

alternative IFC ontologies

1. Original IFC ontology Ghent Univ (IFC2x3) http://multimedialab.elis.ugent.be/organon/

ontologies/IFC2X3

2. Current IFC ontology IFC-to-RDF server (IFC2x3) https://github.com/mmlab/IFC-to-RDF-converter

3. 6 versions of the IFC ontology by Aalto University (IFC2x3 - Nam Vu Hoang): OWL DL, OWL RL, … www.linkedbuildingdata.net

4. Proprietary IFC ontologies

Page 20: iKNOW2014 - SimModel and IFC: a short introduction to the ontologies

IFCRDF

Page 21: iKNOW2014 - SimModel and IFC: a short introduction to the ontologies

Select a .ifc-file http://demo.mmlab.be/IFC-repo/

Page 22: iKNOW2014 - SimModel and IFC: a short introduction to the ontologies

Input IFC#1= IFCORGANIZATION($,'Autodesk Revit 2014 (ENU)',$,$,$);#5= IFCAPPLICATION(#1,'2014','Autodesk Revit 2014 (ENU)','Revit');#6= IFCCARTESIANPOINT((0.,0.,0.));#9= IFCCARTESIANPOINT((0.,0.));#11= IFCDIRECTION((1.,0.,0.));#13= IFCDIRECTION((-1.,0.,0.));#15= IFCDIRECTION((0.,1.,0.));#17= IFCDIRECTION((0.,-1.,0.));#19= IFCDIRECTION((0.,0.,1.));#21= IFCDIRECTION((0.,0.,-1.));#23= IFCDIRECTION((1.,0.));#25= IFCDIRECTION((-1.,0.));#27= IFCDIRECTION((0.,1.));#29= IFCDIRECTION((0.,-1.));#31= IFCAXIS2PLACEMENT3D(#6,$,$);#32= IFCLOCALPLACEMENT(#2485,#31);#35= IFCPERSON($,'','wimmer',$,$,$,$,$);#37= IFCORGANIZATION($,'','',$,$);#38= IFCPERSONANDORGANIZATION(#35,#37,$);#41= IFCOWNERHISTORY(#38,#5,$,.NOCHANGE.,$,$,$,1401171921);#42= IFCSIUNIT(*,.LENGTHUNIT.,.MILLI.,.METRE.);#43= IFCSIUNIT(*,.LENGTHUNIT.,$,.METRE.);#44= IFCSIUNIT(*,.AREAUNIT.,$,.SQUARE_METRE.);#45= IFCSIUNIT(*,.VOLUMEUNIT.,$,.CUBIC_METRE.);…

Page 23: iKNOW2014 - SimModel and IFC: a short introduction to the ontologies

Output .TTL@prefix : <http://ninsuna.elis.ugent.be/IFC-repo/iKNOW/Room_architecture_Revit_2014.ifc#>.@prefix owl: <http://www.w3.org/2002/07/owl#> .@prefix ifc: <http://drum.cs.hut.fi/ontology/ifc2x3#> .@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .

_:Room_architecture_Revit_2014_iref_1 a ifc:IfcOrganization._:Room_architecture_Revit_2014_iref_1 ifc:line_number "1"^^xsd:integer._:Room_architecture_Revit_2014_iref_1 ifc:name "Autodesk Revit 2014 (ENU)"^^xsd:string._:Room_architecture_Revit_2014_iref_17600 a ifc:IfcProductDefinitionShape._:Room_architecture_Revit_2014_iref_17600 ifc:line_number "17600"^^xsd:integer._:Room_architecture_Revit_2014_iref_17600 ifc:shapeOfProduct (:GUID02ebbf7526031497eb8229c782da7b)._:Room_architecture_Revit_2014_iref_17600 ifc:representations (

_:Room_architecture_Revit_2014_iref_17562 _:Room_architecture_Revit_2014_iref_17598

).

:GUID02ebbf7526031497eb8229c782da7b owl:sameAs _:Room_architecture_Revit_2014_iref_17602.:GUID02ebbf7526031497eb8229c782da7b a ifc:IfcWallStandardCase.:GUID02ebbf7526031497eb8229c782da7b ifc:line_number "17602"^^xsd:integer.:GUID02ebbf7526031497eb8229c782da7b ifc:tag "361927"^^xsd:string.:GUID02ebbf7526031497eb8229c782da7b ifc:connectedFrom (

:GUID08db29733ab9b4abdbdb76c0d2e325:GUID0c6f0cc91968443219bedc32800fe2…

Page 24: iKNOW2014 - SimModel and IFC: a short introduction to the ontologies

LINKING SIMMODELRDF AND IFCRDF

Page 25: iKNOW2014 - SimModel and IFC: a short introduction to the ontologies

Linking SIMMODEL and IFC

Page 26: iKNOW2014 - SimModel and IFC: a short introduction to the ontologies

Linking SIMMODEL and IFC: strategies

1. linking via an ontology editor2. linking via an API (Jena for instance) +

interface3. linking via a reasoning engine (EYE for

instance)4. linking via an alignment server

Page 27: iKNOW2014 - SimModel and IFC: a short introduction to the ontologies

Example conversion rule@prefix ifcinstances: <http://ninsuna.elis.ugent.be/IFC-repo/iKNOW/Room_architecture_Revit_2014.ifc#>.@prefix ifc: <http://drum.cs.hut.fi/ontology/ifc2x3#> .@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .@prefix simres: <http://www.lbl.gov/namespaces/Sim/ResourcesGeneral#> .@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .@prefix owl: <http://www.w3.org/2002/07/owl#> .@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .@prefix siminstances: <http://www.lbl.gov/namespaces/Sim/siminstances#> .

{ ?actor a simres:SimActor }=>{ ?actor a ifc:IfcActor } .

{ ?actor a ifc:IfcActor }=>{ ?actor a simres:SimActor }

Page 28: iKNOW2014 - SimModel and IFC: a short introduction to the ontologies

Thank [email protected]