Download presentation
Presentation is loading. Please wait.
1
Linking Guide Michel Böhms
2
5 Star Linked Data concept (assuming digital, no paper)
February 05, 2015 Linking Guide 5 Star Linked Data concept (assuming digital, no paper) LINKING Guide Linked with others Linked & Inferred Modelling Guide W3C Standards (HTTP, URI, RDF, RDFS, OWL2, SKOS, Turtle, SPARQL, Trig, LDP) Open Standards (EXPRESS, SPFF, CSV, XSD, XML) Machine processable (Excel, R(E)V(i)T) Available in the cloud (potentially limited by security model)
3
April 08, 2015 Linking Guide Basic Assumptions A “Linking” is a set of one or more Links relating two RDF(/RDFS/OWL2) data sets (ontologies and/or their sets of individuals) bi-directionally These Linkings are just like data sets to be mapped, data sets themselves, fully described using a subset of RDF/RDFS/OWL2 following the same V-Con Modelling Guide Not bound to a particular software tool (i.e. Relatics) or particular semantics/format (i.e. like MS Excel file format) making full use of interoperable and well-defined RDF/RDFS/OWL2 semantics and Turtle syntax (i.e. also ) Enabling inferred data from asserted data via standard reasoners (instead of dedicated transformation software tools)
4
Four Relevant dimensions
April 08, 2015 Linking Guide Four Relevant dimensions Three key Meta concepts: Classes (owl:Class) Properties (owl:DatatypeProperty & owl:ObjectProperty) Individuals (owl:NamedIndividual) 12 “Venn situations” 5 for classes, same 5 for properties, 2 other for individuals Three Semantic levels (for classes) Asserted versus Inferred data
5
Assume 2 ontologies: x and y x, y are prefixes for name space URIs
February 05, 2015 Linking Guide Assume 2 ontologies: x and y x, y are prefixes for name space URIs asserted or inferred 1 Class A in ontology x, x:A 1 Class B in ontology y, y:B 1 Property in ontology x: x:c 1 Property in ontology y: y:d 1 Individual in ontology x: x:a 1 Individual in ontology y: y:b
6
5 Venn situations for classes
February 05, 2015 Linking Guide 5 Venn situations for classes The “default”, unconstrained. Independent classes, no mapping rule relevant 1. 2. 3. 4. 5. • • • • • • • • • x:A rdfs:subClassOf y:B • • • • • y:B rdfs:subClassOf x:A 2. AND 3. x:A owl:EquivalentClass y:B • • • • • • • [] rdf:type owl:AllDisjointClasses ; owl:members ( x:A y:B ) . No mapping rule relevant (only for ‘negative’ data) • • • • • •
7
5 Venn situations for properties
February 05, 2015 Linking Guide 5 Venn situations for properties • 1. 2. 3. 4. 5. • • The “default”, unconstrained. Independent properties, no mapping rule • • • • • • x:c rdfs:subPropertyOf y:d • • • • • y:d rdfs:subPropertyOf x:c 2. AND 3. Same as: x:A owl:EquivalentProperty y:B • • • • • • • • • • x:c owl:propertyDisjointWith y:d No mapping rule relevant (only for ‘negative’ data) • •
8
2 Venn situations for individuals
February 05, 2015 Linking Guide 2 Venn situations for individuals • • 1. 2. • • • x:a owl:sameAs y:b • • • • • • • • x:a rdf:type y:B • • •
9
Link Types (#6) Class level
February 05, 2015 Linking Guide Link Types (#6) Class level x:A rdfs:subClassOf y:B (== y:B rdfs:subClassOf x:A) x:A owl:EquivalentClass y:B (syntactic sugar really) x:c rdfs:subPropertyOf y:d (==y:d rdfs:subPropertyOf x:c) x:A owl:EquivalentProperty y:B (syntactic sugar really) Individual or individual<>class level x:a owl:sameAs y:b x:a rdf:type y:B Issue: More link types via restrictions? Restrictions at classes involving other ontologies (minCard/maxCard/Card/someValuesFrom/AllValuesFrom/hasValue) Restrictions at properties involving other ontologies (domain/range)
10
3 semantic levels for classes
February 05, 2015 Linking Guide 3 semantic levels for classes L1: Classes without restrictions L2: Classes with only “necessary” Restrictions L3: Classes with “necessary & sufficient“ (n&s) Restrictions A data set (now ontology) can have a mix of 1/2/3 An ontology can be “semantically strong”, having only level 3 classes
11
February 05, 2015 Linking Guide Inference potential Depending on the semantic level of the classes more or less can be inferred from asserted data Standard OWL2 inferences (entailments regimes) like: If (x:a rdf:type x:A AND x:A rdfs:subClassOf y:B) THEN (x:a rdf:type y:B)
12
February 05, 2015 Linking Guide Example x is some context ontology, y some common ontology following the V-Con Modelling Guide Ontology x asserts: x:RedCar rdf:type owl:Class x:colour rdf:type owl:DatatypeProperty x:colour rdfs:range xsd:string x:MyRedCar rdf:type x:RedCar x:MyRedCar x:colour “Red”^^xsd:string Ontology y asserts y:Car rdf:type owl:Class y:colour rdf:type owl:DatatypeProperty (note not the same as x:colour!)
13
February 05, 2015 Linking Guide Venn situation here Clearly the intended meaning of the mapping rules is: x:RedCar rdfs:subClassOf y:Car • x:colour owl:EquivalentProperty y:colour •
14
Semantic Level here (L1)
February 05, 2015 Linking Guide Semantic Level here (L1) x:RedCar and y:Car have no n&s restrictions Also both have no explicit restrictions at all: so we did not specify for instance that a RedCar has the value “red” for x:colour explicitly Note we could have never inferred “x:MyRedCar rdf:type x:RedCar” based on “x:MyRedCar x:colour “red”^^xsd:string”) i.e. No way to automatically classify So we have to assert (as we did) “x:MyRedCar rdf:type x:RedCar” Note we also cannot infer in any way that x:RedCar is a subclass of y:Car i.e. No way to automatically subclass So we have to assert “x:RedCar rdfs:subClassOf y:Car” as mapping rule Doing that we CAN infer: x:MyRedCar rdf:type y:Car X:MyRedCar y:colour “red”^^xsd:string And if we assert extra: y:MyCar rdf:type y:Car AND x:MyRedCar owl:sameAs y:MyCar We can extra infer: y:MyCar x:colour “red”^^xsd:string and y:MyCar y:colour “red”^^xsd:string Note that this had not been possible if he had not asserted x:MyRedCar x:colour “red”^^xsd:string in the first place (it would have been implicit in the RedCar class only
15
February 05, 2015 Linking Guide In case semantic level 2 So: x:RedCar and y:Car have again no set of n&s restrictions but this time we add an explicit restriction on the x:RedCar class: x:RedCar a owl:Class ; rdfs:subClassOf owl:Thing ; rdfs:subClassOf [ a owl:Restriction ; owl:hasValue "red"^^xsd:string ; owl:onProperty x:colour ] .
16
February 05, 2015 Linking Guide In case semantic level 2 Again, we can never infer that x:MyRedCar is of type x:RedCar i.e. again no way to automatically classify, even if x:MyRedCar x:clour “red” was asserted in the first place So we again have to assert x:MyRedCar rdf:type x:RedCar Again, we also cannot infer in any way that x:RedCar is a subclass of y:Car i.e. again no way to automatically subclass So we again have to assert x:RedCar rdfs:subClassOf y:Car Now we CAN infer: x:MyRedCar rdf:type y:Car (as before) And if we assert: y:MyCar AND x:MyRedCar owl:sameAs y:MyCar (as before) And x:MyRedCar x:colour “red” (because of the explicit restriction), no need to assert anymore! And even: y:MyCar x:colour “red” (as before) And even: y:MyCar y:colour “red” (as before)
17
February 05, 2015 Linking Guide In case semantic level 3 Now we add for both classes n&s restrictions like: In x ontology: x:RedCar owl:equivalentClass (…x:vehicleType=“car” and x:colour=“red”…) In y ontology: y:Car owl:equivalentClass (…y:vehicleType=“car” and y:colour=“red” In mapping ontology : “x:vehicleType owl:equivalentProperty y:vehicleType” AND “x:colour owl:equivalentProperty y:colour” which makes it possible to Infer that “x:MyRedCar rdf:type x:MyCar” (automatic classification) in case “x:MyRedCar x:colour “red”^^xsd:string” was asserted, but more important: Infer that “x:RedCar rdfs:subClassOf y:Car” (automatic subclassing based on the n&s class restrictions on both sides) So no need for mapping rules for the classes at all! Note: nice but unrealistic that all classes are defined on L3…
18
February 05, 2015 Linking Guide Bottom Lines In general we have to specify mapping rules explicitly for classes since strong L3 definitions are not likely We always need mapping rules for properties We need mapping rules for individuals to go beyond enrichment (and have all inferred data in both ontologies or in case such individuals are already asserted in both ontologies and actually refer to the same real world entity We need as much as necessary restrictions to make knowledge explicit on class level and to avoid the need to provide all this data on individual level (for all individuals) If this info is not explicitly at class level and not available at individual level this info is not really there at all (only in the name of the class) so inference will obviously also not create it (more positively: no info is really lost, is was never their in the first place)
19
Issues Other restriction types
February 05, 2015 Linking Guide Issues Other restriction types So far we discussed Restrictions of the form “owl:hasValue” Other types: hasRange (asphalt example) Or even (?) owl:minCardinality, owl:maxCardinality, owl:allValuesFrom, owl:someValuesFrom, …. What happens now (when inferring) Role of domain/range clauses for properties Datypes and Lexical values Do we also have to indicate that x:red = y:red or a bit more abstract x:datatype is y:datatype if not the same (like xsd:string) Do we also need rule x:c owl:differentFrom y:d ?
20
February 05, 2015 Linking Guide Simple CBNL Use Case /1 Ontology x (being CBNL) as entrance to ontology (and its individuals) y Where classes from y are equivalent or subclasses of classes in x (only classes since properties are also modelled as classes in CBNL) No need to move data Ontology y maybe not even an ontology, just connected via specific api/web services etc.
21
Simple CBNL Use Case /2 2 ontologies: x (CBNL) and y (ETIM)
February 05, 2015 Linking Guide Simple CBNL Use Case /2 2 ontologies: x (CBNL) and y (ETIM) 1 Individual in some ontology c classified as an item in CBNL: c:a rdf:type x:A (also a link from c to x) A being an “object-class” in CBNL 1 Class B in ontology y (ETIM), y:B In mapping rule: y:B owl:equivalentClass x:A or y:B rdfs:subClassOf x:A (being more realistic in case of specific restrictions in y)
22
Simple CBNL Use Case /3 (flow)
February 05, 2015 Linking Guide Simple CBNL Use Case /3 (flow) You can now browse from c:a to x:A and search in all mapping ontologies for y:B like classes being equivalent or subclass and known more info on class level and existing individuals for y:B (here 2BA products)
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.