Wiki Spaces
Documentation
Projects
Resources
Get Help from Others
Q&A: Ask OpenMRS
Discussion: OpenMRS Talk
Real-Time: IRC Chat | Slack
The OpenMRS FHIR module supports the ability to export and import data in the form of FHIR Resources.
Project Coordinators | Christina White JJ Dick |
Developers | |
Other interested parties / experts |
What is FHIR ?
We are working on the following to improve our work on FHIR:
To date, the FHIR module supports the following resources and actions.
Resource | GET | Search | POST | UPDATE | DELETE | Operations | Comments |
---|---|---|---|---|---|---|---|
Person | /{uuid} | ?name={string}&birthdate=[yyyy-mm-dd]&gender=[F|M] ?name={string} | |||||
Patient | /{uuid} | ?name={string} ?identifier={identifier} ?identifier={identifierType} ?_id={uuid} ?given={givenName} ?active={value} | |||||
Practitioner | /{uuid} | ?_id={uuid} ?family={familyName} ?name={name} ?identifier={identifier} ?given={givenName} | |||||
Location | /{uuid} | ?_id={uuid} ?status={value} ?name={value} | |||||
Encounter | /{uuid} | ?identifier={identifier of patient, NOT patient uuid} ?_id={uuid} ?_id={uuid}&part-of={uuid} (returns visit)
| |||||
Observation | /{uuid} | ?_id={uuid} ?subject:Patient={uuid}
?date={date} ?value-concept={value}
?patient-identifier={identifier} | |||||
AllergyIntolerance | /{uuid} | ?patient.identifier={patient identifier NOT uuid} | |||||
DiagnosticReport | /{order accession number} | ||||||
ProcedureRequest | |||||||
Task | |||||||
Appointment |
| ||||||
MedicationRequest | /{uuid} | ?_id={uuid} ?patient={patient uuid} | |||||
FamilyMemberHistory | /{uuid} | ?_id={patient uuid} ?patient={patient uuid} | |||||
RelatedPerson | /{uuid} | ?patient.identifier={patient id} | |||||
Group | /{uuid} | ?_id={uuid} ?name={group name} | |||||
Condition |
|
Interested in learning more about our current support for FHIR?
1) Try our hands on demo at https://demo.openmrs.org/openmrs/module/fhir/apidocs.form#/default
2) contact Christina White or JJ Dick
13 Comments
Burke Mamlin
Is the Java based FHIR reference application source online somewhere (in GitHub or other hosted repo) that's easier to browse?
Burke Mamlin
To answer my own question, Mother Google led me to fhir-haver-model on GitHub.
Burke Mamlin
Question from Unknown User (surangak):
Burke Mamlin
Question from Unknown User (surangak):
Burke Mamlin
Response from Unknown User (r.friedman):
Unknown User (darius)
Strategically I think that if intermediate representations of FHIR-relevant data is semantically interesting beyond just FHIR, we should introduce these intermediate representations outside of the OpenMRS FHIR module, e.g. in the EMR API module.
Also, as I said on the Talk topic, I would prefer to focus on some well-defined FHIR clinical resource, not pick something very generic like Observation. (I think I'm agreeing with Roger here.)
Burke Mamlin
Any chance we could use wiki comments or the OpenMRS Talk forum for threaded discussion instead of direct wiki page edits? It's very difficult to follow a discussion that is going on in multiple locations within a single document.
Unknown User (alexgg)
The link is dead. What it was about?
Burke Mamlin
The link is working for me. :-/
Unknown User (alexgg)
Sorry. It was a networking issue.
Unknown User (angshuonline)
Unknown User (surangak), how do you differentiate between a DiagnosticReport Lab or Radiology? As much as I know the "DiagnosticReport" resource doesn't have anything to specify whether its for Radiology or Pathology/Clinical. Are you using any extension to define additional meta data?
Unknown User (surangak)
Hi Unknown User (angshuonline), basically, we're using the category attribute to identify what type of report (Radiology or other) each specific diagnostic report represents.
(https://www.hl7.org/fhir/valueset-diagnostic-service-sections.html)
So take diagnostic report -> read service category _> identify what it represents -> forwards diagnostic report to a handler class that has radiology specific business logic to parse its contents.
Unknown User (angshuonline)
Unknown User (surangak), thanks for the clarification. My question was also misleading I guess, since I meant DiagnosticOrder (instead of DiagnositicReport). I was wondering how would you indicate that the order is a "radiology" or a "pathology". For example, if someone is posting a "DiagnosticOrder" resource to OpenMRS, how would you determine whether to create a order for "labTest" which OpenMRS has support for, or to create a "radiology" order type (custom ordertype in OpenMRS)?
Another question, is that DiagnosticReport.Category cardinality is 0..1. Imagine a CBC order, would category indicate the department (Hematology) or type (lab)?