Open main menu
Home
Random
Recent changes
Special pages
Community portal
Preferences
About Wikipedia
Disclaimers
Incubator escapee wiki
Search
User menu
Talk
Dark mode
Contributions
Create account
Log in
Editing
Reification (computer science)
(section)
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
== In conceptual modeling == Reification is widely used in [[Conceptual model (computer science)|conceptual modeling]].<ref>Antoni Olivé, [http://www-pagines.fib.upc.es/~modeling/Preface.pdf Conceptual Modeling of Information Systems], Springer Verlag, 2007.</ref> 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 ''<code>IsMemberOf(member:Person, Committee)</code>''. An instance of ''<code>IsMemberOf</code>'' is a relationship that represents the fact that a person is a member of a committee. The figure below shows an example population of ''<code>IsMemberOf</code>'' relationship in tabular form. Person ''P1'' is a member of committees ''C1'' and ''C2''. Person ''P2'' is a member of committee ''C1'' only. [[File:reification example1.png|500px|thumb|Example population of <code>IsMemberOf</code> 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 <code>Membership</code>. For each instance of ''<code>IsMemberOf</code>'', there is one and only one instance of ''<code>Membership</code>'', 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 ''<code>Membership</code>'' can be used as the source of a new relationship ''<code>IsNominatedBy(Membership, Person)</code>''. For related usages see [[Reification (knowledge representation)]].
Edit summary
(Briefly describe your changes)
By publishing changes, you agree to the
Terms of Use
, and you irrevocably agree to release your contribution under the
CC BY-SA 4.0 License
and the
GFDL
. You agree that a hyperlink or URL is sufficient attribution under the Creative Commons license.
Cancel
Editing help
(opens in new window)