Ontology
In philosophy the term ontology is used to indicate a theory of being, which describes "what is" and in some cases by converse "what is not", and the relationships between beings. One of the simplest ontologies is Parmenides': existence is - stop. This rules out distinction among different things, and therefore space, time, quality, yielding a reality devoided of any informative content since a system with only one state can be encoded with zero bits. Although Parmenides' approach raised many interesting philosophical issues at the time it was introduced (the well-known Parmenides' paradoxes) we want more complex ontologies both for theoretical and for practical purposes.An ontology is also the basic vocabulary to start speaking - and reasoning - about anything. As such, communication cannot occur unless the speakers agree on a common ontology, an issue known as ontological commitment. To commit on a common ontology, however, speakers must communicate -- and therefore they must already be both committed to a (perhaps simpler) common ontology, a typical bootstrap problem. To computer scientists ontologies are commonly meant as organized vocabularies to make distributed computing systems interact. Researchers in knowledge representation are usually more precise. A definition from Tom Gruber's "What is an ontology?" (see links below):
In the context of knowledge sharing, I use the term ontology to mean a specification of a conceptualization. That is, an ontology is a description (like a formal specification of a program) of the concepts and relationships that can exist for an agent or a community of agents.
- What is an ontology? From Tom Gruber, Stanford Knowledge System Laboratory.
- Knowledge representation at Mizoguchi lab. Comprehensive.
- Knowledge Sharing Public Library from Stanford University. An example of ontology. A public ontology navigator is available: Log in anonymously for a read-only access. In KIF (Knowledge Interchange Format) language.
- The semantic web homepage.
- The standardization effort at w3.
- Marcia J. Bates, After the Dot-Bomb: Getting Web Information Retrieval Right This Time (on the "ontology" fallacy and the effectiveness of specialized (vs conventional) dictionaries and thesauruses - see TUNES vs the WWW).
Desperately needs improvement, but could be a starter -- schizophonic
One problem with this definition and characterization is that being has nothing to do with existence, so anything mentioned is, regardless of whether it is possible or logically-consistent or such. None of the technical abuses of the word in software engineering seem to acknowledge this. -- water
Could this be the good old difference between About the difference between being and existing, I don't get the point of the idea "if it is, it can be mentioned; if it exists it has a theory/a consistent theory/an implementation behind it". It means that any term of a language "is", and if some semantics is attached on the language, such that you find at least one model for the term, then it also "exists"? I.e. existence as meaning (it exists iff means something)? Well, I wouldn't be so bold, first because you can flexibly attach many semantics (not necessary consistent, you can have paraconsistence if you want), second because... well, it doesn't sound good to me. If you have a class of term you have at least its initial semantics, so what's the point to distinguish? Third because "existence" is not necessarily a feature of nameable things. Initiality indeed expresses the fact that a thing exists (in the model) only if it has a name. I will ask my next-door philosopher for delucidations. Although I think the distinction could work for practical purposes if formulated as such: A term can exists with respect to some kind of semantics. In this sense, for the evaluator of Faré's example FOO
and 'FOO
? Somehow, (EVAL 'FOO)
always has a meaning, so that any nameable concept is, whereas (EVAL FOO)
can fail to converge to an answer, so that some nameable concepts describe things that do not exist. Except that in a reasoning world, EVAL
is much richer than in a simple computing world, since it "returns" all the meaningful behaviour associated to thinking about a concept, not just a one procedure to execute. -- Faré
'FOO
exists but FOO
does not because 'FOO
has a semantics, which is FOO
, and FOO
has no semantics - obviously, relatively to how the specific evaluator gives a semantics to a term. However, 'FOO
and FOO
are because in some theory, i.e. in my_own_theory_of_silly_text_strings, they mean something (4 useless characters and 3 useless characters for myself as an evaluator). Does it make some sense at all? -- schizophonic
This page is linked from: Bootstrap Meta- Metatext Paradigm TUNES vs the WWW