Search This Blog

Wednesday, September 25, 2013

Are Agent and Object types Rigid?


This is the first post of a series discussing issues we identified during the refactoring of the UFO-C ontology into an OntoUML model. 

The first issue concerns the rigidity meta-property of two very important concepts of the ontology: Object and Agent. For those who are not familiar with the rigidity notion, please refer to our previous post about rigidity.

What we understood from the definition of Agent in the ontology is that it is something (or someone) that has Intentions and is capable to act (perform Actions) in order to fulfill them, besides being capable of perceiving Events. We refer to these two characteristics as the agentive properties of a Substance. Opposed to Agents, Objects are passive entities, they cannot do anything, only be used (or participate) in events (a more detailed description of Agent and Object can be found here). 

All that being said, let's go back to our open issue: How to classify the Agent and Object types according to the rigidity meta-property? Our first intuition was to represent them as rigid types (using the «category» stereotype). After a while, we were not so sure anymore...

Consider the following thought experiment that ilustrates why:

Lets create a domain ontology which uses UFO-C and that has the concept of Person. We decide to model it as a «kind», a rigid type which provides the identity principle for its instances. Now we have to classify it as an Agent or an Object. Considering that people have intentions (e.g. becoming a PhD) and can do (e.g. enroll in a graduate program) and perceive events and actions (e.g. understanding the acceptance of a paper), we intuitively choose to represent that the «kind» Person is a subtype of «category» Agent. Now, consider we also want to include in the ontology that people can die, so we create two anti-rigid subtypes of «kind» Person: «phase» Living Person and «phase» Deceased Person. Now think: Is it still true that every person, alive or deceased, has all agentive characteristics?

Our intuition "screamed" no!!! People are agents while they live, and cease to be so when they die, and thus become social objects. In other to allow the representation of the described conceptualization, we cannot say that Agent and Objects are rigid types. From that conclusion, two possibilities remain: semi-rigidity or anti-rigity. Since it is possible to conceive so many situations in which we want to express rigid subtypes of agents, semi-rigidity is the most suitable choice. 

Our final conclusion is that, in OntoUML, the types Agent and Object are semi-rigid, and thus Mixins!

How do you guys feel about that? 

Cheers,
Tiago e Bernardo


No comments:

Post a Comment

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