On Tue, November 9, 2010 10:23, John F. Sowa said:
> On 11/9/2010 1:24 AM, Alex Shkotin wrote:
>> What do we need for our information systems to communicate properly?
>> Integration? Alignment? Unification? Information system education?
>
> The first point I'd emphasize is that IT systems have been successfully
> communicating for over a century. ...
> When Arpanet was started in 1969, there had been a long history
> of experience in data communication. And the latest conventions
> for the WWW are still based on extensions to those protocols.
I think the question was intended to ask what is needed for information
systems to communicate semantics properly. Since the bit passing has been
perfected, that is obviously not the question.
Even given bit passing methods, the communication was more than just
passing ones and zeros back and forth because the program on the receiving
end expected a certain semantics for the bits it received.
> But you never, ever want those formats to have the slightest
> influence on the semantics.
Agreed.
My answer to what is needed for semantic communication between parties
which have not previously been aware of each other is
* A wrapper for the communication that identifies
+ the ontologies being used
+ the format of the communication
+ possibly a reference to mappings between the specified ontologies
(if they are not "standard") and a standard ontologies.
* A system for the sending system to generate such a wrapper.
* A system for the receiving system
+ to interpret such a wrapper
+ to convert the format into a standard format used locally
+ to use the information about the used ontologies to
- obtain the mappings of the input ontologies to standard ontologies
: either from the wrapper
: or from a source which can be found given the ontology IDs
- either convert the incoming data to a local ontology
- or obtain the ontologies and use them locally with the incoming info
- convert the incoming communication format to a locally used one
> The decision to force OWL into the
> same straitjacket as RDF was hopelessly misguided. In fact, even
> the decision to force decidability down the throats of every
> ontologist was another profoundly misguided technology-driven
> decision. ...
Agreed.
>> What kind of language and dictionary we need to write question? SPARQL?
>> What kind of language and dictionary we need to write answer? XML, CSV?
> Use whatever notation is appropriate for your application. But you
> must design the overall system in such a way that the choice for one
> application is *invisible* to anybody who is designing or using some
> other application.
Sure, but the overall system must either have one (or several) notations
that it uses for communication (either translating input from other
notations into an approved notation or requiring communicating systems
to use its notation) or each transmitting system must translate its
communication into the format desired by the recipient, or each receiving
system must be designed to accept any query language (which would not be
possible).
The simplest method seems to specify communication protocols, just as
the WWW, SWIFT, and EDI systems have done, and let applications programmers
design the interfaces which convert a local systems ontologies, questions,
and knowledge bases into the standard protocol.
As John says below, the ontologist should not have to be concerned with
such low-level detail. However, those designing the SW need to design an
interface and wrapper with such capabilities. (imho)
> Of course, there may be some cases where real-time constraints make it
> necessary to avoid a conversion routine between two systems. But that
> is a very low-level optimization that should never affect the semantics.
> For example, when was the last time that you thought about the packet
> transmissions for your applications? Some system programmers worry
> about those things a lot. But they're invisible at the semantic level.
>
>> Where is your SPARQL end point at least?
>
> When you are thinking about semantics, any thought about the
> difference between SPARQL, SQL, or some bit-level access to data
> is totally irrelevant. Please remember that commercial DB systems
> provide all those ways of accessing the data if some programmer
> who works down at the bit level needs them. But anybody who is
> working on semantics should never think about them (except in
> those very rare cases when they go down to the subbasement to
> talk with system programmers about real-time constraints.)
>
>> JS: "but every application will have... different vocabularies, and
>> different
>> dialects." Inside. But with a stranger we usually change language to
>> common.
> Not necessarily. Sometimes you learn their language, they learn
> your language, or you bring a translator with you.
This emphasizes that such translators are necessary. With N overlapping
ontologies, this could require up to order N^2 translators. However with
one or several standard inter-lingua ontologies, only order N translators
would be necessary.
-- doug f
> But it's essential to distinguish three kinds of languages:
> natural languages, computer languages, and logic.
>
> ...
> Bottom line: The distinction between logic and ontology is so
> important that you should never confuse people with extraneous
> issues about bit strings, angle brackets, or even decidability.
> John
=============================================================
doug foxvog doug@xxxxxxxxxx http://ProgressiveAustin.org
"I speak as an American to the leaders of my own nation. The great
initiative in this war is ours. The initiative to stop it must be ours."
- Dr. Martin Luther King Jr.
=============================================================