OHDSI Home | Forums | Wiki | Github

Historical vaccination records have been associated with the current visit

When we extract immunizations from EPIC Clarity to the OMOP drug_exposure table, we use the IMM_CSN column from the IMMUNE table to assign visit_occurrence_id. Nonetheless, this method isn’t consistently accurate. It appears that when historical vaccination records are retrieved for a visit, all historical vaccination records become associated with the current visit. How can we address this challenge? Has anyone else encountered a similar issue?

Tagging @MPhilofsky & @karthik


Hello @Jungmi,

All historical data should be ETL’d to the Observation table. The date and visit associated with the Observation record is when the data were recorded, not when the event happened. I would use concept_id = 3033439, History of Immunization. And then the standard concept_id for the immunization goes to the Observation.value_as_concept_id field.

Thanks, @MPhilofsky!

1 Like

Hi @MPhilofsky ,

I would agree when a patient is mentioning they had a flu shot last year, but I don’t know if that makes sense when we are importing immunizations from a state or city immunization registry. Those are actual shots with detailed information (sometimes w/ lot number). I would think those immunizations should end up in the drug_exposure table. I’m not sure what we should do with the visits. Maybe we create a dummy visit with the date of the immunization?

Thank you for the explanation, @cukarthik!

Clinical event records come from many different provenances and it’s important to distinguish each provenance.

Patient reported clinical events should go to the Observation table. Patient reported clinical events almost always lack exact attributes, (i.e. date, dose, granularity) about a particular clinical event. Therefore, these data are fit for the “history medical/procedure/immunization” concept_ids in the Observation table and not other clinical event tables.

Ordered, administered, dispensed and registry records should go to the table denoted by the standard concept_id for a record. Unless they lack a start date. Data lacking a start date are only fit for the “history of medical/procedure/immunization” in the CDM.

No, don’t make up data. A visit is not required to have a clinical event. And since you don’t have visit data, only drug data, don’t create a visit.

Hi, @cukarthik

Absolutely agree with @MPhilofsky here - these vaccination records should reside in history and you don’t need extra visits.

Maybe you will find these concepts helpful. We introduced them some time ago for this case too. There are also another group of concepts, and they are all included in the hierarchy.

Okay, we’ll keep the visit date empty. It might fail some of our other DQ checks, but we’ll stick with the standard approach.