Location

Cambio office, Drottninggatan 89, Stockholm

Physical Attendees

Planned Outcomes

Agenda Suggestions

Agenda


Programme
Thursday 11 Feb
WhoActions
09:30 - 10:00Informal - get set up with Jira, screens, GTMAll
10:00 - 10:30

Tooling

Git strategy / workflow

Review workflow - BN

All
10:30 - 11:00

Documentation tooling update - show everyone how tooling is working at the moment; solicit suggestions for improvement.

MagicDraw?!


11:00 - 11:30Global review


11:45 - 12:15ITS release strategyAll
12:15 - 13:15LUNCH

13:15 - 14:15
ITS release strategy - Sebastian Iancu
  • does ITS continually accumulate mutually consistent sets of resources, e.g. XSDs, Java code etc etc? It should be the case that the ITS project has ITS for every other component that has something available at any time.
  • ITS specifics - RM 1.0.3 XSDs
Sebastian
14:15 - 15:15
Specifications Releases


15:15 - 15:30C O F F E E

15:30 - 16:30Specifications Releases
  • RM Release 1.1 - move most of Common to BASE
  • SM first release timetable


16:30 - 17:30ADL2 migration strategyTB
17:30 - 18:00Cambio - GDL state of the artRong
20:30 -Dinner





Friday 12 Feb


09:00 - 10:15TDS3

10:15 - 10:30C O F F E E

10:30 - 11:00REST APIs

11:30 - 12:00
AQL - functions - Bjørn Næss


12:00 - 12:30
Demographics model general model issues - Sebastian Iancu


12:15 - 13:15LUNCH

13:15 - 14:30release specifics - dates, agree forward plan

14:30 - 15:00GDL / ADL rules

15:00 - 15:30Next gen ADL tooling ; user experience for e.g. nurses; ADL2 adoption

15:30 - 16:00



drinks? :)

Actions

Vagrant

Create list of instructions for vagrant provisioning script for documentation / publishing env. Sebastian to build and test.

MagicDraw

Do a test to see if MD XMI includes all model content including diagrams.

Do a test to transfer full model to another tool.

GDL

ROng - send TB XMI of GDL model.

Publishing / Workflow

Asciidoc or other generic small types - use a 'collector' CR on each release e.g. 'Correct Asciidoc syntax errors' - e.g. SPECPUB JIRA project.

Signficant CR-driven changes:

  1.  Changes is done one personal fork 
  2.  Pull request is sent to main repository 
  3. Owner of that specification Git repo will do the merge 
  4. Each commit must be assigned with a prefix for the JIRA item (e.g. SPECRM-35)

UML changes - discuss/agree in JIRA, then component owner does or delegates UML changes to one person - avoid competing UML model changes.

Review workflow options - e.g. external reviewers:

Git branch philosophy

ITS strategy

Per-component ITS-RM, ITS-AM, etc Git repos with file structures like:

ITS-RM repo:

Each repo would use same tags as SPECIFICATION-xx repos, e.g. 'Release-1.0.3'. 

To add updates to an earlier release, e.g. fix 1.0.2 XSD bug, or add JSON schema to 1.0.2, then do a branch off the relevant tag point and use tags like 'Release-1.0.3-R2' etc.

Can also add secondary 'bundle-based' tags e.g. '2016.3', '2017.6' etc.

Manually maintained CHANGELOG.txt file in root - enables consumers to easily find out what has changed.


Long term release?


Additionally, a 'whole of system' ITS repo containing e.g. whole of system documentation, packaging scripts etc.

Conformance

Release naming: use e.g. openEHR-2016.3?

Question: how to connect conformance resources/test plans etc to ITS artifacts.

Idea of 'conformance to openEHR-2016.3'...

AQL functions

Generic need for 'functions' in AQL / extension mechanism

Need to show how to define RM-independent functions e.g. math functions, 

Then need ability to define RM-specific functions e.g. instruction-aggregate-state() , etc see pres from Bjørn Næss 

Functions defined as: 

Some examples: 

SELECT i
FROM INSTRUCTION i
WHERE instruction-aggregate-state(i) = 'ACTIVE'


SELECT ac
FROM INSTRUCTION i CONTAINS ACTIVITY ac
WHERE current-state(ac) = 'ACTIVE'

Latter would be specified .... where?

Implementation guidance for AQL service implementers

also consider 'service view' of functions, i.e. REST access as well as AQL access.

Demographics

Need to represent 'function' i.e. 'position' concept as well as 'role'. 

In Code24 system all 'relations' are PARTY_RELATIONSHIPs

What is the appropriate way to model 'legitimate relationship' i.e. current carers.

Types of real world 'role'

What about generic roles? These are like job posts.

Is a patient  PERSON in a 'patient' ROLE?

Other problem: medical secretary / other staff doing direct entry into EHR instead of doc at busy times.

Identifiers - where should they be modelled? Currently inside PARTY.details ITEM_STRUCTURE, but this is dependent on knowing archetype paths. Possible suggestion (Sebastian Iancu) - add PARTY.identifiers: PARTY_IDENTIFIER, where PARTY_IDENTIFIER would have a DV_IDENTIFIER, time_validity, ?validated/checked optional attribute.

Various possibilities:

Consider adding ROLE.type to indicate type of role: professional capability | employment position | employer responsibility | 

Rules/GDL/AOM

  1. simplify AOM2 rules down to simple expressions only
  2. move core generic expression tree model / syntax? to BASE
  3. sync GDL with BASE model, also AUTHORED_RESOURCE
  4. move GDL to AOM2 (when?)

ADL2 Adoption pathway

Agree on OPT1.4 support in ADL2 tooling as main enabling condition.

Impact areas:

Consider discussing value of specialisation in archetypes w.r.t. querying etc with clinical modelling group(s).