|(8 intermediate revisions by 3 users not shown)|
MnM Open Hot Topic}} |+|
| || |
|−|The v3 design principle states that when it comes to the interpretation of RIM -derived models one should be able to derive the full ''' computable''' semantics of the model without having to look at the names of cloned classes . The purpose of the clone names is to both ensure unique type names for code generation and instance validation, as well as to make those semantics clear to the average human reader. |+|
the of RIMshould '''''' of the model
the of classesclone names as to those semantics.
| || |
| || |
|−|Two open issues: |+|
The to to to that the .
|−|*The above lore needs to be formally voted upon to document it, or if already ahs been voted upon we need a link to a document that contains the description. |+|
|−|*The description needs to be clarified to state that this extents to all RIM classes, and not (as some say) just those classes that are part of the normative or "upper" part of the RIM. |+|
The to this RIM classes, as some classesof the the .
Latest revision as of 09:02, 21 October 2006
See the discussion page for discussion related to this page.
- Semantics of class clones derived from the RIM backbone (upper portion of the RIM) should never be inferred from the clone name. They should only be inferred from the structural attributes of the clone and its situation in the model.
- Semantics of clone names derived from the lower part of the RIM (blue classes) at present must be inferred from clone names as there are no structural attributes which may be used to communicate those semantics.
The v3 design principle states that when it comes to the interpretation of RIM-derived models one should be able to derive the full computable semantics of the model without having to look at the names of cloned classes.
The fundamentals of this design principle are that the semantics of v3 instances should be fully expressed using the 'semantic' attributes (classCode, moodCode, typeCode, etc.) and constraints on them. (E.g. fixed values, constrained domains, etc.) The meaning of an instance is found by looking at the RIM definitions and vocabulary definitions. Clone names are used to help expose the semantics expressed by these attributes to the casual reader. It is the responsibility of modelers to ensure that the clone names selected correspond to the constraints chosen.
The challenge to this position is found in the "bottom" half of the RIM where there are few, if any, semantic attributes exist. For those classes, the source of semantics is limited to RIM definitions as there is no structural vocabulary. For some classes, specifically query parameters, different clones have different semantics, but there is no mechanism to distinguish the different meaning of each clone. At present the semantics must be inferred from the clone names.