Ontology (information science)


In computer science and information science, an ontology encompasses a representation, formal naming and definition of the categories, properties and relations between the concepts, data and entities that substantiate one, many or all domains of discourse. More simply, an ontology is a way of showing the properties of a subject area and how they are related, by defining a set of concepts and categories that represent the subject.
Every academic discipline or field creates ontologies to limit complexity and organize data into information and knowledge. New ontologies improve problem solving within that domain. Translating research papers within every field is a problem made easier when experts from different countries maintain a controlled vocabulary of jargon between each of their languages.

Etymology

The compound word ontology combines -, from the Greek, on, i.e. "being; that which is", which is the present participle of the verb, eimí, i.e. "to be, I am", and, , i.e. "logical discourse", see classical compounds for this type of word formation.
While the etymology is Greek, the oldest extant record of the word itself, the New Latin form ontologia, appeared in 1606 in the work Ogdoas Scholastica by Jacob Lorhard and in 1613 in the Lexicon philosophicum by Rudolf Göckel.
The first occurrence in English of ontology as recorded by the OED came in Archeologia Philosophica Nova or New Principles of Philosophy by Gideon Harvey.

Overview

What ontologies in both information science and philosophy have in common is the attempt to represent entities, ideas and events, with all their interdependent properties and relations, according to a system of categories. In both fields, there is considerable work on problems of ontology engineering, and debates concerning to what extent normative ontology is possible. Applied ontology is considered a spiritual successor to prior work in philosophy, however many current efforts are more concerned with establishing controlled vocabularies of narrow domains than first principles, the existence of fixed essences or whether enduring objects may be ontologically more primary than processes.
Every field uses ontological assumptions to frame explicit theories, research and applications. For instance, the definition and ontology of economics is a primacy concern in Marxist economics, but also in other subfields of economics. An example of economics relying on information science occurs in cases where a simulation or model is intended to enable economic decisions, such as determining what capital assets are at risk and by how much.
Artificial intelligence has retained the most attention regarding applied ontology in subfields like natural language processing within machine translation and knowledge representation, but ontology editors are being used often in a range of fields like education without the intent to contribute to AI.

History

Ontologies arise out of the branch of philosophy known as metaphysics, which deals with questions like "what exists?" and "what is the nature of reality?". One of five traditional branches of philosophy, metaphysics, is concerned with exploring existence through properties, entities and relations such as those between particulars and universals, intrinsic and extrinsic properties, or essence and existence. Metaphysics has been an ongoing topic of discussion since recorded history.
Since the mid-1970s, researchers in the field of artificial intelligence have recognized that knowledge engineering is the key to building large and powerful AI systems. AI researchers argued that they could create new ontologies as computational models that enable certain kinds of automated reasoning, which was only marginally successful. In the 1980s, the AI community began to use the term ontology to refer to both a theory of a modeled world and a component of knowledge-based systems. In particular, David Powers introduced the word ontology to AI to refer to real world or robotic grounding, publishing in 1990 literature reviews emphasizing grounded ontology in association with the call for papers for a AAAI Summer Symposium Machine Learning of Natural Language and Ontology, with an expanded version published in SIGART Bulletin and included as a preface to the proceedings. Some researchers, drawing inspiration from philosophical ontologies, viewed computational ontology as a kind of applied philosophy.
In 1993, the widely cited web page and paper "Toward Principles for the Design of Ontologies Used for Knowledge Sharing" by Tom Gruber used ontology as a technical term in computer science closely related to earlier idea of semantic networks and taxonomies. Gruber introduced the term as a specification of a conceptualization:
An ontology is a description of the concepts and relationships that can formally exist for an agent or a community of agents. This definition is consistent with the usage of ontology as set of concept definitions, but more general. And it is a different sense of the word than its use in philosophy.

Attempting to distance ontologies from taxonomies and similar efforts in knowledge modeling that rely on classes and inheritance, Gruber stated :
Ontologies are often equated with taxonomic hierarchies of classes, class definitions, and the subsumption relation, but ontologies need not be limited to these forms. Ontologies are also not limited to conservative definitions — that is, definitions in the traditional logic sense that only introduce terminology and do not add any knowledge about the world. To specify a conceptualization, one needs to state axioms that do constrain the possible interpretations for the defined terms.

As refinement of Gruber's definition Feilmayr and Wöß stated: "An ontology is a formal, explicit specification of a shared conceptualization that is characterized by high semantic expressiveness required for increased complexity."

Components

Contemporary ontologies share many structural similarities, regardless of the language in which they are expressed. Most ontologies describe individuals, classes, attributes and relations. In this section each of these components is discussed in turn.
Common components of ontologies include:
; Individuals
; Classes
; Attributes
; Relations
; Function terms
; Restrictions
; Rules
; Axioms
; Events
Ontologies are commonly encoded using ontology languages.

Types

Domain ontology

A domain ontology represents concepts which belong to a realm of the world, such as biology or politics. Each domain ontology typically models domain-specific definitions of terms. For example, the word :wikt:card|card has many different meanings. An ontology about the domain of poker would model the "playing card" meaning of the word, while an ontology about the domain of computer hardware would model the "punched card" and "video card" meanings.
Since domain ontologies are written by different people, they represent concepts in very specific and unique ways, and are often incompatible within the same project. As systems that rely on domain ontologies expand, they often need to merge domain ontologies by hand-tuning each entity or using a combination of software merging and hand-tuning. This presents a challenge to the ontology designer. Different ontologies in the same domain arise due to different languages, different intended usage of the ontologies, and different perceptions of the domain.
At present, merging ontologies that are not developed from a common upper ontology is a largely manual process and therefore time-consuming and expensive. Domain ontologies that use the same upper ontology to provide a set of basic elements with which to specify the meanings of the domain ontology entities can be merged with less effort. There are studies on generalized techniques for merging ontologies, but this area of research is still ongoing, and it's a recent event to see the issue sidestepped by having multiple domain ontologies using the same upper ontology like the OBO Foundry.

Upper ontology

An upper ontology is a model of the commonly shared relations and objects that are generally applicable across a wide range of domain ontologies. It usually employs a core glossary that overarches the terms and associated object descriptions as they are used in various relevant domain ontologies.
Standardized upper ontologies available for use include BFO, BORO method, Dublin Core, GFO, Cyc, SUMO, UMBEL, the Unified Foundational Ontology, and DOLCE. WordNet has been considered an upper ontology by some and has been used as a linguistic tool for learning domain ontologies.

Hybrid ontology

The Gellish ontology is an example of a combination of an upper and a domain ontology.

Visualization

A survey of ontology visualization methods is presented by Katifori et al. An updated survey of ontology visualization methods and tools was published by Dudás et al. The most established ontology visualization methods, namely indented tree and graph visualization are evaluated by Fu et al. A visual language for ontologies represented in OWL is specified by the Visual Notation for OWL Ontologies .

Engineering

is a set of tasks related to the development of ontologies for a particular domain. It is a subfield of knowledge engineering that studies the ontology development process, the ontology life cycle, the methods and methodologies for building ontologies, and the tools and languages that support them.
Ontology engineering aims to make explicit the knowledge contained in software applications, and organizational procedures for a particular domain. Ontology engineering offers a direction for overcoming semantic obstacles, such as those related to the definitions of business terms and software classes. Known challenges with ontology engineering include:
  1. Ensuring the ontology is current with domain knowledge and term use
  2. Providing sufficient specificity and concept coverage for the domain of interest, thus minimizing the content completeness problem
  3. Ensuring the ontology can support its use cases

    Editors

Ontology editors are applications designed to assist in the creation or manipulation of ontologies. It is common for ontology editors to use one or more ontology languages.
Aspects of ontology editors include: visual navigation possibilities within the knowledge model, inference engines and information extraction; support for modules; the import and export of foreign knowledge representation languages for ontology matching; and the support of meta-ontologies such as OWL-S, Dublin Core, etc.
NameWritten inLicenseFeaturesPublisher/creator
a.k.a. softwareOntology, taxonomy and thesaurus management softwareThe Synercon Group
Anzo for ExcelIncludes an RDFS and OWL ontology editor within Excel; generates ontologies from Excel spreadsheetsCambridge Semantics
Be Informed SuiteCommercialtool for building large ontology based applications. Includes visual editors, inference engines, export to standard formats
CENtreeJavaCommercialWeb based client-server ontology management tool for life sciences, supports OWL, RDFS, OBOSciBite
ChimaeraOther web serviceStanford University
CmapToolsJava basedOntology Editor ontology editor Supports numerous formatsFlorida Institute for Human and Machine Cognition
dot15926 EditorPython?Open sourceontology editor for data compliant to engineering ontology standard ISO 15926. Allows Python scripting and pattern-based data analysis. Supports extensions.
EMFText OWL2 Manchester EditorEclipse-basedopen-sourcePellet integration
Enterprise Architectalong with UML modeling, supports OMG's Ontology Definition MetaModel which includes OWL and RDFSparx Systems
Fluent Editorontology editor for OWL and SWRL with Controlled Natural Language. Supports OWL, RDF, DL and Functional rendering, unlimited imports and built-in reasoning services.
Gra.foFree and CommercialA visual, collaborative and real time ontology and knowledge graph schema editor. Features include sharing documents, commenting, search and tracking history. Support W3C Semantic Web standards: RDF, RDFS, OWL and also Property Graph schemas.Capsenta
HOZOJavagraphical editor especially created to produce heavy-weight and well thought out ontologiesOsaka University and Enegate Co, ltd.
Java Ontology Editor JavaCan be used to create and browse ontologies, and construct ontology based queries. Incorporates abstraction mechanisms that enable users to manage large ontologiesCenter for Information Technology, Department of Electrical and Computer Engineering, University of South Carolina
KAONopen sourcesingle user and server based solutions possibleFZI/AIFB Karlsruhe
KMgenOntology editor for the KM language. km: The Knowledge Machine
KnoodlFreeweb application/service that is an ontology editor, wiki, and ontology registry. Supports creation of communities where members can collaboratively import, create, discuss, document and publish ontologies. Supports OWL, RDF, RDFS, and SPARQL queries.Revelytix, Inc..
Menthor EditorAn ontology engineering tool for dealing with OntoUML. It also includes OntoUML syntax validation, Alloy simulation, Anti-Pattern verification, and transformations from OntoUML to OWL, SBVR and Natural Language
Model Futures IDEAS AddInfreeA plug-in for Enterprise Architect] that allows IDEAS Group 4D ontologies to be developed using a UML profile
Model Futures OWL EditorFreeAble to work with very large OWL files and has extensive import and export capabilities
myWebJavamySQL connection, bundled with applet that allows online browsing of ontologies
Neologismbuilt on Drupalopen sourceWeb-based, supports RDFS and a subset of OWL
NeOn ToolkitEclipse-basedopen sourceOWL support, several import mechanisms, support for reuse and management of networked ontologies, visualization, etc.NeOn Project
OBISWeb based user interface that allows users to input ontology instances that can be accessed via SPARQL endpoint
OBO-EditJavaopen sourcedownloadable, developed by the Gene Ontology Consortium for editing biological ontologies. OBO-Edit is no longer actively developedGene Ontology Consortium
OntosightFree and CommercialMachine learning-based auto-scaling biomedical ontology combining all public biomedical ontologiesInnoplexus
OntoStudioEclipsedownloadable, support for RDF, OWL and ObjectLogic, graphical rule editor, visualizationssemafora systems
OntolinguaWeb serviceStanford University
ONTOLISCommercialCollaborative web application for managing ontologies and knowledge engineering, web-browser-based graphical rules editor, sophisticated search and export interface. Web service available to link ontology information to existing dataONTOLIS
Open Semantic Framework an integrated software stack using semantic technologies for knowledge management, which includes an ontology editor
OWLGrEdA graphical ontology editor, easy-to-use
PoolParty Thesaurus ServerCommercialontology, taxonomy and thesaurus management software, fully based on standards like RDFS, SKOS and SPARQL, integrated with Virtuoso Universal ServerSemantic Web Company
ProtégéJavaopen sourcedownloadable, supports OWL, many sample ontologiesStanford University
ScholOntonet-centric representations of research
Semantic TurkeyFirefox extension - based on Javafor managing ontologies and acquiring new knowledge from the Webdeveloped at University of Rome, Tor Vergata
Sigma knowledge engineering environmentis a system primarily for development of the Suggested Upper Merged Ontology
SwoopJavaopen sourcedownloadable, OWL Ontology browser and editorUniversity of Maryland
Semaphore Ontology ManagerCommercialontology, taxonomy and thesaurus management software. Tool to manage the entire "build - enhance - review - maintain" ontology lifecycle.Smartlogic Semaphore Limited
SynapticaOntology, taxonomy and thesaurus management software. Web based, supports OWL and SKOS.Synaptica, LLC.
TopBraid ComposerEclipse-baseddownloadable, full support for RDFS and OWL, built-in inference engine, SWRL editor and SPARQL queries, visualization, import of XML and UMLTopQuadrant
TransinsightEditor especially designed for creating text mining ontologies and part of GoPubMed.org
WebODEWeb serviceTechnical University of Madrid
TwoUse ToolkitEclipse-basedopen sourcemodel-driven ontology editing environment especially designed for software engineers
Thesaurus MasterManages creation and use of ontologies for use in data management and semantic enrichment by enterprise, government, and scholarly publishers.
TODE.NetTool for Ontology Development and Editing
VocBenchCollaborative Web Platform for Management of SKOS thesauri, OWL ontologies and OntoLex lexicons, now in its third incarnation of the EUoriginally developed on a joint effort between University of Rome Tor Vergata and the Food and the Agriculture Organization of the United Nations: FAO

Learning

Ontology learning is the automatic or semi-automatic creation of ontologies, including extracting a domain's terms from natural language text. As building ontologies manually is extremely labor-intensive and time-consuming, there is great motivation to automate the process. Information extraction and text mining have been explored to automatically link ontologies to documents, for example in the context of the BioCreative challenges.

Languages

An ontology language is a formal language used to encode an ontology. There are a number of such languages for ontologies, both proprietary and standards-based:
The W3C Linking Open Data community project coordinates attempts to converge different ontologies into worldwide Semantic Web.

Libraries

The development of ontologies has led to the emergence of services providing lists or directories of ontologies called ontology libraries.
The following are libraries of human-selected ontologies.
The following are both directories and search engines.
In general, ontologies can be used beneficially in several fields.