1 / 50

L ogics for D ata and K nowledge R epresentation

L ogics for D ata and K nowledge R epresentation. Web Ontology Language (OWL). Fausto Giunchiglia and Biswanath Dutta Fall’2011. Outline. Introduction OWL Syntax Exchange Syntax Abstract Syntax Demo Semantics OWL 2 OWL 2 DL vs. OWL 2 Full OWL 2 vs. OWL 1 OWL 2 Profiles

Télécharger la présentation

L ogics for D ata and K nowledge R epresentation

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Logics for Data and KnowledgeRepresentation Web Ontology Language (OWL) Fausto Giunchiglia and Biswanath Dutta Fall’2011

  2. Outline • Introduction • OWL • Syntax • Exchange Syntax • Abstract Syntax • Demo • Semantics • OWL 2 • OWL 2 DL vs. OWL 2 Full • OWL 2 vs. OWL 1 • OWL 2 Profiles • Reasoning • Tool Support for OWL 2

  3. Limitations of RDFS INTRODUCTION :: OWL :: SYNTAX :: SEMANTICS :: OWL 2 :: REASONING :: TOOL SUPPORT • Is too weak in describing resources with sufficient details • No localised range and domain constraints • Cannot say that the range of teachBy is only professor when applied to professors and lecturer when applied to lecturers • No cardinality constraints • Cannot say that a course is taught by at least one professor, or persons have exactly 2 parents • No transitive, inverse or symmetrical properties • Cannot say that isPartOf is a transitive property, that hasSupervisor is the inverse of isSupervisorOf, and, that friendOf is symmetrical • Disjoint classes • Cannot say that Graduate and PhD. Students are two disjoint classes • Boolean combinations of classes • Sometimes we may need to build new classes by combining other classes using union, intersection, and complement (e.g. person is the disjoint union of the classes male and female)

  4. Ontology Languages INTRODUCTION :: OWL :: SYNTAX :: SEMANTICS :: OWL 2 :: REASONING :: TOOL SUPPORT • Wide variety of onotlogy languages for explicit specification • Graphical notations • Semantic networks, Topic Maps, UML, RDF • Logic based • Description Logics (e.g., OIL, DAML+OIL, OWL), Rules (e.g., RuleML, SWRL, N3Logic, LP/Prolog), First Order Logic (e.g., KIF), Conceptual graphs, (Syntactically) higher order logics (e.g., LBase), Non-classical logics (e.g., Flogic, Non-Mon, modalities) • Probabilistic/fuzzy • However, degree of formality varies widely • Increased formality makes languages more amenable to machine processing (e.g., automated reasoning) Important: XML Schema is not an ontology language

  5. Ontology Language Requirements INTRODUCTION :: OWL :: SYNTAX :: SEMANTICS :: OWL 2 :: REASONING :: TOOL SUPPORT • Well defined syntax • Extends existing Web standards • Like, XML, RDF, RDFS • Easy to understand and use • Should be based on familiar KR idioms • Adequate expressive power • Important: the richer the language is, the more inefficient the reasoning support becomes • Formal semantics • Efficient reasoning support

  6. Web Ontology Language OWL INTRODUCTION :: OWL :: SYNTAX :: SEMANTICS :: OWL 2 :: REASONING :: TOOL SUPPORT • Semantic Web led to requirement for a Web Ontology Language • OWL is a W3C recommended, semantic markup language for publishing and sharing ontologies on Web • OWL is developed as vocabulary extension of RDF and RDFS • OWL is based on the earlier languages OIL and DAML+OIL • OIL, DAML+OIL and OWL are based on Description Logics (DL) • OWL is a Web-friendly syntax for SHOIN • Three species of OWL: OWL Full, OWL DL and OWL Lite • All OWL species use the open world assumption

  7. OWL Full INTRODUCTION :: OWL :: SYNTAX :: SEMANTICS :: OWL 2 :: REASONING :: TOOL SUPPORT • It uses all the OWL languages primitives • It allows free mixing of OWL with RDF Schema • So, expressive that does not enforce a strictseparation of classes, properties, individuals and data values • A class can be treated simultaneously as a collection of individuals and as an individual in its own right • It is fully upward-compatible with RDF, both syntactically and semantically • Unlikely to have complete (or efficient) reasoning support by the reasoning software • Important: RDF documents will generally be in OWL Full, unless they are specifically constructed to be in OWL DL or OWL Lite

  8. OWL DL (Description Logic) INTRODUCTION :: OWL :: SYNTAX :: SEMANTICS :: OWL 2 :: REASONING :: TOOL SUPPORT • It is a sublanguage of OWL Full • Provides maximum expressivity, while retaining computational completeness (i.e, all conclusions are guaranteed to be computable) and decidability • Includes all OWL language constructs with certain restrictions • E.g., a sets of class, property and individual names must be disjoint • While a class may be a subclass of many classes, a class cannot be an individual of another class • It permits efficient reasoning support • Important: we lose full compatibility with RDF • Note • Every RDF document is a legal OWL DL document • Every legal OWL DL document is a legal RDF document • Every legal OWL DL ontology is a legal OWL Full ontology • Every valid OWL DL conclusion is a valid OWL Full conclusion

  9. OWL Lite INTRODUCTION :: OWL :: SYNTAX :: SEMANTICS :: OWL 2 :: REASONING :: TOOL SUPPORT • It is a sublanguage (i.e., lighter version) of OWL DL, supports only a subset of the OWL language constructs • Putting further restrictions, limits OWL DL to a subset of the OWL language constructors • E.g., OWL Lite excludes enumerated classes, disjointness statements, and arbitrary cardinality (only permits cardinality values of 0 or 1) • Advantage of OWL Lite are • Easy to grasp • Easy to implement for tool builders • Provides a quick migration path for thesauri and other taxonomies • Disadvantage is restricted expressivity • Important: • OWL Lite is not simply an extension of RDF Schema • Every legal OWL Lite ontology is a legal OWL DL ontology • Every valid OWL Lite conclusion is a valid OWL DL conclusion

  10. OWL Ontology Elements INTRODUCTION :: OWL :: SYNTAX :: SEMANTICS :: OWL 2 :: REASONING :: TOOL SUPPORT • OWL ontology concern of, • Classes, • Properties, • Instances of classes, and • Relationships between the instances • Synonymous terms in DL • Classes -> Concepts • Properties -> Roles • Instances -> Individuals

  11. Class INTRODUCTION :: OWL :: SYNTAX :: SEMANTICS :: OWL 2 :: REASONING :: TOOL SUPPORT • A class defines a group of individuals that belong together and the classes are defined using owl:Class • Important • owl:Thing- a built-in most general class and is the class of all individuals and is a superclass of all OWL classes in the OWL World • owl:Nothing- a built-in most specific class and is the class that has no instances (i.e., empty object class) and a subclass of all OWL classes • Note: • owl:Class is a subclass of rdfs:Class • in OWL, class hierarchy can be built using the rdfs:subClassOf

  12. Properties INTRODUCTION :: OWL :: SYNTAX :: SEMANTICS :: OWL 2 :: REASONING :: TOOL SUPPORT • OWL defines the properties, • Object property- relate individuals to other individuals (e.g. isTaughtBy, supervises, isStudentOf, isLocatedIn) • An object property is defined as an instance of the built-in OWL class owl:ObjectProperty • Datatype property- relate individuals to datatype values (e.g. author, title, phone, age, etc.) • A datatype property is defined as an instance of the built-in OWL class owl:DatatypeProperty • Annotation property- use to add uninterpreted information (e.g., versioning information, comment) to individuals, classes, and properties • Important: both owl:ObjectProperty and owl:DatatypeProperty are subclasses of the RDF class rdf:Property 12

  13. OWL Class and OWL Properties INTRODUCTION :: OWL :: SYNTAX :: SEMANTICS :: OWL 2 :: REASONING :: TOOL SUPPORT rdfs:Resource rdf:Property rdfs:Class owl:DatatypeProperty owl:ObjectProperty owl:Class

  14. Exchange Syntax INTRODUCTION :: OWL :: SYNTAX :: SEMANTICS :: OWL 2 :: REASONING :: TOOL SUPPORT • OWL builds on RDF and uses RDF’s XML based syntax • An OWL ontology turns into is a set of RDF triples • Like wise any RDF graph, an OWL ontology graph can be written in many different syntactic forms of RDF/XML • Alternative syntactic forms for OWL have also been defined • More readable XML based syntax • E.g., <owl:Class rdf:ID=“Person”/> • The above can be alternatively represented by the following, <rdf:Description rdf:about=”#Person"> <rdf:type rdf:resource="http://www.w3.org/2002/07/ owl#Class"/> </rdf:Description> • Important: A graphic syntax based on the conventions of UML (Unified Modelling Language)

  15. Abstract Syntax INTRODUCTION :: OWL :: SYNTAX :: SEMANTICS :: OWL 2 :: REASONING :: TOOL SUPPORT Abstract Syntax DL Syntax OWL DL Descriptions(C), Data Ranges(D), Object properties(R), Individuals(o), Datatype properties(U) and Data Values(v), Names for classes (A)

  16. Property Restrictions INTRODUCTION :: OWL :: SYNTAX :: SEMANTICS :: OWL 2 :: REASONING :: TOOL SUPPORT • In OWL we can declare that the class C satisfies certain conditions • All instances of C satisfy the conditions • A (restriction) class is achieved through an owl:Restriction element • This element contains an owl:onProperty element and one or more restriction declarations • Defines restrictions on the kinds of values the property may take, owl:allValuesFrom, owl:someValuesFrom, owl:hasvalue • We can specify minimum and maximum number using owl:minCardinality and owl:maxCardinality • Also, possible to specify a precise numberusing the same minimum and maximum number, by owl:cardinality 16

  17. Property Restrictions (examples) INTRODUCTION :: OWL :: SYNTAX :: SEMANTICS :: OWL 2 :: REASONING :: TOOL SUPPORT <owl:Class rdf:about=“#PhD"> <rdfs:subClassOf> <owl:Restriction> <owl:onProperty rdf:resource=“#isSuperviseBy"/> <owl:allValuesFrom rdf:resource=“#Professor"/> </owl:Restriction> </rdfs:subClassOf> </owl:Class> <owl:Class rdf:about=“#AcademicStaffMember"> <rdfs:subClassOf> <owl:Restriction> <owl:onProperty rdf:resource=“#teaches"/> <owl:someValuesFrom rdf:resource=“#undergraduateCourse"/> </owl:Restriction> </rdfs:subClassOf> </owl:Class> 17

  18. Property Restrictions (examples) INTRODUCTION :: OWL :: SYNTAX :: SEMANTICS :: OWL 2 :: REASONING :: TOOL SUPPORT <owl:Class rdf:about="#Person"> <rdfs:subClassOf> <owl:Restriction> <owl:onProperty rdf:resource="#hasParents"/> <owl:maxCardinality rdf:datatype= "&xsd;nonNegativeInteger“>2 </owl:maxCardinality> </owl:Restriction> </rdfs:subClassOf> </owl:Class> 18

  19. Examples INTRODUCTION :: OWL :: SYNTAX :: SEMANTICS :: OWL 2 :: REASONING :: TOOL SUPPORT owl:equivalentClass defines equivalence of classes <owl:Class rdf:ID="faculty"> <owl:equivalentClass rdf:resource="#academicStaffMember"/> </owl:Class> Enumeration using owl:oneOf <owl:Class rdf:ID="weekdays"> <owl:oneOf rdf:parseType="Collection"> <owl:Thing rdf:about="#Monday"/> <owl:Thing rdf:about="#Tuesday"/> <owl:Thing rdf:about="#Wednesday"/> <owl:Thing rdf:about="#Thursday"/> <owl:Thing rdf:about="#Friday"/> <owl:Thing rdf:about="#Saturday"/> <owl:Thing rdf:about="#Sunday"/> </owl:oneOf> </owl:Class> 19

  20. Boolean Combinations (Examples) INTRODUCTION :: OWL :: SYNTAX :: SEMANTICS :: OWL 2 :: REASONING :: TOOL SUPPORT Classes can be combined using Boolean operations (union, intersection, complement) <owl:Class rdf:about="#course"> <rdfs:subClassOf> <owl:Restriction> <owl:complementOf rdf:resource="#staffMember"/> </owl:Restriction> </rdfs:subClassOf> </owl:Class> 20

  21. Axioms and Facts (OWL DL) INTRODUCTION :: OWL :: SYNTAX :: SEMANTICS :: OWL 2 :: REASONING :: TOOL SUPPORT Abstract Syntax DL Syntax

  22. Axioms and Facts (examples) INTRODUCTION :: OWL :: SYNTAX :: SEMANTICS :: OWL 2 :: REASONING :: TOOL SUPPORT E.g.1: Class Axioms, Class(ed:Person partial owl:Thing) Class(ed:Student partial ed:Person) Class(ed:Country partial owl:Thing) Class(ed:Italian complete ed:Person hasValue(ed:nationality ed:Italy)) E.g.3: Individual Axioms, Individual(ed:India type(ed:Country)) Individual(ed:Italy type(ed:Country)) Individual(ed:Fausto type(ed:Italian) value(ed:age “53”^^xsd:integer)) Individual(value(ed:nationality ed:India) value(ed:age “32”^^xsd:integer)) E.g.2: Property Axioms, DatatypeProperty(ed:age domain(ed:Person) range(xsd:integer)) ObjectProperty(ed:nationality domain(ed:Person) range(ed:Country) Note: For Classes, these Axioms consist of the name of the class being described, a modality of “partial” (indicating that the axiom is asserting a subclass), or “complete” (indicating that the axiom is asserting a equivalence relationships)

  23. Axioms and Facts INTRODUCTION :: OWL :: SYNTAX :: SEMANTICS :: OWL 2 :: REASONING :: TOOL SUPPORT • A Class Axioms specifies the • Name of the class being described • A modality of “partial”, or “complete” • A sequence of property restrictions • Names of more general classes

  24. Axioms and Facts INTRODUCTION :: OWL :: SYNTAX :: SEMANTICS :: OWL 2 :: REASONING :: TOOL SUPPORT • A Property axiom specifies the • Name of the property • Its various features • Individual Axiom specifies the • Name of the individual • Individual type • Object property and its value • Datatype property and data values • Identity of individuals

  25. Class Axioms : owl:disjointWith INTRODUCTION :: OWL :: SYNTAX :: SEMANTICS :: OWL 2 :: REASONING :: TOOL SUPPORT • Each owl:disjointWith statement asserts that the class extensions of the two class descriptions involved have no individuals in common • E.g., Student ⊓ Teacher ≡ ⊥ • “Student is disjoint with Teacher” • Axioms with rdfs:disjointWith declaring that two classes to be disjoint is a partial definition: it imposes a necessary but not sufficient condition on the class • Implications: • a reasoner can deduce an inconsistency when an individual, A is stated to be an instance of both • similarly, a reasoner can also deduce that if A is an instance of class Teacher, then A is not an instance of class Student • Important: use of owl:disjointWith is not allowed in OWL Lite

  26. Individuals Axioms INTRODUCTION :: OWL :: SYNTAX :: SEMANTICS :: OWL 2 :: REASONING :: TOOL SUPPORT • Individuals are defined with individual axioms (also called "facts”), • Facts about class membership and property values of individuals, Individual(ed:John type(ed:Student) value(ed:learningStyle ed:concrete-generic) value(vcard:FN “John Smith”^^xsd:string) value(stu:age “32”^^xsd:integer)) • Facts about individual identity • OWL does not make unique name assumption • OWL provides three constructs for stating facts about the identity of individuals: owl:sameAs, owl:differentFrom, owl:AllDifferent

  27. Special Properties INTRODUCTION :: OWL :: SYNTAX :: SEMANTICS :: OWL 2 :: REASONING :: TOOL SUPPORT • owl:TransitiveProperty (transitive property) • E.g. “has better grade than”, “is ancestor of” • owl:SymmetricProperty (symmetry) • E.g. “has same grade as”, “is sibling of” • owl:FunctionalProperty defines a property that has at most one value for each object • E.g. “age”, “height”, “directSupervisor” • owl:InverseFunctionalProperty defines a property for which two different objects cannot have the same value Important: Not all of these can be specified for a particular object property as to retain the decidability of OWL DL properties (e.g., an object property specified as transitive, and their super-properties and their inverses cannot have their cardinality restricted, either via a functional part of property axioms or in cardinality restrictions) 27

  28. Datatypes INTRODUCTION :: OWL :: SYNTAX :: SEMANTICS :: OWL 2 :: REASONING :: TOOL SUPPORT • OWL supports XML Schemaprimitive datatypes • E.g., integer, real, string, … • Strict separationbetween “object” classes and datatypes

  29. Namespace INTRODUCTION :: OWL :: SYNTAX :: SEMANTICS :: OWL 2 :: REASONING :: TOOL SUPPORT • Starts with a set of XML namespace declarations enclosed in an opening rdf:RDF tag • Provide a means to unambiguously interpret identifiers and make the rest of the ontology presentation much more readable • OWL depends on constructs defined by RDF, RDFS, and XML Schema datatypes <rdf:RDF xmlns="http://www.disi.unitn.it/student#" xmlns:stu=“http://www.disi.unitn.it/student#” xmlns:base=“http://www.disi.unitn.it/student#” xmlns:doc=“http://www.disi.unitn.it/document#” xmlns:owl ="http://www.w3.org/2002/07/owl#" xmlns:rdf ="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#" xmlns:xsd ="http://www.w3.org/2001/XLMSchema#” >

  30. Namespace INTRODUCTION :: OWL :: SYNTAX :: SEMANTICS :: OWL 2 :: REASONING :: TOOL SUPPORT • As an aid to writing lengthy URLs, it useful to provide a set of entity definitions in a document type declaration (DOCTYPE) that precedes the ontology definitions <!DOCTYPE rdf:RDF [ <!ENTITY stu "http://www.disi.unitn.it/student#" > <!ENTITY doc "http://www.disi.unitn.it/student#" > …………. ]> <rdf:RDF xmlns ="&stu;" xmlns:stu ="&stu;" xml:base ="&stu;" xml:doc ="&doc;” … >

  31. Namespace INTRODUCTION :: OWL :: SYNTAX :: SEMANTICS :: OWL 2 :: REASONING :: TOOL SUPPORT • Advantage of DOCTYPE • changes made to the entity declarations will propagate through the ontology consistently • Allows referring ontology identifiers using attribute values • <owl:Class rdf:about="&stu;Qualification"/>, where, “&stu:Student” can be written in its expanded form as, http://www.disi.unitn.it/student#Qualification" • Important: The names defined by the namespace declarations only have significance as parts of XML tags

  32. Header INTRODUCTION :: OWL :: SYNTAX :: SEMANTICS :: OWL 2 :: REASONING :: TOOL SUPPORT • An OWL ontology may start (after the namespace inclusion) with a collection of assertions for housekeeping purposes using owl:Ontology element <owl:Ontology rdf:about=""> <rdfs:comment>A educational OWL ontology</rdfs:comment> <owl:priorVersion rdf:resource="http://disi.unitn.it/course-ontology-26092010”/> <owl:imports rdf:resource=“http://drtc.isibang.ac.in/education/course”/> <rdfs:label>Educational ontology</rdfs:label> … </owl:Ontology> A complete OWL DL example (Demo)

  33. Semantics INTRODUCTION :: OWL :: SYNTAX :: SEMANTICS :: OWL 2 :: REASONING :: TOOL SUPPORT • Provides well defined semantics very similar to the semantics provided for DL • OWL Mapping to equivalent DL • OWL Lite closely corresponds to SHIF(D) • OWL DL closely corresponds to SHOIN(D) • However, what makes (???), OWL (specifically OWL DL) a SW language when semantics for this is very similar to the DL • Use of URI references for names • Use of XML Schema datatypes for data values • Allow the use of annotation properties • Frame-like abstract syntax • Ability to connect to documents in the Web 33

  34. OWL 2 INTRODUCTION :: OWL :: SYNTAX :: SEMANTICS :: OWL 2 :: REASONING :: TOOL SUPPORT Functional-Style Syntax ClassAssertion( :Person :Mary ) RDF/XML Syntax <Person rdf:about="Mary"/> Turtle Syntax :Mary rdf:type :Person . Manchester Syntax Individual: Mary Types: Person OWL/XML Syntax <ClassAssertion> <Class IRI="Person"/> <NamedIndividual IRI="Mary"/> </ClassAssertion> Structure of OWL 2

  35. OWL 2 (contd…2) INTRODUCTION :: OWL :: SYNTAX :: SEMANTICS :: OWL 2 :: REASONING :: TOOL SUPPORT • The ellipse in the center represents the abstract notion of an ontology, which can be thought of either as an abstract structure or as an RDF graph • At the top are various concrete syntaxes that can be used to serialize and exchange ontologies • At the bottom are the two semantic specifications that define the meaning of OWL 2 ontologies

  36. OWL 2 (contd…3) INTRODUCTION :: OWL :: SYNTAX :: SEMANTICS :: OWL 2 :: REASONING :: TOOL SUPPORT OWL 2 Ontology Structure

  37. INTRODUCTION :: OWL :: SYNTAX :: SEMANTICS :: OWL 2 :: REASONING :: TOOL SUPPORT OWL 2: Entities, Literals, and Anonymous Individuals

  38. OWL 2 DL vs. OWL 2 Full INTRODUCTION :: OWL :: SYNTAX :: SEMANTICS :: OWL 2 :: REASONING :: TOOL SUPPORT • There are two alternative ways of assigning meaning to ontologies in OWL 2: • the direct semantics (provides a meaning for OWL 2 in a Description Logics style); and • the RDF-Based Semantics (an extension of the semantics for RDFS and is based on viewing OWL 2 ontologies as RDF graphs) • The notion OWL 2 DL is used to refer to OWL 2 ontologies interpreted using the Direct Semantics • The notion OWL 2 Full is used when considering the RDF-Based Semantics

  39. OWL 2 DL vs. OWL 2 Full INTRODUCTION :: OWL :: SYNTAX :: SEMANTICS :: OWL 2 :: REASONING :: TOOL SUPPORT • OWL 2 DL is a syntactically restricted version of OWL 2 Full • the restrictions are designed to make life easier for implementors • OWL 2 Full (the RDF-Based Semantics) is undecidable • OWL 2 DL (under the direct model-theoretic semantics) is decidable, in principle, can return all "yes or no" answers (subject to resource constraints) possible • As a consequence of OWL 2 DL design, there are several production quality reasoners that cover the entire OWL 2 DL language under the direct model-theoretic semantics. There are no such reasoners for OWL 2 Full under the RDF-Based Semantics. • OWL 2 Full is the most straightforward extension of RDFS • the RDF-Based Semantics for OWL 2 Full follows the RDFS semantics and general syntactic philosophy (i.e., everything is a triple and the language is fully reflective) [See next slide for an example]

  40. OWL 2 DL vs. OWL 2 Full (contd…) INTRODUCTION :: OWL :: SYNTAX :: SEMANTICS :: OWL 2 :: REASONING :: TOOL SUPPORT • One design goal of OWL 2 was to bring OWL 2 DL syntactically closer to OWL 2 Full (i.e., to allow more RDF Graphs/OWL 2 Full ontologies to be legal OWL 2 DL ontologies) • This led to the incorporation of so-called punning into OWL 2 • e.g., using the same IRI as a name for both a class and an individual • An example of such usage would be the following, which states that John is a father, and that father is a social role • <Father rdf:about="John"/> [Father is used as a class] • <SocialRole rdf:about="Father"/> [Father is used as an individual. In this case, SocialRole acts as a metaclass for the class Father] • Note: for interpretation of this example in context of OWL 1, see next slide

  41. OWL 2 vs. OWL 1 INTRODUCTION :: OWL :: SYNTAX :: SEMANTICS :: OWL 2 :: REASONING :: TOOL SUPPORT • In OWL 1, a document containing these two statements (see previous slide) would be an OWL 1 Full document, but not an OWL 1 DL document • In OWL 2 DL, this is allowed • It must be noted, though, that the direct model-theoretic semantics of OWL 2 DL accommodates this by understanding the class Father and the individual Father as two different views on the same IRI, i.e. they are interpreted semantically as if they were distinct

  42. OWL 2 vs. OWL 1 (contd…2) INTRODUCTION :: OWL :: SYNTAX :: SEMANTICS :: OWL 2 :: REASONING :: TOOL SUPPORT • OWL 2 has a very similar overall structure to OWL 1 • Almost all the building blocks of OWL 2 were present in OWL 1, even thoguh possibly under different names • The central role of RDF/XML, the role of other syntaxes, and the relationships between the Direct and RDF-Based semantics (i.e., the correspondence theorem) have not changed • Backwards compatibility with OWL 1 is, to all intents and purposes, complete • Important: all OWL 1 Ontologies remain valid OWL 2 Ontologies

  43. OWL 2 vs. OWL 1 (contd…3) INTRODUCTION :: OWL :: SYNTAX :: SEMANTICS :: OWL 2 :: REASONING :: TOOL SUPPORT • OWL 2 adds some new functionality with respect to OWL 1. Some of the new features are: • Keys (identification of individuals of a given class by values of (a set of) key properties); • Inclusion of property chains (allows a property to be defined as the composition of several properties, e.g., hasGrandParent , i.e., hasParent hasParent) • Property characteristics (e.g., reflexive, irreflexive, disjoint property) • advanced use of cardinality restrictions (e.g., inclusion, exclusion); • complex classes (e.g., UniTnStudent isEquvalentOf two atomic classes: Masters or PhD); • Addition of new OWL constructors (object property, data property) • advanced use of datatypes, (e.g., data ranges, type extension); • enumeration of individuals (named individuals and anonymous individuals); • some of the restrictions applicable to OWL DL have been relaxed; as a result, the set of RDF Graphs that can be handled by Description Logics reasoners is slightly larger in OWL 2 • OWL 2 defines 3 new profiles (sub-languages): OWL 2 EL, OWL 2 QL and OWL 2 RL

  44. OWL 2 EL INTRODUCTION :: OWL :: SYNTAX :: SEMANTICS :: OWL 2 :: REASONING :: TOOL SUPPORT • It enables polynomial time algorithms for all the standard reasoning tasks; • Particularly suitable for applications where very large ontologies are needed; and • Suitable where expressive power can be traded for performance guarantees • Important*: Description Logics (DL) EL allows for conjunction (intersection) and full existential restrictions (instead of value restrictions as seen in FL0, a sub-language of FL- which is obtained by disallowing limited existential quantification) *Franz Baader, Sebastian Brandt, and Carsten Lutz.. Pushing the EL Envelope. In Proc. of the 19th Joint Int. Conf. on Artificial Intelligence (IJCAI 2005), 2005

  45. OWL 2 QL INTRODUCTION :: OWL :: SYNTAX :: SEMANTICS :: OWL 2 :: REASONING :: TOOL SUPPORT • It enables conjunctive queries to be answered in LogSpace (precisely, AC0) using standard relational database technology; • Particularly suitable for applications where relatively lightweight ontologies are used to organize large numbers of individuals; and • Suitable where it is useful or necessary to access the data directly via relational queries (e.g., SQL).

  46. OWL 2 RL INTRODUCTION :: OWL :: SYNTAX :: SEMANTICS :: OWL 2 :: REASONING :: TOOL SUPPORT • It enables the implementation of polynomial time reasoning algorithms using rule-extended database technologies operating directly on RDF triples; • Particularly suitable for applications where relatively lightweight ontologies are used to organize large numbers of individuals; and • Suitable where it is useful or necessary to operate directly on data in the form of RDF triples • Important: any OWL 2 EL, QL or RL ontology is, also an OWL 2 ontology

  47. Reasoning INTRODUCTION :: OWL :: SYNTAX :: SEMANTICS :: OWL 2 :: REASONING :: TOOL SUPPORT • Reasoning about Knowledge in Ontology • Significance of reasoning: • checking consistency of the ontology and the knowledge • checking for unintended relationships between classes • automatically classifying instances in classes 34

  48. Reasoning INTRODUCTION :: OWL :: SYNTAX :: SEMANTICS :: OWL 2 :: REASONING :: TOOL SUPPORT • Consistency • x is an instance of classes A and B, but A and B are disjoint • This is an indication of an error in the ontology • Classification • Certain property-value pairs are a sufficient condition for membership in a class A; if an individual x satisfies such conditions, we can conclude that x must be an instance of A • Class membership • If x is an instance of a class C, and C is a subclass of D, then we can infer that x is an instance of D • Equivalence of classes • If class A is equivalent to class B, and class B is equivalent to class C, then A is equivalent to C 35

  49. Tool Support for OWL INTRODUCTION :: OWL :: SYNTAX :: SEMANTICS :: OWL 2 :: REASONING :: TOOL SUPPORT • Ontology editors • Protege (http://protege.stanford.edu/) • OilEd (http://oiled.man.ac.uk/) • NeOn – Toolkit (http://neon-toolkit.org/wiki/Main_Page) • ... • APIs • OWL-API (http://owlapi.sourceforge.net) • Jena (http://jena.sourceforge.net) • … • OWL makes use of the reasoners such as, • FaCT++ (http://owl.man.ac.uk/factplusplus/) • Pellet (http://clarkparsia.com/pellet/) • KAON2 (http://kaon2.semanticweb.org/) • HermiT (http://hermit-reasoner.com/) • …

  50. Further Readings • OWL Web Ontology Language Semantics and Abstract Syntax. http://www.w3.org/TR/2004/REC-owl-semantics-20040210/ • Horrocks, I., Patel-Schneider, Peter F., McGuinness, D. L., and Welty, C. A. OWL: a description logic based ontology language for the semantic web. Deborah L. McGuinness and Peter F. Patel-Schneider. From Description Logic Provers to Knowledge Representation Systems. In The Description Logic Handbook: Theory, Implementation and Applications, ed. Franz Baader, Diego Calvanese, Deborah L. McGuinness, Daniele Nardi, and Peter F. Patel-Schneider. Cambridge University Press, 2nd edition, August 2007, pp. 458--486. • Antoniou, G. and Harmelen, F. V. A semantic web primer. http://www.emu.edu.tr/aelci/Courses/D-588/MIT.Press.A.Semantic.Web.Primer.eBook-TLFeBOOK.pdf • http://www.w3.org/TR/2004/REC-owl-guide-20040210/ • http://www.w3.org/TR/owl2-overview/ • http://www.w3.org/TR/2009/REC-owl2-primer-20091027/ • http://www.w3.org/TR/2009/REC-owl2-quick-reference-20091027/ • http://www.w3.org/TR/2009/REC-owl2-syntax-20091027/ • http://www.w3.org/TR/2009/REC-owl2-new-features-20091027/

More Related