Re: Codd provided appropriate mathematics ... (was Re: Relational and MV (response to "foundations of relational theory"))

From: Bob Badour <bbadour_at_golden.net>
Date: Wed, 3 Mar 2004 17:57:14 -0500
Message-ID: <1YKdnT0pBP2Z_tvdRVn-uQ_at_golden.net>


"Eric Kaun" <ekaun_at_yahoo.com> wrote in message news:cgl1c.55383$3T6.34195_at_newssvr33.news.prodigy.com...
> "Bob Badour" <bbadour_at_golden.net> wrote in message
> news:84KdnZeYCbXcKKLdRVn-uw_at_golden.net...
> > It is perfectly valid to have domains with one or more possible
> > representations involving list types. As long as the dbms treats the
value
> > as a single value with respect to the relational operations, we are
still
> > dealing with the relational model.
>
> Yes, that accords with my understanding.
>
> > A logical data model involves structure. In the relational model, the
only
> > structure is the relation. If the logical data model involves additional
> > structures, the logical data model is no longer relational. A relation
> > represents sets of attribute values. As long as the logical data model
> > treats them as single values, it does not matter whether the operations
on
> > the values are list operations etc.
>
> Also sensible, and also where MV veers off (the nested structure is built
> into the data model, giving 2 ways to model the same thing, one of which
is
> enticing but limiting, and which also mangles closure and other good
> properties of a model).
>
> > The question becomes: What are the operations on list values? If you
think
> > about the question for a while, you might find the answer unexpected.
>
> In Java I tend to use iterators, so I deal more with a "sequence" type
than
> a list per se. The usual defining characteristics of a list are ordering
> and, in most cases, random indexed access to elements.

How does an iterator fit with operations on values?

> > What you propose is perfectly valid in the relational model. Thus, for
> > instance, a possible representation of a movie type might include an
> ordered
> > list of video frames or an array of video frames or a stream of video
> frames
> > etc. The question is: Why would anyone want any of the above when one
can
> > have a relation with a video frame attribute?
>
> Agreed - the only reason might be, for example, a COMPRESS operation which
> takes a FRAME_LIST and returns a FRAME_LIST which takes less space when
> serialized (lossy compression).

And why does one need an array etc. instead of a relation for the compress operation?

> That seems more like an operation over a
> domain than something you'd want to do with a relation... but I could be
> wrong about that.

I suggest you are probably just talking about multiple possible representations of the same value. Received on Wed Mar 03 2004 - 23:57:14 CET

Original text of this message