Is Synthea procedures.csv mapping to multiple OMOP tables expected under domain-driven ETL?

Hi everyone,

I’m building a domain-driven ETL from Synthea CSV to OMOP CDM and would like a sanity check on how procedure source rows should fan out across OMOP tables.

Context

  • Source: Synthea procedures.csv (15,884 rows in my run)
  • Approach: resolve each source CODE to standard concept via “Maps to”, then route each standard concept to the OMOP table matching its domain_id (Condition → condition_occurrence, Procedure → procedure_occurrence, Measurement → measurement, etc.)
  • This follows the guidance I’ve seen on the forums: source concepts may be ambiguous / dual-domain; standard concepts are clean and decide the destination table; one source row may generate multiple OMOP rows.

What I observe from procedures.csv alone

  • procedure_occurrence: ~8,643 rows
  • measurement: ~4,170 rows
  • observation: ~3,017 rows
  • drug_exposure: ~45 rows
  • condition_occurrence: ~4 rows
  • Total OMOP facts from procedures ≈ 15,879 (≈ all source rows; ~5 codes seem unmapped)

Questions

  1. Is it expected/correct that a large share of Synthea procedures.CODE values map to Measurement or Observation standard concepts (not only Procedure), and therefore land outside procedure_occurrence?
  2. For parity with ETL-Synthea specifically: ETL-Synthea appears to read procedures into procedure_occurrence and measurement (domain filters) but not broadly into observation/condition from that file. Is that a deliberate simplification of the generic “map to all standard domains” rule, or should a Synthea ETL also emit observation/condition rows when procedures.CODE maps to those domains?
  3. When comparing row counts to ETL-Synthea, should we compare (a) total facts derived from procedures.csv across all OMOP tables, or (b) only procedure_occurrence row counts?

I’d like to know whether my distribution is considered valid under CDM practice, even if it diverges from ETL-Synthea’s table-oriented implementation.

Thanks!

hello @LIEUMS,

Yes, the domain change is expected. You can read more about it in The Book of OHDSI. I highly suggest you read chapters 4, 5, and 6 before doing the ETL. A little studying up from will save you a bunch of rework later :slight_smile:

Thank you so much :grinning: :grinning:

1 Like