Hi! On Wed, Dec 15, 2010 at 00:30, Thomas Beale <thomas.beale at oceaninformatics.com>?wrote: > On 10/12/2010 08:49, Erik Sundvall wrote: >> If the already present annotation mechanism in templates is powerful enough >> (Do you think it is, Koray,?Pablo and others?) > > to be clear, do you mean the annotations documented in the ADL 1.5 draft > document? I.e. the new annotations section?
Yes, I was then thinking of section 9.8 in http://www.openehr.org/svn/specification/TRUNK/publishing/architecture/am/adl1.5.pdf When looking closer at this for GUI hint experimentation, perhaps we could instead use a combination of annotations and the assertion/rule mechanisms in ADL/AOM? The already present logic in the assertions mechanism is probably enough to define e.g. Boolean trigger variables. Annotations could then be used to let GUIs know what to do/show/hide based on those triggers. Discussion examples follow (with the risk of ADL errors that Tom's brain-integrated ADL parser :-) will catch and he then can correct) In section?6.5.4 of http://www.openehr.org/svn/specification/TRUNK/publishing/architecture/am/adl1.5.pdf a way of defining variables is specified. Perhaps a (preferably Boolean) variable could be defined as an archetype rule like... $smoker:BOOLEAN ::= /data/items[at0003.7]/items[at0009.3]/value/defining_code matches local::at0013 ...and an annotation on a tree structure that should be shown in GUIs only when documenting smokers could be... annotations = < ["/data/items[at0003.7]/items[at0010]"] = < items = < ["GUI-show-if"] = <"$smoker"> -- Other annotation name examples: GUI-hide-if ... ["some other annotation"] = <"whatever"> ...or perhaps... annotations = < ["/data/items[at0003.7]/items[at0010]"] = < items = < ["GUI-trigger"] = <"$smoker"> ["GUI-action"] = <"show"> -- Other annotation value examples: hide, collapse, expand ["some other annotation"] = <"whatever"> I guess the mess starts if such annotations are to be overridden in yet a specialization generation of the GUI-annotated template/archetype. That would have to be analyzed further, but maybe some refined variant of the examples above could be a useful start in the mean time? Best regards, Erik Sundvall erik.sundvall at liu.se http://www.imt.liu.se/~erisu/? Tel: +46-13-286733 > On Wed, Dec 8, 2010 at 15:55, Thomas Beale?<thomas.beale at > oceaninformatics.com>?wrote: >> you have two choices: >> >> A) mix it in with the languages & architectural layers you already have >> B) create a dedicated layer or component type, and possibly dedicated >> formalism if needed >Erik Sundvall wrote: > I believe there is (as usual) a context dependent gray-zone, not a clear > breakpoint, regarding what annotations would be most useful to have in which > layer. So, yes I agree layers are good for separation of concerns, but it is > not always (at least not at an early stage) easy to forsee exactly what best > fits into each layer and how many layers there should be. Thomas Beale wrote: > I agree - we don't yet have a clear list of the GUi semantics that would need > to be in a UI template...

