Recommended versioning strategy for Templates

Hi,

As an EHR solution evolves, the templates also tend to evolve to an acceptable level, especially since the archetypes themselves are evolving. However, all the data recorded using different versions of the OPT should remain consistently and easily query-able with out the AQL becoming overly complex and difficult to manage.

So is there any best practices in versioning the templates as they evolve so that the incremental evolution does not break the AQLs. The question is do we use the OPT filename(visually identifiable), Name filed in template properties or any of the fields in authorship metadata for indicating the template version?

Secondly, is there any template best practices document?

regards

Dileep,

the Archetype Identification specification may provide some answers. It undoubtedly needs further development in this area.

  • thomas

In the EHRServer the implementation of queries allow to express a specific version of an archetype a.b.v1 or all versions a.b.*

We don’t use filters based on templates yet.

Not sure how that is implemented in AQL but maybe there is a matches operation that can match a regex for any archetype version.

We have informally started to add major version number to our template names. Our assumption is that major and minor changes to any component, which are not constrained out, should bubble-up to the template. e.g if we switched from blood_pressure.v1 to blood_pressure.v2 that would require a template major change. OTOH if we went from blood_pressure.v1.1 → 1.2 but none of the 1.2 changes impacted the template we would not change the template minor version.

Not sure if that is fully thought through but it follows the spirit of the archetype id scheme, I think.

Ian

In the EHRServer we use that approach, template ids have a version number and language: https://github.com/ppazos/cabolabs-ehrserver/wiki/Template-Management-(from-EHRServer-v1.3)

But that is not related to querying.