Dear John, (01)
Well, for the record, I conjecture that there is not a finite set of
primitives from which any and all ontologies can be defined, but leaving
that aside, see some comments below. (02)
> First, I'd like to recommend Pat's slides for a good summary
> of an approach to ontology based on primitives:
>
> http://www.micra.com/COSMO/TheFoundationOntologyForInteroperability.ppt
>
> Although I like the slides as a summary of the approach, I still
> have serious concerns about their assumptions:
>
> 1. If you have N ontologies, the number of mappings from each to each
> is N^2. But if you have a single universal ontology, you could
> reduce the total to 2N mappings of the universal ontology to and
> from each of the others. (03)
[MW] This I have much more sympathy with. I'm not sure how attainable it is,
but even if it were not fully attainable, there is still much value in its
pursuit, and I can quote examples where millions of dollars have been saved
in practice by taking some "ontologies" and integrating them through a
single ontology (ISO 15926) (whether or not it is actually universal does
not affect the benefits for particular cases).
>
> The first assumption is true *only* for the formally defined systems
> of mathematics, logic, and computer science in which each term has
> precisely one meaning. Even a slight variation in the meaning of a
> single term can introduce inconsistencies that cause total collapse. (04)
[MW] Why? You are assuming that in the unifying ontology, the terms from the
integrated ontologies are used. There is no need for this, only a mapping to
and fro.
>
> Another criticism of #1 is illustrated by the universal intermediate
> languages (ILs) often used in multi-language compilers, such as the Gnu
> compilers. Those languages can be compiled to a common form because
> they were *designed* to be compiled to a precisely defined machine
> code.
> The IL is just a generic machine code that is somewhat more systematic
> and regular than most popular computers.
>
> But a serious problem arises when trying to use the IL in a universal
> translator between source languages, say FORTRAN -> IL -> C++, or
> FORTRAN 90 -> IL -> FORTRAN IV.
>
> That kind of translation can be done for some simple expressions,
> but serious difficulties arise in trying to support features of
> C++ that are not present in FORTRAN or features that are similar,
> but not identical in the two languages. (05)
[MW] Well there is the "no magic" clause, which goes like this: you can't
translate from one "language" to another, something which is outside the
expressive capability of either. You might think this was a big problem, but
in practice if the capability is not there, then (usually) neither is the
interest - or else it was a very poor choice of language.
>
> Even an expression like A+B creates problems because of all the
> variations of data types in each of the languages. For a simple
> add of two integers, problems arise because of different ways
> of handling overflow exceptions in the two languages. An exact
> translation of A+B to another language would have to supplement
> the code with a library of error handling routines that would
> accommodate all the variations in exception handling that are
> different in the two languages. (06)
[MW] All the more reason it seems to me to only have to do this once...
>
> Because of these issues, *nobody* uses the IL of the Gnu compilers
> to do translations of any Gnu language to any of the others.
> It is just not practical. (07)
[MW] Well, there are two possibilities you have to eliminate before you can
make any claims here. (08)
1. The IL is not actually that good - just because something has been done
badly, does not mean it cannot be done well. Can you demonstrate that the IL
is the best possible IL? (09)
2. The number of languages people wish to translate between is rather small,
in which case, it is quite likely that bespoke translators will be the more
economical solution. However, when the number of languages/ontologies is in
the hundreds to thousands, I suggest that point to point translators do not
offer a practical solution. Indeed, the last 20 years of IT in business has
seen successive rounds of integration of applications as a response to this
impracticality. (010)
<snip>
>
> I don't believe that the world should have a single ruling monarch
> or dictator. All previous attempts to establish one have been
> unpleasant or worse. Some religious leaders claim that God should
> rule the world. But in practice, that means that some finite
> mortals who claim to know the infinite mind end up as dictators.
>
> When it comes to ontology, I am willing to admit that there might
> be a perfect ontology somewhere in the infinite lattice of all
> possible theories. But I seriously doubt that our finite minds
> and machines will be able to discover it any time soon. (011)
[MW] Yes, you are probably right. But I still think it is worthwhile for
groups to agree on larger ontologies, rather than focus on mapping between
smaller ones. If we end up with a dozen "universal" ontologies, each of
which is used for a significant purpose, and mappings are available between
them, this will already be an enormous step forward. (012)
Remember, when an Italian, a Greek, a German and a Frenchman meet to discuss
business, almost always the language they use is English. (013)
Regards (014)
Matthew West
Information Junction
Tel: +44 560 302 3685
Mobile: +44 750 3385279
matthew.west@xxxxxxxxxxxxxxxxxxxxxxxxx
http://www.informationjunction.co.uk/
http://www.matthew-west.org.uk/ (015)
This email originates from Information Junction Ltd. Registered in England
and Wales No. 6632177.
Registered office: 2 Brookside, Meadow Way, Letchworth Garden City,
Hertfordshire, SG6 3JE. (016)
_________________________________________________________________
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
To Post: mailto:ontolog-forum@xxxxxxxxxxxxxxxx (017)
|