Validate OMOP CDM CSV exports before database ingestion
OMOP CSV Validator checks the columns, nulls, and scalar values in an OMOP CDM CSV export before the file is loaded into a database. It derives the validation rules from PostgreSQL OMOP DDL, so ETL development can use the same table definitions as the target database.
📘 Documentation: https://cnag-biomedical-informatics.github.io/omop-csv-validator/
📦 CPAN Distribution: https://metacpan.org/pod/OMOP::CSV::Validator
🐳 Docker Hub Image: https://hub.docker.com/r/manuelrueda/omop-csv-validator/tags
Install the release from CPAN:
cpan OMOP::CSV::Validatoromop-csv-validator \
--ddl path/to/OMOPCDM_postgresql_5.4_ddl.sql \
--input path/to/DRUG_EXPOSURE.csv✅ CSV file 'path/to/DRUG_EXPOSURE.csv' is valid against the 'DRUG_EXPOSURE' schema.
Each invocation validates one CSV file against one OMOP table. See Installation for the recommended user-local setup and the Docker or Apptainer alternative; see the Quick Start for runnable valid and invalid examples.
This project validates CSV structure and scalar values against DDL-derived rules. It complements database-level OMOP data-quality tools; it does not replace terminology, clinical, or post-load quality review.
Use the development installation and run prove -l t/.
Citation metadata is available in CITATION.cff. The project is released under the Artistic License 2.0.
