Hi!

I'm catching up with old mail...

If the underlying issue was SNOMED CT binding (or other
terminology/coding system bniding), then the distinction beteween two
alternatives of "code binding" (associating external code to a single
atNNNN-code) and "path binding" (associating external code to an
entire path) in the openEHR binding mechanisms is relevant. In the LiU
editor, and I assume also others, you select either "code binding" or
"path binding" each time you create a binding in the GUI.

See near the end in Fig 35 and in the first section of text in chapter 12.4 of
http://www.openehr.org/releases/1.0.2/html/architecture/overview/Output/terminology.html

Sorry if I happened to state something you already considereded obvious.

Best regards,
Erik Sundvall
erisu at imt.liu.se    http://www.imt.liu.se/~erisu/    Tel: +46-13-227579



On Mon, Feb 9, 2009 at 17:04, Thomas Beale
<thomas.beale at oceaninformatics.com> wrote:
>
> Hi David,
>
> you are saying that in the 'work contact' cluster you should be able to
> override the [at0005] etc because they have meanings like 'phone' etc, and
> are defined within the CONTACT [at0004] node, which is to do with 'work'.
> But the definition of [at0005] is just 'phone'; the full meaning of that
> node is given by its path, which will be
> ..../contacts[at0004|home]/addresses[at0005|phone] (i.e. home phone), and
> the same goes for the phone under the at0008 node, i.e. it will have a path
> ..../contacts[at0008|home]/addresses[at0005|phone] (i..e work phone). So I
> think the current approach is correct for this example. It is also correct
> in my view for examples like Apgar, where the 2 min, 5 min, 10 min samples
> all refer to the 1 min sample - but clearly they are not the 1 min sample
> data.
>
> The Slot does allow an override, but that is for the typical situation where
> the referring node needs to be more specific in meaning than the archetype
> being used in the slot. E.g. the main archetype might have a slot called
> 'joint pain', but might just use a 'pain' archetype to specify this. In this
> case, it makes sense to override. Now I can imagine the same argument being
> applied to the Internal reference - a more specific node carrying a
> reference to a more general one, e.g. work address referring to an ADDRESS
> node under an 'addresses' (i.e. completely general list) node, but I have
> never seen an example of it. But there is no reason why it could not happen
> I guess - I think this would be a better example for your argument...
>
> - thomas beale
>
>
> David Moner wrote:
>
> Hello to everybody.
>
> We have detected an issue in the ADL grammar related to the node_id (atXXXX
> value) of Internal References. An Internal Reference node, as any other
> C_OBJECT, inherits the node_id attribute. But its ADL grammar does not allow
> to define this value in a textual representation.
>
> archetype_internal_ref:
>   SYM_USE_NODE type_identifier c_occurrences object_path
> | SYM_USE_NODE type_identifier error
>
>
> We think it is necessary to allow the introduction of this information in
> some cases. When we re-use an internal data structure, we are maybe also
> changing its meaning. For example, looking at the example provided in the
> ADL 1.4 document, page 59.
>
> CONTACT [at0004] ? { -- home contact
>     purpose ? {-- etc --}
>     addresses cardinality ? {0..*} ? {
>         ADDRESS [at0005] ? { -- phone
>             type ? {-- etc --}
>             details ? {-- etc --}
>         }
>         ADDRESS [at0006] ? { -- fax
>             type ? {-- etc --}
>             details ? {-- etc --}
>         }
>         ADDRESS [at0007] ? { -- email
>             type ? {-- etc --}
>             details ? {-- etc --}
>         }
>     }
> }
>
> CONTACT [at0008] ? { -- work contact
>     purpose ? {-- etc --}
>         addresses cardinality ? {0..*} ? {
>             use_node ADDRESS /contacts[at0004]/addresses[at0005] -- phone
>             use_node ADDRESS /contacts[at0004]/addresses[at0006] -- fax
>             use_node ADDRESS /contacts[at0004]/addresses[at0007] -- email
>         }
>     }
> }
>
> We re-use nodes at0005, at0006 and at0007 but we do not assign a new atXXXX
> code to them. Structurally, this is correct, but not semantically (i.e. we
> reuse structure but not meaning). It is not the same a "home" phone number
> than a "work" phone number. In fact, SNOMED uses diferent codes for each
> case: a "Patient home telephone number" (code 429697006) and a "Patient work
> telephone number" (code 428843000).
>
> To sum up, it would be necessary to change the ADL grammar to support the
> use of new definitions of term_codes in the archetype internal references,
> something like:
>
>     use_node ADDRESS[at1234] /contacts[at0004]/addresses[at0005] -- phone
>
>
> Finally, it is necessary to remember that the archetype slot (which is a
> very similar use case) allows this kind of definition.
>
> c_archetype_slot_id:
>   SYM_ALLOW_ARCHETYPE type_identifier
> | SYM_ALLOW_ARCHETYPE type_identifier V_LOCAL_TERM_CODE_REF
> | SYM_ALLOW_ARCHETYPE error

Reply via email to