web ontology language owl
play

Web Ontology Language (OWL) Need meaning beyond an object-oriented - PowerPoint PPT Presentation

Web Ontology Language Web Ontology Language (OWL) Need meaning beyond an object-oriented type system RDF (with RDFS) captures the basics, approximating an object-oriented type system OWL provides some of the rest OWL standardizes


  1. Web Ontology Language Web Ontology Language (OWL) ◮ Need meaning beyond an object-oriented type system ◮ RDF (with RDFS) captures the basics, approximating an object-oriented type system ◮ OWL provides some of the rest ◮ OWL standardizes constructs to capture such subtleties of meaning ◮ OWL builds on RDF, by limiting it ◮ Limiting syntax ◮ Limiting possible interpretations ◮ OWL assigns standard semantics to new terms Munindar P. Singh (NCSU) Service-Oriented Computing Fall 2017 93

  2. Web Ontology Language OWL in Brief ◮ Specifies classes and properties in description logic (DL) ◮ Class operators analogous to Boolean operators and, not, and or ◮ Constraints on properties: transitive, . . . ◮ Restrictions: constructs unique to DL ◮ OWL 1 has “Species” or Dialects ◮ OWL Full ◮ OWL DL ◮ OWL Lite Munindar P. Singh (NCSU) Service-Oriented Computing Fall 2017 94

  3. Web Ontology Language Custom Metadata Vocabularies ◮ Metadata for services and information resources presupposes custom vocabularies ◮ Need standard semantics for the metadata to remove ambiguity despite heterogeneity < Mammal r d f : ID=’Mary’/ > < Mammal r d f : ID=’John ’ > < hasParent r d f : r e s o u r c e=’#Mary’/ > < /Mammal > Munindar P. Singh (NCSU) Service-Oriented Computing Fall 2017 95

  4. Web Ontology Language Ontologies to Define Vocabulary Semantics Example of a trivial ontology defining our vocabulary ◮ Uses simple subclasses and properties ◮ Disjointness goes beyond RDF ◮ Object properties refine RDF properties; relate two objects < o w l : C l a s s r d f : I D=”Mammal” > < r d f s : s u b C l a s s O f r d f : r e s o u r c e=”#Animal ”/ > < o w l : d i s j o i n t W i t h r d f : r e s o u r c e=”#R e p t i l e ”/ > < / o w l : C l a s s > < o w l : O b j e c t P r o p e r t y r d f : I D=” hasParent ” > < r d f s : d o m a i n r d f : r e s o u r c e=”#Animal ”/ > < r d f s : r a n g e r d f : r e s o u r c e=”#Animal ”/ > < / o w l : O b j e c t P r o p e r t y > Munindar P. Singh (NCSU) Service-Oriented Computing Fall 2017 96

  5. Web Ontology Language Simple Inference Find a model, if any exists ◮ Given the definition for the property hasParent and the snippet < owl : Thing r d f : ID=”Fido” > < hasParent r d f : r e s o u r c e=”#Rover”/ > < /owl : Thing > we can infer that Fido is an Animal Munindar P. Singh (NCSU) Service-Oriented Computing Fall 2017 97

  6. Web Ontology Language OWL Entities and Relationships ◮ ◮ ◮ ◮ ◮ ◮ ◮ ◮ ◮ Munindar P. Singh (NCSU) Service-Oriented Computing Fall 2017 98

  7. Web Ontology Language Constructing OWL Classes ◮ Explicitly < owl : C l a s s r d f : ID=”Mammal” > < r d f s : subClassOf r d f : r e s o u r c e=”#Animal”/ > < owl : d i s j o i n t W i t h r d f : r e s o u r c e=”#R e p t i l e ”/ > < /owl : Class > ◮ Anonymously via formal expressions using operators analogous to set operators: intersectionOf, unionOf, complementOf < owl : C l a s s r d f : ID=’SugaryBread ’ > < owl : i n t e r s e c t i o n O f r d f : parseType =’ C o l l e c t i o n ’ > < owl : C l a s s r d f : about=’#Bread ’/ > < owl : C l a s s r d f : about=’#SweetFood ’/ > < /owl : i n t e r s e c t i o n O f > < /owl : Class > Munindar P. Singh (NCSU) Service-Oriented Computing Fall 2017 99

  8. Web Ontology Language Restrictions Conceptually A unique feature of description logics ◮ Analogous to division in arithmetic: define classes in terms of a restriction that they satisfy with respect to a given property ◮ Anonymous: typically included in a class def to enable referring them ◮ Key primitives are ◮ someValuesFrom a specified class ◮ allValuesFrom a specified class ◮ hasValue equal to a specified individual or data type ◮ minCardinality ◮ maxCardinality ◮ cardinality (when maxCardinality equals minCardinality) Munindar P. Singh (NCSU) Service-Oriented Computing Fall 2017 100

  9. Web Ontology Language Examples of Restrictions: 1 < owl : R e s t r i c t i o n > < owl : onProperty r d f : r e s o u r c e=”#hasFather”/ > < owl : m a x C a r d i n a l i t y r d f : datatype=”xsd : n o n N e g a t i v e I n t e g e r” > 1 < /owl : maxCardinality > < /owl : R e s t r i c t i o n > < owl : R e s t r i c t i o n > < owl : onProperty r d f : r e s o u r c e=’#bakes ’/ > < owl : someValuesFrom r d f : r e s o u r c e=’#Bread ’/ > < /owl : R e s t r i c t i o n > Munindar P. Singh (NCSU) Service-Oriented Computing Fall 2017 101

  10. Web Ontology Language Examples of Restrictions: 2 ◮ The maker of a Wine must be a Winery ◮ The allValuesFrom restriction is on the hasMaker property of this Wine class ◮ (Makers of other products such as cheese are not constrained by this local restriction) < owl : C l a s s r d f : ID=”Wine” > < r d f s : subClassOf r d f : r e s o u r c e=”&food ; P o t a b l e L i q u i d ” / > < r d f s : subClassOf > < owl : R e s t r i c t i o n > < owl : onProperty r d f : r e s o u r c e=”#hasMaker” / > < owl : allValuesFrom r d f : r e s o u r c e=”#Winery ” / > < /owl : R e s t r i c t i o n > < / r d f s : subClassOf > . . . < /owl : Class > Munindar P. Singh (NCSU) Service-Oriented Computing Fall 2017 102

  11. Web Ontology Language Axioms Conceptually Assertions that are given to be true ◮ Can be especially powerful in combination with other axioms, which may come from different documents ◮ Some primitives ◮ rdfs:subClassOf ◮ owl:equivalentClass Munindar P. Singh (NCSU) Service-Oriented Computing Fall 2017 103

  12. Web Ontology Language Examples of Axioms < owl : A l l D i f f e r e n t > < ! −− i n essence , pair − wise i n e q u a l i t i e s > < owl : distinctMembers r d f : parseType =’ C o l l e c t i o n ’ > < ex : Country r d f : ID=’ India ’/ > < ex : Country r d f : ID=’ Russia ’/ > < ex : Country r d f : ID=’USA’/ > < owl : distinctMembers/ > < /owl : A l l D i f f e r e n t > < ex : Country r d f : ID=’ Iran ’/ > < ex : Country r d f : ID=’ Persia ’ > < owl : s a m e I n d i v i d u a l A s r d f : r e s o u r c e=’#Iran ’/ > < /ex : Country > Munindar P. Singh (NCSU) Service-Oriented Computing Fall 2017 104

  13. Web Ontology Language Restrictions versus Axioms ◮ Axioms are global assertions that can be used as the basis for further inference ◮ Restrictions are constructors ◮ A restriction on hasFather of maxCardinality of 1 ◮ Does not mean all animals have zero or one fathers ◮ Means the class of animals who have zero or one fathers: this class may or may not have any instances ◮ Often, to achieve the desired effect, we would have to combine restrictions with axioms (such as based on equivalentClass), e.g., ◮ A restriction on hasFather of maxCardinality of 1 ◮ An axiom asserting this restriction is equivalent to Animal Munindar P. Singh (NCSU) Service-Oriented Computing Fall 2017 105

  14. Web Ontology Language Inference Like RDF, OWL is about meaning, not syntax ◮ Statements from different documents about the same URI are automatically conjoined ◮ OWL can be surprising to the uninitiated ◮ Integrity constraint: no one can have more than one mother ◮ Declare a fact: Mary is John’s mother ◮ Declare a fact: Jane is John’s mother ◮ What will you conclude? ◮ A traditional DBMS would declare an integrity violation ◮ An OWL reasoner would say Mary = Jane Munindar P. Singh (NCSU) Service-Oriented Computing Fall 2017 106

  15. Dialects Compared ◮ OWL DL ◮ Core dialect, includes DL primitives ◮ Not necessarily (but often) tractable ◮ OWL Lite ◮ Limits OWL DL constructs to ensure tractability ◮ No disjointWith, complementOf, unionOf, hasValue ◮ Enumeration (oneOf) ◮ intersectionOf only for two or more class names or restrictions ◮ equivalentClass: class names to names or restrictions ◮ rdfs:subClassOf: class names to names or restrictions ◮ allValuesFrom and someValuesFrom: to class names or datatype names ◮ rdf:type: to class names or restrictions ◮ rdf:domain: class names ◮ rdf:range: to class names or datatype names ◮ OWL Full ◮ Extremely general: allows all RDF syntax ◮ Potentially intractable (undecidable) ◮ Supports fancy expressiveness needs and introducing new concepts into the standard

  16. Web Ontology Language Expressiveness Limitations: 1 OWL DL cannot express some simple requirements ◮ Non-tree models: because instance variables are implicit in OWL restrictions, OWL cannot express conditions that require that two variables be identified ◮ Think of siblings—two people who have the same parents—but in terms of classes ◮ Do the same thing with class definitions Munindar P. Singh (NCSU) Service-Oriented Computing Fall 2017 108

  17. Web Ontology Language Expressiveness Limitations: 2 Specialized properties ◮ Cannot state that the child of a mammal must be a mammal and so on, without ◮ Defining new child properties for each class ◮ Adding an axiom for each class stating that it is a subClassOf the restriction of hasChild to itself ◮ Analogous to the problem in a strongly typed object-oriented language without generics ◮ You have to typecast the contents of a hash table or linked list Munindar P. Singh (NCSU) Service-Oriented Computing Fall 2017 109

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend