Mathew --
In following this discussion, I'm starting to wonder why modelling seems so difficult to get right.
One thought is that part of the difficulty stems from the old
relational database habit of simply deleting things that are no longer
true. As in -- if Fred moved from Dept A to Dept B, delete "Fred
is in Dept A". It seems that, for new databases, it
would be affordable and productive to record that Fred was in Dept A
from 20070101 to 20070201, and in Dept B from 20070202 onwards.
Another thought is that we should somehow take into account what
present and future applications are going to do with the data.
This supplies context and usage examples that can help to sort out
whether Employee is a subtype, a role, and so on. In other
words, take the purpose of the modelling into account. As John Sowa and others have pointed out, natural language evolves through analogous usage.
A third thought is that it may help to express prototypes of at least
some of the applications in executable English**, and to debug the
model using that approach.
>From your experience of modelling, does any of this make sense?
Thanks, -- Adrian
**Internet Business Logic (R)
A Wiki for Executable Open Vocabulary English
Online at www.reengineeringllc.com Shared use is free
Adrian Walker
Reengineering
On 3/19/07, matthew.west@xxxxxxxxx <matthew.west@xxxxxxxxx> wrote:
Dear Duane,
> > If the original statement was framed within a domain specific
> ontology such > as an HR department at a company that hires only humans, the > statement as > written by John is fine IMO. I inferred nothing more that > all employees are > persons. Regardless of the definitions of employee and
> person, the statement > is true.
MW: I beg to differ. If you take a 4 dimensionalist view, then a person would be person-for-the-whole-of-his-life, an employee is just an aggregate of temporal parts of a person - the temporal
parts that were working for a particular organization. Since by this definition an employee is not a person-for-the-whole-of-his- life, then employee is not a subtype of person.
> What can be argued is that person and employee are
> terms that have > limitations however as John noted, that can be fixed by defining such. > > I do not see why this is causing so much discussion. > > Duane > > >
> > On 3/18/07 12:45 PM, "Chris Partridge" > <mail@xxxxxxxxxxxxxxxxxx> wrote: > > > John, > > > > If you look at some of the standard textbooks on data
> modelling you will > > find that: > > > > a) They recognise that some systems fudged the distinction > between employee > > and role (as you note) > > b) that it is not a good idea to do it, and
> > c) offer their own way of modelling this. > > > > My experience with legacy systems re-engineering is that > not all (or even > > many modern) systems make this mistake. But am sure my sample is not
> > representative. > > > > See (for example), > > Data Model Patterns: Conventions of Thought by David C. Hay > > >
http://www.amazon.com/Data-Model-Patterns-Conventions-Thought/ > dp/0932633293/ > > > ref=pd_bbs_2/002-8927839-5907206?ie=UTF8&s=books&qid=1174246335&sr=8-2 > > > > The Data Model Resource Book, Vol. 1: A Library of
> Universal Data Models for > > All Enterprises by Len Silverston > > > http://www.amazon.com/Data-Model-Resource-Book-Vol/dp/04713802
> 37/ref=sr_1_1/ > > 002-8927839-5907206?ie=UTF8&s=books&qid=1174246404&sr=1-1 > > > > (As an aside, I seem to recall Matthew West's 'High Quality > Data Models
> > paper' notes this - or something similar as a common > modelling error - > > Matthew can confirm whether this is the case.) > > > > To return to an old topic: one can regard employee as a
> role or a temporal > > stage of a person - depending upon your 3D/4D inclinations. > A description of > > the 4D approach is in my book. > > > > >
http://www.amazon.com/Business-Objects-Re-Engineering-Computer > -Professional/ > > > dp/075062082X/ref=sr_1_1/002-8927839-5907206?ie=UTF8&s=books&q > id=1174246688& > > sr=1-1
> > > > Regards, > > Chris > > > > > > -----Original Message----- > > From: ontolog-forum-bounces@xxxxxxxxxxxxxxxx
> > [mailto:ontolog-forum-bounces@xxxxxxxxxxxxxxxx] On Behalf > Of John F. Sowa > > Sent: 18 March 2007 14:27 > > To: [ontolog-forum]
> > Subject: Re: [ontolog-forum] Common Logic Controlled English (CLCE) > > > > Peter, > > > > That's the way most businesses handle their personnel: > > > >> Since when is an "employee" a sub-type of "person"?!
> > > > However, one of the major mining companies used mules > > to pull ore out of the mines. (They didn't want to use > > anything that might create sparks that could trigger
> > an explosion if there were any stray gasses around.) > > > > When they computerized their system, they assigned > > employee numbers to the mules. For that company, you > > could generalize the ontology in either of two ways:
> > > > 1. Assume that Employee is a subtype of Animal. > > > > 2. Assume that Person could include nonhuman animals. > > > > But in any case, whenever you say X is a subtype of Y,
> > you mean "every X is a Y." That is all it says. > > > > John > > > > _________________________________________________________________ > > Message Archives:
http://ontolog.cim3.net/forum/ontolog-forum/ > > Subscribe/Config: > 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 Post: mailto:ontolog-forum@xxxxxxxxxxxxxxxx
> > > > -- > ********************************************************** > Sr. Technical Evangelist - Adobe Systems, Inc. * > Chair - OASIS SOA Reference Model Technical Committee *
> Blog: http://technoracle.blogspot.com * > Music: http://www.mix2r.com/audio/by/artist/duane_nickull*
> ********************************************************** > > > _________________________________________________________________ > Message Archives:
http://ontolog.cim3.net/forum/ontolog-forum/ > Subscribe/Config: > 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 Post: mailto:ontolog-forum@xxxxxxxxxxxxxxxx > > >
_________________________________________________________________
Message Archives: http://ontolog.cim3.net/forum/ontolog-forum/ Subscribe/Config: 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 Post: mailto:ontolog-forum@xxxxxxxxxxxxxxxx
_________________________________________________________________
Message Archives: http://ontolog.cim3.net/forum/ontolog-forum/
Subscribe/Config: 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 Post: mailto:ontolog-forum@xxxxxxxxxxxxxxxx (01)
|