Skip to content

Update README #27

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 1 commit into
base: main
Choose a base branch
from
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
53 changes: 20 additions & 33 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,36 +7,23 @@

![](https://github.com/FinOMOP/ROMOPMappingTools/assets/54809193/6c195491-eceb-447c-86c9-86d66b8ee63d)

ROMOPMappingTools provides the functions needed to maintain a repository with mappings of local medical vocabularies to OMOP standard vocabularies.

It allows to :

- Transform multiple mapping files in usagi-extended format to the OMOP vocabulary tables
- Append created OMOP vocabulary tables to OMOP vocabulary tables downloaded from Athena
- Run QC on the input an output files
- Given the code's frequency from one or more local databases calculates how well a OMOP vocabulary covers the medical events
- Create a interactive dashboard to show the above results

[See vignettes for details](https://finomop.github.io/ROMOPMappingTools/π).

## Example of a mapping repository

This package contains only the functions to process the input files.
How the files and repository are organized is independent of this package.

As an example we show an demo version of the repo and folder structure we use for maintaining the mapping files in FinOMOP:
[FinOMOP_OMOP_vocabulary_test](https://github.com/FinOMOP/FinOMOP_OMOP_vocabulary_test). Check also the documentation part: [FinOMOP_OMOP_vocabulary_test/DOCUMENTATION](https://github.com/FinOMOP/FinOMOP_OMOP_vocabulary_test/blob/development/DOCUMENTATION/README.md)

Following diagram summarizes how FinOMOP uses ROMOPMappingTools to maintaining their mappings:

![](./.img/romopmappingtools.svg)

1. A `VOCABULARIES` folder contains a subfolder for each local vocabulary with a `usagi.csv` and an `info.csv` mapping files, as well as a configuration file.
2. ROMOPMappingTools validate correctness of the mapping files and transform them into OMOP vocabulary tables. Local codes receive concept_ids over the 2 billion.
3. ROMOPMappingTools appends the newly created OMOP vocabulary tables to the OMOP vocabulary tables downloaded from Athena.
4. Merged local and international OMOP vocabulary tables can be directly input into the ETL.
5. Additionally, the repository has a `CODE_COUNTS` folder with code counts from multiple databases and configuration files.
6. ROMOPMappingTools validate correctness of the code count files and use these to assess how well the new OMOP vocabulary covers the events in each database.
7. ROMOPMappingTools creates a `Status dashboard` that summarizes the results, and publish it as [Github page](https://finomop.github.io/FinOMOP_OMOP_vocabulary_test/StatusReport/dashboard.html).


ROMOPMappingTools provides functions to validate, update, and summarize multiple Usagi mapping files, as well as to transform them into the OMOP vocabulary tables.

Functions can be use at three different levels:

1. Working with individual mapping files
- Validate Usagi mapping files: conceptIds exist in the OMOP vocabulary, domain combinations are correct, etc.
- Update Usagi mapping : Automatically fixes mapping in that become obsolete due to new OMOP vocabulary releases.

2. Working with multiple mapping files
- Validate, and update multiple mapping files at once.
- Transform and append a group of Usagi mapping files to OMOP vocabulary tables: Concept, concept_relationship, and concept_ancestor tables.
- Run DQD on the new OMOP vocabulary tables.
- Build a status dashboard to show the progress of multiple mapping files.

3. Working with in multiple mapping files in a github repository
- Create github action workflows to automatically validate Usagi files in each pull request.
- Create github action workflows to automatically update the progress dashboard when a pull request is merged.

[See vignettes for details](https://finomop.github.io/ROMOPMappingTools/).
[See FimOMOP repository for an example of how to use the package in a github repository](https://github.com/FinOMOP/FinOMOP_mappings).
Loading