---
title: "cpax"
description: "A scoring system to measure physical morbidity in critical care."
---

A scoring system to measure physical morbidity in critical care.

**Purpose.** To record the results for each component parameter for the Chelsea Critical Care Physical Assessment Tool (CPAx).

## Source

| Model | Leg | Role |
|---|---|---|
| `openEHR-EHR-OBSERVATION.cpax.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. | — |
| `respiratory_function`<br />`respiratory_function_code`<br />`respiratory_function_system`<br />`respiratory_function_numeric`<br />`respiratory_function_valueset_id` | coded text<br />`text`, `text`, `text`, `numeric`, `text` | yes | Respiratory function | `/data[at0001]/events[at0002]/data[at0003]/items[at0004]` |
| `cough`<br />`cough_code`<br />`cough_system`<br />`cough_numeric`<br />`cough_valueset_id` | coded text<br />`text`, `text`, `text`, `numeric`, `text` | yes | Cough | `/data[at0001]/events[at0002]/data[at0003]/items[at0012]` |
| `moving_within_the_bed_e_g_rolling`<br />`moving_within_the_bed_e_g_rolling_code`<br />`moving_within_the_bed_e_g_rolling_system`<br />`moving_within_the_bed_e_g_rolling_numeric`<br />`moving_within_the_bed_e_g_rolling_valueset_id` | coded text<br />`text`, `text`, `text`, `numeric`, `text` | yes | Moving within the bed (e.g. rolling) | `/data[at0001]/events[at0002]/data[at0003]/items[at0014]` |
| `supine_to_sitting_on_the_edge_of_the_bed`<br />`supine_to_sitting_on_the_edge_of_the_bed_code`<br />`supine_to_sitting_on_the_edge_of_the_bed_system`<br />`supine_to_sitting_on_the_edge_of_the_bed_numeric`<br />`supine_to_sitting_on_the_edge_of_the_bed_valueset_id` | coded text<br />`text`, `text`, `text`, `numeric`, `text` | yes | Supine to sitting on the edge of the bed | `/data[at0001]/events[at0002]/data[at0003]/items[at0015]` |
| `dynamic_sitting_i_e_when_sitting_on_the_edge_6c9be4`<br />`dynamic_sitting_i_e_when_sitting_on_the_edge_6c9be4_code`<br />`dynamic_sitting_i_e_when_sitting_on_the_edge_6c9be4_system`<br />`dynamic_sitting_i_e_when_sitting_on_the_edge_6c9be4_numeric`<br />`dynamic_sitting_i_e_when_sitting_on_the_edge_6c9be4_valueset_id` | coded text<br />`text`, `text`, `text`, `numeric`, `text` | yes | Dynamic sitting (i.e. when sitting on the edge of the bed/unsupported sitting) | `/data[at0001]/events[at0002]/data[at0003]/items[at0016]` |
| `standing_balance`<br />`standing_balance_code`<br />`standing_balance_system`<br />`standing_balance_numeric`<br />`standing_balance_valueset_id` | coded text<br />`text`, `text`, `text`, `numeric`, `text` | yes | Standing balance | `/data[at0001]/events[at0002]/data[at0003]/items[at0017]` |
| `sit_to_stand_starting_position_lte_90_hip_flexion`<br />`sit_to_stand_starting_position_lte_90_hip_flexion_code`<br />`sit_to_stand_starting_position_lte_90_hip_flexion_system`<br />`sit_to_stand_starting_position_lte_90_hip_flexion_numeric`<br />`sit_to_stand_starting_position_lte_90_hip_flexion_valueset_id` | coded text<br />`text`, `text`, `text`, `numeric`, `text` | yes | Sit to stand (starting position: ≤90º hip flexion) | `/data[at0001]/events[at0002]/data[at0003]/items[at0018]` |
| `transferring_from_bed_to_chair`<br />`transferring_from_bed_to_chair_code`<br />`transferring_from_bed_to_chair_system`<br />`transferring_from_bed_to_chair_numeric`<br />`transferring_from_bed_to_chair_valueset_id` | coded text<br />`text`, `text`, `text`, `numeric`, `text` | yes | Transferring from bed to chair | `/data[at0001]/events[at0002]/data[at0003]/items[at0019]` |
| `stepping`<br />`stepping_code`<br />`stepping_system`<br />`stepping_numeric`<br />`stepping_valueset_id` | coded text<br />`text`, `text`, `text`, `numeric`, `text` | yes | Stepping | `/data[at0001]/events[at0002]/data[at0003]/items[at0020]` |
| `grip_strength_predicted_mean_for_age_and_gen_4c02fd`<br />`grip_strength_predicted_mean_for_age_and_gen_4c02fd_code`<br />`grip_strength_predicted_mean_for_age_and_gen_4c02fd_system`<br />`grip_strength_predicted_mean_for_age_and_gen_4c02fd_numeric`<br />`grip_strength_predicted_mean_for_age_and_gen_4c02fd_valueset_id` | coded text<br />`text`, `text`, `text`, `numeric`, `text` | yes | Grip strength (predicted mean for age and gender on the strongest hand) | `/data[at0001]/events[at0002]/data[at0003]/items[at0013]` |
| `total_score` | `integer` | yes | Total score | `/data[at0001]/events[at0002]/data[at0003]/items[at0076]` |

## Constraints

```sql
check ((respiratory_function_code is null and respiratory_function_system is null and respiratory_function_numeric is null and respiratory_function is null) or (respiratory_function_valueset_id is not null and respiratory_function_code is not null and respiratory_function_system is not null and respiratory_function_numeric is not null and respiratory_function is not null))
check ((cough_code is null and cough_system is null and cough_numeric is null and cough is null) or (cough_valueset_id is not null and cough_code is not null and cough_system is not null and cough_numeric is not null and cough is not null))
check ((moving_within_the_bed_e_g_rolling_code is null and moving_within_the_bed_e_g_rolling_system is null and moving_within_the_bed_e_g_rolling_numeric is null and moving_within_the_bed_e_g_rolling is null) or (moving_within_the_bed_e_g_rolling_valueset_id is not null and moving_within_the_bed_e_g_rolling_code is not null and moving_within_the_bed_e_g_rolling_system is not null and moving_within_the_bed_e_g_rolling_numeric is not null and moving_within_the_bed_e_g_rolling is not null))
check ((supine_to_sitting_on_the_edge_of_the_bed_code is null and supine_to_sitting_on_the_edge_of_the_bed_system is null and supine_to_sitting_on_the_edge_of_the_bed_numeric is null and supine_to_sitting_on_the_edge_of_the_bed is null) or (supine_to_sitting_on_the_edge_of_the_bed_valueset_id is not null and supine_to_sitting_on_the_edge_of_the_bed_code is not null and supine_to_sitting_on_the_edge_of_the_bed_system is not null and supine_to_sitting_on_the_edge_of_the_bed_numeric is not null and supine_to_sitting_on_the_edge_of_the_bed is not null))
check ((dynamic_sitting_i_e_when_sitting_on_the_edge_6c9be4_code is null and dynamic_sitting_i_e_when_sitting_on_the_edge_6c9be4_system is null and dynamic_sitting_i_e_when_sitting_on_the_edge_6c9be4_numeric is null and dynamic_sitting_i_e_when_sitting_on_the_edge_6c9be4 is null) or (dynamic_sitting_i_e_when_sitting_on_the_edge_6c9be4_valueset_id is not null and dynamic_sitting_i_e_when_sitting_on_the_edge_6c9be4_code is not null and dynamic_sitting_i_e_when_sitting_on_the_edge_6c9be4_system is not null and dynamic_sitting_i_e_when_sitting_on_the_edge_6c9be4_numeric is not null and dynamic_sitting_i_e_when_sitting_on_the_edge_6c9be4 is not null))
check ((standing_balance_code is null and standing_balance_system is null and standing_balance_numeric is null and standing_balance is null) or (standing_balance_valueset_id is not null and standing_balance_code is not null and standing_balance_system is not null and standing_balance_numeric is not null and standing_balance is not null))
check ((sit_to_stand_starting_position_lte_90_hip_flexion_code is null and sit_to_stand_starting_position_lte_90_hip_flexion_system is null and sit_to_stand_starting_position_lte_90_hip_flexion_numeric is null and sit_to_stand_starting_position_lte_90_hip_flexion is null) or (sit_to_stand_starting_position_lte_90_hip_flexion_valueset_id is not null and sit_to_stand_starting_position_lte_90_hip_flexion_code is not null and sit_to_stand_starting_position_lte_90_hip_flexion_system is not null and sit_to_stand_starting_position_lte_90_hip_flexion_numeric is not null and sit_to_stand_starting_position_lte_90_hip_flexion is not null))
check ((transferring_from_bed_to_chair_code is null and transferring_from_bed_to_chair_system is null and transferring_from_bed_to_chair_numeric is null and transferring_from_bed_to_chair is null) or (transferring_from_bed_to_chair_valueset_id is not null and transferring_from_bed_to_chair_code is not null and transferring_from_bed_to_chair_system is not null and transferring_from_bed_to_chair_numeric is not null and transferring_from_bed_to_chair is not null))
check ((stepping_code is null and stepping_system is null and stepping_numeric is null and stepping is null) or (stepping_valueset_id is not null and stepping_code is not null and stepping_system is not null and stepping_numeric is not null and stepping is not null))
check ((grip_strength_predicted_mean_for_age_and_gen_4c02fd_code is null and grip_strength_predicted_mean_for_age_and_gen_4c02fd_system is null and grip_strength_predicted_mean_for_age_and_gen_4c02fd_numeric is null and grip_strength_predicted_mean_for_age_and_gen_4c02fd is null) or (grip_strength_predicted_mean_for_age_and_gen_4c02fd_valueset_id is not null and grip_strength_predicted_mean_for_age_and_gen_4c02fd_code is not null and grip_strength_predicted_mean_for_age_and_gen_4c02fd_system is not null and grip_strength_predicted_mean_for_age_and_gen_4c02fd_numeric is not null and grip_strength_predicted_mean_for_age_and_gen_4c02fd is not null))
check (total_score is null or total_score between 0 and 50)
```

## 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 |
| `respiratory_function_valueset_id, respiratory_function_code, respiratory_function_system, respiratory_function, respiratory_function_numeric` | [`valueset_code`](/docs/tables/valueset_code) | restrict |
| `cough_valueset_id, cough_code, cough_system, cough, cough_numeric` | [`valueset_code`](/docs/tables/valueset_code) | restrict |
| `moving_within_the_bed_e_g_rolling_valueset_id, moving_within_the_bed_e_g_rolling_code, moving_within_the_bed_e_g_rolling_system, moving_within_the_bed_e_g_rolling, moving_within_the_bed_e_g_rolling_numeric` | [`valueset_code`](/docs/tables/valueset_code) | restrict |
| `supine_to_sitting_on_the_edge_of_the_bed_valueset_id, supine_to_sitting_on_the_edge_of_the_bed_code, supine_to_sitting_on_the_edge_of_the_bed_system, supine_to_sitting_on_the_edge_of_the_bed, supine_to_sitting_on_the_edge_of_the_bed_numeric` | [`valueset_code`](/docs/tables/valueset_code) | restrict |
| `dynamic_sitting_i_e_when_sitting_on_the_edge_6c9be4_valueset_id, dynamic_sitting_i_e_when_sitting_on_the_edge_6c9be4_code, dynamic_sitting_i_e_when_sitting_on_the_edge_6c9be4_system, dynamic_sitting_i_e_when_sitting_on_the_edge_6c9be4, dynamic_sitting_i_e_when_sitting_on_the_edge_6c9be4_numeric` | [`valueset_code`](/docs/tables/valueset_code) | restrict |
| `standing_balance_valueset_id, standing_balance_code, standing_balance_system, standing_balance, standing_balance_numeric` | [`valueset_code`](/docs/tables/valueset_code) | restrict |
| `sit_to_stand_starting_position_lte_90_hip_flexion_valueset_id, sit_to_stand_starting_position_lte_90_hip_flexion_code, sit_to_stand_starting_position_lte_90_hip_flexion_system, sit_to_stand_starting_position_lte_90_hip_flexion, sit_to_stand_starting_position_lte_90_hip_flexion_numeric` | [`valueset_code`](/docs/tables/valueset_code) | restrict |
| `transferring_from_bed_to_chair_valueset_id, transferring_from_bed_to_chair_code, transferring_from_bed_to_chair_system, transferring_from_bed_to_chair, transferring_from_bed_to_chair_numeric` | [`valueset_code`](/docs/tables/valueset_code) | restrict |
| `stepping_valueset_id, stepping_code, stepping_system, stepping, stepping_numeric` | [`valueset_code`](/docs/tables/valueset_code) | restrict |
| `grip_strength_predicted_mean_for_age_and_gen_4c02fd_valueset_id, grip_strength_predicted_mean_for_age_and_gen_4c02fd_code, grip_strength_predicted_mean_for_age_and_gen_4c02fd_system, grip_strength_predicted_mean_for_age_and_gen_4c02fd, grip_strength_predicted_mean_for_age_and_gen_4c02fd_numeric` | [`valueset_code`](/docs/tables/valueset_code) | restrict |

## Indexes

- `cpax_form_id_idx` on `form_id`

## Value sets

| Value set | Codes |
|---|---|
| `org.openehr::openEHR-EHR-OBSERVATION.cpax.v1/cough` | 6 |
| `org.openehr::openEHR-EHR-OBSERVATION.cpax.v1/dynamic_sitting_i_e_when_sitting_on_the_edge_of_the_bed_unsupported_sitting` | 6 |
| `org.openehr::openEHR-EHR-OBSERVATION.cpax.v1/grip_strength_predicted_mean_for_age_and_gender_on_the_strongest_hand` | 6 |
| `org.openehr::openEHR-EHR-OBSERVATION.cpax.v1/moving_within_the_bed_e_g_rolling` | 6 |
| `org.openehr::openEHR-EHR-OBSERVATION.cpax.v1/respiratory_function` | 6 |
| `org.openehr::openEHR-EHR-OBSERVATION.cpax.v1/sit_to_stand_starting_position_lte_90_hip_flexion` | 6 |
| `org.openehr::openEHR-EHR-OBSERVATION.cpax.v1/standing_balance` | 6 |
| `org.openehr::openEHR-EHR-OBSERVATION.cpax.v1/stepping` | 6 |
| `org.openehr::openEHR-EHR-OBSERVATION.cpax.v1/supine_to_sitting_on_the_edge_of_the_bed` | 6 |
| `org.openehr::openEHR-EHR-OBSERVATION.cpax.v1/transferring_from_bed_to_chair` | 6 |

