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 [email protected] 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.
============================================================>
_________________________________________________________________
Message Archives: http://ontolog.cim3.net/forum/ontolog-forum/
Config Subscr: http://ontolog.cim3.net/mailman/listinfo/ontolog-forum/
Unsubscribe: mailto:[email protected]
Shared Files: http://ontolog.cim3.net/file/
Community Wiki: http://ontolog.cim3.net/wiki/
To join: http://ontolog.cim3.net/cgi-bin/wiki.pl?WikiHomePage#nid1J
To Post: mailto:[email protected]