Re: Roles, again

Don Dwiggins <dwig1@village.ios.com>
Date: Tue, 12 Sep 1995 23:02:35 -0400
From: Don Dwiggins <dwig1@village.ios.com>
Message-id: <199509130302.XAA01940@village.ios.com>
To: cg@cs.umn.edu
CC: guarino@ladseb.pd.cnr.it, cg@village.ios.com, srkb@cs.umbc.edu,
        giaretta@ipdunidx.unipd.it, carrara@cs.umbc.edu
In-reply-to: <199509112104.QAA18937@eris.ai.uiuc.edu> (phayes@cs.uiuc.edu)
Subject: Re: Roles, again
Reply-to: Don Dwiggins <dwig1@village.ios.com>
Sender: owner-srkb@cs.umbc.edu
Precedence: bulk
Nicola:
>> in the sense
>> that they bound together different concepts. For instance, database people
>> distinguish between attributes and relations, while from the logical point
>> of view both of them are just binary relations. 
Pat:
> I dont know this literature well, but I thought that an attribute was more
> like a function (which is a special case of a relation, but one worth
> singling out for its logical properties.)

That distinction is also one that the OOA&D community haven't gotten
completely clear.  The best treatment I've seen is that of Embly-Kurtz, who
insist that attributes don't belong at the analysis level.  During design,
you may decide that a particular type doesn't deserve to be treated as a
full-fledged object, so you change the relations it participates in to
attributes of the other types, and its instances to values of those
attributes.  That's essentially what goes on anyway, but people tend do it
almost subconsciously.

Don Dwiggins		    "All models are false,
dwig1@village.ios.com		but some are useful"
                            -- George Box, "Statistics for Experiments"