COINS voor beginners deel II
Naar COINS 2.0 en verder
Henk Schaap Hans Schevers Wouter Pronk
Inhouds opgave
• COINS 1.x
• COINS 2.0: veranderingen
• COINS en Semantic Web techniek
COINS 1.x data exchange standard
GIS data
CAD/BIM data Systems
Engineering Data
Object (type) information
Ext. Document
Lifecycle state
Versions & provenance
• Coins-container – Zip file – ‘Doc’ map – ‘Bim’ map
• C-BIM information model
– Window of Authorisation (WOA) map
• COINS Core model / referentie kaders • Coins-Building Information System
– Lezen en exporteren van COINS containers – Provenance,versionmanagement,storage
Overzicht COINS 1.x standaard
Coins Core model versie 1.x
• Afspraken mbt
– Object/Kenmerk harmonisatie
– Externe bibliotheek harmonisatie
– Koppeling geometrie
– Provenance/versies
– Lifecycle
– Externe documenten
– Productmodel
– System Engineering
class CBIMZonderCBIMObj ...
Thing
Tasktype
Thing
ValueDomain
- valueDomainResource: rdfResource
CBIMObject
Connection
- 'layer index': int
CBIMObject
Function
- 'layer index': int
CBIMObject
Functionfulfiller
- 'layer index': int
CBIMObject
Locator
CBIMObject
Parameter
- defaultValue: string
CBIMObject
Performance
- performanceOf: rdfResource
- 'layer index': int
CBIMObject
PersonOrOrganisation
CBIMObject
PropertyType
- unit: string
CBIMObject
PropertyValue
- value: XSD: anysimpletype
CBIMObject
Requirement
- requirementOf: rdfResource
- 'layer index': int
CBIMObject
State
CBIMObject
Task
- endDateActual: xsd:dateTime
- endDatePlanned: xsd:dateTime
- startDateActual: xsd:dateTime
- startDatePlanned: xsd:dateTime
- affects: FunctionFulfi l ler or State
CBIMObject
Terminal
- terminalOf: rdfResource
- 'layer index': int
CBIMObject
Vector
- xCoordinate: float
- yCoordinate: float
- zCoordinate: float
CBIMObject
Verification
- verificationDate: date
- verificationMethod: string
- verificationResult: boolean
Document
Explicit3DRepresentation
PhysicalObject
Space
Building
CataloguePart
Amount
isSituatedIn
primaryOrientation
minBoundingBox
maxBoundingBox
spatialParent
performance
parent
locator
fulfi l ls
currentState
spatialChild
physicalChild
nextParameter
terminal
shape
contains
child
maleTerminal
femaleTerminal
requirement
physicalParent
previousState
shape
locator
taskType
stateOf
shape
*
propertyType
1
supertype
shape
propertyValue
contains
verificationRequirement
translation
verificationFunctionFulfi l ler
secondaryOrientation
performance
contains
propertyValue
locator
cataloguePart
amountPropertyType
valueDomain
propertyValue
nextVersion
nextVersion
verificationPerformer
COINS MBI showcase
• Requirements • As-Is situation • As-Designed situation • versions • 2D and 3D representations • OTL Typed objects and OTL typed
properties • Spatial Networks& Asset objects • Provenance • Documents • Objecten boom
RWS OTL: Wegvak
Ruimtelijk netwerk: Wegvak & Wegjunctie (nivo 4)
OTL RWS: Wegjunctie
Ruimtelijk netwerk: wegbaan & baanjunctie (nivo 3)
RWS OTL: Wegment
Ruimtelijk netwerk: Wegmenten & intersectie (nivo 2)
Asset informatie
COINS 2.0
• Behoud van de Zipfile overdracht mechanisme
• Behoud van uitbreidbaarheid via referentie kaders
• System Engineering eruit (erin als referentiekader)
• (her) keuze voor OWL als basis-techniek
• Meer mogelijkheden voor OTL’s
• Wens tot versimpeling van COINS – COINS object georienteerde API
• Java
• DotNet
– Kleinere core model / SE eruit
– Meer herbruik van OWL structuren
Overzicht veranderingen Functie COINS 1.x COINS 2.0 Veranderingen
Kenmerk harmonisatie x x re-engineered
Externe OTL bibliotheken x x re-engineered
Systems Engineering x - Requirement,Function, Verification,etc eruit
Planning x - Task eruit gehaald
Scheiding Fysiek en Ruimtelijk x - Space en PhysicalObject eruit
Level of Detail x - LayerIndex eruit.
Eenheden harmonisatie - x QUDT Units als referentie kader
Eisen bibliotheek ondersteuning - - Via referentiekaders of OTL’s
Relaties tussen objecten x x Re-engineered
Versiemanagement OTL objecten x x Kleine re-engineering
BuildingObject x - Building eruit
Link externe bibliotheek x x Library ference eruit en owl:import gebruiken
WOA x x Re-engineered (WOA.xlm eruit) en PermissionClass geintroduceerd
OWL
COINS 2.0 kern versimpeld
Object
Object Property
• Kenmerk harmonisatie
• Externe bibliotheek harmonisatie
• Koppeling geometrie
– Relatieve plaatsing
• Provenance
• Versiemanagement
• Documenten ObjectPropertyValue
Connection
Simple Property
Uitbreidingen COINS 2.0
• Referentie kaders – Se/BIM
• Basic • Gevorderden • Expert
– WOA – RWS referentie kader
• OTL’s – RWS – ProRail – Strukton – CB-NL – ...
COINS 2.0 Software
• COINS API – OO interface naar COINS Data – Sparql ondersteuning – Aansluitbaar op triplestores – Koppelings mogelijkheden met validators – Java en dotnet omgeving
• COINS Navigator – Desktop applicatie voor het inlezen, modificeren en
creeeren van COINS gegevens
• CBIS voor COINS 2.0 • OWL software: TripleStores, Sparql, reasoners
COINS 2.0 Basis: Web Ontology Language/OWL
• Gestandaardiseerde technologie voor de volgende generatie van het Internet
• Gecoordineerd door W3C (www.w3c.org)
• Linked data en Linked services gebaseerd
• Sparql – GeoSparql
• Business rules
• (Semantic Web Pages)
Relevante OWL ontwikkelingen
• Bouw Informatie Raad – COINS / SE-BIM (OWL, OO API)
• OTL’s in OWL/COINS formaat
– CB-NL (OWL,Triplestore, sparql endpoint, OO API)
• Andere ontwikkelingen – GeoSparql
– Pilod (http://www.pilod.nl/) (Geonovum / GIS)
– BIM technologie IFC/RDF/OWL
– V-CON (http://www.rws.nl/english/highways/v-con)
• OWL ontologieen – Quantities and Units / ISO units
– Provenance (Prov-O)
– Lifecycle ontology
– Part-Of ontology
Interessante RDF/OWL software componenten
Naam Wat Open-source
url
Sesame RDF(s) triplestore ja http://rdf4j.org/
Virtuoso triplestore x/ nee https://github.com/openlink/virtuoso-opensource
MarkLogic Triplestore nee http://www.marklogic.com/
StarDog Triplestore/ Reasoner nee www.stardog.com
Jena Rdfs/(owl) Platform ja http://www.marklogic.com/
Topbraid composer RDF/OWL Editor nee http://www.topbraidcomposer.com
Protege RDF/OWL Editor ja http://protege.stanford.edu/
Oracle11rdf
Triplestore nee
Hermit OWL Reasoner http://hermit-reasoner.com/
RDF functionaliteit
• Informatie modellerings structuur
• Webbased – Globale unieke uri voor elke ‘resource’
– ‘Linkbaar’ • Linked Open Data/ Linked Closed Data
• Software – TripleStores
– Sparql queries • Federated queries
– ‘serialiseerbaar’
OWL Reasoning functionaliteit
• Verrijking van de dataset – Inverse relaties, specialisatie relaties, transitiviteit,
reflexive properties
• Integrity Constraint Validation – Voldoet de data aan het schema
• COINS core + referentie kaders • OTL restricties
• Ontologie validatie – Is de ontologie valide?
• Denk aan netwerk van ontologien zoals OTL + CBNL+Mapping
• Defined Klasses – (extra) classificatie van data
OWL voorbeeld: Primitive classe
• Primitieve klasse: Persoon
• Dataproperty : ‘ManOfVrouw’’ {“Man”,”Vrouw”}
• ObjectProperties: ‘heeft kind’ {Persoon}
Persoon
manOfVrouw: String
heeftKind
OWL Voorbeeld: assertions (Data)
• Persoon
1. Hans
1. “Man”
2. heeftKind Tim
3. heeftKind Stijn
2. Tim
3. Stijn
Subject Predicate object
Hans Is een Persoon
Hans manOfVrouw “man”
Hans heeftKind Tim
Hans heeftKind Stijn
Tim Is een Persoon
Stijn Is een Persoon
OWL Voorbeeld: Defined Classes
• Defined klasse: Ouder
– Ouder is een Persoon
– Ouder ‘heeftKind’ minimaal 1
• Defined klasse: Man
– Man is een Persoon
– Man heeft “Man” als waarde voor “ManOfVrouw”
• Defined klasse: Vader
– Vader is een zowel een Ouder als een Man
• Defined Klasse: Kind
– Kind is een Persoon
– HeeftOuder minimaal 1
– HeeftOuder is inverse van ‘heeftKind’
Verrijking & defined classes
Hans
“Man”
Stijn
Persoon
type
type
Man
Ouder Vader
type type
type
heeftKind
Man/vrouw
heeftOuder
COINS en Standaard OWL software
• OWL Editors: Protege/TopBraid Composer – COINS Data
• inzicht en creatie mogelijkheden • Via Sparql veel inzicht en batch processing
– COINS OTL • Creatie van bibliotheken
– COINS referentie kaders
• TripleStores – Persistentie, backup, Sparql interface – Basis voor (web) applicaties – (Rule engine)
• OWL reasoners – Data validatie – Schema validatie – Verrijking van de data
• OWL api’s : Jena API, OWLAPI, RDFLib – Software api voor het werken met RDF/OWL data
OTL Data validatie in TopBraid Composer
Samenvatting COINS 2.0
• Simpeler – Kleiner Core model – Object Georienteerde API (Java en Dotnet) – Makkelijker door adoptie van OWL
• Betere integratie ObjectTypeBibliotheken – Veel meer mogelijkheden voor OTL’s
• Minder ‘voorschrijvend’ – Meer optionele referentie kaders
• COINS lift (nog meer) mee op semantic web technology – Veel meer gebruik van standaard software – owl editors, triplestores, Sparql, reasoners, validators
The COINS standard Thank you