02 Feb 1996 updated
A great deal of needless confusion exists about what we mean by conceptual in a data model versus that which is logical or purely physical. Consider the following examples as we discuss existence, uniqueness, and identity:
Thus uniqueness is a function of both the domain of a set and the nature of the instance which interests us. What is unique in one set may not be in another. In other words, uniqueness is not necessarily a natural property.
Every baby born can be accurately describe by its mother as tiny, adorable, helpless, etc. We invent names to identify babies so that we can tell one from another throughout life. By inventing a set of identifying properties, we have also attached artificial uniqueness to the target instance, even though it may have been rather ordinarily non-unique without our aid.
We can say, therefore, that distinct existence is conceptual; i.e., we can note the existence of an object instance without further qualifying as to its uniqueness or identity. "There is an abandoned car in the gully by the tracks."
Uniqueness is another possible trait of a conceptual object. "There is an abandoned car with the California license plate '1AFU934' in the gully by the tracks." Uniqueness is interesting and possibly convenient but not necessary for an object instance to exist.
Unlike existence and uniqueness, identity is not a natural phenomenon but rather a logical property which we humans invent in order to reliably repeat and communicate the minimum set of properties which enable us to pick out one individual instance from the crowd of its object type. "We call that bright star in the upper left corner of the picture '1X499CA'." or "Let's call that new 7mm chrome calibrator from Xenron item number 2944."
We note that Date seems to disagree and yet acknowledges that identity is really a characteristic of in information system:
"By definition, entities in the real world are distinguisable - that is, they are identifiable in some way." {Date95} page 124
"If an entity is important enough in the real world to require explicit representation in the database, then that entity must be definitely and unambiguously identifiable - for otherwise it would be impossible even to talk about it in any sensible manner. For this reason, the entity integrity rule is sometimes stated is the form:
In a relational database, we never record information about something we cannot identify." {Date95} page 125
Finally, the mechanism by which we enforce uniqueness is a physical or DBMS specific task, separate from the conceptual and logical properties of uniqueness and identity. This mechanism might be intrinsically generated based on a declarative key statement (e.g., Oracle 7) or it might require explicit creation of a unique index. Either way, the property of uniqueness is maintained.
A CASE tool which supports the complete life cycle of data design must be able to model the conceptual, logical, and physical properties of a model separately and at the appropriate level of abstraction.