Practice Exercise 13.A
Ontologies

Back to practice exercises.

1: Background Reading

2: Learning Goals

  • Practice using OWL for a simple domain.
  • Use an ontology editor to edit an OWL file.

3: Directed Questions

  1. What is the relationship between a conceptualization and an ontology? [solution]

  2. If multiple web sites adhere to a single ontology, can a single symbol have different meanings for each web site? [solution]

  3. Can a knowledge base use more than one ontology? If not, explain why. If so, what is required to use multiple ontologies? [solution]

  4. What is the relationship between classes and individuals? [solution]

4: Exercise: OWL Pizza Toppings

Here is a reference describing the Web Ontology Language (OWL). Consider the following visualization of a OWL ontology:

pizza

Each word in the figure is a class and the arrows represent subclasses (e.g. Tomato is a subclass of Vegetable). Note that some of the class names in this ontology are purposefully misleading for the purposes of this exercise. Without making assumptions about information not present in the figure, answer the following questions about OWL:
  1. According to this ontology, can something be meat but not a pizza topping? [solution]

  2. Can something be both meat and a vegetable? [solution]

  3. Is beef a pizza topping? [solution]

  4. In OWL, can we prevent something from being both a fruit and a vegetable? If so, how? If not, why not? [solution]

  5. How are the class names in this ontology misleading? How would you rename the classes to make them less misleading? [solution]
Consider the following segment of OWL code:
class(VegetarianPizza
Pizza
complementOf(restriction(hasTopping someValuesFrom Meat)))

class(TomatoPizza
Pizza
restriction(hasTopping someValuesFrom Tomato))
Using information from both the figure and the OWL code segment, answer the following questions:
  1. Can a TomatoPizza contain meat? [solution]

  2. Can a pizza be both a VegetarianPizza and a TomatoPizza? [solution]

  3. Are all TomatoPizzas VegetarianPizzas? [solution]

  4. Define a new pizza called "BeefPizza" using a similar syntax style as used on the OWL code segment above. A BeefPizza has some Tomato toppings, some Beef toppings, but no other toppings. [solution]
Working with large ontologies usually requires the use of an ontology editor. One example editor is Protégé (http://protege.stanford.edu/). Load this OWL file (about pizza toppings) in an OWL editor. This OWL file is different than the pizza topping problem discussed above since it uses different class names and it contains many additional toppings. Try adding some new pizza toppings or defining a new type of pizza using an OWL editor.

5: Learning Goals Revisited

  • Practice using OWL for a simple domain.
  • Use an ontology editor to edit an OWL file.

Valid HTML 4.0 Transitional