FHIR-Enabled Digital Questionnaire: Capturing Data for Patient-Centred Care

Project phases

Published: December 16, 2022

Last Updated: 2 years ago.

View All Projects

Basics for Health Society, a non-profit organization that works with healthcare and community organizations to address the social determinants of health, has collaborated with the UBC Cloud Innovation Centre to develop a solution that enables health care professionals to digitally record and track patients’ health-related social needs and incorporate this data into medical decisions. This ensures that patients can receive appropriate care based on their unique needs.

Today, primary health care providers do not have an efficient way to screen, record, and monitor people’s social determinants of health (SDOH), which are known to influence health outcomes. These include factors such as income stability, level of education, employment status, and experiences of inclusion or exclusion. There is currently no convenient way to record this information in the electronic medical record (EMR), track it over time, or share it with other relevant health care practitioners. This solution enables care providers to collect data in a standardized way, and to share it with others who have a need to know and who are authorized to access it.

Although this solution addresses a specific problem related to SDOH data, it was built so that it is extensible to any situation in which new data needs to be ingested into the EMR in a standardized way.

Approach

As healthcare practice evolves and health technology develops, practitioners are looking for ways to capture new data in a sustainable manner. The team created a solution that aims to capture patients’ health-related social needs (HRSN) in the EMR, but built it so that it is extensible to any situation in which new data needs to be ingested into the EMR in a standardized way. It makes use of standard identifiers and codes for identifying laboratory and clinical observations, and transfers information to the relevant datastore using the Fast Healthcare Interoperability Resources (FHIR) standard.

With this solution, SDOH data can be recorded and updated, and made accessible to authorized care providers. Primary care providers can use the solution to capture SDOH data using a form building tool. Questions can be customized and uploaded into the application using the FHIR interoperable protocol. The form currently contained in the application simplifies the process for care providers to engage with patients’ HRSN with screening questions, response-based follow-up questions, and potential brief interventions all built into one form. Questions and responses can also be updated and saved at any point so that care providers have access to the most recent version of patient information.

Supporting Artifacts

Architecture Diagram

The architecture diagram of the project, which outlines the AWS services used, including SMART on FHIR, Amplify, AppSync, DynamoDB, and Cognito.

Technical Details

The application leverages a FHIR form-building tool created by the National Institutes of Health for users to build the forms. Once the form is downloaded using the JSON format, they can upload it to the application where they must enter the name of the form and, optionally, a username that will have admin access to it. During this process, the solution saves the form name, version, and ID into Amazon DynamoDB and makes a request to the FHIR server to create the Questionnaire resource before the form’s data is stored in DynamoDB. Any updates or changes the care provider makes to the form follows a similar workflow. The solution saves the forms and their responses directly into the Electronic Health Record (EHR) using FHIR, and can be integrated with the EHR Single Sign On via SMART on FHIR API leveraging OAUth 2.0.

When a care provider wants to visualize a form, the solution queries the DynamoDB database for the form information the user has access to, which are displayed in a dropdown menu, as well as how many versions of each form there are. Once they select a form, its ID is queried in order to make requests to the FHIR server for the associated form and its answers, which are represented as separate resources (“Questionnaire” and “QuestionnaireResponse”). If the form was previously submitted, the answers will be loaded with the form; a blank form will be rendered otherwise. When the care provider submits a form, a request is made to see if it has previously been submitted. If it has, the existing QuestionnaireResponse resource is updated with the new answers; if not, a new resource is created.

Link to solution on GitHub: https://github.com/UBC-CIC/basics-for-health

Screenshots of UI

The application's Upload Form tab. There are two input bars for users to type in a form title and an optional username. Underneath is a button to upload a file and then submit. In the top left corner is a button to sign out.
The “Upload Form” tab, where users can upload their forms, give it a name in the application, and optionally assign another username who can access the form.
The application's Update Form tab. There is a dropdown menu which can display any previously uploaded forms that user can update. Underneath is a button titled "Upload File" and an Update button. In the top left corner is a button to sign out.
The “Update Form” tab, where users can update their existing forms in the application.
The National Institutes of Health's form builder, which features buttons to Export, Import, and Refresh Preview, as well as the Form Attributes for users who are creating a form, such as Name, Title, ID, Status, URL, and Version.
An example of a form builder from the National Institutes of Health that could be used to create the FHIR-based forms to upload.
The form from the form builder once it has been uploaded to the application. It lists the form patient's name and ID, as well as the version of the form. The questions are all displayed, such as "Tell me about yourself" and "Where were you born?" with boxes next to them to type answers in.
A patient form uploaded to the application.
The administrator page, which reads "Authorize administrative privileges for another user" above a bar to type usernames. Underneath this is a checkbox that confirms "I want this user to be an administrator" and a button to submit. The top left corner has a sign out button.
The administrator page, where admins can grant other users admin permissions.

Acknowledgements

Basics for Health Society

Justin Neves

Photo by: Free-Photos on Pixabay.

About the University of British Columbia Cloud Innovation Centre (UBC CIC)

The UBC CIC is a public-private collaboration between UBC and Amazon Web Services (AWS). A CIC identifies digital transformation challenges, the problems or opportunities that matter to the community, and provides subject matter expertise and CIC leadership.

Using Amazon’s innovation methodology, dedicated UBC and AWS CIC staff work with students, staff and faculty, as well as community, government or not-for-profit organizations to define challenges, to engage with subject matter experts, to identify a solution, and to build a Proof of Concept (PoC). Through co-op and work-integrated learning, students also have an opportunity to learn new skills which they will later be able to apply in the workforce.