Re: On formal HAS-A definition
Date: Sat, 08 May 2010 15:42:37 -0300
Message-ID: <4be5b09f$0$26945$9a566e8b_at_news.aliant.net>
Mr. Scott wrote:
> "Bob Badour" <bbadour_at_pei.sympatico.ca> wrote in message
> news:4be59bfa$0$12451$9a566e8b_at_news.aliant.net...
>
>>Mr. Scott wrote:
>>
>>
>>>"Mr. Scott" <do_not_reply_at_noone.com> wrote in message
>>>news:Atqdnbh1eNZ_YX7WnZ2dnUVZ_g-dnZ2d_at_giganews.com...
>>>
>>>
>>>>"Tegiri Nenashi" <tegirinenashi_at_gmail.com> wrote in message
>>>>news:0b0623a8-7a8c-476b-8de2-78c31a36ab17_at_f17g2000pra.googlegroups.com...
>>>>
>>>>
>>>>>Again, I didn't research literature, but here is my shot: the HAS-A is
>>>>>an inclusion dependency. Example:
>>>>>
>>>>>Dept = [DeptNo DeptName]
>>>>> 10 Accounting
>>>>> 20 Research
>>>>>;
>>>>>
>>>>>Emp = [DeptNo EmpName]
>>>>> 10 King
>>>>> 10 Smith
>>>>>;
>>>>>
>>>>>Formally:
>>>>>
>>>>>Emp v (Dept ^ []) < Dept v (Emp ^ []).
>>>>>
>>>>>I suppose HAS-A shares many unconvenient properties with set
>>>>>membership, for example, it is not transitive. Consider
>>>>>
>>>>>Accounts = [EmpName Institution]
>>>>> Smith BoFA
>>>>> Smith WellsFargo
>>>>>;
>>>>>
>>>>>the it is not the case that "Dept HAS-A Accounts". Again, the naming
>>>>>problem raises its ugly head: why would the first attributes be called
>>>>>"EmpName" rather than "PersonName"?
>>>>>
>>>>>More important: is this correct formalization? Specifically, shouldn't
>>>>>functional dependency
>>>>>
>>>>>Dept # DeptNo < Dept # DeptName
>>>>>
>>>>>be a part of HAS-A constraint definition?
>>>>
>>>>I don't think nontrivial functional dependencies have any bearing on
>>>>whether or not there is a 'has-a' relationship; instead, it is the
>>>>juxtaposition of attributes in a relation scheme under the convention
>>>>that it is not just components that are significant but also tuples. If
>>>>there is a mapping from tuples into the domain of discourse, then it
>>>>follows that the components of a tuple map to parts of the whole that the
>>>>tuple maps to.
>>>
>>>One could argue that a trivial functional dependency from the superkey
>>>that consists of the entire heading of a relation to any proper subset of
>>>the heading specifies a 'has-a' relationship.
>>>
>>>I should also point out that because 'has-a' relationships are in essence
>>>part-whole relationships, that they are transitive. For example, cars
>>>have tires; tires have rims; therefore, cars have rims.
>>
>>Except that not all cars have tires--some are on blocks. We could just as
>>legitimately say that all tires have cars.
> > Without tires, there is no car, but it is not necessary for a car's tires to > be physically attached for them to be part of the car.
That's absurd. A car without tires remains a car just as an amputee remains a human being. Received on Sat May 08 2010 - 20:42:37 CEST