---
title: "exam"
description: "Findings observed during the physical examination of a subject of care."
---

Findings observed during the physical examination of a subject of care.

**Purpose.** For recording details about findings on physical examination of the subject of care.

## Source

| Model | Leg | Role |
|---|---|---|
| `openEHR-EHR-OBSERVATION.exam.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. | — |
| `description` | `text` | yes | Description | `/data[at0001]/events[at0002]/data[at0003]/items[at0004]` |
| `interpretation`<br />`interpretation_code`<br />`interpretation_system`<br />`interpretation_valueset_id` | coded text<br />`text`, `text`, `text`, `text` | yes | Interpretation | `/data[at0001]/events[at0002]/data[at0003]/items[at0006]` |
| `comment` | `text` | yes | Comment | `/data[at0001]/events[at0002]/data[at0003]/items[at0011]` |
| `confounding_factors` | `text` | yes | Confounding factors | `/data[at0001]/events[at0002]/state[at0009]/items[at0008]` |
| `position`<br />`position_code`<br />`position_system`<br />`position_valueset_id` | coded text<br />`text`, `text`, `text`, `text` | yes | Position | `/data[at0001]/events[at0002]/state[at0009]/items[at0013]` |

## Constraints

```sql
check ((interpretation_code is null and interpretation_system is null and interpretation_valueset_id is null) or (interpretation is not null and interpretation_code is not null and interpretation_system is not null and interpretation_valueset_id is not null))
check ((position_code is null and position_system is null and position_valueset_id is null) or (position is not null and position_code is not null and position_system is not null and position_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 |
| `interpretation_valueset_id, interpretation_code, interpretation_system, interpretation` | [`valueset_code`](/docs/tables/valueset_code) | restrict |
| `position_valueset_id, position_code, position_system, position` | [`valueset_code`](/docs/tables/valueset_code) | restrict |

## Referenced by

- [`exam_device_details`](/docs/tables/exam_device_details) via `exam_id`

## Indexes

- `exam_form_id_idx` on `form_id`

## Child tables

1 table hang off `exam`, one row per repetition.

### `exam_device_details`

Child table — one row per repetition, deleted with its parent.

| Column | Type | Null | Description | Source |
|---|---|---|---|---|
| `id` | `uuid primary key` | no | Primary key. | — |
| `exam_id` | `uuid` → [`exam`](/docs/tables/exam) | no | — | — |
| `position` | `integer` | no | Order of this row within its parent, from zero. | — |
| `device_id` | `uuid` | no | Device Details | `/protocol[at0007]/items[at0010]` |

#### Unique

- `exam_id, position`
- `exam_id, device_id`

#### References

| Columns | Target | On delete |
|---|---|---|
| `exam_id` | [`exam`](/docs/tables/exam) | cascade |
| `device_id` | [`device`](/docs/tables/device) | no action |

#### Indexes

- `exam_device_details_device_id_idx` on `device_id`

