Inert vs. descriptive properties of Acts
Introduction
There is a mention of inert vs. descriptive properties of Acts in the RIM narrative for both moodCode and negationInd. During the disambiguation of negationInd it was found that we don't actually have a good overview of which properties are to be considered inert and which descriptive, besides the ones mentioned as examples. This Hot Topic addresses such an overview.
Definition
Acts have two kinds of act properties, inert and descriptive properties. Inert properties are not affected by the mood, descriptive properties follow the mood of the object. For example, there is an identifier attribute Act.id, which gives a unique identification to an act object. Being a unique identifier for the object is in no way dependent on the mood of the act object. Therefore, the "interpretation" of the Act.id attribute is inert with respect to the act object's mood.
By contrast, most of the attributes are descriptive of what the Act expresses. Descriptive properties of the Act give answer to questions of the whom, where, with what, how and when of the action. The whom, by whom, where, and with what, are answered by Participations, while the how and when are answered by descriptive attributes and ActRelationships. The interpretation of a descriptive attribute is aligned to the interpretation of the entire act object, and controlled by the mood.
Relevance
The nature of an Act property as inert or descriptive might not seem relevant to its use in a V3 message model. However, it is very relevant to the exact semantic of the property. For example, since the 'author' ActRelationship is inert, the author of an order (Act in RQO mood) conveys the author of the order itself (who wrote it). On the other hand, the 'performer' is descriptive, so the performer on an order conveys the (intended) performer of the event that is ordered to happen.
This becomes most apparent when related to the use of the negationInd attribute of an Act. This attributes negates all the descriptive properties of the Act, but has no effect on its inert properties. In effect, if you would view the Act as a statement, and would combine all its descriptive properties as an AND statement, setting negationInd to true would be like putting logical NOT in front of that statement. For further eleboration, see the RIM narrative for Act.negationInd.
List of Act attributes
Inert
• moodCode ??? • id • title • text • statusCode ??? • availabilityTime • confidentialityCode • uncertaintyCode (after correction by Gunther) • languageCode
Descriptive
• classCode (after correction by Gunther) • code • negationInd • derivationExpr ??? • effectiveTime • activityTime • priorityCode • repeatNumber • interruptibleInd • independentInd • reasonCode
It has been suggested to remove levelCode altogether.