This wiki has undergone a migration to Confluence found Here
<meta name="googlebot" content="noindex">

Difference between revisions of "RIMBAA 201009 Minutes"

From HL7Wiki
Jump to navigation Jump to search
(corrections of e-mail addresses of 2 attendees)
 
(3 intermediate revisions by the same user not shown)
Line 91: Line 91:
 
#**ACTION: Peter Hendler to contact known users of JavaSIG in the US to ensure they know of the new upcoming version and to allow them to express an interest.
 
#**ACTION: Peter Hendler to contact known users of JavaSIG in the US to ensure they know of the new upcoming version and to allow them to express an interest.
 
#Creation of a Java based HL7 v3 Datatypes R2 library
 
#Creation of a Java based HL7 v3 Datatypes R2 library
#*''Insert Notes by Ewout''
+
#*There are quite some datatype implementations, most of which are nicely scoped and distributable as stand-alone libraries. They are also the most reusable libraries, compared to other parts of Rimbaa implementations because they do not contain a lot of dependencies on database design.
 +
#*We would like to consider building a ''feature matrix'' comparing datatype implementations. Most of us have build one or more datatype implementations so we do have a clear idea of the important features a datatype library could/should support. Examples are support for terminology via cts, support for gts, mappings available to database or XML.
 +
#*maybe we can setup a kind of community-defined specs (just like the java process) to define desirable features and choose a reference implementation.
 +
#*list the most important use cases for GTS, we certainly do not require "complete" implementations, but which are the most used features? For example "periodic events at a predetermined time with starting and ending dates".
 
#Meeting adjourned at 12:45
 
#Meeting adjourned at 12:45
 
===Appendix: summary of motions===
 
===Appendix: summary of motions===
Line 241: Line 244:
 
|X||Andrea Ceiner||ItalTBS, IT||andrea.ceiner@italtbs.com
 
|X||Andrea Ceiner||ItalTBS, IT||andrea.ceiner@italtbs.com
 
|-
 
|-
|&nbsp;||Andrea Poli||O3 Enterprise, IT||poli@o3enterprise.it
+
|&nbsp;||Andrea Poli||O3 Enterprise, IT||poli@o3enterprise.eu
 
|-
 
|-
 
|&nbsp;||Andy Harris||National Institute of Health Research (NIHR), UK||&nbsp;
 
|&nbsp;||Andy Harris||National Institute of Health Research (NIHR), UK||&nbsp;
Line 285: Line 288:
 
|&nbsp;||Saverio Sabina||CNR, IT||sabina@ifc.cnr.it
 
|&nbsp;||Saverio Sabina||CNR, IT||sabina@ifc.cnr.it
 
|-
 
|-
|X||Silvano Montanari||Dedelus, IT||silvano.montanari@dedelus.eu
+
|X||Silvano Montanari||Dedelus, IT||silvano.montanari@daedalus.eu
 
|-
 
|-
 
|&nbsp;||Tessa van Steijn||Nictiz, NL||stijn@nictiz.nl
 
|&nbsp;||Tessa van Steijn||Nictiz, NL||stijn@nictiz.nl
Line 301: Line 304:
 
#Rene calls to order at 09:15
 
#Rene calls to order at 09:15
 
#Open-source Dictionary Manager
 
#Open-source Dictionary Manager
#*Andrea: subset of PHI Technology, provided to HL7 Italy for free (it is also available to any party that wishes to use it). Used to manage OIDs (it replaces the Excel version of the italian OID registries) and VOCs (code systems, value sets...) in 1st instance as a client-server program (where eclipse is the client and mysql is the server). A web application will follow next year for search and retrieve and download.
+
#*Andrea: subset of PHI Technology, provided to HL7 Italy for free (it is also available to any party that wishes to use it). Used to manage OIDs (it replaces the Excel version of the Italian OID registries) and VOCs (code systems, value sets...) in 1st instance as a client-server program (where eclipse is the client and mysql is the server). A web application will follow next year for search and retrieve and download.
 
#*Model is effectively a subset of the HL7 terminology model. Davide presents the vocabulary and OID management part of the tool.
 
#*Model is effectively a subset of the HL7 terminology model. Davide presents the vocabulary and OID management part of the tool.
 
#**Rene: question: in/export value sets as defined in Eclipse OHT tools? Davide: not at this point in time. Imports delimited files (CSV), that's the format most commonly used by those that provide HL7 Italy with code systems. CTS II integration has been considered but is not used yet. Andrea: tool is end-user oriented. Source code is available should developers wish to support another format. ISO OID registry format not supported, again CSV.
 
#**Rene: question: in/export value sets as defined in Eclipse OHT tools? Davide: not at this point in time. Imports delimited files (CSV), that's the format most commonly used by those that provide HL7 Italy with code systems. CTS II integration has been considered but is not used yet. Andrea: tool is end-user oriented. Source code is available should developers wish to support another format. ISO OID registry format not supported, again CSV.
Line 315: Line 318:
 
#*Michael van de Zel: service = interface, payload, behaviour. Starting point is just "below" the end-user requirements. Functional requirements are top of the iceberg, need to find out the hidden parts, the part below the service. Traceability between functional and service/technology models of key importance. EHR-S FM provides an overview of the functions in an EHR system. InfoStrucure = requirements "below the surface"
 
#*Michael van de Zel: service = interface, payload, behaviour. Starting point is just "below" the end-user requirements. Functional requirements are top of the iceberg, need to find out the hidden parts, the part below the service. Traceability between functional and service/technology models of key importance. EHR-S FM provides an overview of the functions in an EHR system. InfoStrucure = requirements "below the surface"
 
#*UMCG application: KernEPD (Summary of Care record). Based on web, CUI, v3, SNOMED, DCM, EHR-S FM.
 
#*UMCG application: KernEPD (Summary of Care record). Based on web, CUI, v3, SNOMED, DCM, EHR-S FM.
#*Funtional model that matches the UMCG requirements: DC.1.4.1. management of allergies, intolerance and averse reactions. Provides an indication of desired functionality and desired content. Use functions as the basis for the service concept. They sometimes combine multiple functions in one service. Ewout: major differences in granularity of the functional requirements.
+
#*Functional model that matches the UMCG requirements: DC.1.4.1. management of allergies, intolerance and averse reactions. Provides an indication of desired functionality and desired content. Use functions as the basis for the service concept. They sometimes combine multiple functions in one service. Ewout: major differences in granularity of the functional requirements.
 
#*From the functions derive a design create a system/architecture design (or one could call it the 'abstract deployment diagram'). All services are stateless.
 
#*From the functions derive a design create a system/architecture design (or one could call it the 'abstract deployment diagram'). All services are stateless.
 
#*Payload: DCM Information model related to functional requirements, map to logical model (using Care Record Template). Behaviour: act life cycle (state change).
 
#*Payload: DCM Information model related to functional requirements, map to logical model (using Care Record Template). Behaviour: act life cycle (state change).
Line 324: Line 327:
 
#CIM-based CRUD Storage (see [http://www.ringholm.de/persist/20100916_RIMBAA_CMET_CRUD_exploration.pptx http://www.ringholm.de/persist/20100916_RIMBAA_CMET_CRUD_exploration.pptx] for powerpoint)
 
#CIM-based CRUD Storage (see [http://www.ringholm.de/persist/20100916_RIMBAA_CMET_CRUD_exploration.pptx http://www.ringholm.de/persist/20100916_RIMBAA_CMET_CRUD_exploration.pptx] for powerpoint)
 
#*Ewout: CIM is now called SIM, by the way
 
#*Ewout: CIM is now called SIM, by the way
#*Ewout: I have experience with 2 RIM-based storage projects. Presentation isn't based on either, this is waht i would do if I had to start today. Will be implemented as a proof of concept.
+
#*Ewout: I have experience with 2 RIM-based storage projects. Presentation isn't based on either, this is what i would do if I had to start today. Will be implemented as a proof of concept.
 
#*At UMCN (a current project): chose (for v2 inbound interface): don't map to v3 and use v3 services to store in the database. Chose to build separate v2 services to store.
 
#*At UMCN (a current project): chose (for v2 inbound interface): don't map to v3 and use v3 services to store in the database. Chose to build separate v2 services to store.
#*A generic algorithm should be able to merge object trees into object graphs. Current RMIMs are not designed to Update/replace/delete (at persistence layer) specific child acts (of the focal act) and attributes. Merge algorithms needs to underatsnd the intent of the interaction, hits hidden in the prose of implementation manuals, has to be aware of mapping of models to your EHR-model (add project specific data to ensure that mapped data will comply with business rules prior to persisting).
+
#*A generic algorithm should be able to merge object trees into object graphs. Current RMIMs are not designed to Update/replace/delete (at persistence layer) specific child acts (of the focal act) and attributes. Merge algorithms needs to understand the intent of the interaction, hits hidden in the prose of implementation manuals, has to be aware of mapping of models to your EHR-model (add project specific data to ensure that mapped data will comply with business rules prior to persisting).
#*Map interactions to "service level" CRUD operations. Unit of storage = SIM/LIM, lock/create/read/update/delete as a whole. Explicit references to other data (feels like "identifyable" CMET stereotype). Also is the maximum scope for context conduction (if a big model blocks context conduction, then it's probably a boundary of a SIM/LIM), and serves as the unit for documentation. Only the "root object" is referencable, otherwise the management of references and integrity will become unmanagable. CP-style storage.
+
#*Map interactions to "service level" CRUD operations. Unit of storage = SIM/LIM, lock/create/read/update/delete as a whole. Explicit references to other data (feels like "identifiable" CMET stereotype). Also is the maximum scope for context conduction (if a big model blocks context conduction, then it's probably a boundary of a SIM/LIM), and serves as the unit for documentation. Only the "root object" is referencable, otherwise the management of references and integrity will become unmanageable. CP-style storage.
 
#**Relevant book in this context: "Domain Driven Design", by Eric Evans (Amazon: [http://www.amazon.com/Domain-Driven-Design-Tackling-Complexity-Software/dp/0321125215]). ISBN:978-0321125217
 
#**Relevant book in this context: "Domain Driven Design", by Eric Evans (Amazon: [http://www.amazon.com/Domain-Driven-Design-Tackling-Complexity-Software/dp/0321125215]). ISBN:978-0321125217
#*How does one find these atomic SIM/LIMs? There is, although not explcietely so, an EHR DMIM. Provides consistency. CMETs quite often too large, need to find smaller parts.
+
#*How does one find these atomic SIM/LIMs? There is, although not explicitly so, an EHR DMIM. Provides consistency. CMETs quite often too large, need to find smaller parts.
#**ACTION: Ewout to write a draft checklist on methods to find 'small pattern models' to be used in CRUD services, based in part on the book by Eric evans. Determine in how far the methods on the checklist impact the "safety" of the models.
+
#**ACTION: Ewout to write a draft checklist on methods to find 'small pattern models' to be used in CRUD services, based in part on the book by Eric Evans. Determine in how far the methods on the checklist impact the "safety" of the models.
 
#**Ewout: '''depending on source''' (reliability, business context), objects trees are split into atomic parts
 
#**Ewout: '''depending on source''' (reliability, business context), objects trees are split into atomic parts
 
#**Rene: what happens with the metadata (such as trigger event, templates used) that object-chunks were based on. Ewout: are preserved.
 
#**Rene: what happens with the metadata (such as trigger event, templates used) that object-chunks were based on. Ewout: are preserved.
Line 340: Line 343:
 
#*This wasn't discussed due to a lack of time. See [http://www.ringholm.de/persist/20100916_RIMBAA_phi_MDD.ppt http://www.ringholm.de/persist/20100916_RIMBAA_phi_MDD.ppt] for contents of the scheduled presentation.
 
#*This wasn't discussed due to a lack of time. See [http://www.ringholm.de/persist/20100916_RIMBAA_phi_MDD.ppt http://www.ringholm.de/persist/20100916_RIMBAA_phi_MDD.ppt] for contents of the scheduled presentation.
 
#Motion to adjourn at 13:10
 
#Motion to adjourn at 13:10
 +
 
===Appendix: summary of new action items===
 
===Appendix: summary of new action items===
 
The table below summarizes all new action items. See [[RIMBAA Action Items]] for a a full list of open action items.
 
The table below summarizes all new action items. See [[RIMBAA Action Items]] for a a full list of open action items.
Line 346: Line 350:
 
!width=”100%”|New action items
 
!width=”100%”|New action items
 
|-
 
|-
|ACTION ITEM: Rene to communicate the proposed clarification of scope to the SOA WG.
+
|ACTION ITEM: Rene to communicate the proposed clarification of scope (of the [[Services for RIMBAA]] project) to the SOA WG.
 
|-
 
|-
 
|ACTION ITEM: Ewout to write a draft checklist on methods to find 'small pattern models' to be used in CRUD services, based in part on the book by Eric evans. Determine in how far the methods on the checklist impact the "safety" of the models.
 
|ACTION ITEM: Ewout to write a draft checklist on methods to find 'small pattern models' to be used in CRUD services, based in part on the book by Eric evans. Determine in how far the methods on the checklist impact the "safety" of the models.
 
|}
 
|}

Latest revision as of 14:44, 20 October 2010

RIMBAA WGM held in Rome on September 15/16 2010, in conjunction with the "HL7 Italy Open Days".

September 15, 10:00-12:00

Workgroup Date/Time Location Chair/Scribe
RIMBAA WG 2010-09-15,
10:00-12:00
Rome, Italy C/S: Rene Spronk

Attendee List (marked X)

At Name Affiliation Email Address
  Adri Burggraaff Slotervaartziekenhuis, NL adri.burggraaff@slz.nl
  Andrea Ceiner ItalTBS, IT andrea.ceiner@italtbs.com
  Andy Harris National Institute of Health Research (NIHR), UK  
  Arild Hollas CSAM Health, NO arild.hollas@csamhealth.com
  Bas van Poppel iSoft, NL bas.vpoppel@isofthealth.com
  Bertil Reppen Apertura, NO  
X Davide Magni ItalTBS, IT davide.magni@italtbs.com
X Ewout Kramer Furore, NL e.kramer@furore.nl
  Freek Geerdink Vrumun, NL freek.geerdink@vrumun.nl
  Hans Jonkers Philips, NL hans.jonkers@philips.com
  Henk Enting MGRID, NL  
  Kjetil Sanders CSAM Health, NO Kjetil.Sanders@csamhealth.com
X Massimo Frossi ItalTBS, IT massimo.frossi@italtbs.com
X Michael van der Zel UMCG and Results4care, NL m.van.der.zel@ict.umcg.nl
X Rene Spronk Ringholm, NL rene.spronk@ringholm.com
  Roelof Middeljans UMCG, NL  
X Sara Gaion ItalTBS, IT sara.gaion@italtbs.com
  Tessa van Steijn Nictiz, NL stijn@nictiz.nl
  Tom de Jong NovaPro, NL  
  Tommy Kristiansen CSAM Health, NO tommy.kristiansen@csamhealth.com
  Willem Dijkstra MGRID, NL w.p.dijkstra@mgrid.net
X Yeb Havinga MGRID, NL y.t.havinga@mgrid.net

Minutes

  1. Meeting called to order by Rene at 10:30
  2. Administrative issues
    • Agenda Review/Additions/Changes
      • Approved by general consensus
    • Approval of the Minutes of the previous meeting in Rio
      • MOTION by Ewout/Michael to approve the minutes of the RIMBAA WG of the Rio WGM (5-0-0).
    • Announcements
      • Rene: status update on the v3 implementation book. I decided to first create a one day training with the exact same content as the book; and after the training material doesn't show any major gaps anymore to subsequently write the book. During the creation process of the slides for the v3 implementation training course (for full set of slides, see [1]) it became clear that some areas need more discussion within RIMBAA, notably on the subject of the persistence layer.
        • Michael: what I'm missing is some way/description to bridge the gap between the functional and the technical people. Rene: I would call that "localization" of UV models to a certain context. Davide: people need to be aware of the limits of localization, especially on the use and creation of project specific model extensions. This heavily impacts re-use. During discussion the consensus was that the scope of RIMBAA is already wide enough, we need to stay focused.
      • Rene: Charlie McCay (the TSC chair) noted some overlap between the name of the "Implementation and Conformance WG" and the RIMBAA statement that "we're the HL7 v3 implementers". I've addressed an e-mail to the IC WG suggesting they may have to update their mission statement as well as their name - their main focus is on Conformance. This will probably be taken up during the upcoming Cambridge WGM as well.
    • Formal approval of the outcome of the e-mail vote for FTSD representative
      • MOTION by Davide/Ewout: To find the procedure to elect the RIMBAA FTSD representative by e-mail vote to be acceptable, and to accept/reconfirm its outcome (Tony Julian, with 5 out of 9 votes) as reported by the Tally (Rene Spronk). The outcome has been communicated to HQ on August 24. (5-0-0)
    • Report from the HL7 Rio WGM
      • Not a lot of attendees, no regional (South American) attendees. RIMBAA was able to hold all scheduled sessions - the presentation by Cecil was among the highlights of the meeting.
    • Planning of next meeting
      • Cambridge USA (October 2010)
        • Davide: suggest to add discussion of "JavaSIG2010" to the agenda for this WGM.
        • (Yeb Havinga joins the meeting)
  3. JavaSIG 2010 (Davide)
    • Davide: JavaSIG2010 is a revamped version of the old javaSIG material. ItalTBS is serious considering to make this version available to the open source community.
      • This is a javaBeans version of JavaSIG, creating objects with a bean interface instead of POJOs. Datatypes are currently R1, R2 will be taken into account for next version. Map all datatypes to simple database columns.
      • Added useful production information to the base class used by JavaSIG (RimObject)
    • Yeb: one has to be careful when it comes to the Governance of such an open source product: who will be setting the future direction, and how can one guarantee stability and backwards compatibility? Implementers will need to be assured of these things before they decide to use the tool.
    • Discussion: we need to find a couple more interested parties (at least). Victor Chai (Singapore) is one of them.
      • ACTION: Rene to ask DRV Bund (Germany) to verify if they're interested in using the updated version
      • ACTION: Peter Hendler to contact known users of JavaSIG in the US to ensure they know of the new upcoming version and to allow them to express an interest.
  4. Creation of a Java based HL7 v3 Datatypes R2 library
    • There are quite some datatype implementations, most of which are nicely scoped and distributable as stand-alone libraries. They are also the most reusable libraries, compared to other parts of Rimbaa implementations because they do not contain a lot of dependencies on database design.
    • We would like to consider building a feature matrix comparing datatype implementations. Most of us have build one or more datatype implementations so we do have a clear idea of the important features a datatype library could/should support. Examples are support for terminology via cts, support for gts, mappings available to database or XML.
    • maybe we can setup a kind of community-defined specs (just like the java process) to define desirable features and choose a reference implementation.
    • list the most important use cases for GTS, we certainly do not require "complete" implementations, but which are the most used features? For example "periodic events at a predetermined time with starting and ending dates".
  5. Meeting adjourned at 12:45

Appendix: summary of motions

The table below captures all substantial motions.

Motions
MOTION by Ewout/Michael to approve the minutes of the RIMBAA WG of the Rio WGM (5-0-0).
MOTION by Davide/Ewout: To find the procedure to elect the RIMBAA FTSD representative by e-mail vote to be acceptable, and to accept/reconfirm its outcome (Tony Julian, with 5 out of 9 votes) as reported by the Tally (Rene Spronk). The outcome has been communicated to HQ on August 24. (5-0-0)

Appendix: summary of new action items

The table below summarizes all new action items. See RIMBAA Action Items for a a full list of open action items.

New action items
ACTION ITEM: Rene to ask DRV Bund (Germany) to verify if they're interested in using the updated version (of JavaSIG 2010)
ACTION ITEM: Peter Hendler to contact known users of JavaSIG in the US to ensure they know of the new upcoming version (aka JavaSIG2010) and to allow them to express an interest.

September 15, 14:00-17:00

Workgroup Date/Time Location Chair/Scribe
RIMBAA WG 2010-09-15,
14:00-17:00
Rome, Italy C/S: Rene Spronk

Attendee List (marked X)

At Name Affiliation Email Address
  Adri Burggraaff Slotervaartziekenhuis, NL adri.burggraaff@slz.nl
  Andrea Ceiner ItalTBS, IT andrea.ceiner@italtbs.com
  Andrea Poli O3 Enterprise, IT poli@o3enterprise.it
  Andy Harris National Institute of Health Research (NIHR), UK  
  Arild Hollas CSAM Health, NO arild.hollas@csamhealth.com
  Bas van Poppel iSoft, NL bas.vpoppel@isofthealth.com
  Bertil Reppen Apertura, NO  
X Davide Magni ItalTBS, IT davide.magni@italtbs.com
X Ewout Kramer Furore, NL e.kramer@furore.nl
  Freek Geerdink Vrumun, NL freek.geerdink@vrumun.nl
X Giuseppe Lapis , IT g.lapis@computer.org
  Hans Jonkers Philips, NL hans.jonkers@philips.com
  Henk Enting MGRID, NL  
  Kjetil Sanders CSAM Health, NO Kjetil.Sanders@csamhealth.com
X Mariarita Minerba Caribec, IT mr.minerba@caribec.it
X Massimo Frossi ItalTBS, IT massimo.frossi@italtbs.com
X Michael van der Zel UMCG and Results4care, NL m.van.der.zel@ict.umcg.nl
X Rene Spronk Ringholm, NL rene.spronk@ringholm.com
X Roberto De Lorenzi , IT r.delorenzi@datasiel.net
  Roelof Middeljans UMCG, NL  
X Sara Gaion ItalTBS, IT sara.gaion@italtbs.com
X Saverio Sabina CNR, IT sabina@ifc.cnr.it
  Tessa van Steijn Nictiz, NL stijn@nictiz.nl
  Tom de Jong NovaPro, NL  
  Tommy Kristiansen CSAM Health, NO tommy.kristiansen@csamhealth.com
  Willem Dijkstra MGRID, NL w.p.dijkstra@mgrid.net
X Yeb Havinga MGRID, NL y.t.havinga@mgrid.net

Minutes

  1. As per the RIMBAA DMP, Rene requests permission of the group to create some video material for use in a future publicly available streaming video. The intent is not to record any particular presentation or person, but to have general video material that gives an impression of the meeting.
    • There are no objections.
  2. A RIM Based IHE XDS Registry / Repository, using a RIM based database (Andrea Poli; see http://www.ringholm.de/persist/20100915_RIMBAA_XDS_based_on_RIM.pdf for his presentation)
    • O3Enterprise has created a IHE XDS Registry solution based on the RIM instead of an ebXML DB structure. The Repository itself is not based on the RIM.
    • The external behaviour is based on the IHE specifications, the ebXML RS data is mapped to RIM-based structures for application-internal processing and persistence. Using terms as defined by the technology matrix: AS (IHE ebXML specification) - CO (three R-MIMs, see below) - RP (using the RP API as defined by the Phi solutions RIMBAA platform).
    • Three R-MIMs were created (document, folder, submission set). Based on a pre-existing mapping as available on the HL7 Wiki (IHE XDS mapping to HL7 v3).
    • Conclusion: the resulting solution is completely open architecture, open source, open standard. Mapping of the XDS metadata to v3 models is entirely possible.
  3. RIM-based implementation of a COPD gold-protocol (Chronic obstructive pulmonary disease) (Saverio Sabina, Mariarita Minerva-CaribelIt. See http://www.ringholm.de/persist/20100915_RIMBAA_COPD_1.ppt and http://www.ringholm.de/persist/20100915_RIMBAA_COPD_2.ppt for their presentations.)
    • CNR Puglia (National Research Council)
    • The application is based on the Phi Technology toolkit. The use of the toolkit allows application developers to focus on workflow analysis and information model analysis.
    • Saverio: focused on requirements gathering, based on interviews with healthcare providers and the preexisting COPD reference model. Modeling uses the UML for activity diagrams and (data model-) ontologies. we don't need technology driven specifications, but end-user specifications. Need for business modeling, independent of application modeling, system modeling, and even HL7 models)
    • Mariarita demonstrates how the requirements have been met using the Phi Technology toolset. One of the key models (next to workflow, user interfaces, binding issues - all covered by the Phi toolset) is the assessmentScale R-MIM.
  4. Discussion of the Object nets and object trees issue.
    • Ewout, Davide and Michael all interpret inbound v3 messages (object trees) and update their database with the data. The database contains the "now", i.e. focuses on the latest/current state of things. The database holds an object net. The processing (and merging) algorithm needs to be aware of all sorts of things related to the metadata of the object tree.
    • There seem to be two approaches (we don't have terms for them yet) to persisting object trees:
      1. As a stack of object trees (the unit of persistence is the object tree itself). Queries are executed by (a) selecting those object trees from the stack that may be relevant in the context of the query, and (b1) either merge the latest versions of the data into an ad-hoc object net which is the basis for the query response, or (b2) select 1 object tree as the most appropriate source of response data, and return a subset of the data as contained in that individual object tree.
      2. Merge the contents of the object trees into an object net after receipt. Queries are executed directly on the object net in the database.
    • (not part of the minutes, note added after the meeting took place): the terms we were looking for may actually be OLTP and OLAP, see http://datawarehouse4u.info/OLTP-vs-OLAP.html for a brief comparison between these concepts.
    • ACTION: Rene to edit the issue page to clarify the wording related to TE1 and TE2.
  5. Discussion of the (related) Safe querying of a RIM-based data model.
    • Clarification: "Safe" is to be interpreted as "Clinically Safe", i.e. how does one ensure that the query results in a data set that contains "medically relevant" data without omitting essential components?
    • (referring to the issue page on the wiki) Option 3, using a templateId as supplied by the data creator: templates (LIMs, and even SIMs) themselves may not be medically safe, templates could just exist to promote re-use of certain structures. DCMs should be considered to be medically safe.
    • ACTION: Rene to add another actor to the diagram: a "safe template repository", which has the capability to (a) identify templates that are safe, and (b) specify if an instance that complies with template X can be safely interpreted using a subsequent template X2; and if so, how the mapping (if any) between the two should look like.
    • Example: a data source stores an instance that complies to the GOLD2008 dataset (a dataset defined for pulmonary diseases). In 2010 a querying application queries for data according to the GOLD2010 dataset (an updated version of GOLD2008). The determination whether or not GOLD2008 data can be safely interpreted in the context of GOLD2010 is a human process - this can't be determined algorithmically. The mapping between the two data sets (if at all possible) may involve all sorts of transformations and the use of (nullFlavor) defaults.

Appendix: summary of new action items

The table below summarizes all new action items. See RIMBAA Action Items for a a full list of open action items.

New action items
ACTION ITEM: Rene to add another actor to the diagram (on this page: Safe querying of a RIM-based data model): a "safe template repository", which has the capability to (a) identify templates that are safe, and (b) specify if an instance that complies with template X can be safely interpreted using a subsequent template X2; and if so, how the mapping (if any) between the two should look like.

September 16, 09:00-13:00

Workgroup Date/Time Location Chair/Scribe
RIMBAA WG 2010-09-16,
09:00-13:00
Rome, Italy C/S: Rene Spronk

Attendee List (marked X)

At Name Affiliation Email Address
X Andrea Ceiner ItalTBS, IT andrea.ceiner@italtbs.com
  Andrea Poli O3 Enterprise, IT poli@o3enterprise.eu
  Andy Harris National Institute of Health Research (NIHR), UK  
  Arild Hollas CSAM Health, NO arild.hollas@csamhealth.com
  Bas van Poppel iSoft, NL bas.vpoppel@isofthealth.com
  Bertil Reppen Apertura, NO  
X Davide Magni ItalTBS, IT davide.magni@italtbs.com
X Ewout Kramer Furore, NL e.kramer@furore.nl
  Freek Geerdink Vrumun, NL freek.geerdink@vrumun.nl
X Georgio Cassetti Noemalife, IT gcassetti@noemalife.com
  Giuseppe Lapis , IT g.lapis@computer.org
  Hans Jonkers Philips, NL hans.jonkers@philips.com
  Henk Enting MGRID, NL  
  Kjetil Sanders CSAM Health, NO Kjetil.Sanders@csamhealth.com
X Leonardo Truscello Webred, IT leonardo.truscello@webred.it
  Libero Maesano Simple Engineering, IT/FR libero.maesano@simple-eng.com
X Massimo Frossi ItalTBS, IT massimo.frossi@italtbs.com
X Michael van der Zel UMCG and Results4care, NL m.van.der.zel@ict.umcg.nl
X Rene Spronk Ringholm, NL rene.spronk@ringholm.com
  Roberto De Lorenzi , IT r.delorenzi@datasiel.net
  Roelof Middeljans UMCG, NL  
  Sara Gaion ItalTBS, IT sara.gaion@italtbs.com
  Saverio Sabina CNR, IT sabina@ifc.cnr.it
X Silvano Montanari Dedelus, IT silvano.montanari@daedalus.eu
  Tessa van Steijn Nictiz, NL stijn@nictiz.nl
  Tom de Jong NovaPro, NL  
  Tommy Kristiansen CSAM Health, NO tommy.kristiansen@csamhealth.com
  Willem Dijkstra MGRID, NL w.p.dijkstra@mgrid.net
  Yeb Havinga MGRID, NL y.t.havinga@mgrid.net

Minutes

  1. Rene calls to order at 09:15
  2. Open-source Dictionary Manager
    • Andrea: subset of PHI Technology, provided to HL7 Italy for free (it is also available to any party that wishes to use it). Used to manage OIDs (it replaces the Excel version of the Italian OID registries) and VOCs (code systems, value sets...) in 1st instance as a client-server program (where eclipse is the client and mysql is the server). A web application will follow next year for search and retrieve and download.
    • Model is effectively a subset of the HL7 terminology model. Davide presents the vocabulary and OID management part of the tool.
      • Rene: question: in/export value sets as defined in Eclipse OHT tools? Davide: not at this point in time. Imports delimited files (CSV), that's the format most commonly used by those that provide HL7 Italy with code systems. CTS II integration has been considered but is not used yet. Andrea: tool is end-user oriented. Source code is available should developers wish to support another format. ISO OID registry format not supported, again CSV.
      • (Leonardo and Silvano join the meeting)
  3. The HL7 "Services for RIMBAA" project
    • Michael van der Zel: project approved in May2010. SOA WG to lead, RIMBAA sponsors. Michael puts the contents of the proposal on the screen. The scope is not clear, needs further work. Formal status of the project unknown.
      • (Giorgio joins the meeting)
    • Related/Additional sources: SAIF, HSSP ("Practical Guide for SOA in Health care, vol 1"), Thomas Ehrl, "SOA and HL7 v3 - HL7 Methodology" (part of v3 ballot publication)
    • Suggest clarification of the project scope to SOA WG: to develop a strategy (which does not conflict with the ideas as put forward in SAIF) for the development of entity/utility level services on top of a RIM-Based persistence layer.
      • ACTION: Rene to communicate the proposed clarification of scope to the SOA WG.
      • (Massimo joins the meeting, Leonardo leaves)
  4. Use of RIM based services in the UMCG RIMBAA project (see http://www.ringholm.de/persist/20100916_RIMBAA_Services_UMCG.pdf for the presentation)
    • Michael van de Zel: service = interface, payload, behaviour. Starting point is just "below" the end-user requirements. Functional requirements are top of the iceberg, need to find out the hidden parts, the part below the service. Traceability between functional and service/technology models of key importance. EHR-S FM provides an overview of the functions in an EHR system. InfoStrucure = requirements "below the surface"
    • UMCG application: KernEPD (Summary of Care record). Based on web, CUI, v3, SNOMED, DCM, EHR-S FM.
    • Functional model that matches the UMCG requirements: DC.1.4.1. management of allergies, intolerance and averse reactions. Provides an indication of desired functionality and desired content. Use functions as the basis for the service concept. They sometimes combine multiple functions in one service. Ewout: major differences in granularity of the functional requirements.
    • From the functions derive a design create a system/architecture design (or one could call it the 'abstract deployment diagram'). All services are stateless.
    • Payload: DCM Information model related to functional requirements, map to logical model (using Care Record Template). Behaviour: act life cycle (state change).
    • Conclusions
      • EHR-S FM IN* Functions are ueful as the basis for services in healthcare.
      • Use of v3 act state model as the basis for behaviour
      • Traceability great tool to link Technology to Functionality and Impact
  5. CIM-based CRUD Storage (see http://www.ringholm.de/persist/20100916_RIMBAA_CMET_CRUD_exploration.pptx for powerpoint)
    • Ewout: CIM is now called SIM, by the way
    • Ewout: I have experience with 2 RIM-based storage projects. Presentation isn't based on either, this is what i would do if I had to start today. Will be implemented as a proof of concept.
    • At UMCN (a current project): chose (for v2 inbound interface): don't map to v3 and use v3 services to store in the database. Chose to build separate v2 services to store.
    • A generic algorithm should be able to merge object trees into object graphs. Current RMIMs are not designed to Update/replace/delete (at persistence layer) specific child acts (of the focal act) and attributes. Merge algorithms needs to understand the intent of the interaction, hits hidden in the prose of implementation manuals, has to be aware of mapping of models to your EHR-model (add project specific data to ensure that mapped data will comply with business rules prior to persisting).
    • Map interactions to "service level" CRUD operations. Unit of storage = SIM/LIM, lock/create/read/update/delete as a whole. Explicit references to other data (feels like "identifiable" CMET stereotype). Also is the maximum scope for context conduction (if a big model blocks context conduction, then it's probably a boundary of a SIM/LIM), and serves as the unit for documentation. Only the "root object" is referencable, otherwise the management of references and integrity will become unmanageable. CP-style storage.
      • Relevant book in this context: "Domain Driven Design", by Eric Evans (Amazon: [2]). ISBN:978-0321125217
    • How does one find these atomic SIM/LIMs? There is, although not explicitly so, an EHR DMIM. Provides consistency. CMETs quite often too large, need to find smaller parts.
      • ACTION: Ewout to write a draft checklist on methods to find 'small pattern models' to be used in CRUD services, based in part on the book by Eric Evans. Determine in how far the methods on the checklist impact the "safety" of the models.
      • Ewout: depending on source (reliability, business context), objects trees are split into atomic parts
      • Rene: what happens with the metadata (such as trigger event, templates used) that object-chunks were based on. Ewout: are preserved.
      • Rene: these same services used by the v2-based frontend? Ewout: yes, map v2 message to v3 chunk services.
    • The discussion will be continued during the WGM in Cambridge.
  6. Authentication using RIM model
  7. Various RIMBAA/MDD principles using modules from the PHI Technology product suite (Andrea/Davide)
  8. Motion to adjourn at 13:10

Appendix: summary of new action items

The table below summarizes all new action items. See RIMBAA Action Items for a a full list of open action items.

New action items
ACTION ITEM: Rene to communicate the proposed clarification of scope (of the Services for RIMBAA project) to the SOA WG.
ACTION ITEM: Ewout to write a draft checklist on methods to find 'small pattern models' to be used in CRUD services, based in part on the book by Eric evans. Determine in how far the methods on the checklist impact the "safety" of the models.