Re: Domain Definition

From: David Cressey <info_at_dcressey.com>
Date: Sun, 12 Jan 2003 13:33:15 GMT
Message-ID: <v8eU9.25$Ep2.3999_at_petpeeve.ziplink.net>


Thank you for your response.

Your question actually goes quite a bit deeper than my response did. I'm going to have to do some reading as to the difference between domains in ER and domains in relational.

I got spoiled early on by a system (Oracle Rdb) that supported domains (called "global fields") since version 1 of Rdb/VMS. But this treatment of domains is considerably less abstract that the questions you pose.

> Suppose that a boolean type is available in some specific DBMS. This type
> has a domain of values that mean true/false (or alternatively expressed
> yes/no).

You could further translate booleans into representations as follows, couldn't you?

Boolean {false, true} : BinaryDigit

BinaryDigit : {0, 1}

> Greater elucidation would be greatly appreciated.

I'm not sure this is elucidation, but let me explore further.

Let's say the subject matter changes at some point in time, in such a way that the "processed" domain now has three states... say {Processed, InProgress, Blocked}.

Now, if every column that would have been referred to the "processed domain" had instead been referred directly to the "boolean domain", we would have to examine every column that referred to the Boolean domain to see whether or not
it needs to change due to this change in the subject matter. Absent any other indicator in the model as to which columns refer to this aspect of the subject matter, it seems to me that you are forced to reanalyse a portion of the entire system.

I'd like to suggest that this might be the analogue of an "update anomaly" in a less than fully normalized database. Maybe it could be called a "metadata update anomaly". I'm being very tentative here on purpose.
> Refer to Chen's NO-OF-YEARS example and his observations and comparisons
of
> how this pariticular attribute/domain is treated between the relational
> model and the ER model. In particular, he questions the treatment and
> comparison of the NO-OF-YEARS domain (set of values) when comparing
EMPLOYEE
> and SHIP relations/conceptual entities.

Will do.
> Ouch, what about leading 0's...

Ouch is right. I should have referred them both to "numeric character strings of length 9" and not to "numbers". I don't know of any systems that support such a datatype. Anyway, that's my excuse. Received on Sun Jan 12 2003 - 14:33:15 CET

Original text of this message