Re: SUO: should a standard specify...
Leo,
Thanks for your reply. Some comments below.
Jim
--------------------------------------------
LO: You have a number of problems when you attempt to determine whether 2
ontologies are comparable (for mapping or merging or translation or
integration):
1) what are the respective KR languages they are formulated in (and
those KR langs will have various formal properties, some of which you
can abstract away from).
2) what is the modeling paradigm used to model the respective
ontologies? This is related to (1). An example, even using the same
language (if it has both paradigms): if ont1 is modeled in a frame
sublanguage of the KR and ont2 is modeled in an axiom format (like a
description logic). Note that this is still not yet about the meaning of
the ontologies.
JF: OK. Could explicit mention of the choices of KR languages and
modeling paradigm be incorporated into the ontologies or into
their specifications in such a way that software can identify these
choices and so help users (humans or programs) sniff out potentially
compatible ontologies?
LO: 3) typically there is no way to "carve out" comparable subsets of two
ontologies without great difficulty and long analysis, especially if
those ontologies are not "modular" to begin with.
JF: This I am coming to understand.
LO: And what you are after
(related to points Pat Cassady made to the SUO back a ways) is some sort
of semantic "index" into ontologies, i.e., a kind of metadata/keyword
associated with an ontology module characterizing it as about
"Space-time" or "Part-whole" or "Human-organization", etc. You will not
find that typically, though you may find some natural language
description/documentation associated with a set of classes/relations
(which of course you will have to read, interpret semantically yourself,
and then decide on). I am beginning to think that Pat's notion of "index
terminology" may actually be useful for SUO to consider.
JF: Perhaps something along those lines would be useful, though I am sensitive
to the issues of heaping on a specification an additional layer
of human-interpreted metadata. But at the same time, it seems to me
that something could perhaps be done to alleviate the practical problems
of individual people or programs starting from scratch every time they come
across a new ontology.
JF: I have the following analogy in mind. There are many
different formats for image files (JPEG, GIF, PNG, ...). But with some
operating systems and pieces of software (if I recall correctly), the human
doesn't need to say, "Ah, I see that this is a GIF, so go use program
X to deal with it." Instead, because of the standard (which identifies
a GIF file with a certain header?), good software can sniff out this information
and then choose an appropriate way to display the image file.
Couldn't something similar be done for ontologies? The analogy may not
hold completely, but even seeing where it fails would, I think, be useful.
LO: These would be
your set of "primitives". Any ontology, if it abided by the "index term"
standard, would annotate its modules with an index term. Of course,
since an ontology could be a set of axioms (rather than modeled say as
more OO-like frames), the module, like the axioms, would be distributed
across the ontology (though topologically connected). Maybe SUO should
create such a standard too? It's not a standard upper ontology, but
would be a standard ontology indexing system. I know this is a potential
can of worms, but what do you think?
JF: I think maybe yes and maybe no. I can see the usefulness of something
like that, but I don't know whether the group is willing to tackle it.
Certainly I can handle by brute force my particular issue that prompted
my recent long email to group. We'll see what the group says...
LO: With respect to determining whether two ontologies are comparable
semantically, you will find that similar methods are used to establish
merges (or mappings or translations) in three different research
communities: the database, the thesaurus, and the ontology communities.
The state of the art in all 3 is semi-automated merging/mapping (and it
will be that for quite some time, since the process requires
something/someone to understand the semantics on both sides and ok the
semantic equivalences):
JF: Yes, the semi-automated aspect seems inescapable. As you say,
someone needs to be giving input and guidance. But I think that this
fact of life could be made less onerous if it weren't the case
that every time any people or programs want to decide to what degree
to ontologies are semantically compatible, they would have to
essentially confront each ontology fresh and spend time and effort ascertaining
what the designers of the ontology already knew! Why not share a little of this
knowledge in the ontology itself or through the standard that specifies
what the ontology must conform to? Why couldn't something like "Here's the
description logic in which this ontology is expressed and here
is its model theory" be part of what an ontology offers to users?
JF: Another analogy comes to mind. When I come across a text in a language
I don't know, one of two things happens: either I can recognize it more or less
(ah, that looks like Danish), or I can't. If I can more or less recognize it,
then I have some hope of finding the tools or people to help me understand it.
If I don't recognize it, I have to spend an inordinate amount of time shopping
around and asking people who might be able to help. Why should the ontologies
we create be like unknown languages that offer no clues to their own
understanding? If we are going to have ontologies coursing all through the
Internet, why not supply them with the equivalent of ("I'm in Danish,
so here is how you can deal with me") rather than have require
every user of every ontology to spend time learning anew certain pieces of
what the ontology developers already knew?
LO: and techniques include substring/string matching
of concept/relation/attribute/value names (notoriously weak, since the
expectation is that labels somehow carry their semantics on their
sleeves, so to speak),
JF: Yes, but why _couldn't_ labels carry their semantics on their sleeves?
I ask the question seriously.
JF: <snip and thanks for the additional info>