OHDSI Home | Forums | Wiki | Github

How to fit nuclear medicine data in OMOP CDM?

Hi all,

I’ve been reading documentation and following tutorials but still having a hard time figuring out how to populate the CDM with our data.

Some context: I work (partly) for the nuclear medicine department in our hospital. This department is both diagnostic and therapeutic, we are active in the whole theragnostic approach.

Recently we have launched a data farming project where we standardize our data production workflow and systematically harvest the routine data to be used later for research. We also hope to convince other hospitals with who we collaborate to do the same and follow the same standards.

I have been reading some litterature on how to structure our data and naturally came accross OMOP CDM, which seemed the most comprehensive solution at first. So I delved into the documentation and tutorials, and after 1 week of this, I still don’t really grasp how we can do it.

After reading other forums threads, I’ve noticed the use cases are what drives the development of the CDM so here are a couple of concrete use cases, i.e. research questions we’d like to answer with our data (in the CDM):

  • patient-based imaging features such as whole-body metabolic tumor volume (on FDG PET/CT), Total Tumor Burden on Ga68-PSMA PET/CT, Fat Density on CT, etc. look like promising biomarkers for predicting PFS/OS. So we’d like to collect those variables and look for associations.
  • we’re also interested in lesion-specific data. For instance patients receiving Lu177-PSMA, our physics team calculates the absorbed dose and we’d like to know whether this dose predicts lesion response (based on RECIST for instance).
  • We also would like to study the outcome of patients with breast cancer, HER2-negative based on biopsy, but positive based on HER2 PET/CT, after treatment with some molecule targeting HER2.

For this kind of research, we need, for instance, to capture SUV values of individual lesions seen on PET scans. In Athena, I found 4 variables, all standard, from the Measurement domain, to capture SUV.


  • Why are there multiple that look like duplicates?
  • how do I choose one?

OK, but SUV is actually a vague description. We need to know whether we measure a SUVmax, SUVpeak, SUVmean.
Question: how do we specifiy in more detail which SUV we measure?
Should I add a measurement that uses concept_id=4115464 (Mean from class Qualifier value) and put the measurement_id of my SUV in the event_id of my qualifier ?

Also, the SUV computation may depend on the normalization. We may normalize by body weight, or by lean body mass, or by BSA. So same question: how do I specify that in my CDM?

Then for the metabolic volume : I have not found this in Athena. I did find 4121185 Tumor Volume, but that is confusing as we don’t know whether the volume measurement comes from a FDG PET/CT, a Ga68-PSMA PET/CT, a CT, an MRI, etc.
Again, how do I specify this?

If anyone has already worked on similar data, I would be very grateful to have a call with them to see how they did it.

Thank you