Categories
Healthcare Analytics OpenSource Resources

OSCAR EMR EForm Export (CSV) to FHIR

This is a simple application to convert a CSV file to a FHIR bundle and post it to a FHIR server in Golang. The OSCAR EMR has an EForm export tool that exports EForms to a CSV file that can be downloaded. This tool can load that CSV file to a FHIR server for consolidated analysis. This tool can be used with any CSV, if columns specified below (CSV format section) are present.

Use Cases

This is useful for family practice groups with multiple OSCAR EMR instances. Analysts at each site can use this to send data to a central FHIR server for centralized data analysis and reporting. Public health agencies using OSCAR or similar health information systems can use this to consolidate data collection.

How to build

First go get all dependencies This package includes three tools (Go build them separately from the cmd folder):

Fhirpost: The application for posting the csv fie to the FHIR server

Serverfhir: A simple FHIR server for testing (requires mongodb). We recommend using PHIS-DW for production.

Report: A simple application for descriptive statistics on the csv file

Format of the CSV file


Using vocabulary such as SNOMED for field names in the E-Form is very useful for consolidated analysis.

Each record should have:

demographicNo → The patient ID
dateCreated
efmfid → The ID of the eform
fdid → The ID of the each form field.
(The Eform export csv of OSCAR typically has all these fields and requires no further processing)

Mapping

  • Bundle with unique patients. All columns mapped to observations.
  • Submitter mapped to Practitioner.
  • Document type bundle with composition as the first entry
  • Unique fullUrls are generated.
  • PatientID is location + demographicNo
  • Budle of 1 composition, 1 practitioner, 1 or more patients, and many observations
  • Validates with R4 schema

How to use:

  • Change the settings in .env
  • You can compile this for Windows, Mac or Linux. Check the fhirmap.go file and make any desired changes. You should be able to figure out the mapping rules from this file.
  • It reads data.csv file from the same folder by default. (can be specified by the -file commandline argument: fhirpost -file=data.csv)
  • Start mongodb and run server and fhirpost in separate windows for testing.
  • On windows, you can just double-click executables to run. (Closes automatically after run)

Privacy and security:
This application does not encrypt the data. Use it only in a secure network.

Disclaimer:
This is an experimental application. Use it at your own risk.

Categories
Machine Learning

Machine Learning in population health: Creating conditions that ensure good health.

Machine Learning (ML) in healthcare has an affinity for patient-centred care and individual-level predictions. Population health deals with health outcomes in a group of individuals and the outcome distribution in the group. Both individual health and population health are not divergent, but at the same time, both are not the same and may require different approaches. ML in public health applications receives far less attention.

The skills available to public health organizations to transition towards an integrated data analytics is limited. Hence the latest advances in ML and artificial intelligence (AI) have made very little impact on public health analytics and decision making. The biggest barrier is the lack of expertise in conceiving and implementing data warehouse systems for public health that can integrate health information systems currently in use. 

The data in public health organizations are generally scattered in disparate information systems within the region or even within the same organization. Efficient and effective health data warehousing requires a common data model for integrated data analytics. The OHDSI – OMOP Common Data Model allows for the systematic analysis of disparate observational databases and EMRs. However, the emphasis is on patient-level prediction. Research on how patient-centred data models to observation-centred population health data models are the need of the hour.

We are making a difficult yet important transition towards integrated health by providing new ways of delivering services in local communities by local health teams. The emphasis is clearly on digital health. We need efficient and effective digital tools and techniques. Motivated by the Ontario Health Teams’ digital strategy, I have been working on tools to support this transition.

Hephestus is a software tool for ETL (Extract-Transform-Load) for open-source EMR systems such as OSCAR EMR and national datasets such as Discharge Abstract Database (DAD). It is organized into modules to allow code reuse. Hephestus uses SqlAlchemy for database connection and auto-mapping tables to classes and bonobo for managing ETL. Hephaestus aims to support common machine learning workflows such as model building with Apache spark and model deployment using serverless architecture. I am also working on FHIR based standards for ML model deployments.

Hephaestus is a work in progress and any help will be highly appreciated. Hephaestus is an open-source project on GitHub. If you are looking for an open-source project to contribute to Hacktoberfest, consider Hephaestus! 

Categories
mHealth

HL10: A proposal for an mHealth framework

HL10 Framework
Image credit: beapen

Behaviour Intervention Technologies (BITs) are a subset of eHealth and mHealth interventions that support users in changing behaviour and cognitions related to health. Several psychological models guide the implementation of BITs. However, these psychological models such as social cognitive theory and theory of planned behaviour have a clinical focus and are incapable of guiding the design and coding.

Mohr et.al proposed the BIT model [ [ref] Mohr DC, Schueller SM, Montague E, Burns MN, Rashidi P. The Behavioral Intervention Technology Model: An Integrated Conceptual and Technological Framework for eHealth and mHealth Interventions. J Med Internet Res 2014;16(6):e146 [/ref] ] to address these limitations by systematizing why, how (conceptual and technical), what and when of BIT. ‘Why’ translates to clinical aims such as sun protection and weight reduction. Examples of conceptual ‘how’ are education, goal setting, monitoring and feedback. Technical ‘how’ indicates the medium of delivery and the complexity of delivery. ‘What’ corresponds to alerts, logs, messaging and data collection. ‘When’ indicates the workflow that can be user defined or based on time/event rules. The model proposes a sense-plan-act paradigm based on robotics with sense-act coupling in reactive models.

HL10 (Hamilton) is an attempt to take the BIT model and the sense-plan-act paradigm to the next level of a software framework. HL10 is a proposal for an mHealth specific mobile application frameworks that can be easily extended to create any type of app. The framework should take care of overarching concerns such as privacy and security of patient data, communication with electronic health record (EHR) systems and population health.

Ultimately HL10 framework would be available as an mHealth boilerplate or a Yeoman generator that can be easily modified to create any mHealth BIT. HL10 would try to segregate the sense-plan-act layers and would propose fundamental rules of communication between these layers though standardizing is not its primary intent. Privacy would be built into the framework by design. External communication with EMR and other HIS would be negotiated through fire! (FHIR)

HL10 is still a concept and would greatly benefit from ideas and contributions from domain experts. Though I am ‘opinionated’ to a certain extent, this preliminary post is intentionally left ‘non-opinionated’ to encourage the flow of ideas. Do give me a shout if you find this interesting. I have created a group on GitHub for this: https://github.com/E-Health

Some of the ideas are influenced by AppsForHealth at Mohawk, especially the keynote lecture by Dr. Ann Cavoukian on privacy by design, and the introductory lecture on FHIR followed by the connectathon demos.

Please site this page as below if you expand on this concept.

Eapen BR. HL10 (Hamilton) – An mHealth behaviour intervention technology framework. NuChange Informatics Blog (2015). Available from: http://nuchange.ca/2015/07/hl10-from-model-to-framework.html

Guest Author
Latest posts by Guest Author (see all)

    CAS-002  
    350-018  
    9A0-385  
    CISSP  
    000-104  
    300-208  
    M70-101  
    200-310  
    642-999  
    CISM  
    1Z0-144  
    9A0-385  
    70-177  
    70-486  
    OG0-091  
    300-206  
    70-243  
    300-206  
    350-001  
    210-260  
    300-320  
    200-355  
    MB2-704  
    300-135  
    LX0-104  
    74-678  
    220-901  
    70-246  
    70-488  
    210-260  
    1z0-434  
    300-320  
    1z0-434  
    2V0-620  
    1Z0-061  
    2V0-621D  
    70-480  
    N10-006  
    210-260  
    300-101  
    700-501  
    PR000041  
    N10-006  
    1Z0-061  
    JN0-360  
    100-101  
    200-101  
    500-260  
    CAS-002  
    EX300  
    000-106  
    70-417  
    101  
    200-125  ,
    74-678  
    2V0-621D  
    1Y0-201  
    9L0-012  

    JK0-022  ”
    MB2-707  ”
    70-177  ”
    70-462  ”
    MB5-705  ”
    CRISC  ”
    70-417  
    350-018  ”
    350-060  
    1z0-434  ”
    70-410  
    SSCP  
    70-411  ”
    70-483  ”
    70-480  ”
    NS0-157  ”
    1Y0-201  ”
    000-106  ”
    JK0-022  ”
    70-178  
    HP0-S42  ”
    CISSP  
    70-534  ”
    OG0-093  ”
    100-105  ,”
    JK0-022  ”
    70-417  ”
    70-532  ”
    CRISC  ”
    c2010-657  ”
    200-120  ”
    SY0-401  ”
    3002  ”
    100-105  ,”
    OG0-091  ”
    OG0-093  ”
    000-104  ”
    350-050  ”
    400-201  ”
    OG0-093  ”
    9L0-066  
    ADM-201  ”
    EX300  ”
    LX0-103  ”
    000-104  ”
    000-105  ”
    70-246  ”
    070-461  ”
    MB6-703  ”
    70-347  ”
    CISM  ”
    1Z0-051  
    ADM-201  ”
    70-462  ”
    1V0-601  ”
    000-017  
    220-901  ”
    9A0-385  ”
    ITILFND  ”