logging in or signing up ProtegeOWLPart2 v05 Octavio Download Post to : URL : Related Presentations : Share Add to Flag Embed Email Send to Blogs and Networks Add to Channel Uploaded from authorPOINT Insert YouTube videos in PowerPont slides with aS Desktop Copy embed code: (To copy code, click on the text box) Embed: URL: Thumbnail: WordPress Embed Customize Embed The presentation is successfully added In Your Favorites. Views: 45 Category: Entertainment License: All Rights Reserved Like it (0) Dislike it (0) Added: September 12, 2007 This Presentation is Public Favorites: 0 Presentation Description No description available. Comments Posting comment... Premium member Presentation Transcript A Practical Introduction to Ontologies & OWL: A Practical Introduction to Ontologies andamp; OWL Session 2: Defined Classes and Additional Modelling Constructs in OWL Nick Drummond andamp; Matthew Horridge Overview: Overview Defined Classes Untangling Defining Vegetarian Pizzas Union Classes Universal Restrictions The Open World Assumption Closure CheeseyPizza: CheeseyPizza A CheeseyPizza is any pizza that has some cheese on it We would expect then, that some pizzas might be named pizzas and cheesey pizzas (among other things later on) We can use the reasoner to help us produce this polyhierarchy without having to assert multiple parents Creating a CheeseyPizza: Creating a CheeseyPizza We normally create primitive classes and then migrate them to defined classes All of our defined pizzas will be direct subclasses of Pizza So, we create a CheesyPizza Class (do not make it disjoint) and add a restriction: 'Every CheeseyPizza must have at least one CheeseTopping' Classifying shows that we currently don’t have enough information to do any classification Reasoner Classification: Reasoner Classification The reasoner has been able to infer that anything that is a Pizza that has at least one topping from CheeseTopping is a CheeseyPizza Why?Necessary & Sufficient Conditions: Why? Necessary andamp; Sufficient Conditions Each set of necessary andamp; sufficient conditions is an Equivalent Class CheeseyPizza is equivalent to the intersection of Pizza and hasTopping CheeseTopping Classes, all of whose individuals fit this definition are found to be subclasses of CheeseyPizza, or are subsumed by CheeseyPizza hasTopping CheeseTopping CheeseyPizza Untangling: Untangling We can see that certain Pizzas are now classified under multiple parents MargheritaPizza can be found under both NamedPizza and CheeseyPizza in the inferred hierarchy Mission Successful! Untangling: Untangling However, our unclassified version of the ontology is a simple tree, which is much easier to maintain We’ve now got a polyhierarchy without asserting multiple superclass relationships Plus, we also know why certain pizzas have been classified as CheeseyPizzas Untangling: Untangling We don’t currently have many kinds of primitive pizza but its easy to see that if we had, it would have been a substantial task to assert CheeseyPizza as a parent of lots, if not all, of them And then do it all over again for other defined classes like MeatyPizza or whatever Viewing polyhierarchies: Viewing polyhierarchies As we now have multiple inheritance, the tree view is less than helpful in viewing our 'hierarchy' Viewing our Hierarchy Graphically: Viewing our Hierarchy Graphically OWLViz Tab: OWLViz Tab Using OWLViz to untangle: Using OWLViz to untangle The asserted hierarchy should, ideally, be a tidy tree of disjoint primitives The inferred hierarchy will be tangled By switching from the asserted to the inferred hierarchy, it is easy to see the changes made by the reasoner OWLViz can be used to spot tangles in the primitive tree and also disjoints (including inherited ones) are marked (with a ¬) Defined Classes: Defined Classes We’ve created a Defined Class, CheeseyPizza It has a definition. That is at least one Necessary and Sufficient condition Classes, all of whose individuals satisfy this definition, can be inferred to be subclasses Therefore, we can use it like a query to 'collect' subclasses that satisfy its conditions Reasoners can be used to organise the complexity of our hierarchy It’s marked with an equivalence symbol in the interface Defined classes are rarely disjoint Exercise 5: Define a MeatyPizza: Exercise 5: Define a MeatyPizza Add a CheeseyPizza to your ontology as well Define a Vegetarian Pizza: Define a Vegetarian Pizza Not as easy as it looks… Define in words? 'a pizza with only vegetarian toppings'? 'a pizza with no meat (or fish) toppings'? 'a pizza that is not a MeatyPizza'? More than one way to model this We’ll start with the first example Define a Vegetarian Pizza: Define a Vegetarian Pizza To be able to define a vegetarian pizza as a Pizza with only Vegetarian Toppings we need: To be able to create a vegetarian topping This requires a Union Class To be able to say 'only' This requires a Universal Restriction Union Classes: aka 'disjunction' This OR That OR TheOther This That TheOther Union Classes Commonly used for: Covering axioms Closure Covering Axioms: Covering Axioms Covering axiom – a union expression containing several covering classes A covering axiom in the Necessary andamp; Sufficient Conditions of a class means: the class cannot contain any instances other than those from the covering classes NB. If the covering classes are subclasses of the covered class, the covering axiom only needs to be a Necessary condition – it doesn’t harm to make it Necessary andamp; Sufficient though – its just redundant Covering PizzaBase: Covering PizzaBase In this example, the class PizzaBase is covered by ThinAndCrispy or DeepPan 'All PizzaBases must be ThinAndCrispy or DeepPan' 'There are no other types of PizzaBase' PizzaBase ThinAndCrispy DeepPan Exercise 6: Define a VegetarianTopping: Exercise 6: Define a VegetarianTopping Universal Restrictions: Universal Restrictions We need to say our VegetarianPizza can only have toppings that are vegetarian toppings We can do this by creating a Universal or AllValuesFrom restriction We’ll first look at an example… Real Italian Pizzas: Real Italian Pizzas 'RealItalianPizzas only have bases that are ThinAndCrispy' A Universal Restriction is added just like an Existential one, but the restriction type is different For now, this can be primitive – you can make it defined if you like What does this mean?: What does this mean? 'If an individual is a member of this class, it is necessary that it must only have a hasBase relationship with an individual from the class ThinAndCrispy' We have created a restriction: hasBase ThinAndCrispy on Class RealItalianPizza as a necessary condition What does this mean?: What does this mean? RealItalianPizza ThinAndCrispy hasBase hasBase hasBase hasBase 'No individual of the RealItalianPizza class can have a base from a class other than ThinAndCrispy' NB. DeepPan and ThinAndCrispy are disjoint We have created a restriction: hasBase ThinAndCrispy on Class RealItalianPizza as a necessary condition Warning: Trivial Satisfaction: Warning: Trivial Satisfaction RealItalianPizza ThinAndCrispy hasBase hasBase hasBase hasBase 'If an individual is a member of this class, it is necessary that it must only have a hasBase relationship with an individual from the class ThinAndCrispy, or no hasBase relationship at all' Universal Restrictions by themselves do not state 'at least one' If we had not already inherited: hasBase PizzaBase from Class Pizza the following could hold Exercise 7: Create VegetarianPizza: Exercise 7: Create VegetarianPizza VegetarianPizza Classification: VegetarianPizza Classification Nothing classifies under VegetarianPizza Actually, there is nothing wrong with our definition of VegetarianPizza It is actually the descriptions of our Pizzas that are incomplete The reasoner has not got enough information to infer that any Pizza is subsumed by VegetarianPizza This is because OWL makes the Open World Assumption Open World Assumption: Open World Assumption In a closed world (like DBs), the information we have is everything In an open world, we assume there is always more information than is stated Where a database, for example, returns a negative if it cannot find some data, the reasoner makes no assumption about the completeness of the information it is given The reasoner cannot determine something does not hold unless it is explicitly stated in the model Open World Assumption: Open World Assumption Typically we have a pattern of several Existential restrictions on a single property with different fillers – like primitive pizzas on hasTopping Existential restrictions should be paraphrased by 'amongst other things…' Must state that a description is complete We need closure for the given property Closure: Closure This is in the form of a Universal Restriction with a filler that is the Union of the other fillers for that property Closure works along a single property Closure example: MargheritaPizza: Closure example: MargheritaPizza All MargheritaPizzas must have: at least 1 topping from MozzarellaTopping and at least 1 topping from TomatoTopping and only toppings from MozzarellaTopping or TomatoTopping The last part is paraphrased into 'no other toppings' The union closes the hasTopping property on MargheritaPizza Exercise 8: Closing Pizzas: Exercise 8: Closing Pizzas Exercise 9: Your PizzaFinder: Exercise 9: Your PizzaFinder You can now plug your pizza ontology into the PizzaFinder application Summary: Summary You should now be able to: Create Defined Classes and classify using a Reasoner to check expected results Create Covering Axioms Close Class Descriptions and understand the Open World Assumption You do not have the permission to view this presentation. In order to view it, please contact the author of the presentation.
ProtegeOWLPart2 v05 Octavio Download Post to : URL : Related Presentations : Share Add to Flag Embed Email Send to Blogs and Networks Add to Channel Uploaded from authorPOINT Insert YouTube videos in PowerPont slides with aS Desktop Copy embed code: (To copy code, click on the text box) Embed: URL: Thumbnail: WordPress Embed Customize Embed The presentation is successfully added In Your Favorites. Views: 45 Category: Entertainment License: All Rights Reserved Like it (0) Dislike it (0) Added: September 12, 2007 This Presentation is Public Favorites: 0 Presentation Description No description available. Comments Posting comment... Premium member Presentation Transcript A Practical Introduction to Ontologies & OWL: A Practical Introduction to Ontologies andamp; OWL Session 2: Defined Classes and Additional Modelling Constructs in OWL Nick Drummond andamp; Matthew Horridge Overview: Overview Defined Classes Untangling Defining Vegetarian Pizzas Union Classes Universal Restrictions The Open World Assumption Closure CheeseyPizza: CheeseyPizza A CheeseyPizza is any pizza that has some cheese on it We would expect then, that some pizzas might be named pizzas and cheesey pizzas (among other things later on) We can use the reasoner to help us produce this polyhierarchy without having to assert multiple parents Creating a CheeseyPizza: Creating a CheeseyPizza We normally create primitive classes and then migrate them to defined classes All of our defined pizzas will be direct subclasses of Pizza So, we create a CheesyPizza Class (do not make it disjoint) and add a restriction: 'Every CheeseyPizza must have at least one CheeseTopping' Classifying shows that we currently don’t have enough information to do any classification Reasoner Classification: Reasoner Classification The reasoner has been able to infer that anything that is a Pizza that has at least one topping from CheeseTopping is a CheeseyPizza Why?Necessary & Sufficient Conditions: Why? Necessary andamp; Sufficient Conditions Each set of necessary andamp; sufficient conditions is an Equivalent Class CheeseyPizza is equivalent to the intersection of Pizza and hasTopping CheeseTopping Classes, all of whose individuals fit this definition are found to be subclasses of CheeseyPizza, or are subsumed by CheeseyPizza hasTopping CheeseTopping CheeseyPizza Untangling: Untangling We can see that certain Pizzas are now classified under multiple parents MargheritaPizza can be found under both NamedPizza and CheeseyPizza in the inferred hierarchy Mission Successful! Untangling: Untangling However, our unclassified version of the ontology is a simple tree, which is much easier to maintain We’ve now got a polyhierarchy without asserting multiple superclass relationships Plus, we also know why certain pizzas have been classified as CheeseyPizzas Untangling: Untangling We don’t currently have many kinds of primitive pizza but its easy to see that if we had, it would have been a substantial task to assert CheeseyPizza as a parent of lots, if not all, of them And then do it all over again for other defined classes like MeatyPizza or whatever Viewing polyhierarchies: Viewing polyhierarchies As we now have multiple inheritance, the tree view is less than helpful in viewing our 'hierarchy' Viewing our Hierarchy Graphically: Viewing our Hierarchy Graphically OWLViz Tab: OWLViz Tab Using OWLViz to untangle: Using OWLViz to untangle The asserted hierarchy should, ideally, be a tidy tree of disjoint primitives The inferred hierarchy will be tangled By switching from the asserted to the inferred hierarchy, it is easy to see the changes made by the reasoner OWLViz can be used to spot tangles in the primitive tree and also disjoints (including inherited ones) are marked (with a ¬) Defined Classes: Defined Classes We’ve created a Defined Class, CheeseyPizza It has a definition. That is at least one Necessary and Sufficient condition Classes, all of whose individuals satisfy this definition, can be inferred to be subclasses Therefore, we can use it like a query to 'collect' subclasses that satisfy its conditions Reasoners can be used to organise the complexity of our hierarchy It’s marked with an equivalence symbol in the interface Defined classes are rarely disjoint Exercise 5: Define a MeatyPizza: Exercise 5: Define a MeatyPizza Add a CheeseyPizza to your ontology as well Define a Vegetarian Pizza: Define a Vegetarian Pizza Not as easy as it looks… Define in words? 'a pizza with only vegetarian toppings'? 'a pizza with no meat (or fish) toppings'? 'a pizza that is not a MeatyPizza'? More than one way to model this We’ll start with the first example Define a Vegetarian Pizza: Define a Vegetarian Pizza To be able to define a vegetarian pizza as a Pizza with only Vegetarian Toppings we need: To be able to create a vegetarian topping This requires a Union Class To be able to say 'only' This requires a Universal Restriction Union Classes: aka 'disjunction' This OR That OR TheOther This That TheOther Union Classes Commonly used for: Covering axioms Closure Covering Axioms: Covering Axioms Covering axiom – a union expression containing several covering classes A covering axiom in the Necessary andamp; Sufficient Conditions of a class means: the class cannot contain any instances other than those from the covering classes NB. If the covering classes are subclasses of the covered class, the covering axiom only needs to be a Necessary condition – it doesn’t harm to make it Necessary andamp; Sufficient though – its just redundant Covering PizzaBase: Covering PizzaBase In this example, the class PizzaBase is covered by ThinAndCrispy or DeepPan 'All PizzaBases must be ThinAndCrispy or DeepPan' 'There are no other types of PizzaBase' PizzaBase ThinAndCrispy DeepPan Exercise 6: Define a VegetarianTopping: Exercise 6: Define a VegetarianTopping Universal Restrictions: Universal Restrictions We need to say our VegetarianPizza can only have toppings that are vegetarian toppings We can do this by creating a Universal or AllValuesFrom restriction We’ll first look at an example… Real Italian Pizzas: Real Italian Pizzas 'RealItalianPizzas only have bases that are ThinAndCrispy' A Universal Restriction is added just like an Existential one, but the restriction type is different For now, this can be primitive – you can make it defined if you like What does this mean?: What does this mean? 'If an individual is a member of this class, it is necessary that it must only have a hasBase relationship with an individual from the class ThinAndCrispy' We have created a restriction: hasBase ThinAndCrispy on Class RealItalianPizza as a necessary condition What does this mean?: What does this mean? RealItalianPizza ThinAndCrispy hasBase hasBase hasBase hasBase 'No individual of the RealItalianPizza class can have a base from a class other than ThinAndCrispy' NB. DeepPan and ThinAndCrispy are disjoint We have created a restriction: hasBase ThinAndCrispy on Class RealItalianPizza as a necessary condition Warning: Trivial Satisfaction: Warning: Trivial Satisfaction RealItalianPizza ThinAndCrispy hasBase hasBase hasBase hasBase 'If an individual is a member of this class, it is necessary that it must only have a hasBase relationship with an individual from the class ThinAndCrispy, or no hasBase relationship at all' Universal Restrictions by themselves do not state 'at least one' If we had not already inherited: hasBase PizzaBase from Class Pizza the following could hold Exercise 7: Create VegetarianPizza: Exercise 7: Create VegetarianPizza VegetarianPizza Classification: VegetarianPizza Classification Nothing classifies under VegetarianPizza Actually, there is nothing wrong with our definition of VegetarianPizza It is actually the descriptions of our Pizzas that are incomplete The reasoner has not got enough information to infer that any Pizza is subsumed by VegetarianPizza This is because OWL makes the Open World Assumption Open World Assumption: Open World Assumption In a closed world (like DBs), the information we have is everything In an open world, we assume there is always more information than is stated Where a database, for example, returns a negative if it cannot find some data, the reasoner makes no assumption about the completeness of the information it is given The reasoner cannot determine something does not hold unless it is explicitly stated in the model Open World Assumption: Open World Assumption Typically we have a pattern of several Existential restrictions on a single property with different fillers – like primitive pizzas on hasTopping Existential restrictions should be paraphrased by 'amongst other things…' Must state that a description is complete We need closure for the given property Closure: Closure This is in the form of a Universal Restriction with a filler that is the Union of the other fillers for that property Closure works along a single property Closure example: MargheritaPizza: Closure example: MargheritaPizza All MargheritaPizzas must have: at least 1 topping from MozzarellaTopping and at least 1 topping from TomatoTopping and only toppings from MozzarellaTopping or TomatoTopping The last part is paraphrased into 'no other toppings' The union closes the hasTopping property on MargheritaPizza Exercise 8: Closing Pizzas: Exercise 8: Closing Pizzas Exercise 9: Your PizzaFinder: Exercise 9: Your PizzaFinder You can now plug your pizza ontology into the PizzaFinder application Summary: Summary You should now be able to: Create Defined Classes and classify using a Reasoner to check expected results Create Covering Axioms Close Class Descriptions and understand the Open World Assumption