OHDSI Home | Forums | Wiki | Github

SNOMED clinical findings that are not conditions

Hi more experienced Vocab users!

I have a question concerning gathering a list of truly valid medical conditions.
In SNOMED terminology, the set of Clinical Findings in the Condition domain contains sometimes spurious terms that are not always true conditions. Examples:

  • Chief complaint 33962009 (4143467)
  • Catch 30623001 (4148613)

I was wondering if anyone knows how to filter these type of terms from the set of true conditions.



Well, there are “truly valid medical conditions”, and then there are signs and symptoms. We subsume them all under the Condition domain. Because there is no clear cut-off. For example, Diabetes is a medical condition, and pain is a symptom. But what about nausea? Vomiting?

Why do you need “true” conditions?

Thanks! I see the issue with symptoms and signs. I think I would be ok with including these in the set.

However, “Chief complaint” seems to be not a non-informative term, neither symptom or sign. There might be other examples I could find.

Just wondering how one can filter terms that are not conditions or symptoms or signs.

You are right. It’s part of the SNOMED model. which allows post-coordination. You would use it in conjunction with some complaint, ie., “Chief Complaint” - “Pain in the neck”. We don’t allow that in the OMOP CDM, instead we provide the context through the CDM through the table definition. We have that kind of a mismatch quite often. Still, SNOMED is the most comprehensive and best modelled system for conditions out there.

Do you have a situation where those less valuable concepts create a problem with a use case? Or can you just ignore them? Why do you think you need to filter them?

Yes, the use case would be e.g. if someone is interested in finding a list of medical problems a person has. It is a bit distracting to also list terms such as “Chief complaint” by itself.

I doubt you have to worry about this since

Shouldn’t be present alone in your source data. I don’t see a situation where a Provider would give someone a diagnosis of “Catch”. But you should check your source to be sure

That’s valid when using structured data diagnosis selected by doctors.

I am interested in an application where one uses a chosen vocabulary as a set of conditions to use as annotations for the medical text. In this application, it’s important to only select valid conditions as entities that can be extracted from unstructured data.

I was wondering if anyone knows how to filter these type of terms from the set of true conditions.

Use concept_ancestor table and SNOMED hierarchy to achieve this.

In SNOMED, under top level concept Clinical finding (concept_id = 441840), there are many concepts that are immediately under Clinical finding, such as Disease, Drug action, General clinical state finding, Clinical history and observation findings, Neurological finding and etc.

The descendants under concept_id = 4274025 (Disease) are all diseases. Again, this is also dependent on your definition of disease. One category under Disease is Poisoning (concept_id = 442562). You may want to exclude that category.

The Chief complaint is a descendant concept under Clinical history and observation findings and Catch is a descendant concept under Neurological finding.


Do you have some link where I could chekc some information about what it means Clinical Finiding, Observable entity, means value, Context-dependent, …)

Thank you :slight_smile:

@Minerva_Viguera -

Here is a link to some SNOMED guides. I like the Editorial guide for descriptions of each of the hierarchies in SNOMED.

Clinical findings are described in detail starting on p 119. Observable entities starting on p. 179.

Feel free to reach out if you’d like an introduction to some folks at SNOMED who can answer more detailed or specific questions.



Thank you :slight_smile: @piper