ontolog-forum
[Top] [All Lists]

Re: [ontolog-forum] is-part-of: a really, really, bad practice?

To: "[ontolog-forum]" <ontolog-forum@xxxxxxxxxxxxxxxx>
From: William Frank <williamf.frank@xxxxxxxxx>
Date: Mon, 27 May 2013 23:33:21 -0400
Message-id: <CALuUwtDSWjMOz6XsO0hx6euYYSxcOdXKD9BX4FgE-RvHXsNOOg@xxxxxxxxxxxxxx>


On Mon, May 20, 2013 at 7:58 PM, David C. Hay <dch@xxxxxxxxxxxxxxxxxxxxxxx> wrote:
John,

This is one of my major beefs with both the data modeling and the ontology worlds.  Harry Ellis and Richard Barker, back in the 1980s, have come up with the perfect way to name relationships.

For specifying information models in a normal person friendly way, I agree completely.  But not mathematically.
 
Since the point of an ontology is to describe what is, "is" is the only verb that should be the basis for a relationship.  Indeed, in the data modeling world, optionality is important, so the verb actually turns out to be "must be" or "may be". 

This is a facile argument.  I and most other who have learned  logic, would make the 'must' or the 'may'  *not" part of the sentence, but an assertion *about* the sentence. 

For example MUST (Alcohol an organic compound) MAY (Alcohol is poisonous).

You are searching for the part of speech to use. 

Not me. I am not looking for ways to express entities and relationships to subject matter experts. If I were doing this job, I would be doing it the way you say.
 
No, nouns don't work, since nouns are already the subject and object of the sentence. 

Again, facile, who can' nouns be all three parts.  An equivelent argument,  How should subjects be represented?  Not by nouns, because nouns are already the object of the sentence!

John Fatherhood Sally.

I bet you can understand this.   But, it is directional, not fully analytic.

Exists Fatherhood where John Father, Sally Child in Fatherhood


 
We are trying to see how the nouns are related to each other. Verbs don't work, since we are not trying to model processes, here.  Just existence.  Let's see, what part of speech can we use for relationships?

Grover in Sesame Street actually has it right.  Prepositions!  This is the part of speech that is about relationships: over, under, around, and so forth.  Think "Grover words".

In Harry's and Richard's world, relationships can be expressed in strong assertions, in the form:

Each [subject] must be|may be [predicate] one and only one|one or more [object]. 

For example, each PERSON must be son of one and only one MALE PERSON, and each MALE PERSON may be the father of one or more PERSONS.

This is great for expressing this in a clear way with clients, but it is not as deeply simple as

the motherhood  relation has two role, the child role and the mother role. 

the child role is played by an animal that the mother in the relation gave birth to.

the mother role is played by an animal that gave birth to the child.

As someone else said recently, events usually determine relationships.

the fact that mother role in the motherhood relation is constrained to female animals is a logical consequence of the above and other assertions, better than stating that derived constraint in the relation definition.
 
The Romans were the destroyers of Carthage;  Carthage was destroyed by the Romans. (Since this describes the past, we can dispense with "must be" and "may be".  "Was/were" works just fine.)

And so forth. 

I've been using this structure for some 25 years, now, with remarkable success in carrying out meaningful conversations with subject matter experts in many fields. 

I agree that what you have been doing is the very best way to do this. 
 
I was amused to see the Semantic Web pick up the idea with RDF a few years ago, although none of that group figured out that adding discipline to the way predicates were formed could add incredibly to the power of the ontologies created.

Remember, these are ontologies being created.  They are supposed to describe what exists, not how it came about.

Now that you said it, I wonder if separating action and fact misses an opportunity.  There is a duality  between the two.  You ARE married because you GOT married, and nothing making that false happened in between.   you cannot get divorced unless you ARE married.  Why in the world is it good to create a set of rules about static relationships *separately* from their duals in the world of action?   Why not do both together?   To me, this might be the most lasting lesson of object-orientation.  OTOH, most behavioral rules, and even the set of states a thing can have, change more rapidly.   For instace, I use UML mostly because I want to create state transition models, and these have to be unifies  with the classes.   But, I do the static e/r type models first. 

Regards,

Dave Hay
Houston, Texas

(I love it that "ontology" has become a 2500-year old hot new buzzword . . .)

At  5/19/2013 10:30 PM, you wrote:
On 5/19/2013 5:17 PM, jmcclure@xxxxxxxxxxxxxx wrote:
> I argue the industry badly needs consensus about the best practice
> for how attributes/relations are to be named.

My recommendation is to use the most common phrase in ordinary language.


> in "old style" systems these names are nouns, perhaps qualified nouns;
> in "new style" systems these names are, uh, something other than a noun.

In ordinary English, it's common practice is to represent relations
with nouns.  The syntax of English and other languages allows verbs
and adjectives to be *nominalized* in order to refer to the relations:

"The Romans destroyed Carthage in 146 BC"  =>
     "The destruction of Carthage by the Romans in 146 BC"

"The book is easy to read" =>
     "The ease of reading the book"

For words like part and family relations like mother, child, sibling,
uncle, etc., there are no obvious verbs.  It's more convenient to use
noun + 'of'.  In fact, English syntax makes it easy to switch 'of'
to 'has' in order to form inverses:

"X is the father of Y"  =>  "Y has a father X"  (or has X as father).

"X is a part of Y"  =>  "Y has a part X"

The nominal form is easy to modify as needed:

"X is a proper part of Y"  =>  "Y has a proper part X"

"X is an only child of Y and Z"  =>  "Y and Z have an only child X"

This seems like a good argument for using nouns to name relations.

John
 
_________________________________________________________________
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
 


_________________________________________________________________
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
 



--
William Frank

413/376-8167


This email is confidential and proprietary, intended for its addressees only.
It may not be distributed to non-addressees, nor its contents divulged,
without the permission of the sender.

_________________________________________________________________
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    (01)

<Prev in Thread] Current Thread [Next in Thread>