Ontology Basics

The discipline of philosophy is the study of the general and fundamental nature of reality, existence, knowledge, values, reason, mind and language. The Ancient Greek word φιλοσοφία (philosophia) literally means love of wisdom. Traditionally, philosophy has been divided into epistemology, logic, metaphysics, ethics, and aesthetics. Metaphysics is the study of reality and includes the fields of cosmology and ontology. Ontology is the study of being or what there is. It seeks to understand the fundemental questions of what is existence? and what is the nature of existence?

According to the Stanford Encyclopedia of Philosophy ontology has four distinct parts:

  • (O1) the study of ontological commitment, i.e. what we or others are committed to,
  • (O2) the study of what there is,
  • (O3) the study of the most general features of what there is, and how the things there are relate to each other in the metaphysically most general ways,
  • (O4) the study of meta-ontology, i.e. saying what task it is that the discipline of ontology should aim to accomplish, if any, how the questions it aims to answer should be understood, and with what methodology they can be answered.
These parts can be assigned to specific criteria for distinguishing different types of objects (concrete and abstract, existent and nonexistent, real and ideal, independent and dependent) and their ties (relations, dependencies and predication) as formal, descriptive and formalized ontologies.

Formal ontology is the study of being using eidetic reduction coupled with the method of categorial intuition. Descriptive ontology concerns the collection of information about the list of objects that can be dependent or independent items (real or ideal). Finally, formalized ontology attempts to constructs a formal codification for the results descriptively acquired at the preceding levels. Ontology, as a philosophical practice, is an academic endeavor that is tied to each philosopher's epistemology or method of thought. Ontology has a practical use in the development and implementation of knowledge management.

When used to support information technology, an ontology provides a common vocabulary to share information in a generalized or specific domain of interest. An ontology can be used to:

  • share a common understanding of information or data structure,
  • enable the reuse of domain knowledge,
  • make specific and generalized domain assumptions explicit,
  • separate domain knowledge from the operational knowledge,
  • analyze the nature and form of domain knowledge.
It is critical, in an enterprise environment, that sharing a common understanding of the structure of information and data between individuals or software utilities. A central effort of ontological development is to enable the reuse of domain knowledge both within a specified ontological structure and external ontologies. Through explicit domain assumptions it is possible to change these assumptions easily if our knowledge about the domain changes. Hard-coding assumptions about the world in programming-language code makes these assumptions not only hard to find and understand but also hard to change, in particular for someone without programming expertise. In addition, explicit specifications of domain knowledge are useful for new users who must learn the terms within a domain. Separating the domain knowledge from the operational knowledge configuring components according to a required specification and implement a program that does this configuration independently. Finally, analyzing domain knowledge requires a declarative specification of the terms. Formal analysis of terms is extremely valuable when both attempting to reuse existing ontologies and extending them. Often an ontology of the domain is not a goal in itself. Developing an ontology is akin to defining a set of data and their structure for other programs to use. Problem-solving methods, domain-independent applications, and software agents use ontologies and knowledge bases built from ontologies as data.

A Knowledge Engineering Methodology

There is no one correct methodology for developing an ontology. However, there are some general rules:

  1. There is no one correct way to model a domain, there are always viable alternatives. The best solution depends on the application targeted for use and anticipated extensions.
  2. Ontology development is necessarily an iterative process.
  3. Concepts should be close to objects (physical or logical) and relationships in the domain of interest.
The initiation of ontology development is the first pass at the ontology. It is then refined and revised to fill gaps in detail. The ontologist needs to make clear specifications of the domain defining the pros, cons, and implications of different ontological solutions. The ontologist must decide the use of the ontology and the level of detail required to build the structure. These decisions will guide many of the modeling decisions during the evolution. These alternatives will need to be assessed to determine viability, which will be more intuitive, more extensible, and more maintainable. The ontologist must remember that an ontology is a model of reality, the concepts in the ontology must reflect this reality. The initial version is then evaluated and revised again until the ontology meets the requirements throughout the lifecycle of the ontology.

There is a basic process developed by Natalya F. Noy and Deborah L. McGuinness from Stanford University, that should form the foundation of all ontology development projects.