My Purpose I read this paper is find and understand a methodology to create ontology, after that I will use the methodology to create location based ontology . 

Summary :



Paper Name : Ontology Development 101 : Guide to Creating Your First Ontology

Natalya F. Noy and Deborah L. McGuinness

Stanford University, Stanford, CA, 94305




The reasons of why would someone want to develop ontology :

  1. To Share common understanding of the structure of information among people or Software agents
  2. To enable reuse of domain knowledge
  3. To make domain assumptions explicit
  4. To separate domain knowledge from the operational knowledge
  5. To Analyze domain knowledge


The guide were build using Protege-2000, ontolingua (1997), and Chimaera (2000) as ontology-editing environments. For Example in this paper, it use Protege 2000


Definition :

Ontology is a formal explisit description of

         concepts in a domain of discourse (classes/concepts),

         properties of each concept,describing various features and  attributes of the concept (slot/roles/properties)

         restriction of slots (facets / role restrictions)


In Practical terms, developing an ontology includes :

         defining classes in the ontology

         arranging the classes in a taxonomic (subclass-superclass) hierarchy

         Defining slots and describing allowed values for these slots

         Filling in the values for slots for instances





Step by Step to develope an Ontology

Example : Wine and food Ontology


1.      Determine the domain and scope of the ontology

To determine domain and scope of ontology we can begin with answer several questions and sketch a list of questions that knowledge base based on the ontology should be answer (say it competency questions)


Example of answer several questions :

1.      What is the domain that the ontology will cover? representation of food and wines

2.      For what we are going to use the ontology ? for application that suggest good combinations of wine and food

3.      For what types of questions the information in the ontology should provide answer? and who will use and maintain the ontology ?

a.       If the ontology we are designing will be used to assist in natural language processing of articles in wine magazines, it may be important to include synonyms and part-of-speech information for concepts in the ontology.

b.      If the ontology will be used to help restaurant customers decide which wine to order, we need to include retail-pricing information.

c.       If it is used for wine buyers in stocking a wine cellar, wholesale pricing and availability may be necessary.


     Example of competency questions :

    1. In the wine and food domain, the following are the possible competency questions:

         Which wine characteristics should I consider when choosing a wine?

         Is Bordeaux a red or white wine?

         Does Cabernet Sauvignon go well with seafood?

         What is the best choice of wine for grilled meat?

         Which characteristics of a wine affect its appropriateness for a dish?

         Does a bouquet or body of a specific wine change with vintage year?

         What were good vintages for Napa Zinfandel?

Judging from this list of questions, the ontology will include the information on various wine characteristics and wine types, vintage years—good and bad ones—classifications of foods that matter for choosing an appropriate wine, recommended combinations of wine and food.


2.      Consider Reusing Existing Ontologies

Reusing existing ontologies may be requirement if our system need to interact with other application that have already commited to particular ontologies or controlled vocabularies. There are library of reusable ontologies on the web (1 and 2 free, 3, 4 and 5 commercial):


List for wines properties can be found in


3.      Enumerate Important Terms in The Ontology

List of all terms we would like either to make statements about or to explain to a user, without worrying about overlap between concepts they represent, relations among the terms, or any properties that the concepts may have, or whether the concepts are classes or slots.


Example : wine, grape, winery, location, a wine’s color, body, flavor and sugar content; different types of food, such as fish and red meat; subtypes of wine such as white wine, and so on.


4.      Define the class and the class hierarchy

In this step we define the classes. To define class hierarchy, there are 3 approach :

  1. Top Down : define the general concept (super class) and then define subclass
  2. Bottom Up : define subclass first and then class and super class
  3. Combination of top down and bottom up. We define the more salient concepts first and then generalize and specialize them appropriately. This approach is the easiest to follow.

We organize the classes into a hierarchical taxonomy by asking if by being an instance of one class, the object will necessarily (i.e., by definition) be an instance of some other class.

If a class A is a superclass of class B, then every instance of B is also aninstance of A In other words, the class B represents a concept that is a “kind of” A.

For example, every Pinot Noir wine is necessarily a red wine. Therefore the Pinot noir. class is a subclass of the Red Wine class.


5.      Define the properties of class – Slots

Each class has properties. The properties of the class will be attached to the class as slots. In general there are several types of object properties that can become slots in ontology :

  1. Intrinsic properties. The intrinsic property of a thing is a property that is essential to the thing, which loses its identity when the property changes. Example : Flavor of the wine.
  2. Extrinsic properties. Example : Property name, area the wine from, etc.
  3. Part, can be physical or abstract.
  4. Relationship. Relationship between individual members of the class and other items. (e.g., the maker of a wine, representing a relationship between a wine and a winery, and the grape the wine is made from.)



6.      Create Instances


To be continue ………………………………………………….