pizza.owl
type: Ontology
default language: en
version info: version 1.3
comment: 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/) @en
imports: protege

hasIngredient
type: ObjectProperty
type: TransitiveProperty
comment: NB Transitive - the ingredients of ingredients are ingredients of the whole @en
inverse of: isIngredientOf

hasSpiciness
type: ObjectProperty
type: FunctionalProperty
comment: A property created to be used with the ValuePartition - Spiciness. @en
range: Tempero

isIngredientOf
type: ObjectProperty
type: TransitiveProperty
comment: The inverse property tree to hasIngredient - all subproperties and attributes of the properties should reflect those under hasIngredient. @en

Americana
type: Class
subclass of: PizzaComUmNome
subclass of: Restriction
  on property: hasTopping
  some values from: CoberturaDeTomate
subclass of: Restriction
  on property: hasTopping
  all values from: Class
    union of: CoberturaDeMozzarella
    union of: CoberturaDeCalabreza
    union of: CoberturaDeTomate
subclass of: Restriction
  on property: hasTopping
  some values from: CoberturaDeMozzarella
subclass of: Restriction
  on property: hasTopping
  some values from: CoberturaDeCalabreza
disjoint with: AmericanaPicante
disjoint with: Cajun
disjoint with: Capricciosa
disjoint with: Caprina
disjoint with: Fiorentina
disjoint with: QuatroQueijos
disjoint with: FrutosDoMar
disjoint with: Giardiniera
disjoint with: LaReine
disjoint with: Margherita
disjoint with: Cogumelo
disjoint with: Napoletana
disjoint with: Parmense
disjoint with: PolloAdAstra
disjoint with: CoberturaPrinceCarlo
disjoint with: Rosa
disjoint with: Siciliana
disjoint with: SloppyGiuseppe
disjoint with: Soho
disjoint with: PizzaAberta
disjoint with: Veneziana

AmericanaPicante
type: Class
subclass of: PizzaComUmNome
subclass of: Restriction
  on property: hasTopping
  some values from: CoberturaDePimentaoVerdePicante
subclass of: Restriction
  on property: hasTopping
  all values from: Class
    union of: CoberturaDePimentaoVerdePicante
    union of: CoberturaDeJalapeno
    union of: CoberturaDeMozzarella
    union of: CoberturaDeCalabreza
    union of: CoberturaDeTomate
subclass of: Restriction
  on property: hasTopping
  some values from: CoberturaDeTomate
subclass of: Restriction
  on property: hasTopping
  some values from: CoberturaDeCalabreza
subclass of: Restriction
  on property: hasTopping
  some values from: CoberturaDeMozzarella
subclass of: Restriction
  on property: hasTopping
  some values from: CoberturaDeJalapeno
disjoint with: Cajun
disjoint with: Capricciosa
disjoint with: Caprina
disjoint with: Fiorentina
disjoint with: QuatroQueijos
disjoint with: FrutosDoMar
disjoint with: Giardiniera
disjoint with: LaReine
disjoint with: Margherita
disjoint with: Cogumelo
disjoint with: Napoletana
disjoint with: Parmense
disjoint with: PolloAdAstra
disjoint with: CoberturaPrinceCarlo
disjoint with: Rosa
disjoint with: Siciliana
disjoint with: SloppyGiuseppe
disjoint with: Soho
disjoint with: PizzaAberta
disjoint with: Veneziana

CoberturaDeAnchovies
type: Class
subclass of: CoberturaDePeixe
disjoint with: CoberturaDeFrutosDoMarMistos
disjoint with: CoberturaDeCamarao

CoberturaDeArtichoke
type: Class
subclass of: CoberturaDeVegetais
subclass of: Restriction
  on property: hasSpiciness
  some values from: NaoPicante
disjoint with: CoberturaDeAspargos
disjoint with: CoberturaDeCaper
disjoint with: CoberturaDeAlho
disjoint with: CoberturaDeLeek
disjoint with: CoberturaDeCogumelo
disjoint with: CoberturaDeAzeitona
disjoint with: CoberturaDeCebola
disjoint with: CoberturaDePimentao
disjoint with: CoberturaPetitPois
disjoint with: CoberturaRocket
disjoint with: CoberturaDeEspinafre
disjoint with: CoberturaDeTomate

CoberturaDeAspargos
type: Class
subclass of: CoberturaDeVegetais
subclass of: Restriction
  on property: hasSpiciness
  some values from: NaoPicante
disjoint with: CoberturaDeCaper
disjoint with: CoberturaDeAlho
disjoint with: CoberturaDeLeek
disjoint with: CoberturaDeCogumelo
disjoint with: CoberturaDeAzeitona
disjoint with: CoberturaDeCebola
disjoint with: CoberturaDePimentao
disjoint with: CoberturaPetitPois
disjoint with: CoberturaRocket
disjoint with: CoberturaDeEspinafre
disjoint with: CoberturaDeTomate

Cajun
type: Class
subclass of: PizzaComUmNome
subclass of: Restriction
  on property: hasTopping
  some values from: MolhoTobascoPepper
subclass of: Restriction
  on property: hasTopping
  some values from: CoberturaPeperonata
subclass of: Restriction
  on property: hasTopping
  some values from: CoberturaDeTomate
subclass of: Restriction
  on property: hasTopping
  all values from: Class
    union of: CoberturaDeMozzarella
    union of: CoberturaDeCebola
    union of: CoberturaPeperonata
    union of: CoberturaDeCamarao
    union of: MolhoTobascoPepper
    union of: CoberturaDeTomate
subclass of: Restriction
  on property: hasTopping
  some values from: CoberturaDeCebola
subclass of: Restriction
  on property: hasTopping
  some values from: CoberturaDeMozzarella
subclass of: Restriction
  on property: hasTopping
  some values from: CoberturaDeCamarao
disjoint with: Capricciosa
disjoint with: Caprina
disjoint with: Fiorentina
disjoint with: QuatroQueijos
disjoint with: FrutosDoMar
disjoint with: Giardiniera
disjoint with: LaReine
disjoint with: Margherita
disjoint with: Cogumelo
disjoint with: Napoletana
disjoint with: Parmense
disjoint with: PolloAdAstra
disjoint with: CoberturaPrinceCarlo
disjoint with: Rosa
disjoint with: Siciliana
disjoint with: SloppyGiuseppe
disjoint with: Soho
disjoint with: PizzaAberta
disjoint with: Veneziana

CoberturaDeCajun
type: Class
subclass of: CoberturaDeErvas
subclass of: Restriction
  on property: hasSpiciness
  some values from: Picante
disjoint with: CoberturaRosemary

CoberturaDeCaper
type: Class
subclass of: CoberturaDeVegetais
subclass of: Restriction
  on property: hasSpiciness
  some values from: NaoPicante
disjoint with: CoberturaDeAlho
disjoint with: CoberturaDeLeek
disjoint with: CoberturaDeCogumelo
disjoint with: CoberturaDeAzeitona
disjoint with: CoberturaDeCebola
disjoint with: CoberturaDePimentao
disjoint with: CoberturaPetitPois
disjoint with: CoberturaRocket
disjoint with: CoberturaDeEspinafre
disjoint with: CoberturaDeTomate

Capricciosa
type: Class
subclass of: PizzaComUmNome
subclass of: Restriction
  on property: hasTopping
  some values from: CoberturaPeperonata
subclass of: Restriction
  on property: hasTopping
  some values from: CoberturaDeMozzarella
subclass of: Restriction
  on property: hasTopping
  some values from: CoberturaDeAnchovies
subclass of: Restriction
  on property: hasTopping
  some values from: CoberturaDeAzeitona
subclass of: Restriction
  on property: hasTopping
  some values from: CoberturaDeTomate
subclass of: Restriction
  on property: hasTopping
  some values from: CoberturaDePresunto
subclass of: Restriction
  on property: hasTopping
  some values from: CoberturaDeCaper
subclass of: Restriction
  on property: hasTopping
  all values from: Class
    union of: CoberturaDeAnchovies
    union of: CoberturaDeCaper
    union of: CoberturaDePresunto
    union of: CoberturaDeMozzarella
    union of: CoberturaDeAzeitona
    union of: CoberturaPeperonata
    union of: CoberturaDeTomate
disjoint with: Caprina
disjoint with: Fiorentina
disjoint with: QuatroQueijos
disjoint with: FrutosDoMar
disjoint with: Giardiniera
disjoint with: LaReine
disjoint with: Margherita
disjoint with: Cogumelo
disjoint with: Napoletana
disjoint with: Parmense
disjoint with: PolloAdAstra
disjoint with: CoberturaPrinceCarlo
disjoint with: Rosa
disjoint with: Siciliana
disjoint with: SloppyGiuseppe
disjoint with: Soho
disjoint with: PizzaAberta
disjoint with: Veneziana

Caprina
type: Class
subclass of: PizzaComUmNome
subclass of: Restriction
  on property: hasTopping
  some values from: CoberturaDeTomateRessecadoAoSol
subclass of: Restriction
  on property: hasTopping
  some values from: CoberturaDeQueijoDeCabra
subclass of: Restriction
  on property: hasTopping
  all values from: Class
    union of: CoberturaDeQueijoDeCabra
    union of: CoberturaDeMozzarella
    union of: CoberturaDeTomateRessecadoAoSol
    union of: CoberturaDeTomate
subclass of: Restriction
  on property: hasTopping
  some values from: CoberturaDeMozzarella
subclass of: Restriction
  on property: hasTopping
  some values from: CoberturaDeTomate
disjoint with: Fiorentina
disjoint with: QuatroQueijos
disjoint with: FrutosDoMar
disjoint with: Giardiniera
disjoint with: LaReine
disjoint with: Margherita
disjoint with: Cogumelo
disjoint with: Napoletana
disjoint with: Parmense
disjoint with: PolloAdAstra
disjoint with: CoberturaPrinceCarlo
disjoint with: Rosa
disjoint with: Siciliana
disjoint with: SloppyGiuseppe
disjoint with: Soho
disjoint with: PizzaAberta
disjoint with: Veneziana

CoberturaDeQueijo
type: Class
subclass of: CoberturaDaPizza
disjoint with: CoberturaDePeixe
disjoint with: CoberturaDeFrutas
disjoint with: CoberturaDeErvas
disjoint with: CoberturaDeCarne
disjoint with: CoberturaDeCastanha
disjoint with: CoberturaEmMolho
disjoint with: CoberturaDeVegetais

PizzaComQueijo
type: Class
equivalent class: Class
  intersection of: Pizza
  intersection of: Restriction
    on property: hasTopping
    some values from: CoberturaDeQueijo
comment: Any pizza that has at least 1 cheese topping. @en

CoberturaDeQueijoComVegetais
type: Class
subclass of: CoberturaDeQueijo
subclass of: CoberturaDeVegetais
comment: 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. @en

CoberturaDeFrango
type: Class
subclass of: CoberturaDeCarne
subclass of: Restriction
  on property: hasSpiciness
  some values from: NaoPicante
disjoint with: CoberturaDePresunto
disjoint with: CoberturaDeBifePicante
disjoint with: CoberturaDeCalabreza

Pais
type: Class
equivalent class: Class
  intersection of: DomainConcept
  intersection of: Class
    one of: Germany
    one of: America
    one of: France
    one of: England
    one of: Italy
comment: 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. @en

BaseEspessa
type: Class
subclass of: BaseDaPizza
disjoint with: BaseFinaEQuebradica

Fiorentina
type: Class
subclass of: PizzaComUmNome
subclass of: Restriction
  on property: hasTopping
  some values from: CoberturaDeAzeitona
subclass of: Restriction
  on property: hasTopping
  some values from: CoberturaDeParmesao
subclass of: Restriction
  on property: hasTopping
  all values from: Class
    union of: CoberturaDeAlho
    union of: CoberturaDeMozzarella
    union of: CoberturaDeAzeitona
    union of: CoberturaDeParmesao
    union of: CoberturaDeEspinafre
    union of: CoberturaDeTomate
subclass of: Restriction
  on property: hasTopping
  some values from: CoberturaDeTomate
subclass of: Restriction
  on property: hasTopping
  some values from: CoberturaDeAlho
subclass of: Restriction
  on property: hasTopping
  some values from: CoberturaDeMozzarella
subclass of: Restriction
  on property: hasTopping
  some values from: CoberturaDeEspinafre
disjoint with: QuatroQueijos
disjoint with: FrutosDoMar
disjoint with: Giardiniera
disjoint with: LaReine
disjoint with: Margherita
disjoint with: Cogumelo
disjoint with: Napoletana
disjoint with: Parmense
disjoint with: PolloAdAstra
disjoint with: CoberturaPrinceCarlo
disjoint with: Rosa
disjoint with: Siciliana
disjoint with: SloppyGiuseppe
disjoint with: Soho
disjoint with: PizzaAberta
disjoint with: Veneziana

CoberturaDePeixe
type: Class
subclass of: CoberturaDaPizza
subclass of: Restriction
  on property: hasSpiciness
  some values from: NaoPicante
disjoint with: CoberturaDeFrutas
disjoint with: CoberturaDeErvas
disjoint with: CoberturaDeCarne
disjoint with: CoberturaDeCastanha
disjoint with: CoberturaEmMolho
disjoint with: CoberturaDeVegetais

CoberturaQuatroQueijos
type: Class
subclass of: CoberturaDeQueijo
subclass of: Restriction
  on property: hasSpiciness
  some values from: NaoPicante
disjoint with: CoberturaDeQueijoDeCabra
disjoint with: CoberturaDeGorgonzola
disjoint with: CoberturaDeMozzarella
disjoint with: CoberturaDeParmesao

QuatroQueijos
type: Class
subclass of: PizzaComUmNome
subclass of: Restriction
  on property: hasTopping
  some values from: CoberturaDeCogumelo
subclass of: Restriction
  on property: hasTopping
  some values from: CoberturaDeCaper
subclass of: Restriction
  on property: hasTopping
  some values from: CoberturaDeTomate
subclass of: Restriction
  on property: hasTopping
  some values from: CoberturaDeAnchovies
subclass of: Restriction
  on property: hasTopping
  some values from: CoberturaDeMozzarella
subclass of: Restriction
  on property: hasTopping
  some values from: CoberturaDeCalabreza
subclass of: Restriction
  on property: hasTopping
  all values from: Class
    union of: CoberturaDeAnchovies
    union of: CoberturaDeCaper
    union of: CoberturaDeMozzarella
    union of: CoberturaDeCogumelo
    union of: CoberturaDeAzeitona
    union of: CoberturaDeCalabreza
    union of: CoberturaDeTomate
subclass of: Restriction
  on property: hasTopping
  some values from: CoberturaDeAzeitona
disjoint with: FrutosDoMar
disjoint with: Giardiniera
disjoint with: LaReine
disjoint with: Margherita
disjoint with: Cogumelo
disjoint with: Napoletana
disjoint with: Parmense
disjoint with: PolloAdAstra
disjoint with: CoberturaPrinceCarlo
disjoint with: QuatroQueijos
disjoint with: Rosa
disjoint with: Siciliana
disjoint with: SloppyGiuseppe
disjoint with: Soho
disjoint with: PizzaAberta
disjoint with: Veneziana

CoberturaDeFrutas
type: Class
subclass of: CoberturaDaPizza
disjoint with: CoberturaDeErvas
disjoint with: CoberturaDeCarne
disjoint with: CoberturaDeCastanha
disjoint with: CoberturaEmMolho
disjoint with: CoberturaDeVegetais

FrutosDoMar
type: Class
subclass of: PizzaComUmNome
subclass of: Restriction
  on property: hasTopping
  some values from: CoberturaDeAlho
subclass of: Restriction
  on property: hasTopping
  some values from: CoberturaDeTomate
subclass of: Restriction
  on property: hasTopping
  some values from: CoberturaDeFrutosDoMarMistos
subclass of: Restriction
  on property: hasTopping
  all values from: Class
    union of: CoberturaDeAlho
    union of: CoberturaDeFrutosDoMarMistos
    union of: CoberturaDeTomate
disjoint with: Giardiniera
disjoint with: LaReine
disjoint with: Margherita
disjoint with: Cogumelo
disjoint with: Napoletana
disjoint with: Parmense
disjoint with: PolloAdAstra
disjoint with: CoberturaPrinceCarlo
disjoint with: QuatroQueijos
disjoint with: Rosa
disjoint with: Siciliana
disjoint with: SloppyGiuseppe
disjoint with: Soho
disjoint with: PizzaAberta
disjoint with: Veneziana

CoberturaDeAlho
type: Class
subclass of: CoberturaDeVegetais
subclass of: Restriction
  on property: hasSpiciness
  some values from: Media
disjoint with: CoberturaDeLeek
disjoint with: CoberturaDeCogumelo
disjoint with: CoberturaDeAzeitona
disjoint with: CoberturaDeCebola
disjoint with: CoberturaDePimentao
disjoint with: CoberturaPetitPois
disjoint with: CoberturaRocket
disjoint with: CoberturaDeEspinafre
disjoint with: CoberturaDeTomate

Giardiniera
type: Class
subclass of: PizzaComUmNome
subclass of: Restriction
  on property: hasTopping
  some values from: CoberturaDeAzeitona
subclass of: Restriction
  on property: hasTopping
  some values from: CoberturaPetitPois
subclass of: Restriction
  on property: hasTopping
  some values from: CoberturaDeCogumelo
subclass of: Restriction
  on property: hasTopping
  some values from: CoberturaPeperonata
subclass of: Restriction
  on property: hasTopping
  some values from: CoberturaDeTomate
subclass of: Restriction
  on property: hasTopping
  some values from: CoberturaDeLeek
subclass of: Restriction
  on property: hasTopping
  some values from: CoberturaDeTomateFatiado
subclass of: Restriction
  on property: hasTopping
  all values from: Class
    union of: CoberturaDeLeek
    union of: CoberturaDeMozzarella
    union of: CoberturaDeCogumelo
    union of: CoberturaDeAzeitona
    union of: CoberturaPeperonata
    union of: CoberturaPetitPois
    union of: CoberturaDeTomateFatiado
    union of: CoberturaDeTomate
subclass of: Restriction
  on property: hasTopping
  some values from: CoberturaDeMozzarella
disjoint with: LaReine
disjoint with: Margherita
disjoint with: Cogumelo
disjoint with: Napoletana
disjoint with: Parmense
disjoint with: PolloAdAstra
disjoint with: CoberturaPrinceCarlo
disjoint with: QuatroQueijos
disjoint with: Rosa
disjoint with: Siciliana
disjoint with: SloppyGiuseppe
disjoint with: Soho
disjoint with: PizzaAberta
disjoint with: Veneziana

CoberturaDeQueijoDeCabra
type: Class
subclass of: CoberturaDeQueijo
subclass of: Restriction
  on property: hasSpiciness
  some values from: NaoPicante
disjoint with: CoberturaDeGorgonzola
disjoint with: CoberturaDeMozzarella
disjoint with: CoberturaDeParmesao

CoberturaDeGorgonzola
type: Class
subclass of: CoberturaDeQueijo
subclass of: Restriction
  on property: hasSpiciness
  some values from: NaoPicante
disjoint with: CoberturaDeMozzarella
disjoint with: CoberturaDeParmesao

CoberturaDePimentaoVerde
type: Class
subclass of: CoberturaDePimentao
disjoint with: CoberturaDeJalapeno
disjoint with: CoberturaPeperonata
disjoint with: CoberturaDePimentaoDoce

CoberturaDePresunto
type: Class
subclass of: CoberturaDeCarne
disjoint with: CoberturaDeBifePicante
disjoint with: CoberturaDeCalabreza

CoberturaDeErvas
type: Class
subclass of: CoberturaDaPizza
disjoint with: CoberturaDeCarne
disjoint with: CoberturaDeCastanha
disjoint with: CoberturaEmMolho
disjoint with: CoberturaDeVegetais

Picante
type: Class
subclass of: Tempero
disjoint with: Media
disjoint with: NaoPicante

CoberturaDePimentaoVerdePicante
type: Class
subclass of: CoberturaDePimentaoVerde
subclass of: Restriction
  on property: hasSpiciness
  some values from: Picante

CoberturaDeBifePicante
type: Class
subclass of: CoberturaDeCarne
subclass of: Restriction
  on property: hasSpiciness
  some values from: Picante
disjoint with: CoberturaDeCalabreza

Sorvete
type: Class
subclass of: DomainConcept
subclass of: Restriction
  on property: hasTopping
  some values from: CoberturaDeFrutas
disjoint with: Pizza
disjoint with: BaseDaPizza
disjoint with: CoberturaDaPizza
comment: 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. @en

PizzaInteressante
type: Class
equivalent class: Class
  intersection of: Pizza
  intersection of: Restriction
    on property: hasTopping
    min cardinality: 3
comment: 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. @en

CoberturaDeJalapeno
type: Class
subclass of: CoberturaDePimentao
subclass of: Restriction
  on property: hasSpiciness
  some values from: Picante
disjoint with: CoberturaPeperonata
disjoint with: CoberturaDePimentaoDoce

LaReine
type: Class
subclass of: PizzaComUmNome
subclass of: Restriction
  on property: hasTopping
  some values from: CoberturaDeMozzarella
subclass of: Restriction
  on property: hasTopping
  some values from: CoberturaDeCogumelo
subclass of: Restriction
  on property: hasTopping
  some values from: CoberturaDePresunto
subclass of: Restriction
  on property: hasTopping
  some values from: CoberturaDeTomate
subclass of: Restriction
  on property: hasTopping
  all values from: Class
    union of: CoberturaDePresunto
    union of: CoberturaDeMozzarella
    union of: CoberturaDeCogumelo
    union of: CoberturaDeAzeitona
    union of: CoberturaDeTomate
subclass of: Restriction
  on property: hasTopping
  some values from: CoberturaDeAzeitona
disjoint with: Margherita
disjoint with: Cogumelo
disjoint with: Napoletana
disjoint with: Parmense
disjoint with: PolloAdAstra
disjoint with: CoberturaPrinceCarlo
disjoint with: QuatroQueijos
disjoint with: Rosa
disjoint with: Siciliana
disjoint with: SloppyGiuseppe
disjoint with: Soho
disjoint with: PizzaAberta
disjoint with: Veneziana

CoberturaDeLeek
type: Class
subclass of: CoberturaDeVegetais
subclass of: Restriction
  on property: hasSpiciness
  some values from: NaoPicante
disjoint with: CoberturaDeCogumelo
disjoint with: CoberturaDeAzeitona
disjoint with: CoberturaDeCebola
disjoint with: CoberturaDePimentao
disjoint with: CoberturaPetitPois
disjoint with: CoberturaRocket
disjoint with: CoberturaDeEspinafre
disjoint with: CoberturaDeTomate

Margherita
type: Class
subclass of: PizzaComUmNome
subclass of: Restriction
  on property: hasTopping
  all values from: Class
    union of: CoberturaDeMozzarella
    union of: CoberturaDeTomate
subclass of: Restriction
  on property: hasTopping
  some values from: CoberturaDeTomate
subclass of: Restriction
  on property: hasTopping
  some values from: CoberturaDeMozzarella
disjoint with: Cogumelo
disjoint with: Napoletana
disjoint with: Parmense
disjoint with: PolloAdAstra
disjoint with: CoberturaPrinceCarlo
disjoint with: QuatroQueijos
disjoint with: Rosa
disjoint with: Siciliana
disjoint with: SloppyGiuseppe
disjoint with: Soho
disjoint with: PizzaAberta
disjoint with: Veneziana

CoberturaDeCarne
type: Class
subclass of: CoberturaDaPizza
disjoint with: CoberturaDeCastanha
disjoint with: CoberturaEmMolho
disjoint with: CoberturaDeVegetais

PizzaDeCarne
type: Class
equivalent class: Class
  intersection of: Pizza
  intersection of: Restriction
    on property: hasTopping
    some values from: CoberturaDeCarne
comment: Any pizza that has at least one meat topping @en

Media
type: Class
subclass of: Tempero
disjoint with: NaoPicante

NaoPicante
type: Class
subclass of: Tempero

CoberturaDeFrutosDoMarMistos
type: Class
subclass of: CoberturaDePeixe
disjoint with: CoberturaDeCamarao

CoberturaDeMozzarella
type: Class
subclass of: CoberturaDeQueijo
subclass of: Restriction
  on property: hasCountryOfOrigin
  has value: Italy
subclass of: Restriction
  on property: hasSpiciness
  some values from: NaoPicante
disjoint with: CoberturaDeParmesao

Cogumelo
type: Class
subclass of: PizzaComUmNome
subclass of: Restriction
  on property: hasTopping
  some values from: CoberturaDeTomate
subclass of: Restriction
  on property: hasTopping
  some values from: CoberturaDeCogumelo
subclass of: Restriction
  on property: hasTopping
  all values from: Class
    union of: CoberturaDeMozzarella
    union of: CoberturaDeCogumelo
    union of: CoberturaDeTomate
subclass of: Restriction
  on property: hasTopping
  some values from: CoberturaDeMozzarella
disjoint with: Napoletana
disjoint with: Parmense
disjoint with: PolloAdAstra
disjoint with: CoberturaPrinceCarlo
disjoint with: QuatroQueijos
disjoint with: Rosa
disjoint with: Siciliana
disjoint with: SloppyGiuseppe
disjoint with: Soho
disjoint with: PizzaAberta
disjoint with: Veneziana

CoberturaDeCogumelo
type: Class
subclass of: CoberturaDeVegetais
subclass of: Restriction
  on property: hasSpiciness
  some values from: NaoPicante
disjoint with: CoberturaDeAzeitona
disjoint with: CoberturaDeCebola
disjoint with: CoberturaDePimentao
disjoint with: CoberturaPetitPois
disjoint with: CoberturaRocket
disjoint with: CoberturaDeEspinafre
disjoint with: CoberturaDeTomate

PizzaComUmNome
type: Class
subclass of: Pizza
comment: A pizza that can be found on a pizza menu @en

Napoletana
type: Class
subclass of: PizzaComUmNome
subclass of: Restriction
  on property: hasTopping
  some values from: CoberturaDeAzeitona
subclass of: Restriction
  on property: hasTopping
  some values from: CoberturaDeAnchovies
subclass of: Restriction
  on property: hasTopping
  all values from: Class
    union of: CoberturaDeAnchovies
    union of: CoberturaDeCaper
    union of: CoberturaDeMozzarella
    union of: CoberturaDeAzeitona
    union of: CoberturaDeTomate
subclass of: Restriction
  on property: hasTopping
  some values from: CoberturaDeTomate
subclass of: Restriction
  on property: hasTopping
  some values from: CoberturaDeCaper
subclass of: Restriction
  on property: hasTopping
  some values from: CoberturaDeMozzarella
disjoint with: Parmense
disjoint with: PolloAdAstra
disjoint with: CoberturaPrinceCarlo
disjoint with: QuatroQueijos
disjoint with: Rosa
disjoint with: Siciliana
disjoint with: SloppyGiuseppe
disjoint with: Soho
disjoint with: PizzaAberta
disjoint with: Veneziana

PizzaNaoVegetariana
type: Class
equivalent class: Class
  intersection of: Pizza
  intersection of: Class
    complement of: PizzaVegetariana
disjoint with: PizzaVegetariana
comment: Any Pizza that is not a VegetarianPizza @en

CoberturaDeCastanha
type: Class
subclass of: CoberturaDaPizza
subclass of: Restriction
  on property: hasSpiciness
  some values from: NaoPicante
disjoint with: CoberturaEmMolho
disjoint with: CoberturaDeVegetais

CoberturaDeAzeitona
type: Class
subclass of: CoberturaDeVegetais
subclass of: Restriction
  on property: hasSpiciness
  some values from: NaoPicante
disjoint with: CoberturaDeCebola
disjoint with: CoberturaDePimentao
disjoint with: CoberturaPetitPois
disjoint with: CoberturaRocket
disjoint with: CoberturaDeEspinafre
disjoint with: CoberturaDeTomate

CoberturaDeCebola
type: Class
subclass of: CoberturaDeVegetais
subclass of: Restriction
  on property: hasSpiciness
  some values from: Media
disjoint with: CoberturaDePimentao
disjoint with: CoberturaPetitPois
disjoint with: CoberturaRocket
disjoint with: CoberturaDeEspinafre
disjoint with: CoberturaDeTomate

CoberturaDePrezuntoParma
type: Class
subclass of: CoberturaDePresunto
subclass of: Restriction
  on property: hasSpiciness
  some values from: NaoPicante

Parmense
type: Class
subclass of: PizzaComUmNome
subclass of: Restriction
  on property: hasTopping
  some values from: CoberturaDeAspargos
subclass of: Restriction
  on property: hasTopping
  some values from: CoberturaDeMozzarella
subclass of: Restriction
  on property: hasTopping
  some values from: CoberturaDeParmesao
subclass of: Restriction
  on property: hasTopping
  some values from: CoberturaDeTomate
subclass of: Restriction
  on property: hasTopping
  all values from: Class
    union of: CoberturaDeAspargos
    union of: CoberturaDePresunto
    union of: CoberturaDeMozzarella
    union of: CoberturaDeParmesao
    union of: CoberturaDeTomate
subclass of: Restriction
  on property: hasTopping
  some values from: CoberturaDePresunto
disjoint with: PolloAdAstra
disjoint with: CoberturaPrinceCarlo
disjoint with: QuatroQueijos
disjoint with: Rosa
disjoint with: Siciliana
disjoint with: SloppyGiuseppe
disjoint with: Soho
disjoint with: PizzaAberta
disjoint with: Veneziana

CoberturaDeParmesao
type: Class
subclass of: CoberturaDeQueijo
subclass of: Restriction
  on property: hasSpiciness
  some values from: NaoPicante

CoberturaPeperonata
type: Class
subclass of: CoberturaDePimentao
subclass of: Restriction
  on property: hasSpiciness
  some values from: Media
disjoint with: CoberturaDePimentaoDoce

CoberturaDeCalabreza
type: Class
subclass of: CoberturaDeCarne
subclass of: Restriction
  on property: hasSpiciness
  some values from: Media

CoberturaDePimentao
type: Class
subclass of: CoberturaDeVegetais
disjoint with: CoberturaPetitPois
disjoint with: CoberturaRocket
disjoint with: CoberturaDeEspinafre
disjoint with: CoberturaDeTomate

CoberturaPetitPois
type: Class
subclass of: CoberturaDeVegetais
subclass of: Restriction
  on property: hasSpiciness
  some values from: NaoPicante
disjoint with: CoberturaRocket
disjoint with: CoberturaDeEspinafre
disjoint with: CoberturaDeTomate

CoberturaPineKernels
type: Class
subclass of: CoberturaDeCastanha

Pizza
type: Class
subclass of: DomainConcept
subclass of: Restriction
  on property: hasBase
  some values from: BaseDaPizza
disjoint with: BaseDaPizza
disjoint with: CoberturaDaPizza

BaseDaPizza
type: Class
subclass of: DomainConcept
disjoint with: CoberturaDaPizza

CoberturaDaPizza
type: Class
subclass of: DomainConcept

PolloAdAstra
type: Class
subclass of: PizzaComUmNome
subclass of: Restriction
  on property: hasTopping
  some values from: CoberturaDeCebolaVermelha
subclass of: Restriction
  on property: hasTopping
  some values from: CoberturaDeAlho
subclass of: Restriction
  on property: hasTopping
  some values from: CoberturaDeMozzarella
subclass of: Restriction
  on property: hasTopping
  some values from: CoberturaDeFrango
subclass of: Restriction
  on property: hasTopping
  some values from: CoberturaDeCajun
subclass of: Restriction
  on property: hasTopping
  some values from: CoberturaDeTomate
subclass of: Restriction
  on property: hasTopping
  all values from: Class
    union of: CoberturaDeCajun
    union of: CoberturaDeFrango
    union of: CoberturaDeAlho
    union of: CoberturaDeMozzarella
    union of: CoberturaDeCebolaVermelha
    union of: CoberturaDePimentaoDoce
    union of: CoberturaDeTomate
subclass of: Restriction
  on property: hasTopping
  some values from: CoberturaDePimentaoDoce
disjoint with: CoberturaPrinceCarlo
disjoint with: QuatroQueijos
disjoint with: Rosa
disjoint with: Siciliana
disjoint with: SloppyGiuseppe
disjoint with: Soho
disjoint with: PizzaAberta
disjoint with: Veneziana

CoberturaDeCamarao
type: Class
subclass of: CoberturaDePeixe

CoberturaPrinceCarlo
type: Class
subclass of: PizzaComUmNome
subclass of: Restriction
  on property: hasTopping
  all values from: Class
    union of: CoberturaDeLeek
    union of: CoberturaDeMozzarella
    union of: CoberturaDeParmesao
    union of: CoberturaRosemary
    union of: CoberturaDeTomate
subclass of: Restriction
  on property: hasTopping
  some values from: CoberturaRosemary
subclass of: Restriction
  on property: hasTopping
  some values from: CoberturaDeMozzarella
subclass of: Restriction
  on property: hasTopping
  some values from: CoberturaDeLeek
subclass of: Restriction
  on property: hasTopping
  some values from: CoberturaDeTomate
subclass of: Restriction
  on property: hasTopping
  some values from: CoberturaDeParmesao
disjoint with: QuatroQueijos
disjoint with: Rosa
disjoint with: Siciliana
disjoint with: SloppyGiuseppe
disjoint with: Soho
disjoint with: PizzaAberta
disjoint with: Veneziana

QuatroQueijos
type: Class
subclass of: PizzaComUmNome
subclass of: Restriction
  on property: hasTopping
  some values from: CoberturaQuatroQueijos
subclass of: Restriction
  on property: hasTopping
  all values from: Class
    union of: CoberturaQuatroQueijos
    union of: CoberturaDeTomate
subclass of: Restriction
  on property: hasTopping
  some values from: CoberturaDeTomate
disjoint with: Rosa
disjoint with: Siciliana
disjoint with: SloppyGiuseppe
disjoint with: Soho
disjoint with: PizzaAberta
disjoint with: Veneziana

PizzaItalianaReal
type: Class
equivalent class: Class
  intersection of: Pizza
  intersection of: Restriction
    on property: hasCountryOfOrigin
    has value: Italy
subclass of: Restriction
  on property: hasBase
  all values from: BaseFinaEQuebradica
comment: 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. @en

CoberturaDeCebolaVermelha
type: Class
subclass of: CoberturaDeCebola

CoberturaRocket
type: Class
subclass of: CoberturaDeVegetais
subclass of: Restriction
  on property: hasSpiciness
  some values from: Media
disjoint with: CoberturaDeEspinafre
disjoint with: CoberturaDeTomate

Rosa
type: Class
subclass of: PizzaComUmNome
subclass of: Restriction
  on property: hasTopping
  some values from: CoberturaDeMozzarella
subclass of: Restriction
  on property: hasTopping
  some values from: CoberturaDeGorgonzola
subclass of: Restriction
  on property: hasTopping
  all values from: Class
    union of: CoberturaDeGorgonzola
    union of: CoberturaDeMozzarella
    union of: CoberturaDeTomate
subclass of: Restriction
  on property: hasTopping
  some values from: CoberturaDeTomate
disjoint with: Siciliana
disjoint with: SloppyGiuseppe
disjoint with: Soho
disjoint with: PizzaAberta
disjoint with: Veneziana

CoberturaRosemary
type: Class
subclass of: CoberturaDeErvas
subclass of: Restriction
  on property: hasSpiciness
  some values from: NaoPicante

CoberturaEmMolho
type: Class
subclass of: CoberturaDaPizza
disjoint with: CoberturaDeVegetais

Siciliana
type: Class
subclass of: PizzaComUmNome
subclass of: Restriction
  on property: hasTopping
  some values from: CoberturaDePresunto
subclass of: Restriction
  on property: hasTopping
  some values from: CoberturaDeMozzarella
subclass of: Restriction
  on property: hasTopping
  some values from: CoberturaDeArtichoke
subclass of: Restriction
  on property: hasTopping
  all values from: Class
    union of: CoberturaDeAnchovies
    union of: CoberturaDeArtichoke
    union of: CoberturaDeAlho
    union of: CoberturaDePresunto
    union of: CoberturaDeMozzarella
    union of: CoberturaDeAzeitona
    union of: CoberturaDeTomate
subclass of: Restriction
  on property: hasTopping
  some values from: CoberturaDeAnchovies
subclass of: Restriction
  on property: hasTopping
  some values from: CoberturaDeTomate
subclass of: Restriction
  on property: hasTopping
  some values from: CoberturaDeAlho
subclass of: Restriction
  on property: hasTopping
  some values from: CoberturaDeAzeitona
disjoint with: SloppyGiuseppe
disjoint with: Soho
disjoint with: PizzaAberta
disjoint with: Veneziana

CoberturaDeTomateFatiado
type: Class
subclass of: CoberturaDeTomate
subclass of: Restriction
  on property: hasSpiciness
  some values from: NaoPicante
disjoint with: CoberturaDeTomateRessecadoAoSol

SloppyGiuseppe
type: Class
subclass of: PizzaComUmNome
subclass of: Restriction
  on property: hasTopping
  some values from: CoberturaDePimentaoVerde
subclass of: Restriction
  on property: hasTopping
  some values from: CoberturaDeCebola
subclass of: Restriction
  on property: hasTopping
  all values from: Class
    union of: CoberturaDePimentaoVerde
    union of: CoberturaDeBifePicante
    union of: CoberturaDeMozzarella
    union of: CoberturaDeCebola
    union of: CoberturaDeTomate
subclass of: Restriction
  on property: hasTopping
  some values from: CoberturaDeTomate
subclass of: Restriction
  on property: hasTopping
  some values from: CoberturaDeMozzarella
subclass of: Restriction
  on property: hasTopping
  some values from: CoberturaDeBifePicante
disjoint with: Soho
disjoint with: PizzaAberta
disjoint with: Veneziana

Soho
type: Class
subclass of: PizzaComUmNome
subclass of: Restriction
  on property: hasTopping
  all values from: Class
    union of: CoberturaDeAlho
    union of: CoberturaDeMozzarella
    union of: CoberturaDeAzeitona
    union of: CoberturaDeParmesao
    union of: CoberturaRocket
    union of: CoberturaDeTomate
subclass of: Restriction
  on property: hasTopping
  some values from: CoberturaDeParmesao
subclass of: Restriction
  on property: hasTopping
  some values from: CoberturaDeTomate
subclass of: Restriction
  on property: hasTopping
  some values from: CoberturaRocket
subclass of: Restriction
  on property: hasTopping
  some values from: CoberturaDeAlho
subclass of: Restriction
  on property: hasTopping
  some values from: CoberturaDeAzeitona
subclass of: Restriction
  on property: hasTopping
  some values from: CoberturaDeMozzarella
disjoint with: PizzaAberta
disjoint with: Veneziana

Tempero
type: Class
equivalent class: Class
  union of: Picante
  union of: Media
  union of: NaoPicante
subclass of: ValorDaParticao
comment: A ValuePartition that describes only values from Hot, Medium or Mild. NB Subclasses can themselves be divided up into further partitions. @en

PizzaTemperada
type: Class
equivalent class: Class
  intersection of: Pizza
  intersection of: Restriction
    on property: hasTopping
    some values from: CoberturaTemperada
comment: Any pizza that has a spicy topping is a SpicyPizza @en

PizzaTemperadaEquivalente
type: Class
equivalent class: Class
  intersection of: Pizza
  intersection of: Restriction
    on property: hasTopping
    some values from: Class
      intersection of: CoberturaDaPizza
      intersection of: Restriction
        on property: hasSpiciness
        some values from: Picante
comment: 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. @en

CoberturaTemperada
type: Class
equivalent class: Class
  intersection of: CoberturaDaPizza
  intersection of: Restriction
    on property: hasSpiciness
    some values from: Picante
comment: Any pizza topping that has spiciness Hot @en

CoberturaDeEspinafre
type: Class
subclass of: CoberturaDeVegetais
subclass of: Restriction
  on property: hasSpiciness
  some values from: NaoPicante
disjoint with: CoberturaDeTomate

CoberturaSultana
type: Class
subclass of: CoberturaDeFrutas
subclass of: Restriction
  on property: hasSpiciness
  some values from: Media

CoberturaDeTomateRessecadoAoSol
type: Class
subclass of: CoberturaDeTomate
subclass of: Restriction
  on property: hasSpiciness
  some values from: NaoPicante

CoberturaDePimentaoDoce
type: Class
subclass of: CoberturaDePimentao
subclass of: Restriction
  on property: hasSpiciness
  some values from: NaoPicante

BaseFinaEQuebradica
type: Class
subclass of: BaseDaPizza

MolhoTobascoPepper
type: Class
subclass of: CoberturaEmMolho
subclass of: Restriction
  on property: hasSpiciness
  some values from: Picante

CoberturaDeTomate
type: Class
subclass of: CoberturaDeVegetais
subclass of: Restriction
  on property: hasSpiciness
  some values from: NaoPicante

PizzaAberta
type: Class
subclass of: PizzaComUmNome
subclass of: Restriction
  on property: hasTopping
  some values from: CoberturaDeMozzarella
disjoint with: Veneziana
comment: An unclosed Pizza cannot be inferred to be either a VegetarianPizza or a NonVegetarianPizza, because it might have other toppings.

ValorDaParticao
type: Class
comment: 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.

CoberturaDeVegetais
type: Class
subclass of: CoberturaDaPizza

PizzaVegetariana
type: Class
equivalent class: Class
  intersection of: Pizza
  intersection of: Class
    complement of: Restriction
      on property: hasTopping
      some values from: CoberturaDePeixe
  intersection of: Class
    complement of: Restriction
      on property: hasTopping
      some values from: CoberturaDeCarne
comment: 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. @en

PizzaVegetarianaEquivalente1
type: Class
equivalent class: Class
  intersection of: Pizza
  intersection of: Restriction
    on property: hasTopping
    all values from: CoberturaVegetariana
comment: 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 @en

PizzaVegetarianaEquivalente2
type: Class
equivalent class: Class
  intersection of: Pizza
  intersection of: Restriction
    on property: hasTopping
    all values from: Class
      union of: CoberturaDeQueijo
      union of: CoberturaDeFrutas
      union of: CoberturaDeErvas
      union of: CoberturaDeCastanha
      union of: CoberturaEmMolho
      union of: CoberturaDeVegetais
comment: An alternative to VegetarianPizzaEquiv1 that does not require a definition of VegetarianTopping. Perhaps more difficult to maintain. Not equivalent to VegetarianPizza @en

CoberturaVegetariana
type: Class
equivalent class: Class
  intersection of: CoberturaDaPizza
  intersection of: Class
    union of: CoberturaDeQueijo
    union of: CoberturaDeFrutas
    union of: CoberturaDeErvas
    union of: CoberturaDeCastanha
    union of: CoberturaEmMolho
    union of: CoberturaDeVegetais
comment: 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. @en

Veneziana
type: Class
subclass of: PizzaComUmNome
subclass of: Restriction
  on property: hasTopping
  all values from: Class
    union of: CoberturaDeCaper
    union of: CoberturaDeMozzarella
    union of: CoberturaDeAzeitona
    union of: CoberturaDeCebola
    union of: CoberturaPineKernels
    union of: CoberturaSultana
    union of: CoberturaDeTomate
subclass of: Restriction
  on property: hasTopping
  some values from: CoberturaDeMozzarella
subclass of: Restriction
  on property: hasTopping
  some values from: CoberturaDeCaper
subclass of: Restriction
  on property: hasTopping
  some values from: CoberturaPineKernels
subclass of: Restriction
  on property: hasTopping
  some values from: CoberturaDeAzeitona
subclass of: Restriction
  on property: hasTopping
  some values from: CoberturaDeTomate
subclass of: Restriction
  on property: hasTopping
  some values from: CoberturaSultana
subclass of: Restriction
  on property: hasTopping
  some values from: CoberturaDeCebola