v.1.5. Removed protege.owl import and references. Made ontology URI date-independent
An example ontology that contains all constructs required for the various versions of the Pizza Tutorial run by Manchester University (see http://www.co-ode.org/resources/tutorials/)
v.1.4. Added Food class (used in domain/range of hasIngredient), Added several hasCountryOfOrigin restrictions on pizzas, Made hasTopping invers functional
version 1.5
NB Transitive - the ingredients of ingredients are ingredients of the whole
A property created to be used with the ValuePartition - Spiciness.
Note that hasTopping is inverse functional because isToppingOf is functional
The inverse property tree to hasIngredient - all subproperties and attributes of the properties should reflect those under hasIngredient.
Any given instance of topping should only be added to a single pizza (no cheap half-measures on our pizzas)
Americana
AmericanaPicante
CoberturaDeAnchovies
CoberturaDeArtichoke
CoberturaDeAspargos
Cajun
CoberturaDeCajun
CoberturaDeCaper
Capricciosa
Caprina
CoberturaDeQueijo
Any pizza that has at least 1 cheese topping.
PizzaComQueijo
This class will be inconsistent. This is because we have given it 2 disjoint parents, which means it could never have any members (as nothing can simultaneously be a CheeseTopping and a VegetableTopping). NB Called ProbeInconsistentTopping in the ProtegeOWL Tutorial.
CoberturaDeQueijoComVegetais
CoberturaDeFrango
A class that is equivalent to the set of individuals that are described in the enumeration - ie Countries can only be either America, England, France, Germany or Italy and nothing else. Note that these individuals have been asserted to be allDifferent from each other.
Pais
BaseEspessa
Fiorentina
CoberturaDePeixe
CoberturaQuatroQueijos
QuatroQueijos
CoberturaDeFrutas
FrutosDoMar
CoberturaDeAlho
Giardiniera
CoberturaDeQueijoDeCabra
CoberturaDeGorgonzola
CoberturaDePimentaoVerde
CoberturaDePresunto
CoberturaDeErvas
Picante
CoberturaDePimentaoVerdePicante
CoberturaDeBifePicante
A class to demonstrate mistakes made with setting a property domain. The property hasTopping has a domain of Pizza. This means that the reasoner can infer that all individuals using the hasTopping property must be of type Pizza. Because of the restriction on this class, all members of IceCream must use the hasTopping property, and therefore must also be members of Pizza. However, Pizza and IceCream are disjoint, so this causes an inconsistency. If they were not disjoint, IceCream would be inferred to be a subclass of Pizza.
Sorvete
3
Any pizza that has at least 3 toppings. Note that this is a cardinality constraint on the hasTopping property and NOT a qualified cardinality constraint (QCR). A QCR would specify from which class the members in this relationship must be. eg has at least 3 toppings from PizzaTopping. This is currently not supported in OWL.
PizzaInteressante
CoberturaDeJalapeno
LaReine
CoberturaDeLeek
Margherita
CoberturaDeCarne
Any pizza that has at least one meat topping
PizzaDeCarne
Media
NaoPicante
CoberturaDeFrutosDoMarMistos
CoberturaDeMozzarella
Cogumelo
CoberturaDeCogumelo
A pizza that can be found on a pizza menu
PizzaComUmNome
Napoletana
Any Pizza that is not a VegetarianPizza
PizzaNaoVegetariana
CoberturaDeCastanha
CoberturaDeAzeitona
CoberturaDeCebola
CoberturaDePrezuntoParma
Parmense
CoberturaDeParmesao
CoberturaPeperonata
CoberturaDeCalabreza
CoberturaDePimentao
CoberturaPetitPois
CoberturaPineKernels
Pizza
BaseDaPizza
CoberturaDaPizza
PolloAdAstra
CoberturaDeCamarao
CoberturaPrinceCarlo
QuatroQueijos
This defined class has conditions that are part of the definition: ie any Pizza that has the country of origin, Italy is a RealItalianPizza. It also has conditions that merely describe the members - that all RealItalianPizzas must only have ThinAndCrispy bases. In essence, all pizzas from Italy must have ThinAndCrispy bases.
PizzaItalianaReal
CoberturaDeCebolaVermelha
CoberturaRocket
Rosa
CoberturaRosemary
CoberturaEmMolho
Siciliana
CoberturaDeTomateFatiado
SloppyGiuseppe
Soho
A ValuePartition that describes only values from Hot, Medium or Mild. NB Subclasses can themselves be divided up into further partitions.
Tempero
Any pizza that has a spicy topping is a SpicyPizza
PizzaTemperada
An alternative definition for the SpicyPizza which does away with needing a definition of SpicyTopping and uses a slightly more complicated restriction: Pizzas that have at least one topping that is both a PizzaTopping and has spiciness hot are members of this class.
PizzaTemperadaEquivalente
Any pizza topping that has spiciness Hot
CoberturaTemperada
CoberturaDeEspinafre
CoberturaSultana
CoberturaDeTomateRessecadoAoSol
CoberturaDePimentaoDoce
BaseFinaEQuebradica
MolhoTobascoPepper
CoberturaDeTomate
An unclosed Pizza cannot be inferred to be either a VegetarianPizza or a NonVegetarianPizza, because it might have other toppings.
PizzaAberta
A ValuePartition is a pattern that describes a restricted set of classes from which a property can be associated. The parent class is used in restrictions, and the covering axiom means that only members of the subclasses may be used as values. The possible subclasses cannot be extended without updating the ValuePartition class.
ValorDaParticao
CoberturaDeVegetais
Any pizza that does not have fish topping and does not have meat topping is a VegetarianPizza. Members of this class do not need to have any toppings at all.
PizzaVegetariana
Any pizza that only has vegetarian toppings or no toppings is a VegetarianPizzaEquiv1. Should be inferred to be equivalent to VegetarianPizzaEquiv2. Not equivalent to VegetarianPizza because PizzaTopping is not covering
PizzaVegetarianaEquivalente1
An alternative to VegetarianPizzaEquiv1 that does not require a definition of VegetarianTopping. Perhaps more difficult to maintain. Not equivalent to VegetarianPizza
PizzaVegetarianaEquivalente2
An example of a covering axiom. VegetarianTopping is equivalent to the union of all toppings in the given axiom. VegetarianToppings can only be Cheese or Vegetable or....etc.
CoberturaVegetariana
Veneziana