Presentation is loading. Please wait.

Presentation is loading. Please wait.

Www.sti-innsbruck.at © Copyright 2008 STI INNSBRUCK www.sti-innsbruck.at OWL: The Web Ontology Language Semantic Web Lecture Lecture VII – xx 2009 Dieter.

Similar presentations


Presentation on theme: "Www.sti-innsbruck.at © Copyright 2008 STI INNSBRUCK www.sti-innsbruck.at OWL: The Web Ontology Language Semantic Web Lecture Lecture VII – xx 2009 Dieter."— Presentation transcript:

1 www.sti-innsbruck.at © Copyright 2008 STI INNSBRUCK www.sti-innsbruck.at OWL: The Web Ontology Language Semantic Web Lecture Lecture VII – xx 2009 Dieter Fensel Slides by: Federico M. Facca

2 www.sti-innsbruck.at Where are we? #DateTitle 1Introduction 2Semantic Web Architecture 3RDF and RDF Schema 4Web of hypertext (RDFa, Microformats) and Web of data 5Semantic Annotation 6Repositories and SPARQL 7The Web Ontology Language 8Rule Interchange Format 9Web-scale Reasoning 10Social Semantic Web 11Ontologies and the Semantic Web 12Semantic Web Services 13Tools 14Applications 15Exam 2

3 www.sti-innsbruck.at Overview Introduction and Motivation Technical Solution –Design of OWL –OWL Layering –OWL and Description Logics –OWL Syntaxes Illustration by a Large Example Extensions 3

4 www.sti-innsbruck.at Semantic Web Stack 4 Adapted from http://en.wikipedia.org/wiki/Semantic_Web_Stack

5 www.sti-innsbruck.at INTRODUCTION AND MOTIVATION 5

6 www.sti-innsbruck.at Overview Limitations of RDFS –Expressivity limitations –Layering problems Web Ontology Language OWL –Design of OWL –OWL Layering –OWL and Description Logics –OWL Syntaxes 6

7 www.sti-innsbruck.at What we discussed so far… RDF Schema –RDFS Vocabulary –RDFS Metadata –Literals and datatypes in RDFS Semantics of RDF and RDF Schema –Semantic notions –RDF(S) Entailment SPARQL –SPARQL Queries –Query answer 7

8 www.sti-innsbruck.at What we discussed so far… RDF Schema –RDFS Vocabulary –RDFS Metadata –Literals and datatypes in RDFS Semantics of RDF and RDF Schema –Semantic notions –RDF(S) Entailment SPARQL –SPARQL Queries –Query answer 8 RDF Vocabulary Classes: rdf:Property, rdf:Statement, rdf:XMLLiteral rdf:Seq, rdf:Bag, rdf:Alt, rdf:List Properties: rdf:type, rdf:subject, rdf:predicate, rdf:object, rdf:first, rdf:rest, rdf:_n rdf:value Resources: rdf:nil

9 www.sti-innsbruck.at What we discussed so far… RDF Schema –RDFS Vocabulary –RDFS Metadata –Literals and datatypes in RDFS Semantics of RDF and RDF Schema –Semantic notions –RDF(S) Entailment SPARQL –SPARQL Queries –Query answer 9 RDF Vocabulary Classes: rdf:Property, rdf:Statement, rdf:XMLLiteral rdf:Seq, rdf:Bag, rdf:Alt, rdf:List Properties: rdf:type, rdf:subject, rdf:predicate, rdf:object, rdf:first, rdf:rest, rdf:_n rdf:value Resources: rdf:nil RDFS Vocabulary RDFS Classes rdfs:Resource rdfs:Class rdfs:Literal rdfs:Datatype rdfs:Container rdfs:ContainerMembershipProperty RDFS Vocabulary RDFS Properties rdfs:domain rdfs:range rdfs:subPropertyOf rdfs:subClassOf rdfs:member rdfs:seeAlso rdfs:isDefinedBy rdfs:comment rdfs:label

10 www.sti-innsbruck.at What we discussed so far… RDF Schema –RDFS Vocabulary –RDFS Metadata –Literals and datatypes in RDFS Semantics of RDF and RDF Schema –Semantic notions –RDF(S) Entailment SPARQL –SPARQL Queries –Query answer 10

11 www.sti-innsbruck.at What we discussed so far… RDF Schema –RDFS Vocabulary –RDFS Metadata –Literals and datatypes in RDFS Semantics of RDF and RDF Schema –Semantic notions –RDF(S) Entailment SPARQL –SPARQL Queries –Query answer 11

12 www.sti-innsbruck.at What we discussed so far… RDF Schema –RDFS Vocabulary –RDFS Metadata –Literals and datatypes in RDFS Semantics of RDF and RDF Schema –Semantic notions –RDF(S) Entailment SPARQL –SPARQL Queries –Query answer 12

13 www.sti-innsbruck.at What we discussed so far… RDF Schema –RDFS Vocabulary –RDFS Metadata –Literals and datatypes in RDFS Semantics of RDF and RDF Schema –Semantic notions –RDF(S) Entailment SPARQL –SPARQL Queries –Query answer 13 PREFIX vCard: SELECT ?fullName WHERE {?x vCard:FN ?fullName}

14 www.sti-innsbruck.at Requirements for Ontology Languages Well-defined syntax Convenience of expression Formal semantics –Needed in reasoning, e.g.: Class membership Equivalence of classes Consistency Classification Efficient reasoning support Sufficient expressive power 14

15 www.sti-innsbruck.at Limitations of RDFS No semantics for: –Containers –Collections –Reification Domain and range of property infer information rather than check data –Conjunctive interpretation of multiple restrictions Use of properties as objects RDF/XML syntax very verbose 15

16 www.sti-innsbruck.at RDFS as an Ontology Language Classes Properties Class hierarchies Property hierarchies Domain and range restrictions 16

17 www.sti-innsbruck.at Expressiveness Limitations of RDF(S) Only binary relations Characteristics of Properties –E.g. inverse, transitive, symmetric Local range restrictions –E.g. for class Person, the property hasName has range xsd:string Complex concept descriptions –E.g. Person is defined by Man and Woman Cardinality restrictions –E.g. a Person may have at most 1 name Disjointness axioms –E.g. nobody can be both a Man and a Woman 17

18 www.sti-innsbruck.at Layering Issues Syntax –Only binary relations in RDF –Verbose syntax –No limitations on graph in RDF Every graph is valid Semantics –Malformed graphs –Use of vocabulary in language e.g. –Meta-classes e.g.,, 18

19 www.sti-innsbruck.at Stack of Languages XML –Surface syntax, no semantics XML Schema –Describes structure of XML documents RDF –Datamodel for “relations” between “things” RDF Schema –RDF Vocabulary Definition Language OWL –A more expressive Vocabulary Definition Language 19 This and following slides in part due to Frank van Harmelen http://www.cs.vu.nl/~frankh/spool/SemWebSlides/OWL.ppt http://www.cs.vu.nl/~frankh/spool/SemWebSlides/OWL.ppt

20 www.sti-innsbruck.at RDF Schema Recap RDFS provides –Classes –Class hierarchies –Properties –Property hierarchies –Domain and range restrictions RDFS does not provide –Property characteristics (inverse, transitive,...) –Local range restrictions –Complex concept definitions –Cardinality restrictions –Disjointness axioms 20

21 www.sti-innsbruck.at Extending RDF Schema OWL extends RDF Schema to a full-fledged knowledge representation language for the Web –Logical expressions (and, or, not) –(In)equality –Local properties –Required/optional properties –Required values –Enumerated classes –Symmetry, inverse 21

22 www.sti-innsbruck.at TECHNICAL SOLUTION The Web Ontology Language 22

23 www.sti-innsbruck.at Design Goals for OWL Shareable Changing over time Interoperability Inconsistency detection Balancing expressivity and complexity Ease of use Compatible with existing standards Internationalization 23

24 www.sti-innsbruck.at Requirements for OWL Ontologies are object on the Web with their own meta- data, versioning, etc... Ontologies are extendable 24 From Grigoris Antoniou and Frank van Harmelen: A Semantic Web Primer, MIT Press 2004

25 www.sti-innsbruck.at Requirements for OWL Ontologies are object on the Web with their own meta- data, versioning, etc... Ontologies are extendable They contain classes, properties, data-types, range/domain, individuals Equality (for classes, for individuals) Classes as instances Cardinality constraints XML syntax 25

26 www.sti-innsbruck.at Objectives for OWL Objectives: –Layered language –Complex datatypes –Digital signatures –Decidability (in part) –Local unique names (in part) Disregarded: –Default values –Closed world option –Property chaining –Arithmetic –String operations –Partial imports –View definitions –Procedural attachments 26 A logical system or theory is decidable if there exists an effective method such that for every formula in the system the method is capable of deciding whether the formula is valid in the system or not. [http://www.wikipedia.org]http://www.wikipedia.org [http://www.w3.org/TR/webont-req/]

27 www.sti-innsbruck.at Language Layers of OWL OWL Lite –Classification hierarchy –Simple constraints OWL DL –Maximal expressiveness while maintaining tractability –Standard formalization in a DL OWL Full –Very high expressiveness –Losing tractability –All syntactic freedom of RDF (self-modifying) 27

28 www.sti-innsbruck.at Language Layers of OWL OWL Lite –Classification hierarchy –Simple constraints OWL DL –Maximal expressiveness while maintaining tractability –Standard formalization in a DL OWL Full –Very high expressiveness –Losing tractability –All syntactic freedom of RDF (self-modifying) 28 Problems that are solvable in theory but cannot be solved in practice are called intractable. [http://www.wikipedia.org]http://www.wikipedia.org

29 www.sti-innsbruck.at Features of OWL Language Layers OWL Lite –(sub)classes, individuals –(sub)properties, domain, range –conjunction –(in)equality –cardinality 0/1 –datatypes –inverse, transitive, symmetric properties –someValuesFrom –allValuesFrom OWL DL –Negation –Disjunction –Full cardinality –Enumerated types –hasValue OWL Full –Meta-classes –Modify language 29

30 www.sti-innsbruck.at OWL Full No restriction on use of vocabulary (as long as legal RDF) –Classes as instances (and much more) RDF style model theory –Reasoning using FOL engine –Semantics should correspond to OWL DL for restricted KBs 30

31 www.sti-innsbruck.at OWL DL Use of vocabulary restricted –Can’t be used to do “nasty things” (e.g. modify OWL) –No classes as instances –Defined by abstract syntax Standard DL-based model theory –Direct correspondence with a DL –Partial reasoning via DL engines –Reasoning for full language via FOL engines No need for axiomatization Built-in datatypes required for performance 31

32 www.sti-innsbruck.at OWL Lite No explicit negation or union Restricted cardinality (0/1) No nominals (oneOf) DL-based semantics –Reasoning via DL engines (+ datatypes) Semantically, only small restriction on OWL DL –No nominals –No arbitrary cardinality 32

33 www.sti-innsbruck.at OWL and Description Logics OWL Lite corresponds to the DL SHIN (D) –Named classes (A) –Named properties (P) –Individuals (C(o)) –Property values (P(o, a)) –Intersection (C ⊓ D) –Union(!) (C ⊔ D) –Negation(!) (¬C) –Existential value restrictions ( ∃ P.C) –Universal value restrictions ( ∀ P.C) –Unqualified number restrictions ( ≥ nP, ≤ nP, = nP) OWL DL corresponds to the DL SHOIN (D) –Property value ( ∃ P.{o}) –Enumeration ({o 1,..., o n }) 33

34 www.sti-innsbruck.at OWL Constructs 34 + XML Schema datatypes: int, string, real, etc... ∃

35 www.sti-innsbruck.at OWL Axioms 35

36 www.sti-innsbruck.at OWL Full is not a Description Logic OWL Lite has strong syntactic restrictions, but only limited semantics restrictions, compared with OWL DL –Negation can be encoded using disjointness –With negation and conjunction, you can encode disjunction Class(C complete unionOf(B C)) is equivalent to: DisjointClasses(not B B) DisjointClasses(not C C) Class(not B and not C complete not B not C) DisjointClasses(notB and not C B or C) Class(C complete not B and not C) More on OWL Species 36

37 www.sti-innsbruck.at More on Layering For an OWL DL-restricted KB, OWL Full semantics is not equivalent to OWL DL semantics John friend Susan OWL Full entails: John rdf:type owl:Thing Susan rdf:type owl:Thing friend rdf:type owl:ObjectProperty John rdf:type _:x _:x owl:onProperty friend _:x owl: minCardinality ”1”ˆˆxsd:nonNegativeInteger 37

38 www.sti-innsbruck.at Syntaxes of OWL RDF –Official exchange syntax –Hard for humans –RDF parsers are hard to write! UML –Large user base XML –Not the RDF syntax –Better for humans –More XML than RDF tools available Abstract syntax –Not defined for OWL Full –Human readable 38

39 www.sti-innsbruck.at OWL in RDF/XML Example from [OwlGuide]:... <rdf:RDF xmlns:vin=”http://www.w3.org/TR/2004/REC−owl−guide−20040210/wine#” xmlns:food=”http://www.w3.org/TR/2004/REC−owl−guide−20040210/food#”... > wine vin...... 39

40 www.sti-innsbruck.at OWL in RDF/XML Example from [OwlGuide]:... <rdf:RDF xmlns:vin=”http://www.w3.org/TR/2004/REC−owl−guide−20040210/wine#” xmlns:food=”http://www.w3.org/TR/2004/REC−owl−guide−20040210/food#”... > wine vin...... 40 From Grigoris Antoniou and Frank van Harmelen: A Semantic Web Primer, MIT Press 2004

41 www.sti-innsbruck.at OWL Abstract Syntax Class(professor partial ) Class(associateProfessor partial academicStaffMember) DisjointClasses(associateProfessor assistantProfessor) DisjointClasses(professor associateProfessor) Class(faculty complete academicStaffMember) 41

42 www.sti-innsbruck.at OWL Abstract Syntax In DL syntax: associateProfessor ⊑ academicStaffMember associateProfessor ⊑ ¬assistantProfessor professor ⊑ ¬associateProfessor faculty ≡ academicStaffMember 42 Class(professor partial ) Class(associateProfessor partial academicStaffMember) DisjointClasses(associateProfessor assistantProfessor) DisjointClasses(professor associateProfessor) Class(faculty complete academicStaffMember)

43 www.sti-innsbruck.at More Examples DatatypeProperty(age range(xsd:nonNegativeInteger)) ObjectProperty(lecturesIn) ObjectProperty(isTaughtBy domain(course) range(academicStaffMember)) SubPropertyOf(isTaughtBy involves) ObjectProperty(teaches inverseOf(isTaughtBy) domain(academicStaffMember) range(course)) EquivalentProperties(lecturesIn teaches) ObjectProperty(hasSameGradeAs Transitive Symmetric domain(student) range(student)) 43

44 www.sti-innsbruck.at More Examples In DL syntax: ⊤ ⊑ ∀ age.xsd:nonNegativeInteger ⊤ ⊑ ∀ isTaughtBy −.course ⊤ ⊑ ∀ isTaughtBy.academicStaffMember isTaughtBy ⊑ involves teaches ≡ isTaughtBy − ⊤ ⊑ ∀ teaches −.academicStaffMember ⊤ ⊑ ∀ teaches.course lecturesIn ≡ teaches hasSameGradeAs + ⊑ hasSameGradeAs hasSameGradeAs ≡ hasSameGradeAs − ⊤ ⊑ ∀ hasSameGradeAs −.student ⊤ ⊑ ∀ hasSameGradeAs.student 44 DatatypeProperty(age range(xsd:nonNegativeInteger)) ObjectProperty(lecturesIn) ObjectProperty(isTaughtBy domain(course) range(academicStaffMember)) SubPropertyOf(isTaughtBy involves) ObjectProperty(teaches inverseOf(isTaughtBy) domain(academicStaffMember) range(course)) EquivalentProperties(lecturesIn teaches) ObjectProperty(hasSameGradeAs Transitive Symmetric domain(student) range(student))

45 www.sti-innsbruck.at More Examples Individual(949318 type(lecturer)) Individual(949352 type(academicStaffMember) value(age ”39”ˆˆ&xsd;integer)) ObjectProperty(isTaughtBy Functional) Individual(CIT1111 type(course) value(isTaughtBy 949352) value(isTaughtBy 949318)) DifferentIndividuals(949318 949352) DifferentIndividuals(949352 949111 949318) 45

46 www.sti-innsbruck.at More Examples In DL syntax: 949318 : lecturer 949352 : academicStaffMember  949352, ”39”ˆˆ&xsd; integer  :age ⊤ ⊑ ≤1isTaughtBy CIT1111 : course  CIT1111, 949352  :isTaughtBy  CIT1111, 949318  :isTaughtBy 949318 ≠ 949352 949352 ≠ 949111 949111 ≠ 949318 949352 ≠ 949318 46 Individual(949318 type(lecturer)) Individual(949352 type(academicStaffMember) value(age ”39”ˆˆ&xsd;integer)) ObjectProperty(isTaughtBy Functional) Individual(CIT1111 type(course) value(isTaughtBy 949352) value(isTaughtBy 949318)) DifferentIndividuals(949318 949352) DifferentIndividuals(949352 949111 949318)

47 www.sti-innsbruck.at More Examples Class(firstYearCourse partial restriction(isTaughtBy allValuesFrom (Professor))) Class(mathCourse partial restriction(isTaughtBy hasValue (949352))) Class(academicStaffMember partial restriction (teaches someValuesFrom (undergraduateCourse))) Class(course partial restriction (isTaughtBy minCardinality (1))) Class(department partial restriction (hasMember minCardinality(10)) restriction (hasMember maxCardinality(30))) 47

48 www.sti-innsbruck.at More Examples In DL syntax: firstYearCourse ⊑ ∀ isTaughtBy.Professor mathCourse ⊑ ∃ isTaughtBy.{949352} academicStaffMember ⊑ ∃ teaches.undergraduateCourse course ⊑ ≥ 1isTaughtBy department ⊑ ≥ 10hasMember ⊓ ≤ 30hasMember 48 Class(firstYearCourse partial restriction(isTaughtBy allValuesFrom (Professor))) Class(mathCourse partial restriction(isTaughtBy hasValue (949352))) Class(academicStaffMember partial restriction (teaches someValuesFrom (undergraduateCourse))) Class(course partialrestriction (isTaughtBy minCardinality (1))) Class(department partial restriction (hasMember minCardinality(10)) restriction (hasMember maxCardinality(30)))

49 www.sti-innsbruck.at More Examples Class(course partial complementOf(staffMember)) Class(peopleAtUni complete unionOf(staffMember student)) Class(facultyInCS complete intersectionOf(faculty restriction (belongsTo hasValue (CSDepartment)))) Class(adminStaff complete intersectionOf(staffMember complementOf(unionOf(faculty techSupportStaff)))) 49

50 www.sti-innsbruck.at More Examples In DL syntax: course ⊑ ¬staffMember peopleAtUni ≡ staffMember ⊔ student facultyInCS ≡ faculty ⊓ ∃ belongsTo.{CSDepartment} adminStaff ≡ staffMember ⊓ ¬(faculty ⊔ techSupportStaff ) 50 Class(course partial complementOf(staffMember)) Class(peopleAtUni complete unionOf(staffMember student)) Class(facultyInCS complete intersectionOf(faculty restriction (belongsTo hasValue (CSDepartment)))) Class(adminStaff complete intersectionOf(staffMember complementOf(unionOf(faculty techSupportStaff))))

51 www.sti-innsbruck.at Tool Support for OWL Ontology editors –Protégé (http://protege.stanford.edu/)http://protege.stanford.edu/ –OilED (http://oiled.man.ac.uk/) Reasoners –Hoolet (http://owl.man.ac.uk/hoolet/)http://owl.man.ac.uk/hoolet/ –Fact++ (http://owl.man.ac.uk/factplusplus/)http://owl.man.ac.uk/factplusplus/ –KAON2 (http://kaon2.semanticweb.org/) –Pellet (http://clarkparsia.com/pellet/) APIs –OWL-API (http://owlapi.sourceforge.net/)http://owlapi.sourceforge.net/ –Jena (http://jena.sourceforge.net/) 51

52 www.sti-innsbruck.at ILLUSTRATION BY A LARGER EXAMPLE An example of usage of OWL 52

53 www.sti-innsbruck.at The Wine Ontology 53 An Ontology describing wine domain One of the most widely used examples for OWL and referenced by W3C. There is also a wine agent associated to this ontology that performs OWL queries using a web-based ontological mark-up language. That is, by combining a logical reasoner with an OWL ontology. The agent's operation can be described in three parts: consulting the ontology, performing queries and outputting results. Available here: http://www.w3.org/TR/owl-guide/

54 www.sti-innsbruck.at Wine Ontology Schema 54 [http://mysite.verizon.net/jflynn12/VisioOWL/VisioOWL.htm]

55 www.sti-innsbruck.at Wine Ontology OWL Example 1 … 55

56 www.sti-innsbruck.at EXTENSIONS 56

57 www.sti-innsbruck.at From Description Logic to Horn Logic The practical experience in building applications has revealed several shortcomings of OWL, and hence Description Logics for modeling knowledge Feature that ontology engineers are missing: –Higher Relational Expressivity –Polyadic Predicates –Close-World Reasoning –Integrity Constraints –Modeling Exceptions Proper combination of Description Logic and Horn Logic can define extensions of the language to support such features –OWL-Flight 57

58 www.sti-innsbruck.at WRAP-UP That’s almost all for day… 58

59 www.sti-innsbruck.at Things to Keep in Mind (or Summary) Limitations of RDFS –Expressivity limitations –Problems with layering Web Ontology Language OWL –Design of OWL –OWL Layering –OWL and Description Logics –OWL Syntaxes 59

60 www.sti-innsbruck.at Further Reading Mandatory reading –Semantic Web Primer Chapters 4 –[OWL Guide] http://www.w3.org/TR/owl-guide/ –Ian Horrocks, Peter F. Patel-Schneider, and Frank van Harmelen. From SHIQ and RDF to OWL: The making of a web ontology language. Journal of Web Semantics, 1(1):7, 2003. http://www.cs.vu.nl/%7Efrankh/abstracts/JWS03.html Further reading –Jos de Bruijn: Using Ontologies. Enabling Knowledge Sharing and Reuse on the Semantic Web. DERI Technical Report DERI-2003-10-29, 2003. http://www.deri.org/publications/techpapers/documents/DERI-TR-2003-10-29.pdf –[OWL Reference] http://www.w3.org/TR/owl-ref/ –[OWL Abstract syntax and Semantics] http://www.w3.org/TR/owl-semantics –J. de Bruijn, A. Polleres, R. Lara, and D. Fensel: OWL DL vs. OWL Flight: Conceptual modeling and reasoning on the semantic web. In Proceedings of the 14th International World Wide Web Conference (WWW2005), Chiba, Japan, 2005. ACM. 60

61 www.sti-innsbruck.at Next Lecture 61 #DateTitle 1Introduction 2Semantic Web Architecture 3RDF and RDF Schema 4Web of hypertext (RDFa, Microformats) and Web of data 5Semantic Annotation 6Repositories and SPARQL 7The Web Ontology Language 8Rule Interchange Format 9Web-scale Reasoning 10Social Semantic Web 11Ontologies and the Semantic Web 12Semantic Web Services 13Tools 14Applications 15Exam

62 www.sti-innsbruck.at Questions? 62


Download ppt "Www.sti-innsbruck.at © Copyright 2008 STI INNSBRUCK www.sti-innsbruck.at OWL: The Web Ontology Language Semantic Web Lecture Lecture VII – xx 2009 Dieter."

Similar presentations


Ads by Google