---
title: "problem_qualifier"
description: "Contextual or temporal qualifier for a specified problem or diagnosis."
---
Contextual or temporal qualifier for a specified problem or diagnosis.
**Purpose.** To record a clinical context-specific or time-specific qualifier for a specified problem or diagnosis.
## Source
| Model | Leg | Role |
|---|---|---|
| `openEHR-EHR-CLUSTER.problem_qualifier.v2` | openEHR | defines this table |
## Columns
| Column | Type | Null | Description | Source |
|---|---|---|---|---|
| `id` | `uuid primary key` | no | Primary key. | — |
| `diagnostic_status`
`diagnostic_status_code`
`diagnostic_status_system`
`diagnostic_status_valueset_id` | coded text
`text`, `text`, `text`, `text` | yes | Diagnostic status | `/items[at0004]` |
| `disorder_category`
`disorder_category_code`
`disorder_category_system`
`disorder_category_valueset_id` | coded text
`text`, `text`, `text`, `text` | yes | Disorder category | `/items[at0111]` |
| `current_past`
`current_past_code`
`current_past_system`
`current_past_valueset_id` | coded text
`text`, `text`, `text`, `text` | yes | Current/Past? | `/items[at0060]` |
| `active_inactive`
`active_inactive_code`
`active_inactive_system`
`active_inactive_valueset_id` | coded text
`text`, `text`, `text`, `text` | yes | Active/Inactive? | `/items[at0003]` |
| `level_of_control`
`level_of_control_code`
`level_of_control_system`
`level_of_control_valueset_id` | coded text
`text`, `text`, `text`, `text` | yes | Level of control | `/items[at0098]` |
| `progression`
`progression_code`
`progression_system`
`progression_valueset_id` | coded text
`text`, `text`, `text`, `text` | yes | Progression | `/items[at0102]` |
| `resolution_phase`
`resolution_phase_code`
`resolution_phase_system`
`resolution_phase_valueset_id` | coded text
`text`, `text`, `text`, `text` | yes | Resolution phase | `/items[at0083]` |
| `remission_status`
`remission_status_code`
`remission_status_system`
`remission_status_valueset_id` | coded text
`text`, `text`, `text`, `text` | yes | Remission status | `/items[at0089]` |
| `episodicity`
`episodicity_code`
`episodicity_system`
`episodicity_valueset_id` | coded text
`text`, `text`, `text`, `text` | yes | Episodicity | `/items[at0001]` |
| `reason_for_an_ongoing_episode` | `text` | yes | Reason for an ongoing episode | `/items[at0107]` |
| `occurrence`
`occurrence_code`
`occurrence_system`
`occurrence_valueset_id` | coded text
`text`, `text`, `text`, `text` | yes | Occurrence | `/items[at0071]` |
| `course_label`
`course_label_code`
`course_label_system`
`course_label_valueset_id` | coded text
`text`, `text`, `text`, `text` | yes | Course label | `/items[at0077]` |
| `diagnostic_category`
`diagnostic_category_code`
`diagnostic_category_system`
`diagnostic_category_valueset_id` | coded text
`text`, `text`, `text`, `text` | yes | Diagnostic category | `/items[at0063]` |
| `admission_diagnosis_boolean`
`admission_diagnosis_coded_text`
`admission_diagnosis_coded_text_code`
`admission_diagnosis_coded_text_system`
`admission_diagnosis_coded_text_valueset_id` | coded text
`boolean`, `text`, `text`, `text`, `text` | yes | Admission diagnosis? | `/items[at0073]` |
| `comment` | `text` | yes | Comment | `/items[at0110]` |
## Constraints
```sql
check ((diagnostic_status_code is null and diagnostic_status_system is null and diagnostic_status_valueset_id is null) or (diagnostic_status is not null and diagnostic_status_code is not null and diagnostic_status_system is not null and diagnostic_status_valueset_id is not null))
check ((disorder_category_code is null and disorder_category_system is null and disorder_category_valueset_id is null) or (disorder_category is not null and disorder_category_code is not null and disorder_category_system is not null and disorder_category_valueset_id is not null))
check ((current_past_code is null and current_past_system is null and current_past_valueset_id is null and current_past is null) or (current_past is not null and current_past_code is not null and current_past_system is not null and current_past_valueset_id is not null))
check ((active_inactive_code is null and active_inactive_system is null and active_inactive_valueset_id is null and active_inactive is null) or (active_inactive is not null and active_inactive_code is not null and active_inactive_system is not null and active_inactive_valueset_id is not null))
check ((level_of_control_code is null and level_of_control_system is null and level_of_control_valueset_id is null) or (level_of_control is not null and level_of_control_code is not null and level_of_control_system is not null and level_of_control_valueset_id is not null))
check ((progression_code is null and progression_system is null and progression_valueset_id is null) or (progression is not null and progression_code is not null and progression_system is not null and progression_valueset_id is not null))
check ((resolution_phase_code is null and resolution_phase_system is null and resolution_phase_valueset_id is null) or (resolution_phase is not null and resolution_phase_code is not null and resolution_phase_system is not null and resolution_phase_valueset_id is not null))
check ((remission_status_code is null and remission_status_system is null and remission_status_valueset_id is null) or (remission_status is not null and remission_status_code is not null and remission_status_system is not null and remission_status_valueset_id is not null))
check ((episodicity_code is null and episodicity_system is null and episodicity_valueset_id is null) or (episodicity is not null and episodicity_code is not null and episodicity_system is not null and episodicity_valueset_id is not null))
check ((occurrence_code is null and occurrence_system is null and occurrence_valueset_id is null) or (occurrence is not null and occurrence_code is not null and occurrence_system is not null and occurrence_valueset_id is not null))
check ((course_label_code is null and course_label_system is null and course_label_valueset_id is null) or (course_label is not null and course_label_code is not null and course_label_system is not null and course_label_valueset_id is not null))
check ((diagnostic_category_code is null and diagnostic_category_system is null and diagnostic_category_valueset_id is null) or (diagnostic_category is not null and diagnostic_category_code is not null and diagnostic_category_system is not null and diagnostic_category_valueset_id is not null))
check ((admission_diagnosis_coded_text_code is null and admission_diagnosis_coded_text_system is null and admission_diagnosis_coded_text_valueset_id is null and admission_diagnosis_coded_text is null) or (admission_diagnosis_coded_text is not null and admission_diagnosis_coded_text_code is not null and admission_diagnosis_coded_text_system is not null and admission_diagnosis_coded_text_valueset_id is not null))
check (num_nonnulls(admission_diagnosis_boolean, admission_diagnosis_coded_text) <= 1)
```
## References
| Columns | Target | On delete |
|---|---|---|
| `diagnostic_status_valueset_id, diagnostic_status_code, diagnostic_status_system, diagnostic_status` | [`valueset_code`](/docs/tables/valueset_code) | restrict |
| `disorder_category_valueset_id, disorder_category_code, disorder_category_system, disorder_category` | [`valueset_code`](/docs/tables/valueset_code) | restrict |
| `current_past_valueset_id, current_past_code, current_past_system, current_past` | [`valueset_code`](/docs/tables/valueset_code) | restrict |
| `active_inactive_valueset_id, active_inactive_code, active_inactive_system, active_inactive` | [`valueset_code`](/docs/tables/valueset_code) | restrict |
| `level_of_control_valueset_id, level_of_control_code, level_of_control_system, level_of_control` | [`valueset_code`](/docs/tables/valueset_code) | restrict |
| `progression_valueset_id, progression_code, progression_system, progression` | [`valueset_code`](/docs/tables/valueset_code) | restrict |
| `resolution_phase_valueset_id, resolution_phase_code, resolution_phase_system, resolution_phase` | [`valueset_code`](/docs/tables/valueset_code) | restrict |
| `remission_status_valueset_id, remission_status_code, remission_status_system, remission_status` | [`valueset_code`](/docs/tables/valueset_code) | restrict |
| `episodicity_valueset_id, episodicity_code, episodicity_system, episodicity` | [`valueset_code`](/docs/tables/valueset_code) | restrict |
| `occurrence_valueset_id, occurrence_code, occurrence_system, occurrence` | [`valueset_code`](/docs/tables/valueset_code) | restrict |
| `course_label_valueset_id, course_label_code, course_label_system, course_label` | [`valueset_code`](/docs/tables/valueset_code) | restrict |
| `diagnostic_category_valueset_id, diagnostic_category_code, diagnostic_category_system, diagnostic_category` | [`valueset_code`](/docs/tables/valueset_code) | restrict |
| `admission_diagnosis_coded_text_valueset_id, admission_diagnosis_coded_text_code, admission_diagnosis_coded_text_system, admission_diagnosis_coded_text` | [`valueset_code`](/docs/tables/valueset_code) | restrict |
## Referenced by
- [`problem_diagnosis_status`](/docs/tables/problem_diagnosis_status) via `problem_qualifier_id`
## Value sets
| Value set | Codes |
|---|---|
| `org.openehr::openEHR-EHR-CLUSTER.problem_qualifier.v2/active_inactive` | 2 |
| `org.openehr::openEHR-EHR-CLUSTER.problem_qualifier.v2/admission_diagnosis` | 2 |
| `org.openehr::openEHR-EHR-CLUSTER.problem_qualifier.v2/course_label` | 3 |
| `org.openehr::openEHR-EHR-CLUSTER.problem_qualifier.v2/current_past` | 2 |
| `org.openehr::openEHR-EHR-CLUSTER.problem_qualifier.v2/diagnostic_category` | 3 |
| `org.openehr::openEHR-EHR-CLUSTER.problem_qualifier.v2/diagnostic_status` | 4 |
| `org.openehr::openEHR-EHR-CLUSTER.problem_qualifier.v2/episodicity` | 3 |
| `org.openehr::openEHR-EHR-CLUSTER.problem_qualifier.v2/level_of_control` | 3 |
| `org.openehr::openEHR-EHR-CLUSTER.problem_qualifier.v2/occurrence` | 2 |
| `org.openehr::openEHR-EHR-CLUSTER.problem_qualifier.v2/progression` | 4 |
| `org.openehr::openEHR-EHR-CLUSTER.problem_qualifier.v2/remission_status` | 3 |
| `org.openehr::openEHR-EHR-CLUSTER.problem_qualifier.v2/resolution_phase` | 5 |