Ontologies {DEPRECATED}

In computer science an ontology is an explicit and formal specification of mental abstractions, that conforms to a community agreement about a domain and design for a specific purpose (Gruber, 1993). It is different from the term Ontology (first letter in upper case) used in Philosophy to describe the existing things in the world (Fonseca, 2001). Different abstractions, specifications and agreements exist among communities, so different domain ontologies exist, while only a single Ontology is possible. An ontology provides the structure of the controlled vocabulary similar to a dictionary or a thesaurus. The vocabulary agreed to by a community is the expression of concepts (i.e. mental abstractions) of their domain. Since a concept can be expressed in different ways and differ in meaning from one person to another, the controlled vocabulary helps to solve semantic incompatibilities.

  • F.T. Fonseca, ONTOLOGY-DRIVEN GEOGRAPHIC INFORMATION SYSTEMS, Doctor of Philosophy, The University of Maine, 2001.
  • T. Gruber, A Translation Approach to Portable Ontology Specification., Knowledge Acquisition 5(2), 199-220, 1993.

Ontologies vs. Controlled Vocabularies

A formal specification of a vocabulary can be found as a plain list of words, a dictionary, a taxonomy, an Entity-Relational (ER) diagram, an Object Model in Unified Modeling Language (UML) diagram, an eXtensible Markup Language (XML) schema and possibly many others. What makes a controlled vocabulary an ontology is that in an ontology the concepts are defined explicitly by creating classes. A class is created using a mental abstraction, which can be a classification, an aggregation or a generalization [Batini, 1992]. For example, a list of terms such as USA, Germany, and Colombia do not represent any explicit conceptual relation until an explicit class Country is abstracted to classify them.

In addition to this requirement an ontology needs to conform to strict hierarchical subclass relationships between the classes [Gruber, 1993]. Also, in ontologies the classes have properties and relations among them.

It should be noted that these terms (in particular 'ontology') have been defined many different ways in different publications. Deborah McGuinness, for example, has proposed that an ontology could be construed as including the entire spectrum of controlled vocabularies. We have documented in this FAQ one of the more common discriminators, but other papers and usage may vary.


  • C. Batini, S. Ceri and S.B. Navathe, Conceptual Database Design, The Benjamin/Cummings publishing Company, Inc., Redwood City, California, 1992.
  • T. Gruber, A Translation Approach to Portable Ontology Specification., Knowledge Acquisition 5(2), 199-220, 1993.