etl-to-omop-cdm
Map OpenMed-extracted, terminology-coded conditions, drugs, and measurements into OMOP CDM v5.4 clinical tables (condition_occurrence, drug_exposure, measurement) for OHDSI/ATLAS analytics. Use when the user wants to load NLP-derived facts into an OMOP database, build an OHDSI ETL from clinical notes, populate condition_occurrence or drug_exposure from text, or standardize note-derived findings to OMOP standard concepts. Covers the source-to-standard concept mapping pattern, required vs optional CDM fields, type concepts for NLP-derived rows, and the user-supplied OHDSI vocabulary (CONCEPT/CON
npx skills add maziyarpanahi/openmed --skill etl-to-omop-cdm --agent claude-code
Same command for any agent — swap --agent for codex, cursor, copilot.
Weekly change comes from our own snapshots, not the repository page — it measures attention, not adoption.
# ETL to OMOP CDM The OMOP Common Data Model (CDM) is the OHDSI standard for observational health data. This skill maps **OpenMed-derived clinical facts** — entities from `analyze_text` that you have already linked to a source terminology — into the OMOP clinical event tables `condition_occurrence`, `drug_exposure`, and `measurement`. The NLP runs **on-device**; OMOP loading is a downstream, deterministic transform. ## When to use this skill After you have (a) extracted entities with OpenMed and (b) coded them to a source vocabulary (ICD-10-CM / SNOMED for conditions, RxNorm for drugs, LOINC for labs — see the linking skills). Use this skill to turn those coded facts into OMOP rows. It is *not* a clinical NER skill and *not* a code-linking skill; it assumes both are done. ## Quick start ```python import openmed note = "Assessment: type 2 diabetes mellitus. Started metformin 500 mg PO BID. HbA1c 8.2%." result = openmed.analyze_text(note, output_format="dict") # result["entities"] -> [{text,label,confidence,start,end}, ...] # You then code each entity to a SOURCE concept using the OHDSI vocabulary you # downloaded (see linking-umls-concepts / normalizing-rxnorm / mapping-loinc), # an
- When to use this skill
- Quick start
- The source → standard pattern (the heart of OMOP)
- Domain → table → fields
- Type concepts: mark rows as NLP-derived
- Workflow
- Hand-off to / from OpenMed
- Edge cases & gotchas
- Standards & references
What does the etl-to-omop-cdm skill do?
Map OpenMed-extracted, terminology-coded conditions, drugs, and measurements into OMOP CDM v5.4 clinical tables (condition_occurrence, drug_exposure, measurement) for OHDSI/ATLAS analytics. Use when the user wants to load NLP-derived facts into an OMOP database, build an OHDSI ETL from clinical notes, populate condition_occurrence or drug_exposure from text, or standardize note-derived findings to OMOP standard concepts. Covers the source-to-standard concept mapping pattern, required vs optional CDM fields, type concepts for NLP-derived rows, and the user-supplied OHDSI vocabulary (CONCEPT/CON
How do I install it?
Run `npx skills add maziyarpanahi/openmed --skill etl-to-omop-cdm --agent claude-code` — it drops the skill into your project so the agent can pick it up. Swap the --agent value for codex, cursor or copilot if you use one of those.
Where does this skill come from?
From maziyarpanahi/openmed, a repository with 4,851 stars. We read it straight from the repository tree rather than a submitted listing, so what you see here is what is actually published.
Is a popular skill a good skill?
Not necessarily. Stars measure attention, not adoption — a repository can trend for a week and be abandoned. That is why we show the weekly change from our own snapshots next to the total, instead of a single flattering number.
