Because today’s information systems work predominantly with data, the process of transforming this data into information lies in the programs themselves, which together with the end-user, are putting data into context thus transforming it into information. This is adequate for many operations but in some cases it would be useful if information systems would be capable of transforming at least part of the data into information and manipulate that information into creating more concise, humanly manageable results: A web search is very good such example, where the cause for the massive amount of inconclusive responses is a result of applications treating page content as data and not as information. They can match text in the search, but they cannot put that text into context and so they cannot give answers to questions but rather just statistical matching between texts.
Ontologies are frameworks that allow information, not data, to be transposed into computing environment, in such ways that it is possible to perform an analytical information extraction process instead of a simple statistical matching. To put it in perspective, the two representations:
- Example 21,
- “John is Human” – data represented as a sequence of characters
- “Is (John, Human)” – information stored as a proposition
In the first case a computer program is capable of finding occurrences of texts like “John” and can respond whether the text can be found in the given source text or not, whereas in the second case, a computer can actually observe a relation that exists between John and Human. As such, from the standpoint of the “is” relation, the second structure is actually information, not only data.
In the world of computer science, ontologies, are information packages which can be used by a computing system to perform context dependent operations. In this case, the context is the ontology itself, and the information declaration is the data pool on which operations take place. To return to the upper example, a very simplistic ontology for the proposition 2. would contain the definitions of:
- Example 22,
- Human – living human being
- Is – a relation denoting inclusion in a class or set
As such, a data package that contains the word John and the relation Is (John, Human), could tell a computer system that whatever “John” is (or whatever the character array [J, h, o, n] stands for), it is a Human, within the context of the Ontology. This makes the ontology the context that gives the data in the packet information character.
The Holy Grail behind the ontology is an ontology that is generic and complete enough to serve as context for any data that can be extracted from the human world. If that were true, there could be a computing system that could answer virtually any question in a pertinent way, akin to artificial intelligence, rather than just search for raw occurrences of sets of characters. Unfortunately, the human existence is so complex that all present ontologies fail either the generic or the complete criteria and in most cases both. This gives way to opinions and trends to emerge the result of which is many, many, ontologies in most cases conceptually overlapping.