It was getting a bit late when I responded to Adrian and I see now some
omitted words, misspellings, and clumsy constructions that might be
hard to parse. A few comments are overly terse as well. Permit me fix
it up and elaborate a bit.|
Adrian Walker wrote:
Someone pointed out at a meeting a while back the irony that
"semantics" is one of the most ambiguous words that we use when
talking about ontologies and the like. (Perhaps the ambiguity is a
plus for funding, but a minus for productive technical discussions?)
I have made a modest attempt to start clearing out the ambiguous
underbrush by suggesting the terms:
Semantics 1 Interleaving of metadata with data, e.g. as in RDF
Semantics 2 what conclusions a reasoning engine *should* be able
to infer from any set of rules and facts
Semantics 3 the meaning of English concepts at the author- and
of a system.
There's more about this in [1,2].
>From a practitioner point of view, the three kinds of Semantics have
to "play nicely" together in one system, e.g. as in .
If one takes this admittedly unconventional point of view, it seems at
least to help to keep the history of philosophy and AI in
perspective. One can then start to focus on more recent technical
issues, such as how to be more ambitious about robust processing of
natural language without falling off the "AI-complete" cliff.
What do you think?
Well, since you asked... ;-) I don't think either of your first two senses of "semantics" has much of anything to do with semantics at all. In the case of Semantics 1, I guess it would be more accurate to say that I don't understand the idea well enough to see the connection to semantics as I understand it. But given that you use RDF as an example, I'm pretty sure that it is not anything like what I would call semantics. RDF itself is just a language; there is nothing semantic about it in and of itself. It *has* a semantics -- specifically, the model theory defined for it by Pat Hayes (http://www.w3.org/TR/rdf-mt). But RDF itself is just not a semantical thingy. Moreover, RDF proper is, expressively speaking, *extraordinarily* weak; any "interleaving" of data and metadata in RDF has no formal foundation at all, but rests only upon the intuitive, informal meanings that users assign to certain of its
syntactic primitives. Only with RDFS do you begin get a framework capable of making some reasonably robust assertions; much moreso with OWL.
As for Semantics 2, I'd have to say that I find the use of "semantics" for something that appears to be purely proof theoretic to be, well, somewhat perverse. :-) Proofs and semantic interpretations are *utterly* separate things, though if God smiles and we've set up our system properly, we can prove a completeness theorem to show that our proof theory and our semantic theory are in a sort of pre-established harmony wherein provability and semantical entailment are in complete agreement.
Moreover, what can it even mean to say that a reasoning engine *should* be able to infer a sentence B from a set S? Given a (well-defined) reasoning engine, for any sentence B and set S, either the engine will (eventually, given proper initial tweaking perhaps) infer B or it won't. (Of course, we may never be able to prove which, but one or the other is the case.) The only use I can see for the notion here is in the evaluation of a reasoning engine's completeness; e.g., if one has a provably decidable system, then any reasoning engine designed for it *should* be able to compute any entailment. But I don't see anything semantic about the inferential capacities of a reasoning engine per se, as Semantics 2 seems to imply.
Semantics 3 of course says something about meaning, so it is, in my eyes, a genuine notion of semantics, but it is so vague that it is difficult to see how it could be useful.
I don't think that my own idea of semantics is complicated or at all out of the ordinary. In fact, I think there are now two related but quite different notions in the wind, one of which is primary. Semantics in the more traditional sense has to do with the word/world connection (with "world" understood in the broadest sense); a semantics for a language identifies the types of meanings appropriate to the various syntactic types in the language and accounts for the manner in which the
meanings of complex syntactic expressions depend upon the meanings of their (semantically significant) component parts. Most notably, a semantics in this sense tells us how the *truth* of a sentence depends on the meanings (typically, the denotations) of its component parts. Classical model theory for formal languages is the most rigorous example of semantics in this sense.
A secondary sense is the one that seems meant by the word "semantic" in "semantic web". "Semantics" in this sense doesn't have much of anything to do with providing a systematic account of meaning for a language. Rather, one "adds semantics" to the terms of a given language by writing axioms that *constrain* their interpretations -- their semantics in the above sense -- and hence that both convey a clearer sense of the intended meanings of those terms to users and provide automated reasoners sufficient grist to be able to draw useful inferences from input containing those terms. Semantics in this sense, therefore, seems to me pretty much identical to the construction of formal ontologies.
Since axioms constrain the interpretations of terms, semantics in the second sense presupposes semantics in the above sense, conceptually at least.
So sez I, anyway. :-)
Message Archives: http://colab.cim3.net/forum/ontac-forum/
To Post: mailto:ontac-forum@xxxxxxxxxxxxxx
Shared Files: http://colab.cim3.net/file/work/SICoP/ontac/