MII IG PRO
2026.2.0 - ci-build
Unknown region code '276'
MII IG PRO, published by Medizininformatik-Initiative. This guide is not an authorized publication; it is the continuous build for version 2026.2.0 built by the FHIR (HL7® FHIR® Standard) CI Build. This version is based on the current content of https://github.com/medizininformatik-initiative/kerndatensatzmodul-proms/ and changes regularly. See the Directory of published versions
This page includes translations from the original source language in which the guide was authored. Information on these translations and instructions on how to provide feedback on the translations can be found here.
A consistent identifier system is essential for the standardized representation of PRO data in the MII context.
Important distinction: Identifiers are explicitly intended as MII-internal business identifiers and should not be confused with semantic codes (LOINC, SNOMED CT) of questionnaires and questionnaire items, which serve terminological annotation in open standards.
Identifiers are needed in the following contexts:
The MII PRO module follows the established MII naming scheme:
mii-[type]-[module]-[specification]
pro (Patient-Reported Outcomes)These abbreviations are used MII-wide across all modules:
| Type | Meaning | FHIR Resource | Example |
|---|---|---|---|
pr |
Profile | StructureDefinition (Profile) | mii-pr-pro-questionnaire |
cs |
CodeSystem | CodeSystem | mii-cs-pro-questionnaire-catalogue |
vs |
ValueSet | ValueSet | mii-vs-pro-phq-9-answer-list |
cm |
ConceptMap | ConceptMap | mii-cm-pro-phq9-to-promis-depression |
ex |
Extension | StructureDefinition (Extension) | mii-ex-pro-questionnaire-capabilities |
exa |
Example | Any resource | mii-exa-pro-phq-9-response |
lm |
LogicalModel | StructureDefinition (LogicalModel) | mii-lm-pro |
These abbreviations have been developed specifically for the PRO module:
| Type | Meaning | FHIR Resource | Example | Status |
|---|---|---|---|---|
qst |
Questionnaire | Questionnaire | mii-qst-pro-phq-9 |
Implemented |
obsdef |
ObservationDefinition | ObservationDefinition | mii-obsdef-pro-eq5d5l-index-score |
Implemented |
lib |
Library | Library (CQL) | mii-lib-pro-eq5d-calculations |
Planned (2026+) |
Note on QuestionnaireResponse: The introduction of a qr abbreviation for QuestionnaireResponse was discussed. After thorough review, it was decided that QuestionnaireResponses should be classified as either:
pr (e.g., mii-pr-pro-questionnaire-response) orexa (e.g., mii-exa-pro-phq-9-response)depending on their intended purpose.
Important: File names and resource IDs are identical and consistently use lowercase with hyphens.
mii-qst-pro-[organization]-[instrument]-[variant]
Problem: PROM instrument abbreviations are not unique and may have identical names in different specialties.
Complexity factors:
Important note: These different questionnaires may produce identical or comparable scores, which must be considered in score assignment.
# EuroQol Organization
mii-qst-pro-euroqol-eq5d5l # EQ-5D-5L (Five Level)
mii-qst-pro-euroqol-eq5dy5l # EQ-5D-Y-5L (Youth Version)
mii-qst-pro-euroqol-eq5d3l # EQ-5D-3L (Three Level)
# PROMIS Organization
mii-qst-pro-promis-promis29 # PROMIS-29 Profile v2.1
mii-qst-pro-promis-depression-sf4a # PROMIS Depression Short Form 4a
# PHQ Family (Pfizer/Spitzer)
mii-qst-pro-phq-phq9 # Patient Health Questionnaire-9
mii-qst-pro-phq-gad7 # Generalized Anxiety Disorder-7
mii-qst-pro-phq-phqsads # PHQ-SADS
# Beck Inventories
mii-qst-pro-beck-bdi2 # Beck Depression Inventory-II
Note: The namespace system is continuously expanded and refined based on the requirements of new instruments.
[instrument-prefix]-[item-type]-[identifier]
Pattern: {instrument}-q{number} (number always two digits with leading zero)
# PHQ-9 Examples
phq-phq9-q01 # Item 1: "Little interest or pleasure in doing things"
phq-phq9-q02 # Item 2: Feeling down
phq-phq9-q09 # Item 9: Suicidal ideation
phq-phq9-score-total # Total score
# BDI-II Examples
bdi-bdi2-q01 # Item 1: Sadness
bdi-bdi2-q02 # Item 2: Pessimism
bdi-bdi2-q21 # Item 21: Loss of interest in sex
bdi-bdi2-score-total # Total score
Pattern: {instrument}-q{number}-{domain-code} (number two digits)
# EQ-5D-5L Examples
euroqol-eq5d5l-q01-MO # Mobility
euroqol-eq5d5l-q02-SC # Self-Care
euroqol-eq5d5l-q03-UA # Usual Activities
euroqol-eq5d5l-q04-PD # Pain/Discomfort
euroqol-eq5d5l-q05-AD # Anxiety/Depression
euroqol-eq5d5l-vas # Visual Analog Scale
Pattern: {instrument}-{item-bank-id} (based on official PROMIS codes)
# PROMIS Depression SF 4a
promis-eddep04 # PROMIS Item EDDEP04
promis-eddep06 # PROMIS Item EDDEP06
promis-eddep29 # PROMIS Item EDDEP29
promis-eddep05 # PROMIS Item EDDEP05
# PROMIS-29 Physical Function Items
promis-pfa11 # Physical Function Item (based on validation study)
promis-pfa21 # Physical Function Item
promis-pfa23 # Physical Function Item
promis-pfa53 # Physical Function Item
Pattern: {instrument}-{score-type}-{variant}
# Different score types
{instrument}-score-raw # Raw score
{instrument}-score-tscore # T-Score (PROMIS)
{instrument}-score-total # Total score
{instrument}-score-index # Index score (EQ-5D)
{instrument}-score-vas # VAS score
{instrument}-score-profile # Profile score
{instrument}.Description # Main description/instruction
{instrument}.{section} # Section-specific description
Examples:
PHQ-9.Description # PHQ-9 main instruction
PROMIS-Depression.Description # PROMIS Depression instruction
| Situation | Recommended Pattern | Example |
|---|---|---|
| Official item code available | Use official code | promis-eddep04 (PROMIS) |
| Domain-based structure | Add domain suffix | euroqol-eq5d5l-q01-MO |
| Sequential numbering | Instrument + q{NN} pattern | phq-phq9-q01 |
| Score items | score-type suffix | phq-phq9-score-total |
| Display items | .Description pattern | PHQ-9.Description |
LOINC Integration: Where available, LOINC is used as the code element, while linkId follows the MII internal system:
//FSH
* item[1].linkId = "phq-phq9-q01" # MII internal ID
* item[1].code = $LNC#44250-9 # LOINC code for semantic annotation
PROMIS Integration: Official PROMIS item IDs are adopted as linkId where available:
//FSH
* item[1].linkId = "promis-eddep04" # Official PROMIS item code
* item[1].code = $LNC#71969-0 # LOINC code (if available)
Situation: PROMIS items can appear in different questionnaires (e.g., EDDEP04 in PROMIS-29 and PROMIS Depression SF 4a)
Solution: Consistent use of the same linkId across all questionnaires enables:
Situation: Not all instruments have standardized item codes
Solution: Fallback to structured numbering with semantic additions:
{instrument}-q{NN} # Base pattern (leading zero!)
{instrument}-q{NN}-{domain} # With domain information
The choice between inline answerOption and external answerValueSet definitions is a fundamental architectural decision that significantly impacts maintainability, reusability, and interoperability.
| Approach | Use Case | Example | Advantages | Disadvantages |
|---|---|---|---|---|
| Inline answerOption + LOINC | International standards available + displayable | PHQ-9, PROMIS | International interoperability, semantic unambiguity | German translations via extensions |
| Inline answerOption + Simple Codes | Simple, static lists (5 or fewer options) + displayable | EQ-5D-5L | Minimal complexity, direct code | No reusability |
| answerValueSet + MII CodeSystem | Capability-based: displayable=false, calculatable=true | BDI-II | Optimized for score-only, no display overhead, German specifics | Not for interactive forms |
//FSH
* item[=].answerOption[0].valueCoding.system = $LNC
* item[=].answerOption[0].valueCoding.code = #LA6568-5
* item[=].answerOption[0].valueCoding.display = "Not at all"
* item[=].answerOption[0].extension.url = "http://hl7.org/fhir/StructureDefinition/itemWeight"
* item[=].answerOption[0].extension.valueDecimal = 0
//FSH
// Questionnaire
* item[=].answerValueSet = "http://www.medizininformatik-initiative.de/fhir/ext/modul-pro/ValueSet/mii-vs-pro-bdi-bdi2-short"
// CodeSystem
* #bdi-bdi2-answer-1 ^property[+].code = #bdi-bdi2-itemWeight
* #bdi-bdi2-answer-1 ^property[=].valueDecimal = 1
//FSH
* item[=].answerOption[0].valueCoding.display = "I have no problems in walking about"
* item[=].answerOption[0].valueCoding.code = #1
First check the Questionnaire Capabilities:
Use answerValueSet + MII CodeSystem when:
Use inline answerOption when:
Additional answerValueSet + MII CodeSystem criteria:
Detailed documentation: Terminology Strategies