Upload
angelica-jordan
View
216
Download
0
Tags:
Embed Size (px)
Citation preview
Xiang ZhangFeb 25th, 2011
RDF, RDFS, OWL and the Semantic Web
Today’s Web
• A system of interlinked hypertext• Information is accessed via keyword-based search and browser• Browsers render information for human consumption
• Binary objects serialization
• Relational databases
• Extensible Markup Language (XML)
• And what…
Information Sharing
• Making web-based information machine understandable
• Providing a rich semantic model for expressing domain knowledge
• Enabling cross-domain information exchange
Motivations of the Semantic Web
The Semantic Web Stack
• Hypertext Web technologies• URI• Unicode• XML
*Source: http://en.wikipedia.org/wiki/Semantic_Web_Stack
The Semantic Web Stack
• Hypertext Web technologies• URI• Unicode• XML
• Standardized Semantic Web technologies
• RDF• RDFS• OWL• SPARQL
*Source: http://en.wikipedia.org/wiki/Semantic_Web_Stack
The Semantic Web Stack
• Hypertext Web technologies• URI• Unicode• XML
• Standardized Semantic Web technologies
• RDF• RDFS• OWL• SPARQL
• Unrealized Semantic Web technologies
• RIF/SWRL• Cryptography• Trust• User Interface
*Source: http://en.wikipedia.org/wiki/Semantic_Web_Stack
The Semantic Web Stack
• Standardized Semantic Web technologies
• RDF• RDFS• OWL
*Source: http://en.wikipedia.org/wiki/Semantic_Web_Stack
• RDF is a general purpose data model for exchange of machine-understandable information in the Web
• What does RDF support?– Represent metadata about Web objects– Facilitate data merge– Support evolution of data schemas
RDF – Resource Description Framework
RDF Statement
Resource Predicate Object
or
The data model
Resource Property
Resource
Literals
• Resource : anything with an associated URIRef• http://www.restaurant.org/food-ont#Pizza• https://sosa.ucsd.edu/confluence/display/~xiang
• Property : a resource that serves as a predicate in a statement • http://www.mydomain.org/web-page-owner
• Object : a resource or a literal • “$3.5”, “123”, xsd:integer^^10
• Vocabulary : a set of URIrefs • Elements in a vocabulary are unique
An example of an RDF model
LegendPurple Box: ResourceGreen Box: LiteralRed arcs: PropertyadvisedBy:
http://www.sosa.ucsd.edu/relation#advisedByFN:http://www.w3.org/2001/vcard-rdf/3.0#FN
Data Merge Using RDF
Merge Them…Why does it work?
• Which URI should we use and how to find them?– Popular ones! Data merge can take place automatically.– A good place to find popular URIs
• Linking Open Data Community Project: http://www.w3.org/wiki/SweoIG/TaskForces/CommunityProjects/LinkingOpenData
Use of URIs
Picture Source: http://www.w3.org/wiki/SweoIG/TaskForces/CommunityProjects/LinkingOpenData
• RDF is too general to incorporate semantics– it only provides syntax for data exchange in the Web
RDF is not enough…
1. What if we replace advisedBy with propertyA, and FN with propertyB?
2. What if we want to know if “Celal” and “Xiang” are similar?
3. What is the domain of the property “advisedBy” ?
• An ontology defines:– a specific vocabulary used to describe a certain reality, plus– a set of explicit assumptions regarding the intended meaning of the
vocabulary
• An ontology describes a formal specification of a certain domain– Shared understanding of a domain of interest– Machine manipulable model of a domain of interest
• A popular definition– An explicit specification of a conceptualization [Tome Gruber]
Introduction to ontology in computer science*
* www.co-ode.org/resources/tutorials/intro/slides/Introduction.ppt
• RDFS provides a framework to describe domain-specific classes, properties and individuals.– Features for describing classes which represent concepts– Features for describing properties with restrictions
• Constructs for describing classes– rdfs:Class– rdfs:subClassOf
• Constructs for describing properties– rdfs:domain– rdfs:range– rdfs:subPropertyOf
• RDFS has more constructs…– more info: http://www.w3.org/TR/rdf-schema/
RDF Schema – A vocabulary language for RDF
• Type inheritance– Morris is an instance of Cat; Cat is a subClassOf Mammal
->Morris is an instance of Mammal
• Type Inference– teaches is a property whose domain is Teacher and Range is
Student; Bob teaches Tom -> Bob is a teacher and Tom is a student
• Transitivity– Dog is a subClassOf Mammal; Mammal is a subClassof Animal
-> Dog is a subClassOf Animal
RDFS Reasoning Capabilities *
*http://www.ksl.stanford.edu/software/jtp/doc/owl-reasoning.html
• What about the following features:– Property cardinality– Class/Property equivalence– Inverse property– Class combinations (union, intersection, complement)– …
• A language with a richer set of constructs is needed.
RDF/RDFS is not enough too…
• OWL is the latest standard in ontology languages from the World Wide Web Consortium (W3C)
• OWL is built on top of RDF/RDFS• OWL has a richer set of modeling constructs
• Three species of OWL:– OWL Lite: only uses a subset of OWL constructs– OWL DL: uses all OWL constructs but with limitations to achieve
computational decidability– OWL Full: uses all OWL features with no computational
guarantee
• OWL profiles: OWL-EL, OWL-QL, OWL RL
OWL – Web Ontology Language
• Classes– Named
classes(available in RDFS)
– Restriction(anonymous) classes
– Intersection classes– Union classes– Complement classes– Equivalent classes– DisjointOf class– Enumerated classes
Basic elements of OWL (not all)
• Properties– Transitive– Symmetric– Functional– Inverse– Inverse Functional– allValuesFrom– someValuesFrom– Cardinality– hasValue
• Individuals
A complete list can be found here:http://www.w3.org/TR/owl-features/
A restriction class example
A restriction class that imposes “has value of Red” on property “hasColor”.
• Including all RDFS reasoning capabilities, plus• Transitivity (different from RDFS)• Inheritance of disjointness constraint
– Plant is disjoint with Animal, and Mammal is a subclass of Animal ->Plant is disjoint with Mammal
• Inferring equivalent relationship via FunctionalProperty– mother is a FunctionalProperty, Joe’s mother is Julie, Joe’s mother is Maggie -> Julie and
Maggie is equivalent
• If an object is an instance of a restriction class, then the object has the specified value for that property
– A restriction class called WhiteSkinPeople has a hasValue property called skinColor whose value is White, Joe is an instance of WhiteSkinPeople
-> Joe has White skinColor
• Reasoning with inverseOf– owns and ownedby
• Any many more…
OWL inference capabilities (only a small part of them)*
*http://www.ksl.stanford.edu/software/jtp/doc/owl-reasoning.html
An inference example - the domain model*
*Adapted from “Semantic Web Programming” chapter 5, by John Hebeler etc.
Brief descriptions of the domain model:1. Mammal2. Human is a subclass of Mammal3. Canine is a subclass of Mammal
and is equivalent to the class ofinstances for which there is at least one breed property with avalue that is an instance of Breed
4. Breed5. LargeBread is a subclass of Bread6. SmallBread is a subclass of Bread7. GoldenRetriever8. Chihuahua9. PetOfRyan is a subclass of Mammal
and it’s instances have a property thathas a value of Ryan
10. hasOwner11. owns is inverse of hasOwner12. Ryan is a Human whose name is “Ryan
Blace” and owns Daisy13. Daisy is a Canine that has a property breed
with the value GoldenRetriever14. Amber is a Mammal that has a property breed
with the value GoldenRetriever
Not for human consumption
An inference example – no inference*Brief descriptions of the domain model:1. Mammal2. Human is a subclass of Mammal3. Canine is a subclass of Mammal
and is equivalent to the class ofinstances for which there is at least one breed property with avalue that is an instance of Breed
4. Breed5. LargeBread is a subclass of Bread6. SmallBread is a subclass of Bread7. GoldenRetriever8. Chihuahua9. PetOfRyan is a subclass of Mammal
and it’s instances have a property thathas a value of Ryan
10. hasOwner11. owns is inverse of hasOwner12. Ryan is a Human whose name is “Ryan
Blace” and owns Daisy13. Daisy is a Canine that has a property breed
with the value GoldenRetriever14. Amber is a Mammal that has a property breed
with the value GoldenRetriever*Adapted from “Semantic Web Programming” chapter 5, by John Hebeler etc.
An inference example – RDFS inference*Brief descriptions of the domain model:1. Mammal2. Human is a subclass of Mammal3. Canine is a subclass of Mammal
and is equivalent to the class ofinstances for which there is at least one breed property with avalue that is an instance of Breed
4. Breed5. LargeBread is a subclass of Bread6. SmallBread is a subclass of Bread7. GoldenRetriever8. Chihuahua9. PetOfRyan is a subclass of Mammal
and it’s instances have a property thathas a value of Ryan
10. hasOwner11. owns is inverse of hasOwner12. Ryan is a Human whose name is “Ryan
Blace” and owns Daisy13. Daisy is a Canine that has a property breed
with the value GoldenRetriever14. Amber is a Mammal that has a property breed
with the value GoldenRetriever*Adapted from “Semantic Web Programming” chapter 5, by John Hebeler etc.
An inference example – OWL-DL inference*Brief descriptions of the domain model:1. Mammal2. Human is a subclass of Mammal3. Canine is a subclass of Mammal
and is equivalent to the class ofinstances for which there is at least one breed property with avalue that is an instance of Breed
4. Breed5. LargeBread is a subclass of Bread6. SmallBread is a subclass of Bread7. GoldenRetriever8. Chihuahua9. PetOfRyan is a subclass of Mammal
and it’s instances have the hasOwnerproperty that has a value of Ryan
10. hasOwner11. owns is inverse of hasOwner12. Ryan is a Human whose name is “Ryan
Blace” and owns Daisy13. Daisy is a Canine that has a property breed
with the value GoldenRetriever14. Amber is a Mammal that has a property breed
with the value GoldenRetriever*Adapted from “Semantic Web Programming” chapter 5, by John Hebeler etc.
• A list of editors and reasoners (a lot…):– http://www.w3.org/2007/OWL/wiki/Implementations
• Protégé: an ontology editor– create, edit, combine, reason, serialize, visualize ontologies– reasoner is pluggable
• Jena: a framework to provide a programmatic environment for RDF, RDFS and OWL
• Reasoners:– FaCT++: supports OWL DL, open-source– Pellet: supports DL, EL, open-source
• RDF Gravity: RDF document visulizer
Ontology authoring tools and reasoners
THANK YOU!