John,
I believe that most or all of your concerns can be addressed by using a
common primitives-based foundation ontology (PIFO). The principle requires
that all ontologies that intend to interoperate use only a common set of
primitives with which they logically specify the meanings of all of their
local terms. Then each local ontology (which imports as much as necessary
of the common PIFO) will generate only inferences that are logically
consistent with the inferences generated from the same data by other
applications, even if additional axioms are added locally. Adding a
constraint to a PIFO class generates a logical subclass, and if the subclass
is used as if it were the parent class, this would be an outright error and
misuse of the PIFO; and when two separately developed ontology-based
applications want to interoperate, then to share data it is necessary for
them to share any local relevant axioms that are not in the common PIFO.
The translation mechanism will detect logical contradictions if they have
been inadvertently generated, and if no errors are detected it will be able
to translate the terms. (01)
There will still be issue to address, but the meanings of the basic terms
in the PIFO will be preserved in any interoperability scenario, because
contradictions can be detected when local definitions are shared that
(erroneously) change definitions.
Among the problems that would still arise are, for example:
(1) the absence of a subclass in one ontology that exists in another
ontology. A query from the more detailed ontology for instances of such a
subclass can only return instances of the common parent class, which will be
ambiguous to the more detailed ontology. There needs to be a mechanism to
make it clear that such 'answers' do not have the same detail as may be
desired, and the local systems need to decide how to handle such ambiguity.
This problem is always potentially present for separately developed
ontologies (or languages) and cannot be overcome by any automatic mechanism.
(2) Differing logical specifications of the same intended meaning in
different local ontologies. To the translation mechanism, these will be
different types (or relations). If the difference is resolvable as
subtypes, then returning the common parent may be enough for the querying
system. If the difference is more complicated, then there may be no easy
way to compare possible matches. But it may turn out that algorithms can be
developed for specific types of ambiguity to help systems get the most from
each others' data. This problem will, I expect, be mitigated over time by
development of larger mid-level and domain-specific public ontologies based
on the common PIFO, so that ontology elements satisfactory to multiple
parties can be identified and used consistently across multiple
applications, reducing the chance of creating local definitions with the
same intended meaning that are different. (02)
Although a PIFO does not *guarantee* accurate automatic interoperability,
if the above problems exist, it does provide, I believe that *best possible*
solution to the interoperability problem. (03)
How many concepts must the PIFO represent? I expect, from my work with
COSMO, that fewer than 10,000 elements will be needed, though to
conveniently and perspicuously support basic natural language (for
controlled natural-language input and query) the number actually used may be
a little larger than the minimum. Learning how to use such an ontology will
likely require as much effort as learning to speak the basics of a foreign
language - which people do routinely when they have the motivation. The
good news is that, in any given organization, only *one* person will need to
be bilingual in the PIFO and the local terminology, and that person can map
the local databases to the PIFO. In this way, there are no constraints on
what terms or programs a local group uses to solve their problems, but they
will need to be able to translate their local terms (or at least the ones
they want to share) to some common PIFO, *if* they want to interoperate
accurately. (04)
Over time, as additional applications are mapped to the PIFO, the number
of primitives may increase. This is to be expected, but the frequency is
likely to decrease over time to some asymptotic number. It has been
remarked that there may be a very large number of nuances of meaning
attached to certain words in common use, but those nuances can themselves be
represented by the use of the primitives in the PIFO; an infinite number of
meanings can be generated by combinations of the basic concepts (including,
for example, the real numbers). (05)
Pat (06)
Patrick Cassidy
MICRA Inc.
cassidy@xxxxxxxxx
908-561-3416 (07)
-----Original Message-----
From: ontolog-forum-bounces@xxxxxxxxxxxxxxxx
[mailto:ontolog-forum-bounces@xxxxxxxxxxxxxxxx] On Behalf Of John F. Sowa
Sent: Monday, February 27, 2012 9:10 AM
To: ontolog-forum@xxxxxxxxxxxxxxxx
Subject: Re: [ontolog-forum] What goes into a Lexicon? (08)
David E, Amanda, David P, (09)
DE
> How ontologies could add value, I don't have a clue, since as far as
> I know it's a hard& fast ontological rule that requires a term to
> have a single definition/meaning... an extremely unrealistic
> constraint for this sort of ugly real world challenge. [If I've got
> this wrong, please set me straight.] (010)
The only hard and fast rule is that anybody who thinks there is
a hard and fast rule is almost certainly wrong. (011)
There are two issues here: (1) the use of URIs to point to unique
definitions of word senses in natural languages, and (2) their
use to define unique meanings in some formally defined theories. (012)
For both of these issues, the hope that URIs will magically solve
all the problems of ambiguity and interoperability is, so to speak,
forlorn. In other words, it's pie in the sky after you die. (013)
DE
> Imposing an organized ontology on this disorganized language
> collection probably isn't going be of much help. (014)
I agree. That is issue #1 about URIs for NL word senses.
Some issues: (015)
1. Who is going to decide which unique URI to use in any particular
case? Dictionaries developed by professional lexicographers
disagree on the number of senses for most words. Even when
expert linguists annotate texts from a fixed selection of word
senses, a rate of agreement of 95% is rare. (016)
2. The error rates for statistical methods for choosing word senses
are far worse than the rates by professionals, but they are often
better than the choices by untrained native speakers. Yet the
error rates for both are so high that the illusion of precision
is just that -- an illusion. (017)
3. I'm not saying that annotating NL documents is bad. But I'm just
saying that you can't assume that those annotations have the kind
of precision that is necessary for complex deductions. They might
be useful for many purposes, but you can't assume that they will
guarantee the kind of precision that logicians feel comfy with. (018)
So let's move on to the use of URIs for interoperability among
different computer systems that have formally defined theories. (019)
1. Take a simple case, where we have a collection of terms defined
in some version of logic, say predicates in FOL or classes in OWL.
We'll start with just three terms -- A, B, and C -- each of which
is a URI that points to a definition of each one in terms of the
others. I'll just use 3 for convenience, but you can have any
number of terms. And let's assume that those definitions will
remain unchanged -- that's a big assumption, given the way the
WWW works, but let's assume that nobody changes the definitions. (020)
2. Now suppose that we have two computer systems X and Y that
import the definitions of A, B, and C and combine them with
theories that add lots of further information, including many
independently developed axioms and definitions of other terms
that are private to each. Those new axioms will assert new
relationships among A, B, and C. How can we be sure that
the independently defined extensions in X and Y will remain
consistent with one another? (021)
3. To be specific, let's suppose that those terms A, B, C...
take common words like 'person', 'employee', 'name', 'address',
'salary', 'manager', etc., and give them precise definitions.
Then the systems X and Y each add different info that customize
those definitions by adding new info, but without changing the
base definitions specified by the URIs. Can we be sure that
those independently defined customizations will be consistent? (022)
4. Suppose that systems X and Y interchange messages that use
only the common terms that are specified by the URIs. But
internally, each system adds different statements about them.
In X, all the added info in X is consistent with the base
definitions. In Y, all the added info in Y is consistent
with the base definitions. But how can we be sure that the
independently added info in X and Y will not create conflicts
when the "same" message using the "same" definitions is
interpreted in each system? (023)
5. These issues imply that meanings depend on more than generic
definition specified by a URI. In each context in which you
use those terms, other statements will add more "meaning" --
i.e., they will specialize the terms further. If you use those
same terms in different contexts, the meanings will be specialized
in different ways. (024)
6. Does that mean you need a different URI for every use of a term
in every possible context? Do you have to change the URI each
time you add one more axiom to the context in which it is used?
If two different systems are going to share data that uses the
same terms, but they use them in different ways internally,
how could URIs resolve these issues? (025)
These issues, by the way, plague every large system in the world.
Developers try to keep the definitions consistent when they go from
from version 1.0 to 2.x, to y.z -- but they can't really depend on
complete consistency. Just look at the updates you keep getting
from your favorite vendors. (026)
AV
> And, before somebody wonders how one could possibly work with and edit
> a massive ontology like that without readable names, the answer is,
> more easily than ever. You could view the concepts by ID only, or
> with the parenthetical inclusion of a preferred label in your
> language of choice. (027)
I agree that the URI (Unreadable Resource Identifier) is the official
name. But by itself, that doesn't solve either (1) the NL issues
about choosing word senses or (2) the formal logic issues about
using the "same" definitions in different formal contexts. (028)
DP
> The meaning that's interesting to a user of any system (ontology or not)
> are in the algorithms, visualizations and analysis that depend completely
> on what the concepts of interest mean in the language of the discipline
> in which the application is used. That language is almost completely based
> on text read by a human - the software developer. (029)
That is a good point: even when all terms are defined and used in
formal languages (logic or procedures), the people who use those
formal languages read the informal NL text -- not the formal
definitions specified by the URI. That mixes issues (1) and (2). (030)
Leo (031)
_________________________________________________________________
Message Archives: http://ontolog.cim3.net/forum/ontolog-forum/
Config Subscr: http://ontolog.cim3.net/mailman/listinfo/ontolog-forum/
Unsubscribe: mailto:ontolog-forum-leave@xxxxxxxxxxxxxxxx
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 (032)
_________________________________________________________________
Message Archives: http://ontolog.cim3.net/forum/ontolog-forum/
Config Subscr: http://ontolog.cim3.net/mailman/listinfo/ontolog-forum/
Unsubscribe: mailto:ontolog-forum-leave@xxxxxxxxxxxxxxxx
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 (033)
|