Skip to Navigation | Skip to Content

openEHR-Implementers mailing list archives

[Date Prev] [Date Next] [Thread Prev] [Thread Next] [Date Index] [Thread Index]

Re: latest archetype & template drafts


pablo pazos wrote:
Hi Thomas,

I see you're seeing problems with node_id in C_Primitive and C_Domain_Type, I've a problem in ArchetypeInternalRef too.

This is my issue:

In the AOM specs, every CObject has a mandatory node_id attribute, included the ArchetypeInternalRef.

I make an archetype using Oceans Archetype Editor and the node with the reference looks like this (I think this is a valid ADL node):

CLUSTER[at0008] occurrences matches {0..1} matches { -- Pelvis
items cardinality matches {0..*; unordered} matches {
use_node ELEMENT occurrences matches {0..3} /data[at0001]/events[at0002]/data[at0003]/items[at0004]/items[at0012]
}
}


But the use_node internal reference has no node_id, so, in the AOM structure parsed from the ADL, the ArchetypeInternalRef to  /data[at0001]/events[at0002]/data[at0003]/items[at0004]/items[at0012] has no node_id.

This problem complicates our binder implementation to support Internal Refs :(

see section 5.3.7 of the  ADL 1.5 draft -

As for any other object constraint node, use_node constraints must have a node identifier when
occurring within a container attribute, or when otherwise ambiguous within a single-valued attribute.
However, rather than having to state the identifier explicitly, it is inferred from the object identifier of
the target of the reference. If an identifier is required at the position of the use_node reference due to
the node identification rules, the reference target must must be given a node identifier if it doesn’t
already have one. In the rare case where the identifier at the reference target is also used on a sibling
node of the reference, the reference must have an explicit node identifier.

hope this helps

- thomas
_______________________________________________
openEHR-implementers mailing list
openEHR-implementers@openehr.org
http://lists.chime.ucl.ac.uk/mailman/listinfo/openehr-implementers