eHealth Infrastructure
2021.3.0 - build

eHealth Infrastructure - Local Development build (v2021.3.0). See the Directory of published versions

Resource Profile: ehealth-clinicalimpression

Defining URL:http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-clinicalimpression
Version:2021.3.0
Name:ehealth-clinicalimpression
Status:Active as of 2021-11-25T09:32:14+00:00
Publisher:Systematic | Trifork
Source Resource:XML / JSON / Turtle

The official URL for this profile is:

http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-clinicalimpression

Introduction

A record of a clinical assessment performed to determine what problem(s) may affect the patient and before planning the treatments or management strategies that are best to manage a patient’s condition. Assessments are often 1:1 with a clinical consultation / encounter, but this varies greatly depending on the clinical workflow. This resource is called “ClinicalImpression” rather than “ClinicalAssessment” to avoid confusion with the recording of assessment tools such as Apgar score.

Scope and Usage

In scope of the eHealth Infrastructure, the ClinicalImpression resource is used for:

  • representing the result of automated processing such as triaging and decision support performed on submitted measurement(s)
  • representing a placeholder for subsequent Practitioner assessment. This ClinicalImpression instance is generated when no instance is otherwise created as per automated processing described above.
  • representing an assessment of a Practitioner such as approval and/or approval for publication in national document sharing

The element code specifies which of the above uses is the case.

The ClinicalImpression can refer to another ClinicalImpression through the element previous. It can also refer to measurement resources such as Observation, QuestionnaireResponse and Media through a number of investigation.item.

Use for Decision Support Result / Triaging Result

With the extension ehealth-clinicalimpression-decisionContext, the ClinicalImpression is able to capture decision support invocations such as the automated triaging. This entails:

  • decision rule identification in the form of a versioned reference to the Library containing the decision rule details including input and output parameter definitions
  • actual parameter values used at invocation, in the form of versioned references to resource(s), for instance input Observation

Use for Practitioner’s Assessment

The ClinicalImpression instance for the Practitioner assessment can refer to a ClinicalImpression instance of the other types through the element previous.

The element ehealth-clinicalimpression-decision contains the Practitioner’s assessment of the measurement/triaging result/decision support result, that is whether the measurement/result is approved and/or approved for publishing in national document sharing.

In case the Practitioner has comments or notes, these can be captured as one or more occurrences of the element note.text.

Required if CarePlan is known

  1. The ClinicalImpression.ehealth-clinicalimpression-careplan must be set when the ClinicalImpression references a resource that somewhere in the reference chain references a CarePlan.

    • For example, when a Practitioner assessment ClinicalImpression refers another ClinicalImpression through the element previous then it must also have the ehealth-clinicalimpression-careplan element set, referring the same CarePlan as the previous ClinicalImpression.
  2. A ClinicalImpression is not allowed to concern resources from different CarePlans, for example Observations from different CarePlans.

Formal Views of Profile Content

Description of Profiles, Differentials, Snapshots and how the different presentations work.

 

Other representations of profile: CSV, Excel, Schematron

Terminology Bindings

PathConformanceValueSet
ClinicalImpression.languagepreferredCommonLanguages
Max Binding: AllLanguages
ClinicalImpression.statusrequiredClinicalImpressionStatus
ClinicalImpression.statusReasonexample
ClinicalImpression.coderequiredClinicalImpressionCodes
ClinicalImpression.investigation.codeexampleInvestigationType
ClinicalImpression.finding.itemCodeableConceptrequiredClinicalImpressionFindingCodes
ClinicalImpression.prognosisCodeableConceptexampleClinicalImpressionPrognosis

Constraints

IdPathDetailsRequirements
dom-2ClinicalImpressionIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3ClinicalImpressionIf the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource
: contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
dom-4ClinicalImpressionIf a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated
: contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()
dom-5ClinicalImpressionIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6ClinicalImpressionA resource should have narrative for robust management
: text.`div`.exists()
ele-1ClinicalImpression.metaAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1ClinicalImpression.implicitRulesAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1ClinicalImpression.languageAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1ClinicalImpression.textAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1ClinicalImpression.extensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1ClinicalImpression.extensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1ClinicalImpression.extension:carePlanAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1ClinicalImpression.extension:carePlanMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1ClinicalImpression.extension:decisionContextAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1ClinicalImpression.extension:decisionContextMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1ClinicalImpression.extension:decisionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1ClinicalImpression.extension:decisionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1ClinicalImpression.extension:episodeOfCareAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1ClinicalImpression.extension:episodeOfCareMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1ClinicalImpression.modifierExtensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1ClinicalImpression.modifierExtensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1ClinicalImpression.identifierAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1ClinicalImpression.statusAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1ClinicalImpression.statusReasonAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1ClinicalImpression.codeAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1ClinicalImpression.descriptionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1ClinicalImpression.subjectAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1ClinicalImpression.encounterAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1ClinicalImpression.effective[x]All FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1ClinicalImpression.dateAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1ClinicalImpression.assessorAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1ClinicalImpression.previousAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1ClinicalImpression.problemAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1ClinicalImpression.investigationAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1ClinicalImpression.investigation.extensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1ClinicalImpression.investigation.extensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1ClinicalImpression.investigation.extension:mediaInvestigationItemAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1ClinicalImpression.investigation.extension:mediaInvestigationItemMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1ClinicalImpression.investigation.modifierExtensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1ClinicalImpression.investigation.modifierExtensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1ClinicalImpression.investigation.codeAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1ClinicalImpression.investigation.itemAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1ClinicalImpression.protocolAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1ClinicalImpression.summaryAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1ClinicalImpression.findingAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1ClinicalImpression.finding.extensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1ClinicalImpression.finding.extensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1ClinicalImpression.finding.modifierExtensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1ClinicalImpression.finding.modifierExtensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1ClinicalImpression.finding.itemCodeableConceptAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1ClinicalImpression.finding.itemReferenceAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1ClinicalImpression.finding.basisAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1ClinicalImpression.prognosisCodeableConceptAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1ClinicalImpression.prognosisReferenceAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1ClinicalImpression.supportingInfoAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1ClinicalImpression.noteAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1ClinicalImpression.note.extensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1ClinicalImpression.note.extensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1ClinicalImpression.note.author[x]All FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1ClinicalImpression.note.author[x]:authorReferenceAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1ClinicalImpression.note.author[x]:authorStringAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1ClinicalImpression.note.timeAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1ClinicalImpression.note.textAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())