Ontologies have been devised
from Aristotle's categories for analyzing the concepts
underlying our thinking to Lenat's CYC for synthesizing the knowledge
underlying an artificial intelligence.
Here, we give recent definitions of "ontology", developed in
the field of computer science (CS), in particular artificial intelligence (AI).
Thomas R. Gruber (1994):
An ontology is an explicit specification of a conceptualization.
The term is borrowed from philosophy, where an ontology is a systematic account of
Existence. For AI systems, what "exists" is that which can be represented.
Nicola Guarino (1995/1997):
An ontology is an explicit, partial account of a conceptualization / the intended models of a logical language.
John F. Sowa (1997):
The subject of _ontology_ is the study of the _categories_ of things
that exist or may exist in some domain. The product of such a study,
called _an ontology_, is a catalog of the types of things that are
assumed to exist in a domain of interest D from the perspective of a
person who uses a language L for the purpose of talking about D. The
types in the ontology represent the _predicates_, _word senses_, or
_concept and relation types_ of the language L when used to discuss
topics in the domain D. An uninterpreted logic, such as predicate
calculus, conceptual graphs, or KIF, is _ontologically neutral_. It
imposes no constraints on the subject matter or the way the subject may
be characterized. By itself, logic says nothing about anything, but
the combination of logic with an ontology provides a language that can
express relationships about the entities in the domain of interest.