Skip to content

ClinicalImpression Profile

Canonical../StructureDefinition/nexus-emr-core-clinicalimpression
Statusdraft · 1.26.0
BaseClinicalImpression (constraint)
SourceFSH · JSON

Nexus EMR profile for ClinicalImpression capturing the Assessment section of a SOAP encounter note. Purpose: export assessment text. Should be exported by EMRs that have the ability to parse the 'A' text out of a SOAP note.

FSH

The authored source of truth: resources/StructureDefinition-nexus-emr-core-clinicalimpression.fsh (edit on GitHub). One FSH file may define several related artifacts.

// StructureDefinition-nexus-emr-clinicalimpression.fsh

Alias: $NexusEmrCoreClinicalImpression = ../StructureDefinition/nexus-emr-core-clinicalimpression

// Invariant: Nexus EMR identifier requirement

// Profile Definition
Profile:        NexusEmrCoreClinicalImpression
Parent:         ClinicalImpression
Id:             nexus-emr-core-clinicalimpression
Title:          "ClinicalImpression Profile"
Description:    "Nexus EMR profile for ClinicalImpression capturing the Assessment section of a SOAP encounter note. Purpose: export assessment text. Should be exported by EMRs that have the ability to parse the 'A' text out of a SOAP note."
// THE effective date for this profile (see the EffectiveDate / NoEffectiveDate
// RuleSets): one date concept per resource, declared here rather than guessed.
* insert EffectiveDate([[effectiveDateTime | effectivePeriod.start | date]])

// SMART on FHIR exposure -- this resource is reachable by an app, and these are the
// permissions each operation costs (see SmartExposed + the SmartExposed RuleSet).
* insert SmartExposed(clinicalimpression)

* ^url = $NexusEmrCoreClinicalImpression
* ^status = #draft
* insert NoResourceNoteExtension

* meta.source 0..1 MS
* meta.source ^short = "Identifies EMR instance & pipeline version the resource came from"
* meta.source ^definition = "A URI that identifies the EMR pipeline and version from which this resource originated.  This tells you which EMR instance (recommend using the instance identifier), and the version of the pipeline code/transformations."

// Element Constraints

// Identifier: Unique Nexus EMR identifier
* identifier 0..* MS
* identifier.system 1..1
* identifier.value 1..1
* identifier ^short = "Business identifier(s) for clinicalimpression"
* identifier ^definition = """
Unique identifiers for the clinicalimpression.

A business identifier is recommended but not required (identifier is 0..*). Where available, carry the source-system identifier using the most appropriate system URI. No specific canonical system is mandated.

A source system's own identifier SHOULD be carried alongside this one, flagged `use = secondary`. See [Carrying the raw code](../guide/patterns/raw-codes.md).
"""


// Status: Required status code
* status 1..1 MS
* status ^short = "preparation | in-progress | not-done | on-hold | stopped | completed | entered-in-error"
* status ^definition = "The status of the ClinicalImpression. Indicates whether the assessment is in progress, completed, or entered in error."
* status ^comment = "This is a modifier element. The status affects how the clinical impression should be interpreted."
* status from http://hl7.org/fhir/ValueSet/clinicalimpression-status (required)

// Code: Kind of assessment performed
* code 0..1 MS
* code ^short = "Assessment type with raw code support"
* code ^definition = """
Kind of assessment performed.

RECOMMENDED: Standard terminology codes when available
OPTIONAL: Raw EMR codes for source system preservation

Where this code was mapped from a source system's own vocabulary, carry the raw coding alongside the mapped one, flagged `userSelected = true`. See [Carrying the raw code](../guide/patterns/raw-codes.md).
"""


// Subject: Patient under assessment
* subject 1..1 MS
* subject ^short = "Patient being assessed"
* subject ^definition = "The patient who is the subject of this clinical impression. Must reference using Nexus EMR patient identifier."
* subject ^comment = "References should use identifier-based references following Nexus EMR patterns."
* subject only Reference($NexusEmrCorePatient)

// Date: When recorded
* date 1..1 MS
* date ^short = "When assessment was recorded"
* date ^definition = "The date and time when the clinical impression was recorded in the system."
* date ^comment = "This is when the assessment was documented, not necessarily when the clinical encounter occurred."

// Description: Assessment text
* description 1..1 MS
* description ^short = "Assessment narrative from SOAP note"
* description ^definition = "Free-text Assessment ('A') section of the SOAP encounter note. Contains the clinician's assessment and clinical reasoning."
* description ^comment = "This is the primary content - the assessment portion extracted from SOAP documentation."

// Encounter: Optional link to Encounter
* encounter 0..1 MS
* encounter ^short = "Encounter during which assessment was made"
* encounter ^definition = "The encounter during which this clinical impression was created. Optional but provides important clinical context."
* encounter ^comment = "Linking to encounter helps establish when and where the assessment occurred."
* encounter only Reference(NexusEmrCoreEncounter)