Sync 2.0 FHIR Object Mapping

Dear community,

We are working on the Sync 2.0 module. One of the key points of this module is to use FHIR standard to synchronize objects. Unfortunately, it is not very straight and easy to put OpenMRS objects into FHIR objects, for this reason, we have to figure a way to map those.

Currently, I am working on OpenMRS Form mapping into FHIR Questionnaire. I’ve published a mapping draft into the Confluence page Form FHIR mapping.

I kindly ask you for comments and your opinions on the mapping, so we can progress with the implementation. Any feedback is welcome.

Best regards, Jakub T

cc @SolDevelo @darius

I prepared draft mapping for another object - org.openmrs.Drug <-> FHIR Medication.

https://wiki.openmrs.org/display/projects/Drug+synchronization

Some of the nested objects aren’t fully filled yet. However, at this point, it should be enough to identify potential issues with the mapping.

Again, I kindly ask you for comments and your opinions on the mapping.

Best regards, Jakub T

cc @SolDevelo @darius @burke

Dear community,

I also prepared a simple draft of mapping: org.openmrs.Allergy <-> FHIR AllergyIntolerance

https://wiki.openmrs.org/display/projects/Allergy+synchronization

I kindly ask you for comments and feedback on this.

Best regards, Karol C

cc @SolDevelo @darius @burke

Hi @darius @raff @dkayiwa
I hope you guys are doing great!

We started with some preliminary work on Sync2 new Phase. Could you give us some feedback and directions regarding above object mappings?

Who else could be mention on mapping-related topics for feedback and to facilitate discussion?

Regards, Kristof

Thanks for the ping. Let me take a look and comment.

cc @harsha89 @surangak @sashrika @milan @maany

Where you put “N/A” in the FHIR field, does this mean that it is ignored during synchronization?

The “N/A” means that I wasn’t able to find suitable FHIR field for an openmrs field.

Dear community,

I prepared the draft of mapping for objects related to OpenMRS program object.

https://wiki.openmrs.org/display/projects/Programs+synchronization

Some of the mapped fields aren’t fully filled. At this point, it should be enough to identify potential issues with the mapping.

I kindly ask you for comments and your opinions on the mapping. Any feedback will be great.

Regards, Arek

Dear community,

I prepared the draft of mapping: org.openmrs.Cohort <-> FHIR Group

https://wiki.openmrs.org/display/projects/Cohort+synchronization

Some of the mapped fields aren’t fully filled. At this point, it should be enough to identify potential issues with the mapping.

I kindly ask you for comments and your opinions on the mapping. Any feedback will be great.

Regards, Karol

@kcissewski oh i see. I thought it just meant Not Applicable. Will this mean that its data is ignored during synchronisation?

@dkayiwa Yes, data is ignored during synchronization.

@kcissewski doesn’t this result into data loss?

@dkayiwa Yes. For example FHIR Group object has no description field so Cohort.description won’t be synced.

@kcissewski was it agreed upon that such data is not critical and hence can be ignored in production?

@dkayiwa No it wasn’t agreed. I think we should review which data is critical and required on production. In case of required data we can use extension on maybe other field.

I have long been concerned by this and have often expressed my desire for us to focus first on synchronization of all data via the OpenMRS Web Services model, and add the option of syncing with FHIR as a secondary feature, as for me the most important thing for the sync module is to reliably sync any and all data between 1-N OpenMRS instances in the same managed network.

Can someone involved with the sync2 project explain the primary use case of using FHIR as a data exchange format for Sync2? Are we doing this in anticipation of Syncing data with other systems (FHIR servers or other systems in an HIE)?

Thanks! Mike

@kcissewski i do not think any implementation would take on a solution that regards any collected data as non critical, and hence that can be lost during synchronization. :slight_smile:

I think am with @mseaton on this, I think the most important thing is to be able to sync data, using FHIR vs another data format is of less significance as of now, I want to believe FHIR has not yet been widely adopted so we shouldn’t let it hold us back or slow us down.

Dear community,

I fixed Allergy and Cohort mapping proposals. To synchronize fields that are missing in FHIR Objects we will use extensions. This will let us synchronize all object fields.

Regards, Karol

Hey Mike. Yes, supporting FHIR standard is mainly done in anticipation of syncing data with other systems. I believe FHIR is getting traction nowadays. Support for it shouldn’t slow us down significantly and also it is likely better to plan in longer term.

The main goal of Sync2 module will be to sync any and all data between multiple OpenMRS instances.