Just to be precise, can we look at the specific cases?
My uneducated guess is:
- Change from Active Stroke to History Of Stroke => new row in the condition table:
- (1) status=active, concept=Stroke, onsetDate=stroke-date, endDate=today
- (2) status=history-of, concept=Stroke, onsetDate=stroke-date?, previousCondition=(1)
- Change onsetDate, additionalDetails, endDate, endReason => edit these in-place, no clone or audit trail
- Change concept or conditionNonCoded => new row in the condition table
- (1) status=active, concept=Myocardial Infarction, onsetDate=stroke-date, endDate=today
- (2) status=active, concept=Coronary Artery Disease, onsetDate=today?, previousCondition=(1)