Archetype attribute aliasing

Requirement

Support design-time aliasing of attributes in archetypes and templates.

Q: is this a UI concept, or something else?

Q: Are the the aliases local to use situations? Indicates they should be in templates, or at least specialised archetypes

Q: Are aliases meant to be language-independent like other terms - presumably yes.

Design ideas

Fabio

annotations approach

annotations
    aliases = <
        [“view"] = <
            ["en"] = <
                ["[openEHR-EHR-COMPOSITION.encounter.v1]/content[openEHR-EHR-OBSERVATION.heart_rate-pulse.v1]/provider"] = <"renamed provider">
                ["[openEHR-EHR-COMPOSITION.encounter.v1]/content[openEHR-EHR-OBSERVATION.heart_rate-pulse.v1]/data[at0002]/events[at0003]/data[at0001]/items[at0004]/value/accuracy"] = <"renamed accuracy">
            >
            ["sl"] = <
                [“[openEHR-EHR-COMPOSITION.encounter.v1]/content[openEHR-EHR-OBSERVATION.heart_rate-pulse.v1]/provider"] = <"preimenovan ponudnik">
                [“[openEHR-EHR-COMPOSITION.encounter.v1]/content[openEHR-EHR-OBSERVATION.heart_rate-pulse.v1]/data[at0002]/events[at0003]/data[at0001]/items[at0004]/value/accuracy"] = <"preimenovana natančnost">
            >
        >
    >

Custom approach - Should “aliases” have a “tag” level or should they start with languages level. Alternative representation …

annotations
    aliases = <
        ["en"] = <
            ["[openEHR-EHR-COMPOSITION.encounter.v1]/content[openEHR-EHR-OBSERVATION.heart_rate-pulse.v1]/provider"] = <
              [“view"] = <"renamed provider">
            >
            ["[openEHR-EHR-COMPOSITION.encounter.v1]/content[openEHR-EHR-OBSERVATION.heart_rate-pulse.v1]/data[at0002]/events[at0003]/data[at0001]/items[at0004]/value/accuracy"] = <
              [“view"] = <"renamed accuracy">
            >
        >
        ["sl"] = <
            ["[openEHR-EHR-COMPOSITION.encounter.v1]/content[openEHR-EHR-OBSERVATION.heart_rate-pulse.v1]/provider"] = <
              [“view"] = <"preveden ponudnik">
            >
            ["[openEHR-EHR-COMPOSITION.encounter.v1]/content[openEHR-EHR-OBSERVATION.heart_rate-pulse.v1]/data[at0002]/events[at0003]/data[at0001]/items[at0004]/value/accuracy"] = <
              [“view"] = <"prevedena natančnost">
            >
        >
    >

It’s mostly whatever way, …but if we start one way, … and change 3x afterwards, … it’s going to hurt … Better to have some agreement.

Current implementation:

"definition" : {
    "@type" : "C_COMPLEX_OBJECT",
    "rmTypeName" : "OBSERVATION",
    "nodeId" : "at0000.1",
    "attributes" : [ ],
    "attributeTuples" : [ ],
    "attributeCustomizations" : {
    "provider" : {
        "aliases" :{ "en" : "doctor" }
    }
}

Formal design approach

TBD