← Back to team overview

mlhim-owners team mailing list archive

Entity

 

Hi Luciana and All,

On Wed, May 18, 2011 at 8:34 PM, Luciana Tricai Cavalini
<lutricav@xxxxxxxxx> wrote:
> So, I have studied demographic models a little bit, and I have been
> discussing it with experts, but that's *my* understanding of all that
> study and interaction. So, I am the only responsible for what I am
> discussing here.
>
> I understood that, in most of the demographic models that are used
> nowadays, the classes we are calling Person, Non Human, Group,
> Organization and Device inherit from a class called something like
> "Actor". That's done because Actors are Parties, but Parties have Roles.
> So, usually, in the demographic models, you have Actor and Role
> inheriting from Party, and Person, Group, Organization etc inherit from
> Actor.

I understand your concern here and I too have looked at the existing
models in this area.
If there is some kind of consensus to be like those models then I will
concede. However, my approach with MLHIM so far has been to learn from
those models.  Not necessarily duplicate them.

We need to look at definitions of the words:

Party: A person or group involved in an enterprise; a participant or
an accessory

Actor: One who takes part; a participant

Role: A function or position

Now in my interpretation Actor and Party or essentially synonymous.
In your diagram you have Actor inheriting from Party.  However you do
not show any data or behaviour where Actor adds to that of Party.  So
what is the purpose of Actor?

In the diagram, you show Role as inheriting from Party.  Given the
definitions above (or any others you might find) how is a function or
position a subset of the data and behaviour of a person, group or
enterprise?  Role is an attribute; not a subclass.

> At this point, in the MLHIM Entity package, Person, Non Human, Group,
> Organization and Device inherit directly from Party and Role is shown as
> a floating topic on the CDD 2.2.0. That doesn't make clear to me if that
> means that Role inherits from Party or not. If it does, why not showing
> it graphically as it is being done with the Person, Non Human, Group,
> Organization and Device; and in this case, the "Actor" class might be a
> good idea, because it organizes the model: Actors are one thing and Role
> is another thing, but they would be in the same hierarchy of the model.

Because Role is an attribute or function of one of those entities.
Think about the fact that a Party can have multiple Roles.  For
example a nurse can be a patient and can be a care giver.  A physician
and a nurse can be care givers.  Party and Role are entirely different
things.

In MLHIM, Role inherits from Locatable so that it is easily including
in path statements. It is in the Entity package because Party(s) have
Roles as their attributes.  We may have some confusion here with
Participations in Common package as a leftover from openEHR.  This is
to be discussed.


--Tim