Blue Button Model To FHIR Translator
This library translates health data in blue button model to a FHIR Bundle Resource. Currently the following sections are supported
- Demographics
- Medications
- Problems
- Vitals
- Results
- Allergies
Require blue-button-gen-fhir
var mtfhir = require('blue-button-gen-fhir');
read in some content that can be parsed by blue-button
var fs = require('fs');
var filePath = 'path/to/ccdafile.xml';
var content = fs.readFileSync(filePath, 'utf8');
translate the content to a FHIR Bundle resource
var bundle = mtfhir.contentToFHIR(content);
console.log(bundle);
You can also pass a Patient resource to contain patient references. In this case demographics section is ignored
var patientEntry = {
id: 'Patient/123456789'
content: {
resourceType: Patient,
name: [{
family: [
"DOE"
],
given: [
"JOE"
]
}]
}
};
mtfhir.contentToFHIR(content, patientEntry);
and all the patient references in the Bundle will be updated. Otherwise the patient references are assigned from the newly created patient resource.
By default Medication and Substance resources are included as internal resources. You can request them as external resources instead
var externalize=true;
mtfhir.contentToFHIR(content, patientEntry, externalize);
This project is configured by editing the lib/config.json
file. There are two configuration items
logging
: See bunyan for configuration options.ccdaVitalSignPanel
: Observation resources that are created for vitals can be put into a Observation panel. This item defines vital panels and which vitals will be in the panels.
Mocha and Grunt are used for testing this project. Simply run grunt
in the project directory to run all the tests.
Licensed under Apache 2.0.