@HHeiser Since version v2.29.0 EHRbase supports template versioning better. The support of versioning is more implicit rather than explicit.
For the mechanism to work, the template names need to follow a specific format {template_name}.v{SemVer number} (It’s also allowed to use partial SemVer numbers).
Using it this way, EHRbase also allows updating the templates, even if compositions use them:
template_test_name.v1→template_test_name.v2template_test_name.v1→template_test_name.v1.0.1template_test_name.v.1.0.0→template_test_name.v.1.0.1
Note: All template versions would be available in the template list as standalone templates.
Following this template naming convention would also allow compositions to be updated to newer template versions.
For example, a composition based on template_test_name.v2.0.0 can be updated to use template_test_name.v2.0.1, but cannot be updated to a previous template version template_test_name.v1.0.0. Since composition data is immutable, every template change in a composition has to be done via a new update to the composition, so a new version is created.