---
title: "therapeutic_direction"
description: "Structured details of a single therapeutic direction for an ordered item, such as a medication or blood transfusion order."
---
Structured details of a single therapeutic direction for an ordered item, such as a medication or blood transfusion order.
**Purpose.** To record structured details of a single therapeutic direction for an ordered therapeutic/prescribable item.
Each direction generally applies for a given duration, or fixed number of administrations.
## Source
| Model | Leg | Role |
|---|---|---|
| `openEHR-EHR-CLUSTER.therapeutic_direction.v1` | openEHR | defines this table |
## Columns
| Column | Type | Null | Description | Source |
|---|---|---|---|---|
| `id` | `uuid primary key` | no | Primary key. | — |
| `direction_sequence` | `integer` | yes | Direction sequence | `/items[at0057]` |
| `direction_duration_coded_text`
`direction_duration_coded_text_code`
`direction_duration_coded_text_system`
`direction_duration_coded_text_valueset_id`
`direction_duration_duration`
`direction_duration_interval_lower`
`direction_duration_interval_upper` | coded text
`text`, `text`, `text`, `text`, `interval`, `interval`, `interval` | yes | Direction duration | `/items[at0066]` |
| `number_of_administrations` | `integer` | yes | Number of administrations | `/items[at0172]` |
| `review_criterion` | `text` | yes | Review criterion | `/items[at0177]` |
| `order_start_date_time` | `timestamptz` | yes | Order start date/time | `/items[at0178]` |
| `order_stop_date_time` | `timestamptz` | yes | Order stop date/time | `/items[at0179]` |
| `repetition_timing` | `uuid` | yes | Repetition timing | `/items[at0090]` |
## Constraints
```sql
check (direction_sequence is null or direction_sequence >= 1)
check ((direction_duration_coded_text_code is null and direction_duration_coded_text_system is null and direction_duration_coded_text_valueset_id is null) or (direction_duration_coded_text is not null and direction_duration_coded_text_code is not null and direction_duration_coded_text_system is not null and direction_duration_coded_text_valueset_id is not null))
check (direction_duration_interval_lower is null or direction_duration_interval_upper is null or direction_duration_interval_lower <= direction_duration_interval_upper)
check (num_nonnulls(direction_duration_coded_text, direction_duration_duration, direction_duration_interval_lower) <= 1)
check (number_of_administrations is null or number_of_administrations >= 1)
```
## References
| Columns | Target | On delete |
|---|---|---|
| `direction_duration_coded_text_valueset_id, direction_duration_coded_text_code, direction_duration_coded_text_system, direction_duration_coded_text` | [`valueset_code`](/docs/tables/valueset_code) | restrict |
| `repetition_timing` | [`timing_nondaily`](/docs/tables/timing_nondaily) | no action |
## Referenced by
- [`medication_order_structured_dose_and_timing_directions`](/docs/tables/medication_order_structured_dose_and_timing_directions) via `therapeutic_direction_id`
- [`medication_summary_episode_additional_details`](/docs/tables/medication_summary_episode_additional_details) via `therapeutic_direction_id`
- [`therapeutic_direction_dosage`](/docs/tables/therapeutic_direction_dosage) via `therapeutic_direction_id`
## Indexes
- `therapeutic_direction_repetition_timing_idx` on `repetition_timing`
## Child tables
1 table hang off `therapeutic_direction`, one row per repetition.
### `therapeutic_direction_dosage`
Child table — one row per repetition, deleted with its parent.
| Column | Type | Null | Description | Source |
|---|---|---|---|---|
| `id` | `uuid primary key` | no | Primary key. | — |
| `therapeutic_direction_id` | `uuid` → [`therapeutic_direction`](/docs/tables/therapeutic_direction) | no | — | — |
| `position` | `integer` | no | Order of this row within its parent, from zero. | — |
| `dosage_id` | `uuid` | no | Dosage | `/items[at0176]` |
#### Unique
- `therapeutic_direction_id, position`
- `therapeutic_direction_id, dosage_id`
#### References
| Columns | Target | On delete |
|---|---|---|
| `therapeutic_direction_id` | [`therapeutic_direction`](/docs/tables/therapeutic_direction) | cascade |
| `dosage_id` | [`dosage`](/docs/tables/dosage) | no action |
#### Indexes
- `therapeutic_direction_dosage_dosage_id_idx` on `dosage_id`
## Value sets
| Value set | Codes |
|---|---|
| `org.openehr::openEHR-EHR-CLUSTER.therapeutic_direction.v1/direction_duration` | 2 |