Presentation is loading. Please wait.

Presentation is loading. Please wait.

Semantic Web for the Working Ontologist Dean Allemang Jim Hendler SNU IDB laboratory.

Similar presentations


Presentation on theme: "Semantic Web for the Working Ontologist Dean Allemang Jim Hendler SNU IDB laboratory."— Presentation transcript:

1 Semantic Web for the Working Ontologist Dean Allemang Jim Hendler SNU IDB laboratory

2 Semantic Web for the Working OntologistDean Allemang, Jim Hendler Working Ontology Contents 2 ■ Chapter 1 What is the Semantic Web? ■ Chapter 2 Semantic Modeling ■ Chapter 3 RDF-The Basis of the semantic Web ■ Chapter 4 Semantic Web Application Architecture ■ Chapter 5 RDF and Inferencing ■ Chapter 6 RDF Schema ■ Chapter 7 RDFS-Plus ■ Chapter 8 Using RDFS-Plus in the Wild ■ Chapter 9 Basic OWL ■ Chapter 10 Counting and Sets in OWL ■ Chapter 11 Using OWL in the Wild ■ Chapter 12 Good and Bad Modeling Practices ■ Chapter 13 OWL Levels and Logic

3 Semantic Web for the Working OntologistDean Allemang, Jim Hendler Chapter 7 RDFS-Plus ■ Inverse ■ Symmetric Properties ■ Transitivity ■ Equivalence ■ Computing Sameness ■ Summary 3

4 Semantic Web for the Working OntologistDean Allemang, Jim Hendler Introduction ■ RDFS-Plus = RDFS + particular set of OWL constructs RDF provides a very limited set of inference capabilities that have considerable utility in a Semantic Web setting for merging information from multiple sources OWL, more elaborate constraints on how information is to be merged can be specified RDFS-Plus is expressed entirely in RDF 4

5 Semantic Web for the Working OntologistDean Allemang, Jim Hendler 1. Inverse ■ Meaning of owl:inverseOf owl:inverseOf have considerable utility in modeling, based on how it can interact with other modeling constructs 5 Powl:inverseOfQ. xPy. yQx. {geo:Scotland lit:settingFor ?play.} {?play lit:settingIn geo:Scotland.} Why we need owl:inverseOf ?

6 Semantic Web for the Working OntologistDean Allemang, Jim Hendler 1.1 Integrating Data that Do Not Want to Be Integrated How can we merge signedTo and borrows given that they don’t share domains and ranges? 6 BookPatron signedTo borrows BookPatron Merge?

7 Semantic Web for the Working OntologistDean Allemang, Jim Hendler 1.1 Integrating Data that Do Not Want to Be Integrated ■ Solution 7 :signedTo owl:inverseOf :signedOut. :signedOut rdfs:subPropertyOf :hasPossession. :borrows rdfs:subPropertyOf :hasPossession. signedOut BookPatron signedTo borrows BookPatron Merge!

8 Semantic Web for the Working OntologistDean Allemang, Jim Hendler 2. Symmetric Properties ■ Unlike owl:inverseOf, which is a property that relates two other properties, owl:SymmetricProperty is just an aspect of a single property and is expressed in OWL as a Class 8 P rdf:type owl:SymmetricProperty. P owl:inverseOf P. bio:married rdf:type owl:SymmetricProperty. ShakespeareAnnHathaway married ShakespeareAnnHathaway

9 Semantic Web for the Working OntologistDean Allemang, Jim Hendler possessedByhasPossession owl:inverseOf signedTosignedOut owl:inverseOf lentToborrows owl:inverseOf rdf:subPropertyOf 2.1 Using OWL to Extend OWL 9 owl:inverseOf rdf:type owl:SymmetricProperty. :hasPossession owl:inverseOf :possessedBy. :signedOut owl:inverseOf :signedTo. :borrows owl:inverseOf :lentTo. possessedByhasPossession owl:inverseOf signedTosignedOut owl:inverseOf lentToborrows owl:inverseOf rdf:subPropertyOf

10 Semantic Web for the Working OntologistDean Allemang, Jim Hendler 3. Transitivity 10 P rdf:type owl:TransitiveProperty. X P Y. Y P Z. X P Z. ■ Typical Example Ancestor/descendant Geographical containment

11 Semantic Web for the Working OntologistDean Allemang, Jim Hendler 3.1. Relating Parents to Ancestors 11 :hasParent rdfs:subPropertyOf :hasAncestor. :hasAncestor rdf:type owl:TransitiveProperty. :Alexia :hasParent :WillemAlexander. :WillemAlexander :hasParent :Beatrix. :Beatrix :hasParent :Wilhelmina. :Alexia :hasAncestor :WillemAlexander. :WillemAlexander :hasAncestor :Beatrix. :Beatrix :hasAncestor :Wilhelmina. Alexia WillemAlexander Beatrix Wilhelmina hasAncestor :Alexia :hasAncestor :Beatrix. :WillemAlexander :hasAncestor :Wilhelmina. :Alexia :hasAncestor :Wilhelmina

12 Semantic Web for the Working OntologistDean Allemang, Jim Hendler 3.2. Layers of Relationships ■ It can be somewhat controversial whether a property is transitive or not (e.g. “part of”) Are Mick Jagger’s thumbs are part of the Rolling Stones? ■ How can we simultaneously maintain transitive and non-transitive versions of the partOf information? 12 dm:partOf rdfs:subPropertyOf gm:partOf. gm:partOf rdf:type owl:TransitiveProperty. MickJaggersThumb TheRollingStones MickJagger dm:partOf MickJaggersThumb TheRollingStones MickJagger gm:partOf dm:partOf gm:partOf

13 Semantic Web for the Working OntologistDean Allemang, Jim Hendler 3.3 Managing Networks of Dependencies 13 TurnInFreezer AddMilk CookCustard GraduallyMix Chill HeatCream SliceBean BeatEggs AddSugar SeparateEggs dependsOn :dependsOn owl:inverseOf :enables. :SliceBean :enables :HeatCream. :SeparateEggs :enables :AddSugar. :AddSugar :enables :BeatEggs. :BeatEggs :enables :GraduallyMix. :HeatCream :enables :GraduallyMix. :GraduallyMix :enables :CookCustard. :CookCustard :enables :Chill. :Chill :enables :AddMilk. :AddMilk :enables :TurnInFreezer.

14 Semantic Web for the Working OntologistDean Allemang, Jim Hendler 3.3 Managing Networks of Dependencies ■ How can we know all the steps it depends on or all the steps that depend on it? 14 :dependsOn rdfs:subPropertyOf :hasPrerequisite. :hasPrerequisite rdf:type owl:TransitiveProperty. :enables rdfs:subPropertyOf :prerequisiteFor. :prerequisiteFor rdf:type owl:TransitiveProperty. :GraduallyMix :hasPrerequisite :AddSugar; :hasPrerequisite :SeparateEggs; :hasPrerequisite :SliceBean; :hasPrerequisite :HeatCream; :hasPrerequisite :BeatEggs; TurnInFreezer AddMilk CookCustard GraduallyMix Chill HeatCream SliceBean BeatEggs AddSugar SeparateEggs dependsOn

15 Semantic Web for the Working OntologistDean Allemang, Jim Hendler 3.3 Managing Networks of Dependencies ■ Can we model the relationship between steps so that we can connect steps in the same recipe together? Problem. :GraduallyMix :inSameRecipe :GraduallyMix. has been inferred 15 :dependsOn rdfs:subPropertyOf :neighborStep. :enables rdfs:subPropertyOf :neighborStep. :neighborStep rdfs:subPropertyOf :inSameRecipe. :inSameRecipe rdf:type owl:TransitiveProperty. owl:TransitivePropertyinSameRecipe neighborStep dependsOnenables rdfs:subPropertyOf rdf:type rdfs:subPropertyOf

16 Semantic Web for the Working OntologistDean Allemang, Jim Hendler 3.3 Managing Networks of Dependencies ■ How can we define a property that will relate a recipe step only to the other steps in the same recipe? 16 :dependsOn rdfs:subPropertyOf :hasPrerequisite. :hasPrerequisite rdf:type owl:TransitiveProperty. :enables rdfs:subPropertyOf :prerequisiteFor. :prerequisiteFor rdf:type owl:TransitiveProperty. :hasPrerequisite rdfs:subPropertyOf :otherStep. :prerequisiteFor rdfs:subPropertyOf :otherStep. owl:TransitiveProperty prerequisiteFor dependsOnenables rdfs:subPropertyOf otherStep hasPrerequisite rdf:type rdfs:subPropertyOf

17 Semantic Web for the Working OntologistDean Allemang, Jim Hendler 4.1. Equivalent Classes 17 A owl:equivalentClass B. r rdf:type A. r rdf:type B. :Analyst rdfs:subClassOf :Researcher. :Researcher rdfs:subClassOf :Analyst. :Analyst owl:equivalentClass :Researcher. owl:equivalentClass rdfs:subPropertyOf rdfs:subClassOf. owl:equivalentClass rdfs:type owl:SymmetricProperty.

18 Semantic Web for the Working OntologistDean Allemang, Jim Hendler 4.2. Equivalent Properties 18 owl:equivalentProperty rdfs:subPropertyOf rdfs:subPropertyOf. owl:equivalentProperty rdf:type owl:SymmetricProperty. :borrows rdfs:subPropertyOf :checkedOut. :checkedOut rdfs:subPropertyOf :borrows. :borrows owl:equivalentProperty :checkedOut. :borrows rdfs:subPropertyOf :checkedOut. :checkedOut owl:equivalentProperty :borrows. :checkedOut rdfs:subPropertyOf :borrows.

19 Semantic Web for the Working OntologistDean Allemang, Jim Hendler 4.3. Same Individuals 19 lit:Shakespeare lit:wrote lit:AsYouLikeIt; lit:wrote lit:HenryV; lit:wrote lit:LovesLaboursLost; lit:wrote lit:MeasureForMeasure; lit:wrote lit:TwelfthNight; lit:wrote lit:WintersTale; lit:wrote lit:Hamlet; lit:wrote lit:Othello. spr:Gulielmus spr:hasFather spr:JohannesShakspere. spr:Susanna spr:hasFather spr:WilliamShakspere. spr:Hamnet spr:hasFather spr:WilliamShakspere. spr:Judeth spr:hasFather spr:WilliamShakspere. {spr:Hamnet spr:hasFather ?d. ?d lit:wrote lit:Hamlet.}

20 Semantic Web for the Working OntologistDean Allemang, Jim Hendler 4.3. Same Individuals 20 spr:WilliamShakspere owl:sameAs lit:Shakespeare. spr:WilliamShakspere P O.S P spr:WilliamShakespeare. lit:Shakespeare P O.S P lit:Shakespeare. owl:sameAs rdf:type owl:SymmetricProperty. lit:Shakespeare owl:sameAs spr:WilliamShakspere.

21 Semantic Web for the Working OntologistDean Allemang, Jim Hendler 4.4. Merging Data from Different Databases 21 mfg:Product1 mfg:Product_Manufacture_Location Sacramento. mfg:Product2 mfg:Product_Manufacture_Location Sacramento. mfg:Product3 mfg:Product_Manufacture_Location Sacramento. mfg:Product4 mfg:Product_Manufacture_Location Elizabeth. mfg:Product5 mfg:Product_Manufacture_Location Elizabeth. mfg:Product6 mfg:Product_Manufacture_Location Seoul. mfg:Product7 mfg:Product_Manufacture_Location HongKong. mfg:Product8 mfg:Product_Manufacture_Location Cleveland. mfg:Product9 mfg:Product_Manufacture_Location Cleveland. p:Product1 mfg:Product_Facility “Assembly Center”. p:Product2 mfg:Product_Facility “Assembly Center”. p:Product3 mfg:Product_Facility “Assembly Center”. p:Product4 mfg:Product_Facility “Assembly Center”. p:Product5 mfg:Product_Facility “Factory”. p:Product6 mfg:Product_Facility “Factory”. p:Product7 mfg:Product_Facility “Machine Shop”. p:Product8 mfg:Product_Facility “Machine Shop”. p:Product9 mfg:Product_Facility “Machine Shop”.

22 Semantic Web for the Working OntologistDean Allemang, Jim Hendler 4.4. Merging Data from Different Databases ■ How can we write a federated query that will cross-reference cities with the facilities that are required for the production that takes place there? ■ The solution relied on the fact that we knew which product from one table matched with which product from another table 22 p:Product1 owl:sameAs mfg:Product4. p:Product2 owl:sameAs mfg:Product6. p:Product4 owl:sameAs mfg:Product3. p:Product5 owl:sameAs mfg:Product1. p:Product7 owl:sameAs mfg:Product5. p:Product8 owl:sameAs mfg:Product8. {?p p:Product_Facility ?facility. ?p mfg:Product_Manufacture_Location ?location.}

23 Semantic Web for the Working OntologistDean Allemang, Jim Hendler 5.1. Computing Sameness : Functional Properties ■ A function property is one for which there can be just one value e.g., hasMother or hasBirthplace 23 P rdf:type owl:FunctionalProperty X P A. X P B. A owl:sameAs B. lit:Shakespeare fam:hasFather bio:JohannesShakespere. lit:Shakespeare fam:hasFather bio:JohnShakespeare. fam:hasFather rdf:type owl:FunctionalProperty. bio:JohannesShakespere owl:sameAs bio:JohnShakespeare.

24 Semantic Web for the Working OntologistDean Allemang, Jim Hendler 5.2. Computing Sameness : Inverse Functional Properties ■ An owl:InverseFunctionalProperty plays the role of a key filed in a relational database RDFS-Plus does not signal an error if two entities are found to share a value for an inverse functional property. Instead, it infers that the two entities must be the same 24 P rdf:type owl:InverseFunctionalProperty A P X. B P X. A owl:sameAs B.

25 Semantic Web for the Working OntologistDean Allemang, Jim Hendler 5.2. Computing Sameness : Inverse Functional Properties ■ How can we infer the appropriate owl:sameAs triples from the data that have already been asserted? 25 mfg:Product_ModelNo rdf:type owl:InverseFunctionalProperty. p:Product_ModelNo owl:equivalentProperty mfg:Product_ModelNo. … p:Product1 owl:sameAs mfg:Product4. p:Product2 owl:sameAs mfg:Product6. p:Product4 owl:sameAs mfg:Product3. p:Product5 owl:sameAs mfg:Product1. p:Product7 owl:sameAs mfg:Product5. p:Product8 owl:sameAs mfg:Product8.

26 Semantic Web for the Working OntologistDean Allemang, Jim Hendler 5.3. Combining Functional and Inverse Functional Properties ■ Assign identification numbers to students One-to-one property 26 :hasIdentityNo rdfs:domain :Student. :hasIdentityNo rdfs:range xsd:Integer. :hasIdentityNo rdf:type owl:FunctionalProperty. :hasIdentityNo rdf:type owl:InverseFunctionalProperty.

27 Semantic Web for the Working OntologistDean Allemang, Jim Hendler ■ Functional Only Many-to-one ( hasMother ) ■ Inverse Functional Only One-to-many ( hasDiary ) ■ Both Functional and Inverse Functional One-to-one ( studentID ) 5. Computing Sameness 27 Diary1 Jane Diary2Diary3Diary4 Son1Son2 Daughter1Daughter2 Mother ID1ID2ID3ID4 Student1Student2Student3Student4

28 Semantic Web for the Working OntologistDean Allemang, Jim Hendler Summary ■ The constructs in RDFS-Plus are a subset of the constructs in OWL Provides considerable flexibility for modeling 28 equivalentClassequivalentPropertysameAsinverseOfTransitivePropertySymmetricPropertyFunctionalPropertyInverseFunctionalPropertyObjectPropertyDatatypeProperty

29 Thank You


Download ppt "Semantic Web for the Working Ontologist Dean Allemang Jim Hendler SNU IDB laboratory."

Similar presentations


Ads by Google