DAML+OIL Ontology Tutorial Chris Wroe, Robert Stevens (Sean Bechhofer, Carole Goble, Alan Rector, Ian Horrocks….) University of Manchester.

Slides:



Advertisements
Similar presentations
Ontologies and Databases Ian Horrocks Information Systems Group Oxford University Computing Laboratory.
Advertisements

Developing OWL Ontologies with Protégé 4
RDF Schemata (with apologies to the W3C, the plural is not ‘schemas’) CSCI 7818 – Web Technologies 14 November 2001 Van Lepthien.
An Introduction to RDF(S) and a Quick Tour of OWL
“Elephant Traps” Alan Rector with The Bio Health Informatics Group The CO-ODE Team University of Manchester With acknowledgements to Natsha Noy and the.
So What Does it All Mean? Geospatial Semantics and Ontologies Dr Kristin Stock.
Based on “A Practical Introduction to Ontologies & OWL” © 2005, The University of Manchester A Practical Introduction to Ontologies & OWL Session 3: Additional.
1 OWL Pizzas: Practical Experience of Teaching OWL-DL: Common Errors & Common Patterns Alan Rector 1, Nick Drummond 1, Matthew Horridge 1, Jeremy Rogers.
Protege Tutorial Based on ProtegeOWLTutorial at protege website.
Tutorial Le Phuoc Son Hoang Huu Hanh Hue University.
Of 27 lecture 7: owl - introduction. of 27 ece 627, winter ‘132 OWL a glimpse OWL – Web Ontology Language describes classes, properties and relations.
Ontologies - Design principles Cartic Ramakrishnan LSDIS Lab University of Georgia.
Protégé Classes, Properties and Instances Susana R. de Novoa UNIK4710.
1 CSC 9010 Spring, Paula MatuszekSome slides taken from
Coastal Atlas Interoperability - Ontologies (continued) Luis Bermudez Stephanie Watson Marine Metadata Interoperability Initiative 1.
The Semantic Web Week 14 Module Website: Lecture (SHORT): OWL PIZZAS Practical (LONGER): Getting to know Protégé-2000.
From SHIQ and RDF to OWL: The Making of a Web Ontology Language
GO Ontology Editing Workshop: Using Protege and OWL Hinxton Jan 2012.
Semantic Web Ontologies (continued) Expressing, Querying, Building CS 431 – April 6, 2005 Carl Lagoze – Cornell University.
Process Modeling SYSTEMS ANALYSIS AND DESIGN, 6 TH EDITION DENNIS, WIXOM, AND ROTH © 2015 JOHN WILEY & SONS. ALL RIGHTS RESERVED. 1 Roberta M. Roth.
BIS310: Week 7 BIS310: Structured Analysis and Design Data Modeling and Database Design.
Knowledge Representation Ontology are best delivered in some computable representation Variety of choices with different: –Expressiveness The range of.
Ontology Alignment/Matching Prafulla Palwe. Agenda ► Introduction  Being serious about the semantic web  Living with heterogeneity  Heterogeneity problem.
Protege OWL Plugin Short Tutorial. OWL Usage The world wide web is a natural application area of ontologies, because ontologies could be used to describe.
Of 39 lecture 2: ontology - basics. of 39 ontology a branch of metaphysics relating to the nature and relations of being a particular theory about the.
1 Making OWL Easier: Practical Ontology Development in using Protégé-OWL-CO-ODE Tools Alan Rector, Hai Wang, Jeremy Rogers with acknowledgement to Nick.
8/11/2011 Web Ontology Language (OWL) Máster Universitario en Inteligencia Artificial Mikel Egaña Aranguren 3205 Facultad de Informática Universidad Politécnica.
INF 384 C, Spring 2009 Ontologies Knowledge representation to support computer reasoning.
Ontologies for the Integration of Geospatial Data Michael Lutz Workshop: Semantics and Ontologies for GI Services, 2006 Paper: Lutz et al., Overcoming.
Concepts and Terminology Introduction to Database.
RDF and OWL Developing Semantic Web Services by H. Peter Alesso and Craig F. Smith CMPT 455/826 - Week 6, Day Sept-Dec 2009 – w6d21.
Building an Ontology of Semantic Web Techniques Utilizing RDF Schema and OWL 2.0 in Protégé 4.0 Presented by: Naveed Javed Nimat Umar Syed.
OWL 2 in use. OWL 2 OWL 2 is a knowledge representation language, designed to formulate, exchange and reason with knowledge about a domain of interest.
Definition of a taxonomy “System for naming and organizing things into groups that share similar characteristics” Taxonomy Architectures Applications.
BioHealth Informatics Group A Practical Introduction to Ontologies & OWL Session 2: Defined Classes and Additional Modelling Constructs in OWL Nick Drummond.
Umi Laili Yuhana December, Context Aware Group - Intelligent Agent Laboratory Computer Science and Information Engineering National Taiwan University.
Advanced topics in software engineering (Semantic web)
The ICPS: A taxonomy, a classification, an ontology or an information model? Stefan SCHULZ IMBI, University Medical Center, Freiburg, Germany.
Based on “A Practical Introduction to Ontologies & OWL” © 2005, The University of Manchester A Practical Introduction to Ontologies & OWL Session 2: Defined.
© O. Corcho, MC Suárez de Figueroa Baonza 1 OWL and SWRL Protégé 4: Building an OWL Ontology Mari Carmen Suárez-Figueroa, Oscar Corcho {mcsuarez,
DAML+OIL: an Ontology Language for the Semantic Web.
OilEd An Introduction to OilEd Sean Bechhofer. Topics we will discuss Basic OilEd use –Defining Classes, Properties and Individuals in an Ontology –This.
2nd Feb 2005Protege-OWL tutorial, © 2005 Univ. of Manchester1 Protégé-OWL Tutorial Session 2: Defined Classes Nick Drummond.
2nd Sept 2004UK e-Science all hands meeting1 Designing User Interfaces to Minimise Common Errors in Ontology Development Alan Rector, Nick Drummond, Matthew.
Extensible Ontological Modeling Framework for Subject Mediation L. A. Kalinichenko, N. A. Skvortsov Institute for Problems of Informatics, RAS
Knowledge Representation. Keywordsquick way for agents to locate potentially useful information Thesaurimore structured approach than keywords, arranging.
Using DAML+OIL Ontologies for Service Discovery in myGrid Chris Wroe, Robert Stevens, Carole Goble, Angus Roberts, Mark Greenwood
ONTOLOGY ENGINEERING Lab #3 – September 15,
CS621 : Artificial Intelligence Pushpak Bhattacharyya CSE Dept., IIT Bombay Lecture 12 RDF, OWL, Minimax.
Approach to building ontologies A high-level view Chris Wroe.
Enable Semantic Interoperability for Decision Support and Risk Management Presented by Dr. David Li Key Contributors: Dr. Ruixin Yang and Dr. John Qu.
Using OWL 2 For Product Modeling David Leal Caesar Systems April 2009 Henson Graves Lockheed Martin Aeronautics.
BioHealth Informatics Group Copyright © 2005, The University of Manchester1 A Practical Introduction to Ontologies & OWL Additional Exercises: Common Errors.
Presented by Kyumars Sheykh Esmaili Description Logics for Data Bases (DLHB,Chapter 16) Semantic Web Seminar.
International Workshop 28 Jan – 2 Feb 2011 Phoenix, AZ, USA Ontology in Model-Based Systems Engineering Henson Graves 29 January 2011.
Ccs.  Ontologies are used to capture knowledge about some domain of interest. ◦ An ontology describes the concepts in the domain and also the relationships.
1 Letting the classifier check your intuitions Existentials, Universals, & other logical variants Some, Only, Not, And, Or, etc. Lab exercise - 3b Alan.
OWL (Ontology Web Language and Applications) Maw-Sheng Horng Department of Mathematics and Information Education National Taipei University of Education.
Based on ProtegeOWLTutorial at protege website
Common MBSE Modeling Questions and How Ontology Helps
Information Organization
Building Trustworthy Semantic Webs
ece 627 intelligent web: ontology and beyond
Lab exercise - 3a Alan Rector & colleagues
Session 2: Defined Classes Nick Drummond
CS646: OWL Tutorial (session 2)
ece 720 intelligent web: ontology and beyond
Stefan SCHULZ IMBI, University Medical Center, Freiburg, Germany
Ontologies and Databases
University of Manchester
Presentation transcript:

DAML+OIL Ontology Tutorial Chris Wroe, Robert Stevens (Sean Bechhofer, Carole Goble, Alan Rector, Ian Horrocks….) University of Manchester

3 goals for today 1. Why use DAML+OIL ontologies? 2. What are the design principles? 3. What is the syntax of DAML+OIL?

a)Prevent the user spelling magherita differently b)Prevent me from adding a type of car to that field c) Ensure the users and application have the same notion of a magherita pizza d) Help an application answer queries such as how many vegetarian pizza’s were sold? Providing a controlled vocabulary DayLocation QtyPizza type 02/01/02CambridgeMargherita Pizza DB Applications 1

Schema integration Database 1Database 2 Database 3 Schema 1 Schema 2 Schema 3 Ontology Applications

TAMBIS Applications

Ontologies to support rules DateMedication Atenolol 25mg tabs bd Atenolol oral 25mg Drug Catalogue Iff Antianginal then... ? Patient Record Rules

DateMedication Ontologies to support rules DateMedication Atenolol 25mg tabs bd Atenolol oral 25mg B-Blocker Antianginal Drug Ontology Drug Catalogue Iff Antianginal then... ? Patient Record Guideline

How are ontologies encoded? Margherita Capricciosa …. 1. List3. Multiple hierarchy2. Tree American hot pizza meat pizza spicy pizza

Property driven classification Most taxonomies are hand crafted –Difficult to maintain when large or intricate –Become too large to use but too small to capture what you want to say Now possible to calculate a hierarchy –Supply the ‘lego’ building blocks to allow the ontology author or user to define classes –Use reasoning to check consistency and calculate classification based on these definitions Principles

Descriptions are key Classification driven by description Effort moved from manual placement of classes in a taxonomy to formal definition of classes. The same classes can be classified in different ways for different purposes

Applications can dynamically build descriptions Pizza finder

Exercise 1 Specific Tasks –Use the information in the menus to write definitions for margherita, la reine, soho and neptune pizzas –List the concepts and relationships used in the definitions General questions –How else could do you describe types of pizza? –What parts of the description will drive classification? –What kinds of concepts are used in the description?

Pizza template Pizza types are mainly defined in terms of their topping ingredients Many high level groups of pizza types depends on a categorisation of ingredients

Exercise 2 Use card sorting to categorise pizza ingredients.

Exercise 2 beginning with OilEd Open an ontology (pizza-tutorial-ex-2.daml) Set the namespace Add classes to an ontology –(ham, olive, parmesan) Add superclasses (parents) to a class –(meat, fish, vegetable, and cheese ingredient) Reason with the ontology (nothing happens) Save an ontology

Organisation Terms –Classification A grouping of things into classes –Instances Members of a class –Hierarchy A stratified organisation of things in which there is a top and a bottom –Taxonomy A hierarchical classification Principles

Taxonomies as sets Homo sapiens Primate Eukaryota Chris Principles

Disjointness In the DAML+OIL world every class is assumed to overlap with every other. We need to explicitly state something cannot be a member of two classes at the same time e.g. man and women

Exercise 3 – adding a disjoint axiom Make tuna a subclass of both meat and fish ingredient classes. Verify the ontology Add a disjoint axiom between meat and fish ingredient. Send the ontology to the reasoner (verify). At this point also add disjoint axioms between meat, cheese and vegetable ingredient classes.

Relationships Non taxonomic links Relationship type is called a Property Properties can be placed in a taxonomy of their own

Exercise 4 Add a property has_topping_ingredient Add a property has_part Make has_part a super property of has_topping_ingredient

Restrictions Describing a class in terms of its relationships to other classes Restricting class membership to only those individuals that posses these criteria.

Exercise 5 Create a restriction relating margherita pizza to its topping ingredients mozzarella and tomato

Necessary and sufficient criteria To be a member I must have these relationships (necessary = subclassOf) If I have these relationships I must be a member (necessary and sufficient = sameClassAs)

Exercise 6 Load ontology pizza-tutorial-ex-6.daml Create a class called ‘cheesy pizza’ as a subclass of pizza which has a topping ingredient of cheese ingredient. Change to a SameClassAs definition Send the ontology to the reasoner (verify).

Negation and disjunction DAML+OIL allows logical expressions to be used anywhere a named class could be used. Allows much more precision and flexibility in defining classes.

Exercise 7 Write down a definition for a vegetarian pizza Create a new class in the ontology called vegetarian pizza and represent the paper based definition in DAML+OIL Send the ontology to the reasoner.

Types of relationship hasClass – members of class A have this relationship with some members of class B toClass – members of class A (if they have this relationship) only have this relationship with members of class B

Exercise 8 Change restriction type in the vegetarian pizza to toClass. Send the ontology to the reasoner

Open world assumption Open world of the web - always assumes someone could add some extra information Some one could come along and add a statement to say margherita pizza has ham on it. We have to ‘cap off’ the description to say margherita pizza has these toppings and I know it doesn’t have any meat ingredients. (It may have herbs etc.)

Exercise 9 ‘Cap off’ the definition of margherita pizza with a toClass restriction. Send the ontology to the reasoner. (Note we can now explicitly say Neptune has no cheese ingredient in the same way) Load ontology pizza-tutorial-ex- 10.daml to see more definitions.

Transitivity Vegetarians are picky! Soho pizza isn’t classed as vegetarian in the menu Some cheeses are made with meat products (rennin) The ingredient property is transitive. If parmesan has a meat ingredient in it any pizza with parmesan should be also be classed as containing a meat ingredient

Exercise 10 Make the has_part relationship transitive Add rennin as a subclass of meat ingredient Add a restriction on parmesan to say it has_part some rennin. Send the ontology to the reasoner.

Cardinality More precise numerical constraints can be placed on relationships. It should be read as ‘members of class A are related by this property to this many members of class B ‘

Exercise 11 Change the definition of cheesy pizza to ‘a pizza with at least 2 types of cheese’ Add a new type of pizza called ‘four cheese pizza’ which has exactly four topping ingredients of type cheese ingredient Use the reasoner Add a disjoint axiom between parmesan and mozzarella. Use the reasoner

Domain and range constraints Used to specify what classes can be used with properties May be useful but can have undesirable effects

Exercise 12 For has_topping_ingredient add a domain of pizza and a range of ingredient Make intentional errors to test the system e.g. add ham as a topping ingredient of onion and add four cheeses pizza as a topping of margherita pizza. Use the reasoner Examine the superclasses of onion Add a disjoint axiom between pizza and ingredient Use the reasoner

Things not covered Inverse properties, symmetrical properties, unique properties. Subclass and sameClass axioms. Use of individuals

Current example ontologies GONG myGrid

Current example applications Clinergy – not DAML+OIL PEDro

Providing a controlled vocabulary DayLocationPizza type 02/01/02CambridgeMargherita Capricciosa …. 1. List3. Multiple hierarchy Pizza DB 2. Tree American hot pizza meat pizza spicy pizza Applications