Non existing constraints: closed or open interpretation?

Pablo Pazos pablo.pazos at
Wed Jul 4 17:59:45 EDT 2018

Hi David,

On Wed, Jul 4, 2018 at 3:32 AM, David Moner <damoca at> wrote:

> Templates further constrain archetypes, that constrain the reference
> model. In both cases, if the ANY constraint is used, that means that
> anything defined in the underlying archetype (or in the underlying
> reference model) is acceptable. Thus, you have to do an open interpretation.

I know, but my case is not the use of ANY, is that no constraint is
defined, it's just empty. The meaning of ANY or * is clear, but I think the
meaning of absence of constraints is not so clear. This can affect
implementation dramatically, since "open" interpretation is "I can add any
content, even if it's not defined by the archetype/OPT", and the "closed"
interpretation is "I can only add what's defined by the constraints. One
case can be when OPTs have SLOTs, should those slots be resolved by
software at runtime or should a specialization of that OPT define reference
in the SLOT to have a concrete structure and no other content can be added
at runtime.

This is the case that troubles me. Because the "open" interpretation means
that I can define an empty OPT with just a COMPOSITION, but no
COMPOSITION.content definition, and at runtime I can put anything on the
content and the instance will be valid against the OPT. Having ANY is a
different case, as also having all nodes as optional would be another case
(of course respecting the RM optional/required occurrences).

>> On a normal case where the full OPT is defined, from COMPOSITION to
>> ELEMENT.value, how that OPT is interpreted? open or closed? Are extra
>> ENTRIES and other nodes allowed even no definition for them is on the OPT?
>> (open interpretation), or only OPT defined nodes are allowed? (closed
>> interpretation).
> If you mean the case when we already have an structure defined in the
> template (or in the archetype), then the interpretation is closed. If you
> already constrained an OBSERVATION inside a COMPOSITION, you removed the
> ANY constraint, and thus the OBSERVATION is your only option. This is not
> completely true in specialized archetypes, where you can expand the
> definition and create new constraints, but that is a special case that is
> not possible (as far as I know) at the template level.
> David
> --
> David Moner Cano
> Web:
> Twitter: @davidmoner
> Skype: davidmoner
> _______________________________________________
> openEHR-clinical mailing list
> openEHR-clinical at

*Ing. Pablo Pazos Gutiérrez*
pablo.pazos at
+598 99 043 145
skype: cabolabs
Subscribe to our newsletter <>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <>

More information about the openEHR-clinical mailing list