43 
 
A closure axiom on a property consists of a universal restriction that says that a property can only be 
filled by specified fillers. The restriction has a filler that is the union of the fillers that occur in the 
existential restrictions for the property. For example, the closure axiom on the hasTopping property for 
MargheritaPizza is a universal restriction that acts along the hasTopping property, with a filler that 
is the union of MozzarellaTopping and also TomatoTopping. i.e.  hasTopping only 
(MozzarellaTopping or TomatoTopping).  
Exercise 23: Add a Closure Axiom on the hasTopping Property for MargheritaPizza 
_____________________________________________________________________________________ 
1. Make sure that MargheritaPizza is selected in the class hierarchy in the Classes tab.  
2. Click on the Add icon (+) next to the SubClass Of field in the Description view. 
3. Select the Class expression editor tab from the pop-up window.  Type in the Description Logic axiom: 
hasTopping only (MozzarellaTopping or TomatoTopping).  
4. Click on OK.  
5. Repeat steps 1-4 but this time click on SohoPizza and use the axiom: hasTopping only 
(MozzarellaTopping or TomatoTopping or ParmesanTopping or OliveTopping). 
6. Synchronize the reasoner.  
_____________________________________________________________________________________ 
The previous axioms said that for example that it was necessary for any Pizza that was a 
MargheritaPizza to have a MozzarellaTopping and a TomatoTopping. The new axioms say that 
a MargheritaPizza can only have these toppings and similarly for SohoPizza and its toppings. This 
should supply the needed information for the reasoner to now make them both subclasses of 
VegetarianPizza.   Go to the Class hierarchy (inferred) tab. You should now see that 
MargheritaPizza and SohoPizza are both classified as subclasses of VegetarianPizza. Your UI 
should now look similar to figure 4.23. Note the various axioms highlighted in yellow. Those are all 
additional inferences supplied by the reasoner. For experience you might want to click on some of the ? 
icons next to these inferences to see the explanations generated by the reasoner. As you develop more 
complex ontologies this is a powerful tool to debug and design your ontology.