---
title: "last_menstrual_period"
description: "Identification of the first day of the most recent menstrual cycle for the individual."
---

Identification of the first day of the most recent menstrual cycle for the individual.

**Purpose.** To record the details about the first day of the most recent menstrual cycle for the individual.

## Source

| Model | Leg | Role |
|---|---|---|
| `openEHR-EHR-EVALUATION.last_menstrual_period.v1` | openEHR | defines this table |

## Columns

| Column | Type | Null | Description | Source |
|---|---|---|---|---|
| `id` | `uuid primary key` | no | Primary key. | — |
| `form_id` | `uuid` → [`form`](/docs/tables/form) | no | The form this entry was recorded on. | — |
| `form_block_id` | `uuid` | yes | The block within the form, when the entry is bound to one. | — |
| `date_of_onset_lmp` | `date` | yes | Date of onset (LMP) | `/data[at0001]/items[at0002]` |
| `certainty`<br />`certainty_code`<br />`certainty_system`<br />`certainty_valueset_id` | coded text<br />`text`, `text`, `text`, `text` | yes | Certainty | `/data[at0001]/items[at0009]` |
| `description` | `text` | yes | Description | `/data[at0001]/items[at0007]` |
| `comment` | `text` | yes | Comment | `/data[at0001]/items[at0008]` |
| `last_updated` | `timestamptz` | yes | Last updated | `/protocol[at0003]/items[at0004]` |

## Constraints

```sql
check ((certainty_code is null and certainty_system is null and certainty_valueset_id is null) or (certainty is not null and certainty_code is not null and certainty_system is not null and certainty_valueset_id is not null))
```

## Unique

- `form_block_id`

## References

| Columns | Target | On delete |
|---|---|---|
| `form_id` | [`form`](/docs/tables/form) | cascade |
| `form_id, form_block_id` | [`form_block`](/docs/tables/form_block) | cascade |
| `certainty_valueset_id, certainty_code, certainty_system, certainty` | [`valueset_code`](/docs/tables/valueset_code) | restrict |

## Indexes

- `last_menstrual_period_form_id_idx` on `form_id`

