Skip to content

Latest commit

 

History

10 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Terminology Browser and FHIR ValueSet Builder

This is a Streamlit-based web application designed to help users search, explore, and build ValueSets from medical terminologies based on the OMOP CDM vocabulary. It supports exporting results in CSV and FHIR-compliant JSON formats, making it useful for projects involving data harmonization, clinical research, and FHIR-based interoperability.

we have used following vocabularies

ID CDM Code (cdm v5) Name
146 CDM 5 OMOP Genomic OMOP Genomic vocabulary of known variants involved in disease
82 CDM 5 RxNorm Extension OMOP RxNorm Extension
34 CDM 5 ICD10 International Classification of Diseases, Tenth Revision (WHO)
21 CDM 5 ATC WHO Anatomic Therapeutic Chemical Classification
8 CDM 5 RxNorm RxNorm (NLM)
6 CDM 5 LOINC Logical Observation Identifiers Names and Codes (Regenstrief Institute)
1 CDM 5 SNOMED Systematic Nomenclature of Medicine - Clinical Terms (IHTSDO)

You can download the vocahulary files from athena

🔍 Features

  • Concept Search

    • Search by concept name or concept code.
    • Filter results by vocabulary (e.g., SNOMED, LOINC, RxNorm).
    • Download results as CSV.
  • SNOMED Descendant Finder

    • Find all descendants of one or more SNOMED concepts using concept_ancestor relationships.
    • Search ancestors by name or code.
    • Export descendant lists and build FHIR ValueSets.
  • FHIR ValueSet Builder

    • Build FHIR-compliant ValueSets directly from search results or SNOMED descendants.
    • Download generated ValueSets as JSON.

🛠️ Technologies Used

  • Streamlit for UI
  • SQLite for local terminology database (OMOP vocabularies)
  • Pandas for data manipulation
  • FHIR R4 standard for ValueSet formatting

🗂️ Folder Structure

📦 project_root/
├── db/
│ └── omop_vocab.sqlite
├──vocabulary
├── app.py
├── init_db_omop.py
└── README.md # This file

🧱 Prerequisites

  • Python 3.8+
  • OMOP Vocabulary tables exported to omop_vocab.sqlite database.
    • Required tables: concept, concept_ancestor

▶️ Getting Started

  1. Clone the repository:

    git clone https://github.com/data2health-infoTerminologyBrowser.git
    cd TerminologyBrowser
  2. Download the required vocabularies from athena

  3. Create the db

python init_db_omop.py
  1. Run app.py
streamlit run "app.py"
  1. Open the browser at http://localhost:8501

About

Search Terminologies for AMR on FHIR

Resources

Stars

1 star

Watchers

1 watching

Forks

Releases

Packages

Used by

Contributors

Languages