Reification in Conceptual Modeling
Reification is widely used in conceptual modeling. Reifying a relationship means viewing it as an entity. The purpose of reifying a relationship is to make it explicit, when additional information needs to be added to it. Consider the relationship type IsMemberOf(member:Person, Committee)
. An instance of IsMemberOf
is a relationship that represents the fact that a person is a member of a committee. The figure below shows an example population of IsMemberOf
relationship in tabular form. Person P1 is a member of committees C1 and C2. Person P2 is a member of committee C1 only.
The same fact, however, could also be viewed as an entity. Viewing a relationship as an entity, one can say that the entity reifies the relationship. This is called reification of a relationship. Like any other entity, it must be an instance of an entity type. In the present example, the entity type has been named Membership
. For each instance of IsMemberOf
, there is one and only one instance of Membership
, and vice versa. Now, it becomes possible to add more information to the original relationship. As an example, we can express the fact that "person p1 was nominated to be the member of committee c1 by person p2". Reified relationship Membership
can be used as the source of a new relationship IsNominatedBy(Membership, Person)
.
For related usages see Reification (knowledge representation).
Read more about this topic: Reification (computer Science)
Famous quotes containing the words conceptual and/or modeling:
“I thought it was a wonderfully conceptual act actually, to fire a replica pistol at a figureheadthe guy could have been working for Andy Warhol!”
—J.G. (James Graham)
“The computer takes up where psychoanalysis left off. It takes the ideas of a decentered self and makes it more concrete by modeling mind as a multiprocessing machine.”
—Sherry Turkle (b. 1948)