In a paper he wrote in 1979 (“Extending the Database Relational Model to Capture More Meaning,” *ACM TODS 4*, No. 4, December 1979), Codd proposed a certain design discipline, which (simplifying slightly) can be described as follows:

Let

*E*be an “entity type,” and let*ID*be a data type such that every entity of type*E*has exactly one*primary identifier*(my term, not Codd’s), of type*ID*. For example,*E*and*ID*might be the entity type “suppliers” and the data type “character string,” respectively.Let

*P1*, ...,*Pn*be a set of “property types” such that every entity of type*E*has at most one property of each of the types*P1*, ...,*Pn*. For example, in the case of suppliers,*P1*,*P2*, and*P3*might be the property types “name,” “status,” and “city” (so*n*= 3 in this example).*Note:*I’m assuming for the sake of the present discussion (only) that a given supplier can have any subset of the three properties, including the empty set in particular.Then the database should contain:

Exactly one

*E-relvar*, containing*ID*values for those entities of type*E*that exist at any given time, andExactly one

*P-relvar*for each*Pi*(*i*= 1, ...,*n*), containing (*ID*value,*Pi*value) pairs for each entity of type*E*that exists at any given time and has a property of type*Pi*at that time.

I’ll refer to this discipline as “the RM/T discipline,” since it’s part of what Codd referred to, in that 1979 paper, as “the extended relational model RM/T” (T for Tasmania, where Codd first presented his ideas for that extended ...

Start Free Trial

No credit card required