Is unbinded constraint code valid in archetypes / templates?

I’m working in the HiGHmed conformance test framework data sets. One of the templates we use as an example is the RIPPLE conformance template. This template has some issues, some might come from missing checks on modeling tools, like the is_integral function appearing as an attribute constraint for DV_PROPORTION.

Another issue is a DV_CODED_TEXT has a constraint code ac0001 but that doesn’t have a definition/binding to any terminology.

My question is if that is even valid?

IMO that shouldn’t be valid since it doesn’t make sense to define a terminological constraint that is open. Maybe at the archetype level that could be valid, because the specific terminology might be unknown or modelers want to give the implementers the possibility of choosing whatever terminology they want for that node, but at the template level I don’t see the point.

This is a similar case for another issue I found in a template we use for vallidation: Is terminology_id=local compatible to not specifying a code list in the archetype?

Has to have a definition for the archetype to be valid, but doesn’t have to have a binding.

Thanks @thomas.beale , so it should be for both archetype and template that the constraint code without a definition is invalid?

BTW @ian.mcnicoll do you know where can I get the source files for the RIPPLE conformance template? I would like to fix these issues there than manually changing the OPT.

Well that is the case in ADL2, since a template is just an archetype. I don’t think .oet templates can create new constraint codes, so it shouldn’t apply there.

But what about ADL1.4?

Even though the OET might not be able to add a definition for a constraint, if that is valid for the archetype, the template won’t have the definition, resulting in an invalid template, which translates the responsibility of checking that validity rule on implementations and for modeling tools to not check that specific constraint (similar to what happens for the DV_CODED_TEXT constraint with terminology_id = local but no list of codes specified).