Hello everyone

How do the "includes / excludes" fields of an Archetype Slot get 
interperted to conclude with one set of rules about which archetypes are 
allowed to be attached to a slot?

Browsing through various archetypes i am noticing that some slots will 
only have one or more "includes" while others have one or more 
"includes" and ".*" at the "excludes" field.

Are these two fields to be cascaded? (i.e. Include everything that 
satisfies the include condition and then FROM THE INCLUDED LIST exclude 
everything that satisfies the exclude condition)

Or would they operate in parallel? (i.e. Get everything that satisfies 
the include condition, Get everything that satisfies the exclude 
condition, merge the two sets. The merged set governs what is allowed to 
be included to a particular slot).


And, are the following equivalent?

"include
        archetype_id/value matches {/openEHR-EHR-CLUSTER\.address\.v1/}
exclude
        archetype_id/value matches {/.*/}"

This means "Include ONLY an address" (?)
In this case it makes sense to evaluate the include/exclude fields in 
parallel.

"include
        archetype_id/value matches {/openEHR-EHR-CLUSTER\.telecom_details\.v1/}"

(In this case there was no exclude)
This must mean "Include ONLY telecom_details" (?)


A secondary question, is there any case where it might be required to 
"Include" or "Exclude" an archetype with a condition other than its name 
/ class? I am asking this because the "includes" / "excludes" are 
Assertions but all archetypes i have seen so far "match" the 
archetype_id/value only.

Looking forward to hearing from you
Athanasios Anastasiou

Reply via email to