Re: The relational model is a wrong theory

From: James K. Lowden <jklowden_at_speakeasy.net>
Date: Tue, 8 Oct 2019 14:13:53 -0400
Message-Id: <20191008141353.842115085d0b690cf9f90a45_at_speakeasy.net>


On Mon, 7 Oct 2019 08:38:52 -0700 (PDT)
vldm10 <vldm10_at_yahoo.com> wrote:

> A man named John Smith had black hair in 2010. In 2019, his hair was
> white. According to Codd's Relational model, these are two different
> people.

[Quoted] [Quoted] I would like to think you're being provocative just to breath some life into c.d.t. You don't truly believe what you wrote, right?

There are two possibilities, depending on how haircolor is modelled. Neither says anything about the Relational Model.

Either the haircolor database models haircolor over time or at an instant in time. If the latter, the tuple

        { John Smith, 2010, Black }

will be replaced by

        { John Smith, 2019, White }

[Quoted] whenever someone gets around to it. Codd refers to the phenomenon of "changing over time" in his 1970 paper.

If time is in the model, the tuples

	{ John Smith, 2010, Black }
	{ John Smith, 2019, White }

both appear in the database. That doesn't mean there are two people. It means there is one person at two times.

As a matter of fact, it doesn't even *mean* that: the meaning of the tuples isn't inherent; it's ascribed by humans interpreting the information. As far as RM is concerned, they're just tuples adhering to certain rules.

Let me say that again in a different way. To the DBMS -- which (we would like to think) implements RM -- name, year, and color are only strings we associate with attributes. "John Smith" isn't a person; it's a value taken from a domain and assigned to an attribute in a tuple. Only that and nothing more.

I think you know all that, which is why I'm surprised you made the assertion you did.

--jkl Received on Tue Oct 08 2019 - 20:13:53 CEST

Original text of this message