Skip to content

Encounter Profile

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

Defines the Encounter resource constraints for the Nexus EMR project (CII), conforming to CA-Core+ requirements.

Salient fields

The profile's synthesized-accessor contract: fields TypedFhir surfaces as first-class typed properties, each computed from the instance by a restricted FHIRPath expression. See Salient Fields for what they are, how they shape LLM contexts, and how to declare them.

Key Type Expression Rendered as Description
status code status Where the encounter is in its lifecycle i
visit_class code class.display \| class.code class Classification of patient encounter i
type coded type Encounter type with raw code support i
period dateTime period.start When the encounter started i
reason_code coded reasonCode Encounter reason with raw code support i
service_provider string serviceProvider.display Text alternative for the resource i

status

Short Where the encounter is in its lifecycle
Definition The current status of the encounter. Tracks the lifecycle of the encounter.
Comments This is a modifier element. The status affects how the encounter should be interpreted.
Expression status
Type code
Prose inherited from Encounter.status

visit_class

Short Classification of patient encounter
Definition Classification of patient encounter, from the required v3-ActEncounterCode binding. Ambulatory (AMB) is the common case and the expected default for a clinic visit. It is NOT fixed: a virtual encounter is VR and an admission is IMP, and writing AMB for either asserts something the record does not support.
Comments Map from the appointment's modality, where one is known. In-person becomes AMB; video, telephone and secure-message all become VR. That mapping is the one this guide states, and it is the reason this element is not fixed to AMB -- the modality axis exists precisely to distinguish a video consult from one in the room, and collapsing it here would leave that distinction living only on an extension of the Appointment, which not every Encounter has. A reader should NOT infer scope from the breadth of the binding. Nexus EMR encounters are predominantly ambulatory; IMP is admitted so that an admission a discharge summary refers to can be represented at all, not as a statement that inpatient workflows are modelled here.
Expression class.display | class.code
Type code
Prose inherited from Encounter.class

type

Short Encounter type with raw code support
Definition Specific type of encounter (e.g., consultation, follow-up, emergency). 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.
Comments Since there are many ways to further classify encounters, this element is 0..*.
Expression type
Type coded
Prose inherited from Encounter.type

period

Short When the encounter started
Definition The start of the period. The boundary is inclusive.
Comments If the low element is missing, the meaning is that the low boundary is not known.
Expression period.start
Type dateTime
Prose inherited from Encounter.period.start

reason_code

Short Encounter reason with raw code support
Definition Coded reason the encounter takes place. RECOMMENDED: SNOMED CT or other standard terminology 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.
Comments For systems that need to know which was the primary diagnosis, these will be marked with the standard extension primaryDiagnosis (which is a sequence value rather than a flag, 1 = primary diagnosis).
Expression reasonCode
Type coded
Prose inherited from Encounter.reasonCode

service_provider

Short Text alternative for the resource
Definition Plain text narrative that identifies the resource in addition to the resource reference.
Comments This is generally not the same as the Resource.text of the referenced resource. The purpose is to identify what's being referenced, not to fully describe it.
Expression serviceProvider.display
Type string
Prose inherited from Encounter.serviceProvider.display