Hi
A breaking change should always be new major version.
Then the problem is that changing version number introduces a huge cost. The cost is of course to the implementers – and by this I mean vendors, health care providers, national registries, integrations and so on. The whole ecosystem is influenced by such a change. Which makes it necessary to do a) not eagerly push major changes and b) when needed major changes should not influence earlier entries.
In this concrete change of Archetype there is two major changes:
- Introduce UCUM as UNIT
I think we should just add a new unit – the UCUM and make the older deprecated. But keep both of them. This makes it possible to migrate slowly to the new schema for unit. In this case it is important to verify that the magnitude 90 is the same for each of the unit. And it is the only two units used. This makes it somehow safe to compare the magnitude without checking the unit.
- Migrate from CLUSTER for Location to a choice between DvCodedText and DvText
This changes is on one side a change in pattern and on the other side a reduction in functionality.
I guess the pattern change is introduced to handle uncertainty in two flavours.
-
The list of local codes will never be complete – let us introduce the choice to also use free text
-
The list of local codes is not precise enough – let us introduce the choice to explain the element with free text
This uncertainty will always be present when using coded text to describe a phenomena. It will never be precise enough and cover all use-cases. Given this – what is the criteria to introduce choice between text and coded text? Is this a normal case for this kind of elements? To simplify :
Colours: a) RED, b) BLUE, c) GREEN d)Other. RED, BLUE and GREEEN cover the 80% use-case. Other covers the rest. We have several options to model this:
a) Expand the list of colours and add new colours as new requirements appear
b) Introduce a supporting element to specify colour if other is selected
c) Leave colours as Text field with the possibility to
a. Add list of items in Template (limited or not limited to list)
b. Add list of coded items in Template
c. Bind element to Terminology in Template
Why is pattern a) chosen as the best way to model this kind of features?
The reduction in functionality in the Archetype is because the user now is restricted to 0..1 coded text or text. Before could user choose between 0..1 coded text and an additional text so describe details of the location. I guess this is an wanted reduction in functionality and the intention may be to make entries more precise.
In my, technical, opinion: The changes introduced on this specific archetype should be applied in in such a way that no breaking changes are introduced. Just add UCUM and leave the CLUSTER as is and use the specific location to add specific details. Propose the changes as a possible new major version (v2-ALPHA….) and collect more changes before forcing a new major version.