OHDSI Home | Forums | Wiki | Github

How can i store the discription and report of Head CT scan into CDM?

We have two kinds of data about Head CT scan: discription and report.Discription is about some changes in the brain, like" Low-density shadow in frontal lobe. the fourth ventricle enlarged". Report is about what kind of disease in the brain like “Maxillary sinusitis”、“Lacunar cerebral infarction in right basal ganglia”.We have already NLP the raw data into different entity like “orientation”、“position”、“visible”、“invisible”、“changes”、“the measure of changed area”、“CT value”.
1.Where should i store the discription and report of Head CT scan,observation table or measurement table?
2.Are there any concept id i could use to store this kind of data,like positon(brain)、changes(about brian)?Can it work in this way?

There should be something similar to

but instead of pathology report you have CT.

So, to store discription you put CT of head in a PROCEDURE table
and its result in NOTE table connecting them accordingly.
Probably report with exact disease should go into OBSERVATION (but I can’t find corresponding concept in OBSERVATION domain, so still need to think about this decision) and disease goes to value_as_concept_id
Maxillary sinusitis

Does your NLP output gives variable-value pairs?
something like
“orientation” - “horizontal”
position - medial

I am sorry not getting back to you sooner for some reason.Thank you for answering my question.
Yes,we do have variable-value pairs like “orientation” - “left”、“right”、“medial”、“both medial” etc and position-“cerebellum”、“cerebrum”、“frontal lobe” etc.
I know what you mean and how to record this kind of data,but I am not sure whether there is enough concept id to record the position or something else.

We proposed radiology-CDM, and you can see how to store variable-value pairs here.

I know we need radiology WG in OHDSI for further progress… Is there anyone who can lead this WG?

I see Radiology_Image table. Seems it is designed to keep the image and its properties but NOT a report @Vines is asking about.
Please correct me if I’m wrong.

Someone who is struggling with image data and needs community help with this?

I see Radiology_Image table too.Yes I agree with you.It is not designed to record a report.So,in my situation I can’t use Radiology_Image table in a proper way.We are gonna lose a lot of datas,like diagnosis report and description of the CT scan.Finally,my problems still can’t be solved.

any insights from

You might find the answer in one of these threads

Thanks for your answering.First of all,I have dowaloaded your posted paper from NCBI.I will spend some time to read it.But still:
1.I’ve got the same question with @ SCYouSeng Chan You,how can I set relationship between these notes with primary procedure or measurements or specimens as we use OMOP-CDM ver 5.3.1?
2.I am sorry that I am not sure what FACT_RELATIONSHIP means? I do understand the literal meaning,but I don’t know where it exist and how to use it.
Look forward to your favourable reply. Thanks in advance!

1 Like

@Vines I’d like to recommend you to use ‘note_event_id’ and ‘note_event_field_concept_id’ in the NOTE table for this purpose.

For example, if you want to store a report related with the brain CT:

  1. record CT itself in the procedure or measurement table (I prefer measurement table. Let’s assume that measurement_id in the measurement table was ‘11101’)

  2. To store the detailed report for the radiology, use NOTE table. Note_event_field_concept_id would be 1147330, note_event_id would be ‘11101’, and note_type_concept_id would be 44814641. Store the detailed report text in the note_text.

Well,thank you.I am sure your recommandation is gonna be work.But as we still use the OMOP-CDM ver 5.3.1,We have not got a event_id or event_field_concept_id in any table in my opinion.So,this is the case.How to record this kind of data into OMOP-CDM ver 5.3.1 without event_id and event_field_concept_id?

You’re right. I missed it, sorry. @Vines

If I were you, I’ll add two fields (note event id and note event field id) to the NOTE table even though we’re using v5.3.1. Otherwise, there is no solution to my knowledge.

If you add two fields to the NOTE table, it won’t make any problem.

Got it.Thank you!


I agree with @SCYou that in CDM 6.0 you should use the ‘note_event_id’ and ‘note_event_field_concept_id’ in the NOTE table. This was a great change!

However, in CDM 5.3.1, you can use the FACT_RELATIONSHIP table. We are doing this at Northwestern, relating pathology procedures in the PROCEDURE_OCCURRENCE table with pathology reports in the NOTE table via FACT_RELATIONSHIP.

Though this is by no means a community convention or standard, we use the relationship concepts
‘Procedure context of (SNOMED)’/‘Has procedure context (SNOMED)’ to make entries in the FACT_RELATIONSHIP table. Like so:

INSERT INTO fact_relationship
, fact_id_1
, domain_concept_id_2
, fact_id_2
, relationship_concept_id

  10        -- 'Procedure' Domain concept.
, ?         -- procedure_occurrence_id of the pathology in the PROCEDURE_OCCURRENCE table.
, 5085      -- 'Note' Domain concept.
, ?         -- note_id of the pathology report report in the NOTE table.
, 44818888  -- 'Procedure context of (SNOMED)' Relationship concept.

INSERT INTO fact_relationship
, fact_id_1
, domain_concept_id_2
, fact_id_2
, relationship_concept_id

, 5085      -- 'Note' Domain concept.
, ?         -- note_id of the pathology report in the NOTE table.
  10        -- 'Procedure' Domain concept.
, ?         -- procedure_occurrence_id of the pathology procedure in the PROCEDURE_OCCURRENCE table.
, 44818790  -- 'Has procedure context (SNOMED)' Relationship concept.

Then we can query pathology reports along with the associated pathology procedures like so:

SELECT  note.note_id
      , note.note_date
      , note.note_title
      , note.note_text
      , procedure_occurrence.procedure_occurrence_id
      , procedure_occurrence.procedure_concept_id
FROM note JOIN fact_relationship ON fact_relationship.domain_concept_id_1 = 5085 AND fact_relationship.fact_id_1 = note.note_id AND fact_relationship.relationship_concept_id = 44818790
        JOIN procedure_occurrence ON fact_relationship.domain_concept_id_2 = 10 AND fact_relationship.fact_id_2 = procedure_occurrence.procedure_occurrence_id

I am sorry but I’ve got further questiones:
1.How to match a suitable Concept id to the description of head CT like “Small patchy low-density shadows were observed in Prefrontal lobe and Anterior and posterior angles of bilateral lateral ventricles”?
2.If we all NLP them into small pairs(“Prefrontal lobe”-“Small patchy low-density shadows”、” Anterior and posterior angles of bilateral lateral ventricles"-“Small patchy low-density shadows” ) just like we’ve done before,how to record this kind of data?I mean how could I find a corresponding Concept ID in the OMOP CDM?
3.If we find corresponding Concept ID,which field should we give in the NOTE table?

As we nlped the report of Head CT scan,we’ve got three types of entities:“Orientation(Left,right,bilateral etc.)”、“Anatomical site(parietal lobes,occipital lobes,thalamus etc.)” and “Changes(Atrophy,infarction,widen etc.)”.
If I could find all of the entities’ Concept ID,then how can I store them,which means which field should I give them respectively?
However,if I could not find corresponding Concept ID,then how can I store them into OMOP CDM?

I think you should use NOTE_NLP table. But I don’t know how it works. Sorry.

@Vines do you have DICOM files as well as radiology note? Then, we can start Radiology WG.

Could you send me your e-mail adress so that it’s easier for us to communicate with each other,if please?

Please let me know if there is any progress about Radiology WG.Thanks a lot!

1 Like

@SCYou Is there any futher progress about how to record CT datas?

@Dymshyts Hope we can do something.:smiley: