55 
 
3. Make sure to create an instance of AmericanaPizza called AmericanaPizza1 that 
hasCaloricContent 723.   
4. Make sure to run the reasoner after creating all your instances.   
_____________________________________________________________________________________ 
 
Exercise 31: Create a Datatype Restriction that Every Pizza hasCaloricContent  
_____________________________________________________________________________________ 
1. Navigate to the Classes major tab.    
2.  Select the Pizza class.   
3 Click on the (+) icon next to the SubClass Of field in the Description view. This time let’s use the Data 
restriction tab. Navigate to and select hasCaloricContent in the Restricted property view. In the 
Restriction filler view scroll down to xsd:integer and select it. The Restriction type should be set to the 
default which is Some. If it isn’t use the menu to change it. Your UI should look like figure 5.6. Click 
OK.  
4. Note that you also could have selected Exactly 1 because a Pizza can only have one caloric content but 
since you already defined the property to be functional this isn’t necessary and either Some or Exactly 1 
have the same effect. Just as Protégé usually provides several ways to enter the same information in the 
user interface OWL often provides different ways to provide the same information in your model. The 
nice thing is the reasoner lets you not worry so much about which way you do it, as long as your 
definitions are consistent.  
_____________________________________________________________________________________ 
We have now stated that every Pizza hasCaloricContent and that content must be an integer. In 
addition to using the predefined set of datatypes we can further specialize the use of a datatype by 
specifying restrictions on the possible values. For example, it is easy to specify a range of values for a 
number.