FHIR Chat · NHSN Data Validation · Covid-19 Response

Stream: Covid-19 Response

Topic: NHSN Data Validation


view this post on Zulip Abbie Watson (Jul 22 2020 at 13:34):

I'm excited to announce that I managed to upload the entire Covid19 dataset from the National Healthcare Safety Network data (NHSN) into our SANER implementation this week.

I had been looking at importing state level APIs, but with the drama around HHS taking over the dataset from the CDC, I decided to take a closer look at what was taken down from the web (and subsequently put back up). Turns out, it was the ICU capacity tracking data, and is basically the perfect SANER dataset.

Symptomatic-SANER-NHSN-HistoricalData-MeasureScores.png

The data import, geocoding, and mapping barely took a single day. Shown below are the state level reports on the last day of collection (2020-07-07) by the CDC. The map measures the average number of ICU beds at each Medicare HSA, as reported by the state.

Symptomatic-SANER-NHSN-20200707-Sm.jpg

Initial Impressions:

Kansas and Vermont were late to report on the last day of CDC data collection; suggesting some sort of inefficiency or failing system in those states. Need to dig further into the dataset to determine whether this is a regular pattern or a one-off.

Montana, Wyoming, and South Dakota have significantly fewer ICU beds per Medicare hospital than the rest of the country. For instance, Montana only averages 6 ICU beds per hospital HSA. These states face unique risks with regards to their hospital intensive care units becoming overwhelmed.

view this post on Zulip Abbie Watson (Jul 22 2020 at 13:44):

I also exported a FHIR-ized version of the dataset according to the SANER implementation guide, and uploaded to github for future connectathons and implementations.
https://github.com/symptomatic/nhsn

view this post on Zulip Abbie Watson (Jul 22 2020 at 13:45):

Now, to start working on the % ICU capacity map, and importing the HHS data.

view this post on Zulip DevGeek (Jul 22 2020 at 15:43):

Hi, I need to follow up a patient : first day of onset of symptoms , Lung imaging performed? , Antiviral treatment against SARS-CoV-2? => All of this only one time ! and then the patient will answer a daily questionnaire about his health (fever , appetite etc..) , I'am new to FHIR so can you please advise me about what resources should I use and the relations between them ?

view this post on Zulip Lloyd McKenzie (Jul 22 2020 at 16:26):

It sounds like QuestionnaireResponse would be appropriate for data capture. Whether you want to then expose that data in other things (Observation, MediationAdministration, Condition, etc.) depends on whether/how you want to search/analyze the information using FHIR subsequently

view this post on Zulip DevGeek (Jul 22 2020 at 18:24):

@Lloyd McKenzie Hi Lloyd , so it will be Questionnaire and QuestionnaireResponse together ? The main goal is a Patient fill a general form one time, then he will fill a daily form (questionnaire) so I have some questions please :

  • How to specify which Patient fill the QuestionnaireResponse while inserting ? and after that how can I get QuestionnaireResponse for one patient for one day specified ?

  • After data capture, what can I do with that data ? how can I get get advantage of other ressource Observation, Condition etc .. ?

Thanks

view this post on Zulip Lloyd McKenzie (Jul 22 2020 at 19:49):

Filled forms are always QuestionnaireResponse. Questionnaire just lists the questions and the rules. The QuestionnaireResponse indicates who fills it out. If you gather data using QuestionnaireResponse and you want to make it available using Observation, Condition, etc. then you'll need to do an extraction process to generate/update the relevant resources based on the information in the QuestionnaireResponse. (The SDC guide provides instructions on how to craft a Questionnaire that allows automation of the extraction of data from a QuestionnaireResponse - http://build.fhir.org/ig/HL7/sdc/extraction.html)

view this post on Zulip DevGeek (Jul 23 2020 at 09:45):

@Lloyd McKenzie , What you think I should use between Procedure, Observation, MedicationAdministration for this scenario : A patient will have a follow up profile once (Procedure, Observation, MedicationAdministration ?) for the Covid-19 which contains doctor informations and some other CUSTOM questions. Then every day the patient will create a QuestionnaireResponse RELATED to that follow up (Procedure, Observation, MedicationAdministration, .. ?)

view this post on Zulip DevGeek (Jul 23 2020 at 12:12):

Or it can be "CarePlan" then multiple Questionnaire/QuestionnaireResponse related ?

view this post on Zulip Abbie Watson (Jul 23 2020 at 14:03):

The data pipeline would be something like this:
Questionnaire > QuestionnaireResponse > [Observation|Procedure|MedicationAdministration] > MeasureReport

CarePlan is doable, but may be introducing more overhead than you're ready for if you're only just starting with FHIR.

view this post on Zulip DevGeek (Jul 23 2020 at 14:13):

@Abigail Watson in QuestionnaireResponse , I thought of basedOn = CarePlan and partOf = Observation , what do you think ?

view this post on Zulip Abbie Watson (Jul 23 2020 at 14:17):

That's certainly doable. It's not exactly part of the SANER implementation guide or the NHSN data model, but it's definitely supported by the FHIR spec. You're discussing some things that are upstream of NHSN reporting requirements.

view this post on Zulip Lloyd McKenzie (Jul 23 2020 at 14:36):

basedOn CarePlan is definitely fine. partOf Observation is questionable - I'm not sure many systems would use an Observation as a grouper in that way, though it's not prohibited.

view this post on Zulip DevGeek (Jul 23 2020 at 16:52):

@Lloyd McKenzie so partOf = Procedure is better ? Why is that please ? Or I can use basedOn CarePlan alone and it's enough ?

view this post on Zulip Lloyd McKenzie (Jul 23 2020 at 16:57):

I'm not totally clear on why you need partOf at all. You're doing all the actions because they're tied to a single plan or order, but they aren't necessarily part of a single over-arching event.


Last updated: Apr 12 2022 at 19:14 UTC