ontolog-forum
[Top] [All Lists]

RE: [ontolog-forum] Roles in the UBL Trading Cycle

To: "'[ontolog-forum] '" <ontolog-forum@xxxxxxxxxxxxxxxx>
From: "Dean Black" <dblack@xxxxxxxxxxxx>
Date: Thu, 6 Mar 2003 00:36:01 -0800
Message-id: <000601c2e3bb$6c5d5280$9700a8c0@dblaptop>
I would tend to model both Buyer and Seller as the names of associations
that exist between an Order instance and two Parties (I'm introducing a
commonly used superclass of Organization/Individual).  So an Order (in this
simplistic example) would have an association to Party called Buyer, and a
second association to Party called Seller.    (01)

In protege, I think this is modeled by creating two slots in the Order
class, one named Buyer, the second Seller, and then declaring each of those
slots to have a Value Type of CLASS.  When you declare a slot to be of type
class, then you also provide the class (or classes) that are allowed to fill
that slot.  In this case it would be PARTY for each of the two slots.    (02)

Of course, my explanation is based upon downloading Protege for the first
time last night and playing with it for an hour or so, so I'm pretty much
going out on a limb here.  Is this how you real Protege experts would model
this, or is there a more appropriate way?    (03)

I don't see Buyer as a subclass (or interface) of Party (or another class),
because Buyer is a totally transient notion, a role as you pointed out, and
a class hierarchy in an ontology (I believe) should be trying to model more
permanent notions.  For example, a Zebra is always permanently a Mammal, and
it doesn't transition or morph from being one species to another, therefore
it would be a legitimate subclass of Mammal in an ontology.  (Hope I'm
making a clear and understandable distinction between "permanent" and
"transient" states of being.)    (04)

-----Original Message-----
From: ontolog-forum-bounces@xxxxxxxxxxxxxxxx
[mailto:ontolog-forum-bounces@xxxxxxxxxxxxxxxx]On Behalf Of MDaconta@xxxxxxx
Sent: Wednesday, March 05, 2003 10:10 PM
To: ontolog-forum@xxxxxxxxxxxxxxxx
Subject: Re: [ontolog-forum] Roles in the UBL Trading Cycle    (05)


Hi All,    (06)

In beginning to look at the UBL op70 library some classes
quickly become apparent for the basic business scenario of
purchasing a product.    (07)

Invoice
Order
Product
Buyer
Seller    (08)

Of course, Invoice and Order are artifacts of this purchase transaction.
Thus maybe they should be subclasses of Artifact (or possibly subclasses
of Document which is a subclass of Artifact ...).    (09)

The last two gave me pause because buyer and seller are actually
a role that an Organization or Individual takes on when being a party to
this transaction.  This brings me to the question: is it better to model
buyer and seller as a Role (or interface) than as a subclass of
Person or Organization?  Of course, UML has a notion of Interface but
I do not believe protege nor RDFS supports the notion of an interface or
role.    (010)

Which in turn leads us to the question of what are the semantics behind
the notion of a Role in a data model (ontology) that does not touch upon
behavior?    (011)

- Mike
-------------------------------
Michael C. Daconta
Chief Scientist, Advanced Programs Group
McDonald Bradley, Inc.
www.daconta.net    (012)

_________________________________________________________________
To Post: mailto:ontolog-forum@xxxxxxxxxxxxxxxx
Msg Archives: http://ontolog.cim3.net/forum/ontolog-forum/    (013)
<Prev in Thread] Current Thread [Next in Thread>