---
title: "timing_nondaily"
description: "Structured information about the intended timing pattern for a therapeutic or diagnostic activity occurring over days, weeks, months or years."
---

Structured information about the intended timing pattern for a therapeutic or diagnostic activity occurring over days, weeks, months or years.

**Purpose.** To record structured information about the intended timing pattern for a therapeutic or diagnostic activity occurring over days, weeks, months or years.

## Source

| Model | Leg | Role |
|---|---|---|
| `openEHR-EHR-CLUSTER.timing_nondaily.v1` | openEHR | defines this table |

## Columns

| Column | Type | Null | Description | Source |
|---|---|---|---|---|
| `id` | `uuid primary key` | no | Primary key. | — |
| `repetition_interval` | `interval` | yes | Repetition interval | `/items[at0002]` |
| `days_per_time_period_magnitude`<br />`days_per_time_period_units` | quantity<br />`numeric`, `text` | yes | Days per time period | `/items[at0014]` |
| `activities_per_time_period_magnitude`<br />`activities_per_time_period_units` | quantity<br />`numeric`, `text` | yes | Activities per time period | `/items[at0022]` |
| `timing_description` | `text` | yes | Timing description | `/items[at0021]` |
| `on_off_cycle_on_value` | `interval` | yes | On | `/items[at0010]/items[at0011]` |
| `on_off_cycle_off` | `interval` | yes | Off | `/items[at0010]/items[at0012]` |
| `on_off_cycle_repetitions` | `integer` | yes | Repetitions | `/items[at0010]/items[at0013]` |

## Constraints

```sql
check ((days_per_time_period_magnitude is null and days_per_time_period_units is null) or (days_per_time_period_magnitude is not null and days_per_time_period_units is not null))
check (days_per_time_period_magnitude is null or (days_per_time_period_units = '1/wk' and days_per_time_period_magnitude between 1 and 7) or (days_per_time_period_units = '1/mo' and days_per_time_period_magnitude between 1 and 31) or (days_per_time_period_units = '1/a' and days_per_time_period_magnitude between 1 and 366))
check ((activities_per_time_period_magnitude is null and activities_per_time_period_units is null) or (activities_per_time_period_magnitude is not null and activities_per_time_period_units is not null))
check (activities_per_time_period_magnitude is null or (activities_per_time_period_units = '1/wk' and activities_per_time_period_magnitude >= 1) or (activities_per_time_period_units = '1/mo' and activities_per_time_period_magnitude >= 1) or (activities_per_time_period_units = '1/a' and activities_per_time_period_magnitude >= 1))
check (on_off_cycle_repetitions is null or on_off_cycle_repetitions >= 0)
```

## Referenced by

- [`service_direction_repetition_timing`](/docs/tables/service_direction_repetition_timing) via `timing_nondaily_id`
- [`service_request_complex_timing`](/docs/tables/service_request_complex_timing) via `timing_nondaily_id`
- [`therapeutic_direction`](/docs/tables/therapeutic_direction) via `repetition_timing`
- [`timing_nondaily_specific_date`](/docs/tables/timing_nondaily_specific_date) via `timing_nondaily_id`
- [`timing_nondaily_specific_day_of_week`](/docs/tables/timing_nondaily_specific_day_of_week) via `timing_nondaily_id`
- [`timing_nondaily_specific_day_of_month`](/docs/tables/timing_nondaily_specific_day_of_month) via `timing_nondaily_id`
- [`timing_nondaily_specific_event`](/docs/tables/timing_nondaily_specific_event) via `timing_nondaily_id`

## Child tables

4 tables hang off `timing_nondaily`, one row per repetition.

### `timing_nondaily_specific_date`

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

| Column | Type | Null | Description | Source |
|---|---|---|---|---|
| `id` | `uuid primary key` | no | Primary key. | — |
| `timing_nondaily_id` | `uuid` → [`timing_nondaily`](/docs/tables/timing_nondaily) | no | — | — |
| `position` | `integer` | no | Order of this row within its parent, from zero. | — |
| `specific_date` | `date` | yes | Specific date | `/items[at0001]` |

#### Unique

- `timing_nondaily_id, position`

#### References

| Columns | Target | On delete |
|---|---|---|
| `timing_nondaily_id` | [`timing_nondaily`](/docs/tables/timing_nondaily) | cascade |

### `timing_nondaily_specific_day_of_week`

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

| Column | Type | Null | Description | Source |
|---|---|---|---|---|
| `id` | `uuid primary key` | no | Primary key. | — |
| `timing_nondaily_id` | `uuid` → [`timing_nondaily`](/docs/tables/timing_nondaily) | no | — | — |
| `position` | `integer` | no | Order of this row within its parent, from zero. | — |
| `specific_day_of_week`<br />`specific_day_of_week_code`<br />`specific_day_of_week_system`<br />`specific_day_of_week_valueset_id` | coded text<br />`text`, `text`, `text`, `text` | yes | Specific day of week | `/items[at0003]` |

#### Constraints

```sql
check ((specific_day_of_week_code is null and specific_day_of_week_system is null and specific_day_of_week_valueset_id is null and specific_day_of_week is null) or (specific_day_of_week is not null and specific_day_of_week_code is not null and specific_day_of_week_system is not null and specific_day_of_week_valueset_id is not null))
```

#### Unique

- `timing_nondaily_id, position`

#### References

| Columns | Target | On delete |
|---|---|---|
| `timing_nondaily_id` | [`timing_nondaily`](/docs/tables/timing_nondaily) | cascade |
| `specific_day_of_week_valueset_id, specific_day_of_week_code, specific_day_of_week_system, specific_day_of_week` | [`valueset_code`](/docs/tables/valueset_code) | restrict |

### `timing_nondaily_specific_day_of_month`

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

| Column | Type | Null | Description | Source |
|---|---|---|---|---|
| `id` | `uuid primary key` | no | Primary key. | — |
| `timing_nondaily_id` | `uuid` → [`timing_nondaily`](/docs/tables/timing_nondaily) | no | — | — |
| `position` | `integer` | no | Order of this row within its parent, from zero. | — |
| `specific_day_of_month` | `integer` | yes | Specific day of month | `/items[at0004]` |

#### Constraints

```sql
check (specific_day_of_month is null or specific_day_of_month between 1 and 31)
```

#### Unique

- `timing_nondaily_id, position`

#### References

| Columns | Target | On delete |
|---|---|---|
| `timing_nondaily_id` | [`timing_nondaily`](/docs/tables/timing_nondaily) | cascade |

### `timing_nondaily_specific_event`

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

| Column | Type | Null | Description | Source |
|---|---|---|---|---|
| `id` | `uuid primary key` | no | Primary key. | — |
| `timing_nondaily_id` | `uuid` → [`timing_nondaily`](/docs/tables/timing_nondaily) | no | — | — |
| `position` | `integer` | no | Order of this row within its parent, from zero. | — |
| `event_name`<br />`event_name_code`<br />`event_name_system`<br />`event_name_valueset_id` | coded text<br />`text`, `text`, `text`, `text` | yes | Event name | `/items[at0006]/items[at0005]` |
| `time_offset` | `interval` | yes | Time offset | `/items[at0006]/items[at0009]` |

#### Constraints

```sql
check ((event_name_code is null and event_name_system is null and event_name_valueset_id is null) or (event_name is not null and event_name_code is not null and event_name_system is not null and event_name_valueset_id is not null))
```

#### Unique

- `timing_nondaily_id, position`

#### References

| Columns | Target | On delete |
|---|---|---|
| `timing_nondaily_id` | [`timing_nondaily`](/docs/tables/timing_nondaily) | cascade |
| `event_name_valueset_id, event_name_code, event_name_system, event_name` | [`valueset_code`](/docs/tables/valueset_code) | restrict |

## Value sets

| Value set | Codes |
|---|---|
| `org.openehr::openEHR-EHR-CLUSTER.timing_nondaily.v1/specific_day_of_week` | 7 |

