Talk:Design principles: Clone names

From HL7Wiki
Jump to navigation Jump to search

The fundamentals of this 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.

The question basically comes down to this:

Should a semantic attribute be added to those classes in the "bottom half" of the RIM to fully express the semantics? Or is it legitimate to use the existing clone name for this purpose?

Rephrased in a generic fashion to focus on design principle without getting sidetracked into the"specifics of the semanticsText issue. Rene spronk 18:58, 2 Aug 2006 (CDT)

"bottom/lower half of the RIM"

I give up. Just what is the "bottom/lower half" of the RIM..with "blue classes"? I assume we are not talking about Participations. --Kevin coonan 03:09, 18 September 2012 (UTC)