PART 1 of Sebastian's latest reply to me ...
.... My main approach and views while I'm looking over archetypes and specifications is from a technical perspective, as I'm working as software developer.
B is going for other, CKM similar but not the same, in-house developed, archetypes; for the sake of exercise the original (and only) language will be dutch: openEHR-DEMOGRAPHIC-PERSON.b_persoon.v1 and openEHR-DEMOGRAPHIC-CLUSTER.b_persoon_identifier.v1 and will use the following path to test legal identity:
As time passes B learns that he must use internal codes to be more efficient on handling or exchanging data so he publish a new modified version: openEHR-DEMOGRAPHIC-PERSON.b_persoon.v2 and the path becomes:
Notice, it is
at0008 because it is completely different archetype, and that was the code rightfully assigned by the archetype tool used in the B organization.
Now, as you might see already, if B wants to exchange data with A, they will have to share archetypes because only looking to the at-codes is not enough (
at0027 vs
at0008) - i.e. A must access and read
openEHR-DEMOGRAPHIC-PERSON.b_persoon.v2 in order to validate and use terminology associated with
at0008. Suppose that is not an issue and A accomplished that reading... but now the question is how can A understand what should be the right code associated with legal identity. Previously, in his own domain, A used (instructed by the application level) to look for
at0027 but there is no clue for him how to locate the same concept in B domain.
I guess in this case a quite good solution (as you already mentioned) is to use term bindings to a common external terminology. It will not enforce but probably just facilitate common semantics. Without it, the above use-case will be quite a challenge to solved for good. Still, adopting this solution requires agreement between A and B on using a common external terminology service which might add some adoption issues (maybe even scalability) on top of whole openEHR solution.
Another solution, which I was referring on in my previous email is to use openehr terminology directly instead of local at-codes. This will be pretty similar (at least from my point of view) to the way the way Entry package is regulated (see for instance ISM_TRANSITION class attributes), the only difference being that over there specifications (instead of archetypes) are 'enforcing' terminology. Beside this, like you already mentioned, it will also allow re-use of some terms accross demographic archetypes. On the other hand, can you tell me how come there is openEHR terminology for
instructions, audit change types, composition categories, etc instead of coding those terms locally on the archetype level? Is it
You nicely concluded saying that we have
"a mechanism that is semantic precise, within the context of the archetype and allows us to bind to external terminologies as and when they become available, without enforcing their use" while my point is that for these demographic
name-based-typing it will be even safer to use an openEHR terminology instead, as that is always available within an openEHR environment.
=================================
Part 2 to follow ...