Search This Blog

Wednesday, September 25, 2013

Rigidity: Rigid, Anti-Rigid and Semi-Rigid types

For those who are not familiar with the rigidity notion, we will now briefly review it, heavily based on Prof. Guizzardi's PhD Thesis, 'Ontological Foundations of Structural Conceptual Models':

Types in OntoUML may be either rigid, anti-rigid or semi-rigid. That is, they may have their rigidity meta-property "set" in three different ways:
  • If an individual is an instance of a rigid type in a given point of time, it must necessarily be so during its whole existence, either in the past or in the future. The concept of Person is rigid because every person, e.g. John, is always a person while he exists. Other examples of rigid types are: Organization, Forest and Ship. The opposite of rigid is non-rigid, and describes types that do not necessarily characterize all their instances throughout their lifecycle. 
  • Non-rigid types can also be anti-rigid, which means that individuals instantiate them contingently, i.e., if an individual instantiates the type in a given situation, there is at least one other situation in which the individual does not instantiate it. The classical example for anti-rigid types is Student. According to common sense, people may become a student during a part of their life and later on cease to be one. Other examples of anti-rigid concepts are husband, employee and child. 
  • Semi-rigid types are non-rigid but are not anti-rigid. These types can be seen as a "mix" rigidiy and anti-rigidity. For some types, they function as rigid types, for others, as anti-rigid. Prof. Guizzardi's example for a semi-rigid type is Seatable. For some individuals, it is a necessary for them to be seatable, like chair. On the other hand, crates may be "seatable" only while their structure is steady.

No comments:

Post a Comment

Comment, critique, add, contribute, love or hate, just tell us what you think about that.