Re: On Formal IS-A definition

From: David BL <davidbl_at_iinet.net.au>
Date: Wed, 5 May 2010 02:47:35 -0700 (PDT)
Message-ID: <10524a25-80d2-4f43-9c2f-65b94ada5093_at_23g2000pre.googlegroups.com>


On May 5, 2:49 pm, Bob Badour <bbad..._at_pei.sympatico.ca> wrote:
> David BL wrote:
> > On May 5, 4:13 am, Tegiri Nenashi <tegirinena..._at_gmail.com> wrote:
>
> >>On May 3, 5:04 pm, paul c <toledobythe..._at_oohay.ac> wrote:
>
> >>>... and never bring up,
> >>>say, just what the Information Principle really means.
>
> >>..."the entire information content of the database is represented in
> >>one and only one way. Namely as explicit values in column positions
> >>(attributes) and rows in relations (tuples)."?
>
> >>It is obsolete.
>
> >>Seriously, I think it is aimed at cowboys who try to invent new data
> >>management systems without studying what relational model is about. It
> >>is about attributes and tuples because both relational calculus, and
> >>algebra explicitly refer to relations structured this way. The
> >>situation is similar to arithmetic where pupils learn how to add/
> >>multiply numbers represented in a very specific notation. So the
> >>arithmetic principle would say ..."the entire content of arithmetic is
> >>represented in one and only one way. Namely as explicit sequences of
> >>digits in numbers". Presumably arithmetic principle would prevent some
> >>from reinventing roman numerals:-)
>
> > I agree. My own take on the Information Principle is that "one and
> > only one way" is misleading because one generally has a choice of
> > whether to use rich or simple domain types. One could represent the
> > entire database value in a single relation containing a single tuple
> > with a single attribute and be adhering to the Information
> > Principle. In that sense it seems rather vacuous.
>
> I disagree that it's vacuous. Even in this situation, the principle
> prohibits physical pointers in the logical structure.

Excellent point.

Actually I wonder if it could even be said to be too restrictive. What if I want the entire database value to have a nominative type? This allows me to give the database a formal semantic (i.e. interpretation) that's explicit. E.g. my entire database might represent a complex 3D shape.

Just as nominative types are necessary for supporting the definition of structural types, I think structural types are useful for implementing user-defined nominal types. Nominative and structural types are both fundamental and it seems arbitrary to force one not the other to be "at the top" of the database.

So I suggest the Information Principle should be:

    "the database records a value" Received on Wed May 05 2010 - 11:47:35 CEST

Original text of this message