PackagesCanonicalsLogsProblems
    Packages
    de.medizininformatikinitiative.kerndatensatz.icu@2026.0.0
    https://www.medizininformatik-initiative.de/fhir/ext/modul-icu/StructureDefinition/mii-pr-icu-score
{
  "description": "Parent profile for ICU scoring systems. Scores are represented as Observations with the total score in value[x] and subscores as components. This profile defines common constraints for all ICU scores including sedation scores (RASS), pain scores (NRS, BPS), delirium assessments (CAM-ICU, ICDSC), and severity scores (SOFA, qSOFA).",
  "_filename": "StructureDefinition-mii-pr-icu-score.json",
  "package_name": "de.medizininformatikinitiative.kerndatensatz.icu",
  "date": null,
  "derivation": "constraint",
  "publisher": "Medizininformatik Initiative",
  "fhirVersion": "4.0.1",
  "name": "MII_PR_ICU_Score",
  "abstract": true,
  "type": "Observation",
  "experimental": null,
  "resourceType": "StructureDefinition",
  "title": "MII PR ICU Score",
  "package_version": "2026.0.0",
  "status": "draft",
  "id": "1df1bd5b-77cd-49ff-8e8a-71181104f67f",
  "kind": "resource",
  "url": "https://www.medizininformatik-initiative.de/fhir/ext/modul-icu/StructureDefinition/mii-pr-icu-score",
  "version": "2026.0.0",
  "differential": {
    "element": [ {
      "id": "Observation",
      "path": "Observation",
      "constraint": [ {
        "key": "obs-10",
        "human": "Either subject XOR encounter exists",
        "source": "https://www.medizininformatik-initiative.de/fhir/ext/modul-icu/StructureDefinition/mii-pr-icu-score",
        "severity": "error",
        "expression": "$this.encounter.exists() xor $this.subject.exists()"
      }, {
        "key": "vs-de-2",
        "human": "If there is no component or hasMember element then either a value[x] or a data absent reason must be present",
        "source": "https://www.medizininformatik-initiative.de/fhir/ext/modul-icu/StructureDefinition/mii-pr-icu-score",
        "severity": "error",
        "expression": "(component.empty() and hasMember.empty()) implies (dataAbsentReason.exists() or value.exists())"
      } ]
    }, {
      "id": "Observation.status",
      "path": "Observation.status",
      "short": "Status of the observation",
      "comment": "Typically 'final' for completed scores, 'preliminary' for incomplete assessments",
      "mustSupport": true
    }, {
      "id": "Observation.category",
      "min": 2,
      "path": "Observation.category",
      "slicing": {
        "rules": "open",
        "discriminator": [ {
          "path": "$this",
          "type": "pattern"
        } ]
      },
      "mustSupport": true
    }, {
      "id": "Observation.category:survey",
      "max": "1",
      "min": 1,
      "path": "Observation.category",
      "short": "Survey category",
      "sliceName": "survey",
      "mustSupport": true,
      "patternCodeableConcept": {
        "coding": [ {
          "code": "survey",
          "system": "http://terminology.hl7.org/CodeSystem/observation-category"
        } ]
      }
    }, {
      "id": "Observation.category:survey.coding",
      "max": "1",
      "min": 1,
      "path": "Observation.category.coding",
      "mustSupport": true
    }, {
      "id": "Observation.category:survey.coding.system",
      "min": 1,
      "path": "Observation.category.coding.system",
      "mustSupport": true
    }, {
      "id": "Observation.category:survey.coding.code",
      "min": 1,
      "path": "Observation.category.coding.code",
      "mustSupport": true
    }, {
      "id": "Observation.category:assessment-scale",
      "max": "1",
      "min": 1,
      "path": "Observation.category",
      "short": "Assessment scale category",
      "sliceName": "assessment-scale",
      "mustSupport": true,
      "patternCodeableConcept": {
        "coding": [ {
          "code": "273249006",
          "system": "http://snomed.info/sct",
          "display": "Assessment scales (assessment scale)"
        } ]
      }
    }, {
      "id": "Observation.category:assessment-scale.coding",
      "max": "1",
      "min": 1,
      "path": "Observation.category.coding",
      "mustSupport": true
    }, {
      "id": "Observation.category:assessment-scale.coding.system",
      "min": 1,
      "path": "Observation.category.coding.system",
      "mustSupport": true
    }, {
      "id": "Observation.category:assessment-scale.coding.code",
      "min": 1,
      "path": "Observation.category.coding.code",
      "mustSupport": true
    }, {
      "id": "Observation.code",
      "path": "Observation.code",
      "short": "Type of score",
      "constraint": [ {
        "key": "obs-loinc-sct",
        "human": "Es muss mindestens ein LOINC oder SnomedCT Code vorhanden sein",
        "source": "https://www.medizininformatik-initiative.de/fhir/ext/modul-icu/StructureDefinition/mii-pr-icu-score",
        "severity": "error",
        "expression": "coding.where(system='http://loinc.org').exists().not() implies coding.where(system='http://snomed.info/sct').exists()"
      } ],
      "definition": "Identifies which score is being represented",
      "mustSupport": true
    }, {
      "id": "Observation.code.coding",
      "path": "Observation.code.coding",
      "slicing": {
        "rules": "open",
        "discriminator": [ {
          "path": "$this",
          "type": "pattern"
        } ]
      },
      "mustSupport": true
    }, {
      "path": "Observation.code.coding",
      "min": 0,
      "short": "SNOMED CT code for the score",
      "mustSupport": true,
      "sliceName": "sct",
      "binding": {
        "strength": "extensible",
        "valueSet": "https://www.medizininformatik-initiative.de/fhir/ext/modul-icu/ValueSet/score-snomed"
      },
      "max": "1",
      "id": "Observation.code.coding:sct",
      "patternCoding": {
        "system": "http://snomed.info/sct"
      }
    }, {
      "id": "Observation.code.coding:sct.system",
      "min": 1,
      "path": "Observation.code.coding.system",
      "mustSupport": true
    }, {
      "id": "Observation.code.coding:sct.code",
      "min": 1,
      "path": "Observation.code.coding.code",
      "mustSupport": true
    }, {
      "path": "Observation.code.coding",
      "min": 0,
      "short": "LOINC code for the score",
      "mustSupport": true,
      "sliceName": "loinc",
      "binding": {
        "strength": "extensible",
        "valueSet": "https://www.medizininformatik-initiative.de/fhir/ext/modul-icu/ValueSet/score-loinc"
      },
      "max": "1",
      "id": "Observation.code.coding:loinc",
      "patternCoding": {
        "system": "http://loinc.org"
      }
    }, {
      "id": "Observation.code.coding:loinc.system",
      "min": 1,
      "path": "Observation.code.coding.system",
      "mustSupport": true
    }, {
      "id": "Observation.code.coding:loinc.code",
      "min": 1,
      "path": "Observation.code.coding.code",
      "mustSupport": true
    }, {
      "id": "Observation.subject",
      "min": 1,
      "path": "Observation.subject",
      "type": [ {
        "code": "Reference",
        "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Patient" ]
      } ],
      "short": "Patient being assessed",
      "mustSupport": true
    }, {
      "id": "Observation.encounter",
      "min": 1,
      "path": "Observation.encounter",
      "short": "Encounter during which score was assessed",
      "definition": "The encounter context in which the score was determined",
      "mustSupport": true
    }, {
      "id": "Observation.effective[x]",
      "min": 1,
      "path": "Observation.effective[x]",
      "type": [ {
        "code": "dateTime"
      } ],
      "short": "Time of score assessment",
      "definition": "The time or time period when the score was assessed",
      "mustSupport": true
    }, {
      "id": "Observation.issued",
      "path": "Observation.issued",
      "short": "Date/Time this observation was made available",
      "mustSupport": true
    }, {
      "id": "Observation.performer",
      "path": "Observation.performer",
      "short": "Who performed the score assessment",
      "mustSupport": true
    }, {
      "id": "Observation.value[x]",
      "path": "Observation.value[x]",
      "type": [ {
        "code": "Quantity"
      }, {
        "code": "CodeableConcept"
      }, {
        "code": "integer"
      } ],
      "short": "Total score value",
      "comment": "Child profiles should constrain this further based on the specific score type",
      "definition": "The total score calculated. For numeric scores use integer or Quantity. For categorical results (e.g., positive/negative) use CodeableConcept.",
      "mustSupport": true
    }, {
      "id": "Observation.dataAbsentReason",
      "path": "Observation.dataAbsentReason",
      "short": "Why the score value is missing",
      "mustSupport": true
    }, {
      "id": "Observation.interpretation",
      "path": "Observation.interpretation",
      "short": "Clinical interpretation of the score",
      "definition": "Categorization of the score (e.g., mild, moderate, severe sedation for RASS)",
      "mustSupport": true
    }, {
      "id": "Observation.note",
      "path": "Observation.note",
      "short": "Comments about the score",
      "mustSupport": true
    }, {
      "id": "Observation.bodySite",
      "max": "0",
      "path": "Observation.bodySite"
    }, {
      "id": "Observation.specimen",
      "max": "0",
      "path": "Observation.specimen"
    }, {
      "id": "Observation.device",
      "path": "Observation.device",
      "short": "Device used for automated score calculation (if applicable)",
      "mustSupport": true
    }, {
      "id": "Observation.referenceRange",
      "path": "Observation.referenceRange",
      "short": "Reference range for score interpretation",
      "mustSupport": true
    }, {
      "id": "Observation.hasMember",
      "path": "Observation.hasMember",
      "short": "Related observations (e.g., individual assessment items)",
      "mustSupport": true
    }, {
      "id": "Observation.derivedFrom",
      "path": "Observation.derivedFrom",
      "short": "Source observations used to calculate score",
      "mustSupport": true
    }, {
      "id": "Observation.component",
      "path": "Observation.component",
      "short": "Subscore components",
      "definition": "Individual components or subscores that contribute to the total score. Child profiles should define specific components.",
      "mustSupport": true
    }, {
      "id": "Observation.component.code",
      "path": "Observation.component.code",
      "short": "Type of component/subscore",
      "mustSupport": true
    }, {
      "id": "Observation.component.value[x]",
      "path": "Observation.component.value[x]",
      "type": [ {
        "code": "Quantity"
      }, {
        "code": "CodeableConcept"
      }, {
        "code": "integer"
      } ],
      "short": "Subscore value",
      "mustSupport": true
    }, {
      "id": "Observation.component.dataAbsentReason",
      "path": "Observation.component.dataAbsentReason",
      "mustSupport": true
    }, {
      "id": "Observation.component.interpretation",
      "path": "Observation.component.interpretation",
      "mustSupport": true
    } ]
  },
  "contact": [ {
    "telecom": [ {
      "value": "https://www.medizininformatik-initiative.de",
      "system": "url"
    } ]
  } ],
  "baseDefinition": "http://hl7.org/fhir/StructureDefinition/Observation"
}