CR for openEHR RM - Clusters and Data structures
|
Dear All As an involved clinician I have been thinking about
advantages of using inheritance to relate DATA_STRUCTURES and CLUSTER. This
arises from two things we have learned in clinical modelling: 1)
At almost every point where a DATA_STRUCTURE is
currently specified in the RM it would probably be inappropriate to model any
structure other than a ITEM_TREE. This is because any change to this will
invalidate existing data and we have learned that information models get more
complex with time. So the construct of DATA_STRUCTURE at the moment offers no
real value in return for the complexity it introduces as it stands at the
moment. 2)
A ITEM_TABLE or ITEM_LIST ‘constraint’ can
more usefully appear at any point in the data – even forcing a ITEM_TREE
is useful if you can see that specialisation should always allow hierarchical
structures. I am suggesting that we change the model to have
ITEM_STRUCTURE inherit from CLUSTER. This would mean that ITEM_STRUCTUREs
always behaved as clusters (paths etc) but had added features. A ITEM_LIST then
becomes a constraint on a CLUSTER to only allow ELEMENTS. And ITEM_TABLE could
now appear anywhere in the data. For backward compatibility it would mean that ITEM_SINGLE
and its ‘item’ attribute would have to be made obsolete. In fact an
ITEM_LIST with cardinality of 1 offers the same constraint capability. At the
moment ITEM_STRUCTURE and HISTORY inherit from DATA_STRUCTURE but I am not sure
if that confers any benefit as I do not think that DATA_STRUCTURE is present
anywhere in the model. Thomas may want to elucidate this aspect. It may mean
that we need a new interface with multiple inheritance in Eiffel if that is
important. This does mean that openEHR is more closely aligned with CEN
as well – that is to say all data would be clusters with more attributes
where ITEM_TABLE was used and more features in software. I am interested in the Techo’s response to this idea. Cheers, Sam |
_______________________________________________ openEHR-technical mailing list openEHR-technical@openehr.org http://lists.chime.ucl.ac.uk/mailman/listinfo/openehr-technical