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

Post on 21-May-2015

93 views 7 download

Tags:

description

presentation in the iKNOW2014 workshop on Building Knowledge

Transcript of 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

SIMMODEL

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

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

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

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

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 .

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

SIMMODELRDF

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

Input XML

Output .TTL

Output .RDF

IFC – INDUSTRY FOUNDATION CLASSES

original IFC schema:EXPRESS file

1. IFC2x32. IFC2x3 TC13. IFC4

time

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;

Output OWL

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

IFCRDF

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

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.);…

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…

LINKING SIMMODELRDF AND IFCRDF

Linking SIMMODEL and IFC

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

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 }

Thank youpipauwel.pauwels@ugent.be