[Sigia-l] CMS and IA-Ontologies vs. Data Modelling

Nuno Lopes nbplopes at netcabo.pt
Wed Jan 29 20:12:43 EST 2003


Hi Lisa thanks for the reply.

"Lisa" wrote:

>Modelling is modelling so from that perspective many
>of the issues are transparent along the different
>disciplines. I think the problems in a generic sense
>(interoperability) are similar. Most of the power of
>having an ontology, however, is in coupling it with a
>logical inferencing engine and have the data is
>represented in an RDBMS.
---

>An ontology is a model. UML is a modeling language.
>Similarly, ontologies are expressed in different
>ontology languages, varying in expressivity.

I understand but that was not the issue I was trying to bring on the
table (I'm looking for the concepts not the language). I've mentioned
UML much the same way I could have mentioned ORM (Object Role Modeling).
Both languages can be used to define Object Oriented Models. The notion
of classes, subclasses, inheritance (inference engine), associations etc
etc, all this are well known artifacts in OOA (Object Oriented
Analysis). So basically unless the study of Ontologies brings new
modeling artifacts that OOA does not have on its nature it may well be
that it does not bring anything new from the engineering point of view.
Or probably a multidisciplinary effort could bring some light on this
theme.

>The term "slots" is a carryover from frame systems. Sometimes you may
hear >the word "predicate" to mean the relationship between two classes
or >individuals (of a class). A predicate is an n-nary relationship
>between classes and individuals.

So are associations in OOA. There one thing thought that you mentioned
that I'm not sure of its meaning. Individuals are instances of a Class
right? So if they are in OOA they are called Class Instances (also
Objects) not individuals. Nomenclature apart, the concept behind the
words seam to be pretty much the same t'ill now. Instances exists not
only for Classes in OOA but also Associations (Slots of type Instance)
in this case OOA calls these type of instances Links.

>Further, in more complex systems, you can also define the mathematical
>relationships (e.g. transitivity) for that particular predicate.
>Similarly, some predicates could have predicates themselves as
arguments.

Oh yes, so can associations in OOA. Actually if you use Object Role
Modeling (more or less of a branch OO Modeling) associations are called
predicates.

>The scope of subclasses is a bit different than the database views.
>Sometimes the information on lower nodes is an expansion rather than a
>contraction of higher nodes. Because an ontology is a graph rather
>than a tree, the lower nodes may be inheriting information from other
>parents.

So can in OOA. Actually multiple inheritance (a class having multiple
super classes) in a practical point of view was abandoned. It was found
that it does not actually map the perceived reality that well and
creates "feature" overlap. Instead other patterns were discovered that
can map the world more faithfully.

>So you are not just restricting values, but also potentially the type
of >classes that can be arguments to that predicate. These "type"
restrictions >are very helpful in many applications, like natural
language
>processing.

Very interesting indeed. I'm not sure if I fully understand thought. Do
predicates exist without classes? If no, then a predicate must be
related to at least one class right, this considering that predicates
can be unary (The Root Class)? Sub classes my restrict the "predicate"
(association) but restrictions can only be made along the set of sub
classes of that Root class. If so in OOA the same can be defined easily.
As I remember Prolog we could make question over predicates too. Most OO
languages don't provide that kind of power due to well known performance
reasons. The algorithmic complexity to find the class instances that
match the predicate query is just exponential (I'm not sure I could
build a feasible inference engine at the moment that would map perfectly
the intent).

>The scope of subclasses is a bit different than the database views.
>........inheriting information from other parents.

Hum I understand. But to be honest the state of the art sample about
wines provided in the articles do not use that feature. I would like to
discuss the reasons of this fact.

>Hope that's helpful. It's difficult to have knowledge sharing when our
>descriptions of knowledge are so different!

I think it's really helpful. Don't give up on me just now. If I've said
things way far from the concepts you are trying you provide me (Thanks a
lot!!), then I need to more info about the concepts. Can you provide me
with some links and point to me what you think is relevant in the light
of my statements? I know this is asking a lot but probably someone else
on the list can do that (share the burden :).

><p.s. disclaimer: my background is as an
>ontologist/linguist from research (cyc) to software
>design.so that's my bias ;)>

That is excellent. In my times in the university (I was studying
computer science) I've shared classes with students having Knowledge
Engineering (They studied linguistics deep). I've not had much contact
with linguistics apart from irregular grammars and the problem of cyclic
graphs but we did had some shared classes (IA, Maths).  I was very
interested in modal logic and deontic logic but that was as far as I've
went deep into Research mode.

Hope to hear from you back and of course any others that might help me
on my quest.

Best regards,

Nuno Lopes




More information about the Sigia-l mailing list