Re: On Formal IS-A definition

From: Tegiri Nenashi <tegirinenashi_at_gmail.com>
Date: Thu, 29 Apr 2010 16:07:06 -0700 (PDT)
Message-ID: <d114feb6-986e-47be-91a2-06fa33303109_at_g5g2000pre.googlegroups.com>


On Apr 29, 2:31 pm, r..._at_raampje.lan (Reinier Post) wrote:
> Tegiri Nenashi wrote:
>
> [...]
>
> >Animals = [Name]
> >           bear
> >           sheep
> >           wolf
> >;
>
> >Carnivores2 = [Name Prey]
> >              bear deer
> >              wolf sheep
> >              wolf deer
> >;
>
> >I suggest that we still have "Carnivores2" IS-A "Animals". Do you
> >agree?
>
> No.  I've never seen this.  The naming of Carnivores2
> is strange: it should name what each tuple stands for,
> but a carnivore isn't always represented by a single tuple.

Just to remove any confusion about Carnivores2 name origin: 1. It is plural because of convention to name relations as sets of things
2. The number two is version number designed to distinguish this relation from Carnivores1

Perhaps you are not comfortable with the idea than more than one tuple of Carnivores2 might represent each "entity"? At this moment I can't suggest a convincing argument other than vague intuition that database theory should deviate from explicit mentioning tuples (and attributes, for that matter, either). All information should be presented in terms of constraints, expressed in relational algebra terms.

> Suppose we have
>
>  Herbivores = [Name Foodtype]
>               deer  grass
>               rabbit grass
>               rabbit carrots
>
> and
>
>  Vegetables = [Foodtype]
>               grass
>               carrots
>
> Would you say that Herbivores IS-A Animals?
> What about Herbivores IS-A Foodtype?  If not, why not?

Wouldn't

Vegetables = [Name]

               grass
              carrots

be a more appropriate choice? Then, we can combine Animals and Vegetables into LivingThings. Attribute naming seems to be a tricky subject in Relational Model... Received on Fri Apr 30 2010 - 01:07:06 CEST

Original text of this message