ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ, ΑΠΘ ΜΕΤΑΠΤΥΧΙΑΚΟ ΠΡΟΓΡΑΜΜΑ ΣΠΟΥΔΩΝ Κατεύθυνση Πληροφοριακών Συστημάτων - 1ο Εξάμηνο Σημασιολογικός Ιστός lpis.csd.auth.gr/mtpx/sw/index.htm Διδάσκων: Ν. Βασιλειάδης Αναπλ. Καθ. Τμ. Πληροφορικής ΑΠΘ Μαθήματα: 6b-7-8
Chapter 4 Web Ontology Language: OWL Grigoris Antoniou Frank van Harmelen
Chapter 4A Semantic Web Primer, 2nd Edition 4-3 Lecture Outline 1. Basic Ideas of OWL 2. The OWL Language 3. Examples 4. The OWL Namespace 5. Future Extensions
Chapter 4A Semantic Web Primer, 2nd Edition 4-4 Expressivity of RDF/RDFS The expressivity of RDF and RDF Schema is deliberately very limited – RDF is limited to binary ground predicates – RDF Schema is limited to a subclass hierarchy and a property hierarchy, with domain and range definitions of these properties The Web Ontology Working Group of W3C identified some characteristic use-cases for the Semantic Web that require much more expressiveness than RDF and RDF Schema.
Chapter 4A Semantic Web Primer, 2nd Edition 4-5 Need for More Powerful Language Researchers identified the need for a more powerful ontology modeling language. Initiative to define a richer language DAML+OIL – Join of the U.S. proposal DAML-ONT and the European language OIL DAML+OIL was the starting point for the definition of the language OWL – Aimed to be the standardized and broadly accepted ontology language of the Semantic Web
Chapter 4A Semantic Web Primer, 2nd Edition 4-6 Requirements for Ontology Languages Ontology languages allow users to write explicit, formal conceptualizations of domain models The main requirements are: – a well-defined syntax – efficient reasoning support – a formal semantics – sufficient expressive power – convenience of expression
Chapter 4A Semantic Web Primer, 2nd Edition 4-7 Well-Defined Syntax It is a necessary condition for machine- processing of information OWL builds upon RDF and RDFS and has the same kind of syntax The XML-based RDF syntax is not user-friendly – This drawback is not very significant because users will develop their ontologies using authoring or ontology development tools, instead of writing them directly in OWL.
Chapter 4A Semantic Web Primer, 2nd Edition 4-8 Formal Semantics A formal semantics describes precisely the meaning of knowledge. The semantics does not refer to subjective intuitions The semantics is not open to different interpretations by different people (or machines) One use of a formal semantics is to allow people to reason about the knowledge.
Chapter 4A Semantic Web Primer, 2nd Edition 4-9 Tradeoff between Expressive Power and Efficient Reasoning Support The richer the language is, the more inefficient the reasoning support becomes Sometimes it crosses the border of noncomputability We need a compromise: – A language supported by reasonably efficient reasoners – A language that can express large classes of ontologies and knowledge.
Chapter 4A Semantic Web Primer, 2nd Edition 4-10 Reasoning About Knowledge in Ontology Languages 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, too
Chapter 4A Semantic Web Primer, 2nd Edition 4-11 Reasoning About Knowledge in Ontology Languages (2) Consistency – X 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
Chapter 4A Semantic Web Primer, 2nd Edition 4-12 Uses for Reasoning Reasoning support is important for – checking the consistency of the ontology and the knowledge – checking for unintended relationships between classes – automatically classifying instances in classes Checks like the preceding ones are valuable for – designing large ontologies, where multiple authors are involved – integrating and sharing ontologies from various sources
Chapter 4A Semantic Web Primer, 2nd Edition 4-13 Reasoning Support for OWL Semantics is a prerequisite for reasoning support Formal semantics and reasoning support are usually provided by – mapping an ontology language to a known logical formalism – using automated reasoners that already exist for those formalisms OWL is (partially) mapped on a description logic, and makes use of reasoners such as FaCT and RACER Description logics are a subset of predicate logic for which efficient reasoning support is possible
Chapter 4A Semantic Web Primer, 2nd Edition 4-14 Limitations of the Expressive Power of RDF Schema Local scope of properties – rdfs:range defines the range of a property (e.g. eats) for all classes – In RDF Schema we cannot declare range restrictions that apply to some classes only – E.g. we cannot say that cows eat only plants, while other animals may eat meat, too
Chapter 4A Semantic Web Primer, 2nd Edition 4-15 Limitations of the Expressive Power of RDF Schema (2) Disjointness of classes – Sometimes we wish to say that classes are disjoint (e.g. male and female) Boolean combinations of classes – Sometimes we wish 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
Chapter 4A Semantic Web Primer, 2nd Edition 4-16 Limitations of the Expressive Power of RDF Schema (3) Cardinality restrictions – E.g. a person has exactly two parents, a course is taught by at least one lecturer Special characteristics of properties – Transitive property (like “greater than”) – Unique property (like “is mother of”) – A property is the inverse of another property (like “eats” and “is eaten by”)
Chapter 4A Semantic Web Primer, 2nd Edition 4-17 Combining OWL with RDF Schema Ideally, OWL would extend RDF Schema – Consistent with the layered architecture of the Semantic Web But simply extending RDF Schema would work against obtaining expressive power and efficient reasoning – Combining RDF Schema with logic leads to uncontrollable computational properties
Chapter 4A Semantic Web Primer, 2nd Edition 4-18 Three Species of OWL W3C’s Web Ontology Working Group defined OWL as 3 different sublanguages: – OWL Full – OWL DL – OWL Lite Each sublanguage geared toward fulfilling different aspects of requirements
Chapter 4A Semantic Web Primer, 2nd Edition 4-19 OWL Full It uses all the OWL languages primitives It allows the combination of these primitives in arbitrary ways with RDF and RDF Schema OWL Full is fully upward-compatible with RDF, both syntactically and semantically – Any legal RDF document is also a legal OWL Full document – Any valid RDF/RDF Schema conclusion is also a valid OWL Full conclusion OWL Full is so powerful that it is undecidable – No complete (or efficient) reasoning support
Chapter 4A Semantic Web Primer, 2nd Edition 4-20 OWL DL OWL DL (Description Logic) is a sublanguage of OWL Full that restricts application of the constructors from OWL and RDF – Application of OWL’s constructors to each other is disallowed – Therefore it corresponds to a well studied description logic OWL DL permits efficient reasoning support But we lose full compatibility with RDF: – Not every RDF document is a legal OWL DL document. – Every legal OWL DL document is a legal RDF document.
Chapter 4A Semantic Web Primer, 2nd Edition 4-21 OWL Lite An even further restriction limits OWL DL to a subset of the language constructors – E.g., OWL Lite excludes enumerated classes, disjointness statements, and arbitrary cardinality. The advantage of this is a language that is easier to – grasp, for users – implement, for tool builders The disadvantage is restricted expressivity
Chapter 4A Semantic Web Primer, 2nd Edition 4-22 Comparison of OWL Sublanguages Ontology developers adopting OWL should consider which sublanguage best suits their needs. Choice between OWL Lite - OWL DL: – Do we need the more expressive constructs provided by OWL DL? Choice between OWL DL - OWL Full: – Do we need the meta-modeling facilities of RDF Schema? – E.g. defining classes of classes, attaching properties to classes. – In OWL Full reasoning support is less predictable than OWL DL, because complete OWL Full implementations are impossible
Chapter 4A Semantic Web Primer, 2nd Edition 4-23 Upward Compatibility between OWL Species Every legal OWL Lite ontology is a legal OWL DL ontology Every legal OWL DL ontology is a legal OWL Full ontology Every valid OWL Lite conclusion is a valid OWL DL conclusion Every valid OWL DL conclusion is a valid OWL Full conclusion
Chapter 4A Semantic Web Primer, 2nd Edition 4-24 OWL Compatibility with RDF Schema All varieties of OWL use RDF for their syntax Instances are declared as in RDF, using RDF descriptions and typing information OWL constructors are specialisations of their RDF counterparts
Chapter 4A Semantic Web Primer, 2nd Edition 4-25 OWL Compatibility with RDF Schema (2) Semantic Web design aims at downward compatibility with corresponding reuse of software across the various layers – Any OWL-aware processor will also provide correct interpretations of any RDF Schema document. The advantage of full downward compatibility for OWL is only achieved for OWL Full, at the cost of computational intractability
Chapter 4A Semantic Web Primer, 2nd Edition 4-26 Lecture Outline 1. Basic Ideas of OWL 2. The OWL Language 3. Examples 4. The OWL Namespace 5. Future Extensions
Chapter 4A Semantic Web Primer, 2nd Edition 4-27 OWL Syntactic Varieties OWL builds on RDF and uses RDF’s XML- based syntax Other syntactic forms for OWL have also been defined: – An alternative, more readable XML-based syntax – An abstract syntax, that is much more compact and readable than the XML languages – A graphic syntax based on the conventions of UML
Chapter 4A Semantic Web Primer, 2nd Edition 4-28 OWL XML/RDF Syntax: Header <rdf:RDF xmlns:owl =" xmlns:rdf =" xmlns:rdfs=" xmlns:xsd =" > An OWL ontology may start with a collection of assertions for housekeeping purposes using owl:Ontology element
Chapter 4A Semantic Web Primer, 2nd Edition 4-29 owl:Ontology An example OWL ontology <owl:priorVersion rdf:resource=" <owl:imports rdf:resource=" University Ontology owl:imports is a transitive property
Abstract OWL Syntax Ontology( Annotation(rdfs:comment "An example OWL ontology") Annotation(rdfs:label "University Ontology") Annotation(owl:imports ) Chapter 4A Semantic Web Primer, 2nd Edition 4-30
Chapter 4A Semantic Web Primer, 2nd Edition 4-31 Imported Ontologies While namespaces are used for disambiguation purposes, imported ontologies provide definitions that can be used Usually there will be an import element for each namespace used, but it is possible to import additional ontologies
Chapter 4A Semantic Web Primer, 2nd Edition 4-32 Classes Classes are defined using owl:Class – owl:Class is a subclass of rdfs:Class <rdfs:subClassOf rdf:resource="#academicStaffMember"/>
Chapter 4A Semantic Web Primer, 2nd Edition 4-33 Class Disjointness Disjointness is defined using owl:disjointWith
Chapter 4A Semantic Web Primer, 2nd Edition 4-34 Class Equivalence owl:equivalentClass defines equivalence of classes <owl:equivalentClass rdf:resource="#academicStaffMember"/>
Abstract OWL Syntax Class(associateProfessor partial academicStaffMember) Class(professor partial) DisjointClasses(associateProfessor assistantProfessor) DisjointClasses(professor associateProfessor) Class(faculty complete academicStaffMember) Chapter 4A Semantic Web Primer, 2nd Edition 4-35
Chapter 4A Semantic Web Primer, 2nd Edition 4-36 owl:Thing and owl:Nothing Predefined classes owl:Thing is the most general class, which contains everything owl:Nothing is the empty class Εvery class is a subclass of owl:Thing and a superclass of owl:Nothing.
Chapter 4A Semantic Web Primer, 2nd Edition 4-37 Properties In OWL there are two kinds of properties Object properties, which relate objects to other objects – E.g. is-TaughtBy, supervises Data type properties, which relate objects to datatype values – E.g. phone, title, age, etc.
Chapter 4A Semantic Web Primer, 2nd Edition 4-38 Datatype Properties OWL makes use of XML Schema data types, using the layered architecture of the SW <rdfs:range rdf:resource=“&xsd;nonNegativeInteger”/>
Chapter 4A Semantic Web Primer, 2nd Edition 4-39 Object Properties User-defined data types <rdfs:range rdf:resource="#academicStaffMember"/>
Multiple domains/ranges More than 1domain and range may be declared The intersection of the domains (ranges) is taken. Chapter 4A Semantic Web Primer, 2nd Edition 4-40
Chapter 4A Semantic Web Primer, 2nd Edition 4-41 Inverse Properties <rdfs:domain rdf:resource="#academicStaffMember"/> Domain and range can be inherited from the inverse property – Interchange domain with range.
Chapter 4A Semantic Web Primer, 2nd Edition 4-42 Equivalent Properties <owl:equivalentProperty rdf:resource="#teaches"/>
Abstract OWL Syntax DatatypeProperty(age range(xsd:nonNegativeInteger)) ObjectProperty(isTaughtBy domain(course) range(academicStaffMember)) SubPropertyOf(isTaughtBy involves) ObjectProperty(teaches inverseOf(isTaughtBy) domain(academicStaffMember) range(course)) ObjectProperty(lecturesIn) EquivalentProperties(lecturesIn teaches) Chapter 4A Semantic Web Primer, 2nd Edition 4-43
Chapter 4A Semantic Web Primer, 2nd Edition 4-44 Property Restrictions In OWL we can declare that the class C satisfies certain conditions – All instances of C satisfy the conditions This is equivalent to saying that C is subclass of a class C', where C' collects all objects that satisfy the conditions – C' can remain anonymous
Explanation of Restrictions If an object x belongs to a class C, then it satisfies the restriction R – x C R(x) – Necessary condition (if an object belongs to a class, then it necessarily satisfies the restriction) Let R be the class of all objects that satisfy R – This includes necessarily all objects of class C and possibly other objects – Thus, C R (C subclass of R) Chapter 4A Semantic Web Primer, 2nd Edition 4-45
Explanation of Restrictions (2) If class R includes objects ONLY of class C, this means that there are not objects that satisfy the restriction other than objects of class C – Classes R and C contain exactly the same objects – They are equivalent (C≡R C R R C) Additional condition: If an object x belongs to a class R (i.e. it satisfies the restriction R), then it must belong to class C (since C and R are equivalent) – R(x) x C – Sufficient condition (if an object satisfies the restriction, then this is sufficient to belong to the class) Chapter 4A Semantic Web Primer, 2nd Edition 4-46
Chapter 4A Semantic Web Primer, 2nd Edition 4-47 Property Restrictions (2) A (restriction) class is achieved through an owl:Restriction element This element contains an owl:onProperty element and one or more restriction declarations One type of restriction declarations defines cardinality restrictions (at least 1, at most 3, etc.)
Chapter 4A Semantic Web Primer, 2nd Edition 4-48 Property Restrictions (3) The other type defines restrictions on the kinds of values the property may take – owl:allValuesFrom specifies universal quantification – owl:hasValue specifies a specific value – owl:someValuesFrom specifies existential quantification
Chapter 4A Semantic Web Primer, 2nd Edition 4-49 owl:allValuesFrom First-year courses are taught by professors only
Chapter 4A Semantic Web Primer, 2nd Edition 4-50 owl:hasValue Mathematics courses are taught by David Billington
Chapter 4A Semantic Web Primer, 2nd Edition 4-51 owl:someValuesFrom All academic staff mem- bers must teach at least 1 undergraduate course
Chapter 4A Semantic Web Primer, 2nd Edition 4-52 Cardinality Restrictions We can specify minimum and maximum number using owl:minCardinality and owl:maxCardinality It is possible to specify a precise number by using the same minimum and maximum number For convenience, OWL offers also owl:cardinality
Chapter 4A Semantic Web Primer, 2nd Edition 4-53 Cardinality Restrictions (2) <owl:minCardinality rdf:datatype= "&xsd;nonNegativeInteger"> 1 Every course must be taught by at least someone
Chapter 4A Semantic Web Primer, 2nd Edition 4-54 Cardinality Restrictions (3) Α department must have at least 10 and at most 30 members
Chapter 4A Semantic Web Primer, 2nd Edition 4-55 Restriction Conclusions owl:Restriction defines an anonymous class – Has no ID – Is not defined by owl:Class – Has only local scope It can only be used where the restriction appears. Classes have a twofold meaning: – Classes, defined by owl:Class with an ID – Local anonymous classes, defined as collections of objects that satisfy restriction conditions, or as combinations of other classes Class expressions
Abstract OWL Syntax (1) Class(firstYearCourse partial restriction(isTaughtBy allValuesFrom (Professor))) Class(mathCourse partial restriction(isTaughtBy hasValue (949352))) Class(academicStaffMember partial restriction(teaches someValuesFrom (undergraduateCourse))) Chapter 4A Semantic Web Primer, 2nd Edition 4-56
Abstract OWL Syntax (2) Class(course partial restriction(isTaughtBy minCardinality(1))) Class(department partial restriction(hasMember minCardinality(10)) restriction(hasMember maxCardinality(30))) Chapter 4A Semantic Web Primer, 2nd Edition 4-57
Chapter 4A Semantic Web Primer, 2nd Edition 4-58 Special Properties 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 2 different objects cannot have the same value
Chapter 4A Semantic Web Primer, 2nd Edition 4-59 Special Properties (2) ObjectProperty(hasSameGradeAs Transitive Symmetric domain(student) range(student))
Functional Properties If a property is functional, for a given individual, there can only be at most one individual to be related via this property. – For a given domain, range must be unique Functional properties are also known as single valued properties. Chapter 4A Semantic Web Primer, 2nd Edition 4-60
Inverse Functional Properties If a property is inverse functional, then its inverse property is functional. – For a given range, domain must be unique. Chapter 4A Semantic Web Primer, 2nd Edition 4-61
Functional vs. inverse functional properties domainrangeexample Functional Property For a given domain Range is unique hasFather: A hasFather B, A hasFather C B=C InverseFunctional Property Domain is unique For a given range hasID: A hasID B, C hasID B A=C Chapter 4A Semantic Web Primer, 2nd Edition 4-62
Transitive Properties If a property is transitive, and the property related individual a to individual b, and also individual b to individual c, then we can infer that individual a is related to individual c via property P. Chapter 4A Semantic Web Primer, 2nd Edition 4-63
Symmetric Properties If a property P is symmetric, and the property relates individual a to individual b, then individual b is also related to individual a via property P. Chapter 4A Semantic Web Primer, 2nd Edition 4-64
Chapter 4A Semantic Web Primer, 2nd Edition 4-65 Boolean Combinations We can combine classes using Boolean operations (union, intersection, complement) <owl:complementOf rdf:resource="#staffMember"/> Courses and staff members are disjoint staffMember __________ staffMember course
Alternative expression <owl:disjointWith rdf:resource="#staffMember"/> Actually, owl:complementOf is a sub-property of owl:disjointWith – Whenever two classes are complement of each other, they are definitely disjoint, but not the other way around Chapter 4A Semantic Web Primer, 2nd Edition 4-66
Example of complement with equivalence The complement of Male is “exactly” the class Female and vice-versa Chapter 4A Semantic Web Primer, 2nd Edition 4-67
Chapter 4A Semantic Web Primer, 2nd Edition 4-68 Boolean Combinations (2) The new class is not a subclass of the union, but rather equal to the union – We have stated an equivalence of classes staffMemberstudent peopleAtUni
Chapter 4A Semantic Web Primer, 2nd Edition 4-69 Boolean Combinations (3) faculty belongsTo CSDepartment facultyInCS
Chapter 4A Semantic Web Primer, 2nd Edition 4-70 Nesting of Boolean Operators Administrative staff is those staff members that are neither faculty nor technical support staff
Illustration of Nesting of Boolean Operators Chapter 4A Semantic Web Primer, 2nd Edition 4-71 staffMember techSup- portStaff faculty unionOf _______ unionOf adminStaff
Abstract OWL Syntax (1) Class(course partial complementOf(staffMember)) Class(peopleAtUni complete unionOf(staffMember student)) Class(facultyInCS complete intersectionOf(faculty restriction(belongsTo hasValue (CSDepartment)))) Chapter 4A Semantic Web Primer, 2nd Edition 4-72
Abstract OWL Syntax (2) Class(adminStaff complete intersectionOf(staffMember complementOf(unionOf(faculty techSupportStaff ) Chapter 4A Semantic Web Primer, 2nd Edition 4-73
Chapter 4A Semantic Web Primer, 2nd Edition 4-74 Enumerations with owl:oneOf Define a class by listing all its elements
Abstract OWL Syntax EnumeratedClass(weekdays Monday Tuesday Wednesday Thursday Friday Saturday Sunday) Chapter 4A Semantic Web Primer, 2nd Edition 4-75
Chapter 4A Semantic Web Primer, 2nd Edition 4-76 Declaring Instances Instances of classes are declared as in RDF: 39
Chapter 4A Semantic Web Primer, 2nd Edition 4-77 No Unique-Names Assumption OWL does not adopt the unique-names assumption of database systems – If two instances have a different name or ID does not imply that they are different individuals Suppose we state that each course is taught by at most one staff member, and that a given course is taught by two staff members – An OWL reasoner does not flag an error – Instead it infers that the two resources are equal
No Unique-Names Assumption Example Chapter 4A Semantic Web Primer, 2nd Edition 4-78
Chapter 4A Semantic Web Primer, 2nd Edition 4-79 Distinct Objects To ensure that different individuals are indeed recognized as such, we must explicitly assert their inequality:
Chapter 4A Semantic Web Primer, 2nd Edition 4-80 Distinct Objects (2) OWL provides a shorthand notation to assert the pairwise inequality of all individuals in a given list
owl:sameAs Links an individual to an individual. – Indicates that two URI references actually refer to the same thing: the individuals have the same "identity". For individuals such as "people" this notion is relatively easy to understand. – E.g. the following 2 URIs actually refer to the same person A Semantic Web Primer, 2nd Edition 4-81 Chapter 4
Use of owl:sameAs (1/2) owl:sameAs statements can be used to define mappings between ontologies. It is unrealistic to assume everybody will use the same name to refer to individuals. – That would require some “grand design”, which is contrary to the spirit of the web. In OWL Full, where classes can be treated as instances, we can use owl:sameAs to define class equality – Two concepts have the same intentional meaning. A Semantic Web Primer, 2nd Edition 4-82 Chapter 4
Use of owl:sameAs (2/2) This could be part of a European sports ontology. – The two classes are treated as individuals, instances of owl:Class. – This allows to state that FootballTeam in some European sports ontology denotes the same concept as SoccerTeam in some American sports ontology. There is difference with the statement: – States that the 2 classes have the same class extension, but are not (necessarily) the same concepts. A Semantic Web Primer, 2nd Edition 4-83 Chapter 4
Abstract OWL Syntax Individual( type(academicStaffMember)) Individual( type(academicStaffMember) value(age "39"^^&xsd;integer)) ObjectProperty(isTaughtBy Functional) Individual(CIT1111 type(course) value(isTaughtBy ) value(isTaughtBy )) Individual( type(lecturer)) DifferentIndividuals( ) DifferentIndividuals( ) SameIndividual(William_Jefferson_Clinton BillClinton) Chapter 4A Semantic Web Primer, 2nd Edition 4-84
Chapter 4A Semantic Web Primer, 2nd Edition 4-85 Data Types in OWL XML Schema provides a mechanism to construct user-defined data types – E.g., the data type of adultAge includes all integers greater than 18 Derived data types cannot be used in OWL 1 – The OWL reference document lists all the XML Schema data types that can be used – These include the most frequently used types such as string, integer, Boolean, time, and date.
Chapter 4A Semantic Web Primer, 2nd Edition 4-86 Versioning Information owl:priorVersion indicates earlier versions of the current ontology – No formal meaning, can be exploited for ontology management owl:versionInfo generally contains a string giving information about the current version, e.g. keywords
Chapter 4A Semantic Web Primer, 2nd Edition 4-87 Versioning Information (2) owl:backwardCompatibleWith contains a reference to another ontology – All identifiers from the previous version have the same intended interpretations in the new version – Documents can be safely changed to commit to the new version owl:incompatibleWith indicates that the containing ontology is a later version of the referenced ontology but is not backward compatible with it
Chapter 4A Semantic Web Primer, 2nd Edition 4-88 Combination of Features In different OWL languages there are different sets of restrictions regarding the application of features In OWL Full, all the language constructors may be used in any combination as long as the result is legal RDF
Chapter 4A Semantic Web Primer, 2nd Edition 4-89 Restriction of Features in OWL DL Vocabulary partitioning Any resource is allowed to be only a class, a data type, a data type property, an object property, an individual, a data value, or part of the built-in vocabulary, and not more than one of these – E.g. a class cannot at the same time be an individual A property cannot have some values from a data type and some values from a class – This would make it both a data type property and an object property
Chapter 4A Semantic Web Primer, 2nd Edition 4-90 Restriction of Features in OWL DL Explicit typing The partitioning of all resources must be stated explicitly – E.g., if an ontology contains the following this already entails that C2 is a class – Nevertheless, an OWL DL ontology must explicitly state this information:
Chapter 4A Semantic Web Primer, 2nd Edition 4-91 Restriction of Features in OWL DL Property Separation The set of object properties and data type properties are disjoint The following can never be specified for data type properties: owl:inverseOf owl:InverseFunctionalProperty owl:SymmetricProperty owl:TransitiveProperty
Chapter 4A Semantic Web Primer, 2nd Edition 4-92 Restriction of Features in OWL DL (4) No transitive cardinality restrictions – No cardinality restrictions may be placed on transitive properties Restricted anonymous classes: Anonymous classes are only allowed to occur as: – the domain and range of either owl:equivalentClass or owl:disjointWith – the range (but not the domain) of rdfs:subClassOf
Explanation of Transitive Properties and Cardinality Restriction Let class Employee and transitive property supervisor, such that: ObjectProperty(supervisor Transitive domain(Employee) range(Employee)) Restriction: each employee has only 1 supervisor Class(Employee partial restriction(supervisor maxCardinality(1))) Transitive means that: Supervisor(?x,?y) Supervisor(?y,?z) Supervisor(?x,?z) Chapter 4A Semantic Web Primer, 2nd Edition 4-93
Chapter 4A Semantic Web Primer, 2nd Edition 4-94 Restriction of Features in OWL Lite Restrictions of OWL DL and more Not allowed: owl:oneOf, owl:disjointWith, owl:unionOf, owl:complementOf, owl:hasValue Cardinality statements (minimal, maximal, exact) can only be made on the values 0 or 1 owl:equivalentClass statements can no longer be made between anonymous classes but only between class identifiers
Chapter 4A Semantic Web Primer, 2nd Edition 4-95 Lecture Outline 1. Basic Ideas of OWL 2. The OWL Language 3. Examples 4. The OWL Namespace 5. Future Extensions
Chapter 4A Semantic Web Primer, 2nd Edition 4-96 An African Wildlife Ontology – Class Hierarchy
Chapter 4A Semantic Web Primer, 2nd Edition 4-97 An African Wildlife Ontology – Schematic Representation Βranches are parts of trees
Chapter 4A Semantic Web Primer, 2nd Edition 4-98 An African Wildlife Ontology - Header <rdf:RDF xmlns:rdf=" xmlns:rdfs=" xmlns:owl =" xmlns=" My example version 1.2, 17 October 2002
Chapter 4A Semantic Web Primer, 2nd Edition 4-99 An African Wildlife Ontology – Animals, Plants and Trees Plants are disjoint from animals. Trees are a type of plant.
Chapter 4A Semantic Web Primer, 2nd Edition An African Wildlife Ontology – Properties
Chapter 4A Semantic Web Primer, 2nd Edition An African Wildlife Ontology – Branches Branches are parts of trees.
Chapter 4A Semantic Web Primer, 2nd Edition An African Wildlife Ontology – Leaves Leaves are parts of branches
Chapter 4A Semantic Web Primer, 2nd Edition An African Wildlife Ontology – Carnivores Carnivores are exactly those animals that eat also animals.
Chapter 4A Semantic Web Primer, 2nd Edition An African Wildlife Ontology – Herbivores …
Chapter 4A Semantic Web Primer, 2nd Edition An African Wildlife Ontology – Giraffes Giraffes are herbivores, and they eat only leaves.
Chapter 4A Semantic Web Primer, 2nd Edition An African Wildlife Ontology – Giraffes Why couldn’t we just use intersection instead?
An African Wildlife Ontology – Giraffes Chapter 4A Semantic Web Primer, 2nd Edition herbivores Animals that eat leaves giraffes There are more herbivore animals that eat leaves, too. Not only Giraffes!
Chapter 4A Semantic Web Primer, 2nd Edition An African Wildlife Ontology – Lions Lions are animals that eat only herbivores.
Chapter 4A Semantic Web Primer, 2nd Edition An African Wildlife Ontology – Tasty Plants (1) Plants eaten both by herbivores and carnivores
Chapter 4A Semantic Web Primer, 2nd Edition An African Wildlife Ontology – Tasty Plants (2)
Chapter A Printer Ontology – Class Hierarchy
Chapter 4A Semantic Web Primer, 2nd Edition A Printer Ontology – Products and Devices Products form a class. Printing and digital imaging devices form a subclass of products. Device
Chapter 4A Semantic Web Primer, 2nd Edition A Printer Ontology – HP Products Hewlett Packard
Chapter 4A Semantic Web Primer, 2nd Edition A Printer Ontology – Printers and Personal Printers Printers are printing and digital imaging devices. Printers for personal use form a subclass of printers.
Chapter 4A Semantic Web Primer, 2nd Edition A Printer Ontology – HP Printers HP printers are HP products and printers.
Chapter 4A Semantic Web Primer, 2nd Edition A Printer Ontology – LaserJet Printers Laser jet printers are exactly those printers that use laser jet printing technology. laser jet
Chapter 4A Semantic Web Primer, 2nd Edition A Printer Ontology – HP LaserJet Printers HP laser jet printers are HP productsand laser jet printers. <rdfs:subClassOf rdf:resource="#laserJetPrinter"/>
Chapter 4A Semantic Web Primer, 2nd Edition A Printer Ontology – HP LaserJet 1100 series (1) 1100series printers are HP laser jet printers with 8ppm printing speed and 600dpi printing resolution. 8ppm
Chapter 4A Semantic Web Primer, 2nd Edition A Printer Ontology – HP LaserJet 1100 series (2) 600dpi
Chapter 4A Semantic Web Primer, 2nd Edition A Printer Ontology – HP LaserJet 1100se Printers 1100se printers belong to the 1100 series and cost $
Chapter 4A Semantic Web Primer, 2nd Edition A Printer Ontology – Properties (1)
Chapter 4A Semantic Web Primer, 2nd Edition A Printer Ontology – Properties (2) <rdfs:range rdf:resource="&xsd;nonNegativeInteger"/>
Chapter 4A Semantic Web Primer, 2nd Edition A Printer Ontology – Properties (3)
Chapter 4A Semantic Web Primer, 2nd Edition Lecture Outline 1. Basic Ideas of OWL 2. The OWL Language 3. Examples 4. The OWL Namespace 5. Future Extensions
Chapter 4A Semantic Web Primer, 2nd Edition OWL in OWL We present a part of the definition of OWL in terms of itself The following captures some of OWL’s meaning in OWL – It does not capture the entire semantics – A separate semantic specification is necessary The URI of the OWL definition is defined as the default namespace
Chapter 4A Semantic Web Primer, 2nd Edition Classes of Classes (Metaclasses) The class of all OWL classes is itself a subclass of the class of all RDF Schema classes <rdfs:subClassOf rdf:resource="&rdfs;Class"/>
Chapter 4A Semantic Web Primer, 2nd Edition Classes of Classes (Metaclasses) – Thing and Nothing Thing is most general object class in OWL Nothing is most specific class: the empty object class The following relationships hold:
Chapter 4A Semantic Web Primer, 2nd Edition Classes of Classes (Metaclasses) – Thing and Nothing (2)
Chapter 4A Semantic Web Primer, 2nd Edition Class and Property Equivalences <rdfs:subPropertyOf rdf:resource="&rdfs;subClassOf"/> <rdfs:subPropertyOf rdf:resource="&rdfs;subPropertyOf"/>
Chapter 4A Semantic Web Primer, 2nd Edition Class Disjointness
Chapter 4A Semantic Web Primer, 2nd Edition Equality and Inequality Equality and inequality can be stated between arbitrary things – In OWL Full this statement can also be applied to classes Properties sameAs and differentFrom
Chapter 4A Semantic Web Primer, 2nd Edition Equality and Inequality (2)
Chapter 4A Semantic Web Primer, 2nd Edition Equality and Inequality (3) owl:distinctMembers can only be used for owl:AllDifferent
Chapter 4A Semantic Web Primer, 2nd Edition Union and Intersection of Classes Build a class from a list, assumed to be a list of other class expressions
Chapter 4A Semantic Web Primer, 2nd Edition Complement of a Class owl:complementOf defines a class in terms of a single other class
Chapter 4A Semantic Web Primer, 2nd Edition Restriction Classes Restrictions in OWL define the class of those objects that satisfy some attached conditions
Chapter 4A Semantic Web Primer, 2nd Edition Restriction Properties All the following properties (onProperty, allValuesFrom, minCardinality, etc.) are only allowed to occur within a restriction definition Their domain is owl:Restriction, but they differ with respect to their range
Chapter 4A Semantic Web Primer, 2nd Edition Restriction Properties (2)
Chapter 4A Semantic Web Primer, 2nd Edition Restriction Properties (3) <rdfs:range rdf:resource="&xsd;nonNegativeInteger"/>
Chapter 4A Semantic Web Primer, 2nd Edition Properties owl:ObjectProperty and owl:DatatypeProperty are special cases of rdf:Property <rdfs:subClassOf rdf:resource="&rdf;Property"/>
Chapter 4A Semantic Web Primer, 2nd Edition Properties (2) Symmetric, functional and inverse functional properties can only be applied to object properties <rdfs:subClassOf rdf:resource="#ObjectProperty"/>
Chapter 4A Semantic Web Primer, 2nd Edition Properties (3) owl:inverseOf relates two object properties: <rdfs:domain rdf:resource="#ObjectProperty"/> <rdfs:range rdf:resource="#ObjectProperty"/>
Chapter 4A Semantic Web Primer, 2nd Edition Implicit Statements Although not stated in the online references, the following would also seem to be true
Chapter 4A Semantic Web Primer, 2nd Edition Implicit Statements (2)
Chapter 4A Semantic Web Primer, 2nd Edition Implicit Statements (3)
Chapter 4A Semantic Web Primer, 2nd Edition Lecture Outline 1. Basic Ideas of OWL 2. The OWL Language 3. Examples 4. The OWL Namespace 5. Future Extensions
Chapter 4A Semantic Web Primer, 2nd Edition Future Extensions of OWL Modules and Imports Defaults Closed World Assumption Unique Names Assumption Procedural Attachments Rules for Property Chaining
Chapter 4A Semantic Web Primer, 2nd Edition Modules and Imports The importing facility of OWL is very trivial: – It only allows importing of an entire ontology, not parts of it Modules in programming languages based on information hiding: state functionality, hide implementation details – Open question how to define appropriate module mechanism for Web ontology languages
Chapter 4A Semantic Web Primer, 2nd Edition Defaults Many practical knowledge representation systems allow inherited values to be overridden by more specific classes in the hierarchy – treat inherited values as defaults No consensus has been reached on the right formalization for the nonmonotonic behaviour of default values
Chapter 4A Semantic Web Primer, 2nd Edition Closed World Assumption OWL currently adopts the open-world assumption: – A statement cannot be assumed false on the basis of a failure to prove it – On the huge and only partially knowable WWW, this is a correct assumption Closed-world assumption: a statement is true when its negation cannot be proved – tied to the notion of defaults, leads to nonmonotonic behaviour
Chapter 4A Semantic Web Primer, 2nd Edition Unique Names Assumption Typical database applications assume that individuals with different names are indeed different individuals OWL follows the usual logical paradigm where this is not the case – Plausible on the WWW One may want to indicate portions of the ontology for which the assumption does or does not hold
Chapter 4A Semantic Web Primer, 2nd Edition Procedural Attachments A common concept in knowledge representation is to define the meaning of a term by attaching a piece of code to be executed for computing the meaning of the term – Not through explicit definitions in the language Although widely used, this concept does not lend itself very well to integration in a system with a formal semantics, and it has not been included in OWL
Chapter 4A Semantic Web Primer, 2nd Edition Rules for Property Chaining OWL does not allow the composition of properties for reasons of decidability – In many applications this is a useful operation – One may want to define properties as general rules (Horn or otherwise) over other properties Integration of rule-based and DL-style knowledge representation is currently an active area of research In OWL-2 this feature exists!
Chapter 4A Semantic Web Primer, 2nd Edition Summary OWL is the proposed standard for Web ontologies OWL builds upon RDF and RDF Schema: – (XML-based) RDF syntax is used – Instances are defined using RDF descriptions – Most RDFS modeling primitives are used
Chapter 4A Semantic Web Primer, 2nd Edition Summary (2) Formal semantics and reasoning support is provided through the mapping of OWL on logics – Predicate logic and description logics have been used for this purpose While OWL is sufficiently rich to be used in practice, extensions are in the making – They will provide further logical features, including rules