MCH·OMOPLive

Worked example · 02

Preterm labor in the OMOP vocabularies

Preterm labor is a good second example because the vocabulary draws a line clinicians draw too: labor that starts early is not the same as a baby born early. Search it in ATHENA, find the same concepts in ATLAS, build a concept set and a cohort, then turn it into a research question.

← Back to Learn ← Example 01: menopause Open in ATHENA ↗ Open in ATLAS demo ↗

Current as of 4 August 2026. The counts and concept IDs below come from an ATHENA export and two ATLAS screenshots taken that day, under vocabulary release v20260227. ICD-10-CM is revised annually and vocabularies are updated a few times a year, so treat the numbers as something to reproduce rather than to cite.

The same search in ATLAS

ATLAS reads the same vocabularies, so you find the same concepts. Both tools give you filters for narrowing the list by domain, vocabulary and standard concept. What ATLAS adds is record counts, which show how much each concept is used.

ATLAS demo search results for preterm labor, showing facet filters for vocabulary, class, domain, standard concept and validity down the left side, and a results table of concept names, identifiers, class, record counts, domain and vocabulary.
ATLAS → Search → "preterm labor." Use the Class filter first here: 49 of the 74 results are seven-character billing codes, so most of the list is detailed ICD-10-CM codes rather than 74 separate ideas. Set Standard Concept to Standard to get down to the 9 you would build with. Compare RC against DRC on Preterm labor with preterm delivery (36712702): 59,690 records on its own against 1,288,160 including descendants, which is why descendants normally stay on.
ATLAS demo Data Sources report for SYNPUF 5 percent, Condition Occurrence, filtered to preterm, showing concept 40480278 with a person count of 4.
ATLAS → Data Sources → pick a source → Condition Occurrence → filter. Run this against your own institution's data before planning anything. Here the demo source returns four people, because SYNPUF is built from Medicare claims and holds almost no obstetric care. That is a useful answer: the concepts are fine, and the data source is the wrong one for this question.

Check the source before the phenotype. A search screen tells you a question is expressible. A data source report tells you whether it is answerable where you work. For preterm labor you want a source that holds obstetric care, such as an EHR with labor and delivery, a Medicaid population, or a birth-linked claims file.

Building a concept set

Two sets, because the two questions people usually mean by "preterm labor" need different code lists. Build both and compare their sizes to see the difference.

Preterm labor, the episode

Labor that began early, whatever the birth turned out to be.

The concepts to include and exclude (6 rows)
ConceptIDDomainDescendantsMapped
Preterm labor without delivery36712703ConditionYesYes
Preterm labor with preterm delivery36712702ConditionYesYes
Preterm spontaneous labor with preterm delivery44784550ConditionYesYes
Preterm spontaneous labor with term delivery44784551ConditionYesYes
Exclude: High risk pregnancy due to history of preterm labor40480278ConditionYesn/a
Exclude: Preterm delivery following induction of labor37110283ObservationYesn/a

Turn mapped on for this one. The ICD-10-CM codes for preterm labor are all source concepts rather than standard ones, and mapped reaches them without listing them by hand. Preterm delivery following induction of labor (37110283) is Observation domain, so it would not appear in a Condition query anyway, and naming it as an exclusion simply records the decision.

Preterm birth, the outcome

A different question, so a different set. Two concepts move between them.

The concepts to include and leave out (6 rows)
ConceptIDDomainNote
Preterm labor with preterm delivery36712702ConditionIn both sets
Preterm spontaneous labor with preterm delivery44784550ConditionIn both sets
Preterm labor in second trimester with preterm delivery in second trimester45757175ConditionIn both sets
Preterm labor in third trimester with preterm delivery in third trimester45757176ConditionIn both sets
Not in this set: Preterm labor without delivery36712703ConditionPreterm labor, no birth on this record
Not in this set: Preterm spontaneous labor with term delivery44784551ConditionPreterm labor, birth at term

Whichever you build, name it in the protocol as the definition you chose. A set labeled with either phrase will still return a number, so the label is what tells a reader which population you meant.

From concept set to cohort

Build these against a data source that holds obstetric care.

First recorded episode of preterm labor

Every part of the definition (7 rows)
PartSettingWhy
Entry eventCondition occurrence of any concept in the episode setThe domain is unambiguous here, so the risk is which concepts are in the set
Initial event limitEarliest event per personFirst recorded episode, not most recent mention
Inclusion 1Female at indexThe concept does not imply sex, so the rule states it
Inclusion 2Age 10 to 55 at indexOutside that band, expect miscoding rather than obstetric care
Inclusion 3At least 365 days continuous prior observationPreterm labor recurs across pregnancies, so a first episode may be a first observed episode
ExitIndex plus 180 days, or end of observation, whichever comes firstA pregnancy episode is bounded, so an open-ended exit follows women past the event being studied
CensoringNone

Then check it. Ages should sit roughly between 15 and 45, and the index events should be spread across source codes rather than dominated by one, which would point at a single site's billing habit.

Preterm labor that did not end in preterm birth

Every part of the definition (5 rows)
PartSettingWhy
Entry eventPreterm labor without delivery (36712703) or Preterm spontaneous labor with term delivery (44784551), descendants and mapped onThese are the two branches a preterm birth cohort leaves out, and they are a real clinical group
Initial event limitEarliest event per person
Inclusion 1Female, aged 10 to 55, at least 365 days prior observationAs above
Inclusion 2No concept from the preterm birth set within 30 days after indexRemoves women recorded as threatened who then delivered early anyway
ExitIndex plus 180 days, or end of observation, whichever comes first

Comparing the size of this cohort against the first one estimates how much of the preterm labor recorded in your data was not preterm birth. If it comes out very small, suspect that your source records the delivery outcome on the same encounter rather than concluding that threatened preterm labor is rare.

Turning it into a research question

Once you have seen what the vocabulary holds and what your data source records, you are in a position to write a question and judge whether it can be answered. Fill this in, adjust the feasibility answers to match what you found, then download it and load it into the Analytic Use-Case Generator.

Notes and sources

If ATHENA and ATLAS do not quite agree. An ATLAS instance loads only the vocabularies its database needs, and it may be running an older release than ATHENA, so totals can differ between the two. A plain ATHENA search is also deliberately wide, matching synonyms as well as concept names, so it returns far more than a tool showing only the concepts its database uses. Check what your own instance holds, under Configuration, before comparing anything.

Read from an ATHENA search for preterm labor exported 4 August 2026 (download the export), and two screenshots of the ATLAS public demo taken the same day.

To re-date this page, re-run the ATHENA search and replace the counts, check the concept IDs for deprecation or domain change, retake the screenshots, and update the date at the top.

Corrections or suggestions welcome: danielle@boycedatascience.com