The pizza ontology developed at Manchester has often been criticised as a toy ontology that is neither real nor used. I would like to describe its origins; the reasons for its existence; and that it is, in fact, widely used (see the Pizza Ontology tutorial).
At Manchester, we do a lot of teaching around description logic based knowledge representation languages—first in DAML+OIL and then OWL. The aim is to teaching the language, with an emphasis on the language’s semantics and the meaning of statements made in OWL. We teach many people from across the life sciences and outside the life sciences. As the intention is to teach the language and given the range of backgrounds of the audience, the example is very important. It is difficult to find biological examples that are accessible across that discipline that are not so complex as to obscure the understanding of the language with the intricacies of the biology. There is also the obvious aspect that biology does not fit a non-biology audience.
So, we wanted an accessible topic that fitted the compositional approach taken in DL based languages. We wanted a topic that would highlight the key language concepts and features. We also wanted to avoid too many knotty modelling issues, such as colour, dimensions, etc. (an earlier tutorial based on the Ikea catalogue meant that colour, length, units had to be modelled early and this obscured language concepts and features.).
Thus was born the pizza example. Pizzas are widely understood across the world (but not in all cultures, but enough to be useful). They are compositional—a pizza is composed of a base and a series of toppings. Colour, time and size, for instance, are easily avoided, but can be included when deemed appropriate. It is easy to take a pizza menu and ask people to extract the information necessary to build a pizza ontology. It is easy to talk about classifications of toppings. Exercises can be created that explore the main conceptual hurdles in OWL, such as open world reasoning; Boolean algebra; restrictions and quantifications; etc. The example pizza ontology includes the majority of the features of OWL.
We use the pizza tutorial in 3 or four face to face tutorials each year with approximately 20 attendees in each tutorial. The written version is used by many, many people who start to use the Protege editor. I’ve also seen it used in courses taught by others. It is also used as a test case for developments in DL research. So, I think it is widely used. I’d also never claim that it is anything but a teaching example and has no sensible real world applications.
There are, of course, problems with the example. The main one is that it teaches the language, but is very light on issues of modellling. Perhaps this is a good thing, but we do need another ontology tutorial that does more on ontological modelling. It is also difficult to find good examples for some of the features of OWL2, such as sub-property chains. Also, one can include individuals, but the examples are a bit crude. For the OWL2 features (but not ontological modelling), I’ve been developing a family history knowledge base that uses a lot of OWL2 features.
Finally, a litttle bit of provenance for the pizza tutorial might be in order. After one of the Ikea based tutorials, Angus Roberts and I were walking down Oxford Road away from the University. We were trying to think of alternative examples and in the discussion pizzas popped out. Chris Wroe and I developed the running order and exercises for the first pizza tutorial—given in 2003 at the European Bioinformatics Institute. This was still in DAML+OIL days; Matt Horridge turned it in to a written form and made the pizza ontology itself. Matt Horridge and Nick Drummond have given many of the tutorials; more recently Simon Jupp and George Moulton have done the bulk of the presenting. I’m sure others have also done it, but I think these are the main culprits.
Tags: dl, ontology, owl, pizza ontology, tutorial
January 27, 2010 at 9:48 am |
[…] the people behind the Ontogenesis network (Robert Stevens and Phillip Lord with funding from the EPSRC grant ref: EP/E021352/1) had an idea. Why not blog a […]
March 19, 2010 at 12:59 pm |
I think it is an excellent tutorial and I have extensively referred to it for various Protege and owl related modelling issues
January 3, 2011 at 10:30 am |
[…] Why the Pizza Ontology Tutorial? January 20102 comments 3 […]
January 12, 2011 at 10:50 am |
[…] automated reasoner that there can be no others, it is assumed that there can be. Similarly, in the pizza tutorial, I can say that a Margherita pizza has both a tomato topping and a mozzarella topping, but unless I […]
July 12, 2011 at 7:01 am |
[…] An introduction to the OWL language; this is the pizza tutorial; […]
December 3, 2012 at 4:24 pm |
[…] this in my version of the Pizza ontology which seemed as good a demonstrator to start with as any (https://robertdavidstevens.wordpress.com/2010/01/22/why-the-pizza-ontology-tutorial/); this also contains some custom “one-off” patterns, for building “named” […]
January 11, 2013 at 3:06 pm |
[…] from Manchester syntax. I will explain this using examples, perhaps inevitably, based around pizza (https://robertdavidstevens.wordpress.com/2010/01/22/why-the-pizza-ontology-tutorial/), which I have started to develop using […]
August 1, 2014 at 3:59 pm |
[…] describing terms from an ontology that you import. For example, say you import the Pizza Ontology (https://robertdavidstevens.wordpress.com/2010/01/22/why-the-pizza-ontology-tutorial/), and discover the lack of labels in Italian is problematic; you could add these annotations in a […]