plays role

Kurt Stirewalt ([email protected])
Mon, 8 May 1995 15:15:26 -0400

Once again we've run into the infamous is_like/plays_role distinction.
In order to better understand the two mechanisms, we've put together
a few questions. The only example of plays_role that we have seen is the
guides attribute in object Presentation. Could someone from ISI please
answer the following questions in the context of that example? Thanks.

Given:
MM_Object* pres = model_server->create("Presentation",
Presentation);
MM_Object* p1 = model_server->instantiate("Presentation",
pres);
MM_Object* p2 = model_server->instantiate("Presentation",
p1);

p1->set_object(Guides, ...);

After this sequence of statements, which of the following are true:

a) is-like(p1,pres)
b) is-like(p2,pres)
c) is-like(p2,p1)
d) plays-role(p1,pres)
e) plays-role(p2,pres)
f) plays-role(p2,p1)

We took the existence of plays-role to mean that we could change the
guides attribute of a presentation and still be "is-like" a
presentation.

Now say that we did the following:

p1->set_object(x_origin, ...)

Assuming that in the def of Presentation there is the line:

is_like inherits(x_origin)

which of the following are true:

a) is-like(p1,pres)
b) is-like(p2,pres)
c) is-like(p2,p1)
d) plays-role(p1,pres)
e) plays-role(p2,pres)
f) plays-role(p2,p1)

Thanks again.
-- kurt.