Re: Modeling Address using Relational Theory

From: Marshall Spight <marshall.spight_at_gmail.com>
Date: 30 Aug 2005 19:47:05 -0700
Message-ID: <1125456425.756549.157730_at_g14g2000cwa.googlegroups.com>


dawn wrote:
> Marshall Spight wrote:
> >
> > Agreed. Line1 and Line2 are not two interchangable instances of
> > the same kind of thing; they are specific distinct fields. It
> > is not a repeating group.
>
> I realize it is not a repeating group, but I thought that having
> Major1, Major2, Major3 or AddressLine1, AddressLine2, AddressLine3
> violated relational modeling principles. Are you saying that this is
> just fine?

If by "Major1" etc., you mean college majors for undergrad students, then I don't think that's the same thing. If almost all students have 1 major, and a few have 2, and even fewer have 3, and there's no firm limit to the number a student can have, then modelling this as Major1, Major2 would be a repeating group.

Address1 and Address2 doesn't fall into that category. Notice that if a student has two majors, A and B, we could just as well put A in Major1 and B in Major2 as the reverse. That doesn't work for Address1 and Address2, just like it doesn't work for FirstName, LastName.

> If I understand correctly, it is fine because line1 is the
> first line, where line2 is the second line, so they are different
> attributes?

They are distinctly different attributes.

> So, if you want to have a person's name and up to 4 of
> their former names, does it violate relational principles to have these
> as attributres Name, FormerName1, FormerName2, FormerName3,
> FormerName4?

Using temporal data is likely to complicate the issues rather than reveal
them, so I'm somewhat unhappy with this example.

Marshall Received on Wed Aug 31 2005 - 04:47:05 CEST

Original text of this message