Stream: social
Topic: Implement FHIR with existing database
Sandeep (Mar 27 2018 at 21:17):
I am trying to understand standard practice to get started with FHIR APIs with existing database structure
So we are trying to pull data in FHIR format using APIs from our existing database
Please point to any documentation that could be used
Lloyd McKenzie (Mar 27 2018 at 21:39):
You'll have to manually map the data from your existing table layout to FHIR or use a tool like Hybernate
Joel Francis (Mar 28 2018 at 15:57):
You'll have to manually map the data from your existing table layout to FHIR or use a tool like Hybernate
small typo....Hibernate is what you are looking for.
Richard Kavanagh (Mar 29 2018 at 08:52):
@Sandeep I believe that was the approach that was taken here https://nhsconnect.github.io/CareConnectAPI/build_ri_overview.html
It's open source so you can take a look and see if that help you out.
Jessica Malenfant (Mar 30 2018 at 13:56):
We're about to attempt something similar for capturing and transporting data quality metrics using the Measure resource. Would be nice to see how your work turns out @Sandeep
Richard Stanley (Mar 30 2018 at 19:44):
I was following FHIRbase but development work seems to have stalled:
https://github.com/fhirbase/fhirbase-plv8
The approach they took was interesting because it just stores FHIR as JSON binary blobs (jsonb) which are indexable now in Postgres and highly performant.
Grahame Grieve (Mar 30 2018 at 20:31):
@nicola (RIO/SS)
nicola (RIO/SS) (Apr 02 2018 at 05:06):
@Jessica Malenfant & @Sandeep If you need to store a lot of different FHIR resources, i would recommend to take a look at json support in RDBMS aka fhirbase, otherwise normalised relational database will contain > 2K tables. If you need only couple of it and already have an existing database schema - you can do transformation from/to FHIR on flight (as Lloyd recommended). We tried the last approach for NPI registry, which contains only Organisations & Practitioners. We are working on FHIR storage, query & analytic track for next the connectathon in Germany, you are welcome to describe you problem/solution, so we will add it to track.
nicola (RIO/SS) (Apr 02 2018 at 05:32):
Here is repo https://github.com/fhir-fuel/fhir-storage-and-analytics-track/blob/master/README.md, please use issues to form track scenarios and discussions.
Kevin Mayfield (Apr 02 2018 at 20:10):
@Sandeep Yes that's the approach we took with the implementation @Richard Kavanagh mentions. It's relatively straightforward, creating the JPA/Hibernate classes taking up the bulk of the work. https://github.com/nhsconnect/careconnect-reference-implementation
Kevin Mayfield (Apr 02 2018 at 20:12):
However when we need to move to the next FHIR version it should be relatively painless.
Kevin Mayfield (Apr 02 2018 at 20:16):
The live example system is here http://yellow.testlab.nhs.uk/careconnect-ri/ It does use a lot of HAPI components but underneath it's a traditional SQL database with tables you'd expect to see in a PAS or EPR (it was influenced by many).
Łukasz Dywicki (Apr 03 2018 at 09:40):
@nicola (RIO/SS) Can you tell where from you got such high number for relational database? have you tried to generate such structure based on resource definitions? :-)
nicola (RIO/SS) (Apr 03 2018 at 11:54):
@Łukasz Dywicki yes, we generated it initially from structure definition
Christiaan Knaap (Apr 03 2018 at 13:43):
@Sandeep Vonk.FHIR.Facade is explicitly made for that: http://docs.simplifier.net/vonk/facade/facadestart.html
Christian González (Apr 16 2018 at 19:18):
Hello @nicola (RIO/SS) , you will laugh but we are at the very exact point now. We are trying to implement a FHIR server in Pyhton/Django ORM, and coding the Resources by hand. Which is not that much effort, the problem is the relational linkings. And we don't really know how to implement things like Ratio, Quantity etc. It' s impossible to do that by inter-linking DB tables, it's a mess and impossible to query afterwords.
Did you then simplify things on the DB side? and use a Facade to implement the FHIR API?
nicola (RIO/SS) (Apr 17 2018 at 04:08):
@Christian González can you formulate your concerns in details on (https://github.com/fhir-fuel/fhir-storage-and-analytics-track/issues) - so we will try to answer it on the track in Cologne https://chat.fhir.org/#narrow/stream/connectathon.20mgmt/topic/Storage.20and.20Analytics.20track.
Last updated: Apr 12 2022 at 19:14 UTC