Re: Example of expression bias?

From: erk <>
Date: 20 Jun 2006 13:27:08 -0700
Message-ID: <>

I guess I'll give it a shot. Why? I don't know. I'm not expecting any success, mind you, but it's such a shiny windmill to tilt, Sancho.

Cimode wrote:
> You are redefining RM. A relvar has associated properties among which
> a data type

A relvar does not have a single domain, unless you mean its tuple domain, which is the cross product of the domains of the data types of its attributes (and of course restricted by the tuple-level constraints - though only the full "concatenated" database constraint fully implies the domain of each member relvar.)

> A data type in RM = (a domain1 to draw values from) + (restrictions
> implemented on domain1 --> domain constraint) + (operators that can be
> defined using that data type)

The point of the word "orthogonal" is that this definition of "data type" isn't special, nor is it specific to RM. "Orthogonal" simply means that the RM (and relational algebras and calculi) doesn't need to "know" anything about the specific data types. It "works" whatever the data types are, whether system-defined or user-defined.

> An attribute does not belong to a data type. A data type is the set of
> rules that apply to attribute for saying whether or not values in
> tuples are permissible values in the system.

"Belong" is no more incorrect than your explanation. An attribute has a type/domain; that's all. The relvar can have additional constraints, but the type/domain itself is a set of values. The operations on them (other than equality / less-than / greater-than) are irrelevant, except to specific relational expressions (e.g. restrictions, like "WHERE x < 3").

> If you are considering that data types are not defined in RM. That
> shows the level of ignorance about RM concepts your in.

The RM permits user-defined types; that alone means data types aren't "defined" by the RM. The RM refers to types, but doesn't restrict them or single any of them as special. The RM isn't biased in favor of any specific types (other than perhaps Boolean), so the word "orthogonal" is conceptually appropriate.

> If you state that RM has said nothing about data types: It can only
> mean one thing -->you have never read a book about RM.

I have, and it says nothing specific about any individual types, other than using them as examples. If you can find a place where the RM refers to specific types in defining relational operators, I'd like to see you quote it.

  • Eric

"Inasmuch as ill-deeds spring up as a spontaneous crop, they are easy to learn."
- Cervantes, "Don Quixote" Received on Tue Jun 20 2006 - 22:27:08 CEST

Original text of this message