"

Enumerations of domain concepts— and of relationships among the concepts— are referred to as domain ontologies. An ontology provides a domain of discourse that is understandable by both developers and computers, and that can be used to build knowledge bases containing detailed descriptions of particular application areas.

Ontologies represent convenient ways of characterizing a set of concepts and relationships in an application area. They do not, and cannot, capture absolute Platonic truths about what might exist in the world. The merits of a particular ontology can be measured only in terms of how well that ontology supports development of the application programs for which it was designed, and of how easy it is for developers to reuse that ontology to build new applications.

Just as a schema provides the organizing framework for a database, an ontology provides the framework for a domain knowledge base. Although specific ontologies rarely are reusable in toto from one application to the next, they often provide considerable guidance when developers wish to create new systems in the same domain.

"

— Mark A. Musen  (Ontology -Oriented Design and Programming)