OMOP Standardized Vocabularies. Part 1
Polina Talapova, MD, PhD
OMOP CDM Consultant
Tufts Clinical and Translational Science Institute (CTSI)
1
Health Informatics Elective
Discovering Digital Health Standards
4 August 2023
Content
In the next presentation:
2
© Tufts Medicine 2023 | Private and confidential. Not for redistribution.
Overview: Digital Health Data Standards
3
© Tufts Medicine 2023 | Private and confidential. Not for redistribution.
Overview: OMOP
4
© Tufts Medicine 2023 | Private and confidential. Not for redistribution.
Overview: OMOP
5
© Tufts Medicine 2023 | Private and confidential. Not for redistribution.
Overview: OMOP Standardized Vocabularies
6
© Tufts Medicine 2023 | Private and confidential. Not for redistribution.
Overview: OMOP Standardized Vocabularies
7
© Tufts Medicine 2023 | Private and confidential. Not for redistribution.
They are the interconnected tables within a relational database
Building the Standardized Vocabularies
Vocabulary Development Process
8
© Tufts Medicine 2023 | Private and confidential. Not for redistribution.
Access to the Standardized Vocabularies
9
© Tufts Medicine 2023 | Private and confidential. Not for redistribution.
Download Vocabularies with Python
10
Sequence | Step in Code | Library | Element |
1 | Establishing a connection with a PostgreSQL database. | sqlalchemy | create_engine |
2 | Creating a base class for declarative class definitions and setting up a metadata object with a specified schema | sqlalchemy | MetaData, declarative_base |
3 | Opening and reading SQL files (DDL, constraints), generating a list of CSV files in a directory | pathlib | Path |
4 | Reading a table from a database, reading CSV files. | pandas | read_sql_table, read_csv |
5 | Defining a generic TypeVar and Iterable for handling a sequence of DataFrames | typing | TypeVar, Iterable |
6 | Setting CSV reading options | csv | QUOTE_NONE |
7 | Inserting data into tables | pandas | to_sql |
8 | Accessing command-line arguments to get the directory of CSV files. | sys | argv |
Source of Vocabularies: Adopt Versus Build
11
Vocabulary Building-Blocks (1)
12
Name | Definition |
Concepts | Elements that define medical entities or observations |
Concept IDs | Unique identifiers assigned to Concepts across the OMOP CDM |
Concept Names | User-friendly names associated with Concepts |
Domains | Categorization of Concepts in specific areas (Drug, Condition, Measurement, Procedure, Device, etc.) |
Vocabularies | Collections of Concepts categorized by a source |
Concept Classes | Grouping of Concepts based on shared attributes and/or domain sub-categories (ATC 5th, Clinical Finding, Observable Entity, Lab Test) |
Standardness | Identifies whether a concept is of non-standard, standard or classification type |
Concept codes | Unique identifiers representing Concepts within a source data or terminology |
Validity | Shows whether a concept or its relationship is active or deprecated or updated |
© Tufts Medicine 2023 | Private and confidential. Not for redistribution.
Vocabulary Building-Blocks (2)
13
Vocabulary Building-Blocks (3)
14
Category | Thoughts |
Concepts | Everything can be a concept |
Concept IDs | There is no concept ID duplicates in OMOP Standardized Vocabularies |
Concept Names | Names of concepts can be not so friendly as stated, sometime they have hidden senses which can be revealed only when looking at the synonyms list |
Domains | Some concepts have controversial domains |
Vocabularies | Vocabularies contain standard and non-standard concepts in different extent |
Concept Classes | Some concepts have controversial classes |
Standardness | In ideal world, each non-standard concept has its standard equivalent |
Concept codes | Concept codes can intersect with each other if not considering vocabulary |
Validity | Some deprecated concepts or their relationships may not have replacement mapping |
© Tufts Medicine 2023 | Private and confidential. Not for redistribution.
Concepts
15
© Tufts Medicine 2023 | Private and confidential. Not for redistribution.
Concept Names
16
© Tufts Medicine 2023 | Private and confidential. Not for redistribution.
Standard Concept
17
© Tufts Medicine 2023 | Private and confidential. Not for redistribution.
Domains
18
© Tufts Medicine 2023 | Private and confidential. Not for redistribution.
Measurement Domain
19
© Tufts Medicine 2023 | Private and confidential. Not for redistribution.
Procedure Domain
20
© Tufts Medicine 2023 | Private and confidential. Not for redistribution.
Observation Domain
21
© Tufts Medicine 2023 | Private and confidential. Not for redistribution.
Drug Domain
22
© Tufts Medicine 2023 | Private and confidential. Not for redistribution.
Condition Domain
23
© Tufts Medicine 2023 | Private and confidential. Not for redistribution.
Device Domain
24
© Tufts Medicine 2023 | Private and confidential. Not for redistribution.
Domains and CDM Event Tables
25
Domain | Event table to populate |
Measurement | |
Observation | |
Procedure | |
Condition | |
Drug | |
Device |
© Tufts Medicine 2023 | Private and confidential. Not for redistribution.
Uncertainties in Domain Assignment
The assignment of concepts to specific domains can sometimes be controversial due to a few reasons:
26
Uncertainties in Domain Assignment
Examples:
What to Do:
27
Concept Classes
28
© Tufts Medicine 2023 | Private and confidential. Not for redistribution.
Concept Lifecycle: INVALID REASON
29
© Tufts Medicine 2023 | Private and confidential. Not for redistribution.
Questions?
30
© Tufts Medicine 2023 | Private and confidential. Not for redistribution.