Re: Can we solve this -- NFNF and non-1NF at Loggerheads

From: Alan <alan_at_erols.com>
Date: Mon, 7 Feb 2005 12:23:09 -0500
Message-ID: <36pmg1F561n1pU1_at_individual.net>


<lauri.pietarinen_at_atbusiness.com> wrote in message news:1107795267.769014.111070_at_z14g2000cwz.googlegroups.com...
> Alan wrote:
> > <lauri.pietarinen_at_atbusiness.com> wrote in message
> > news:1107793230.717306.130550_at_g14g2000cwa.googlegroups.com...
> > > Alan wrote:
> > >
> >
> > Fingerprints is an interesting example, and if done properly, is
> easily in
> > 1NF (and 3NF):
> >
> > FINGERPRINTS(person_id(PK), lh_thumb, lh_f1, lh_f2, lh_f3, lh_f4,
> rh_thumb,
> > etc...)
> >
> > Each fingerprint (lh_f1, lh_f2, etc) is atomic. The tuple contains
> atomic
> > values. It is in 1NF No problem at all. Now, if you were modeling it
> > incorrectly:
> >
> > FINGERPRINT(person_id, prints(1...10)) Then you have a problem. You
> are NOT
> > in 1NF, because prints is not atomic. It is an array containing 10
> distinct
> > atomic pieces of data.
> >
> > Airplane blueprints is the same example, just MUCH larger. Not being
> > familiar with the industry, I can provide a simple example:
> >
> > AIRPLANE_BLUEPRINTS(print_id(PK), airplane_model, left_wing,
> wight_wing,
> > fuselage, tail, passenger_comaprtment,
> > bomb_compar_er_I_mean_baggage_compartment...)
> >
>
> The point is that from the RM-perspective the fingerprint and blueprint
> are
> both atomic, but they are hardly indivisible, if we use proper
> operators to
> break them apart.
>
> BTW, what stops me from creating the domain
> NAME_LIST = {all ordered lists of names} and then using
> this domain to create the relation FRIENDS:
>
> (person_id: integer, person_name: string, person_friends: NAME_LIST)
>
> This would be within the rules specified by your Elmasri/Navathe quote,
> certainly in 1NF. The only thing is that the person_friends -list
> would have to be "cracked open" with some special operators,
> but from the RM-perspective
> it would be atomic. So it is just a question of perspective.
>
> Atoms are indivisible from the perspective of chemistry but not
> from the perspective of physics!
>
> regards,
> Lauri Pietarinen
>

So far, the discussion has involved 1NF. As you move to 3NF, the issue you mention is resolved. It is necessary to keep in mind that 1NF is not an endit  is a step on a path. Received on Mon Feb 07 2005 - 18:23:09 CET

Original text of this message