DIPS Core Implementation Guide
0.1.0 - ci-build Norway

DIPS Core Implementation Guide - Local Development build (v0.1.0) built by the FHIR (HL7® FHIR® Standard) Build Tools. See the Directory of published versions

Resource Profile: DIPSR4Encounter - Mappings

Draft as of 2026-11-10

Mappings for the DIPSR4Encounter resource profile.

Mappings to Structures in this Implementation Guide

No Mappings Found

Mappings to other Structures

No Mappings Found

Other Mappings

NameWorkflow PatternRIM MappingFiveWs Pattern MappingHL7 v2 Mappingdoco
Encounter
Event
Encounter[@moodCode='EVN']
Encounter / id
Encounter / meta
Encounter / meta / id
n/a
Encounter / meta / extension
n/a
Encounter / meta / versionId
Encounter / meta / lastUpdated
Encounter / meta / source
Encounter / meta / profile
Encounter / meta / security
Encounter / meta / security / id
n/a
Encounter / meta / security / extension
n/a
Encounter / meta / security / system
./codeSystem
C*E.3
Encounter / meta / security / version
./codeSystemVersion
C*E.7
Encounter / meta / security / code
./code
C*E.1
Encounter / meta / security / display
CV.displayName
C*E.2 - but note this is not well followed
Encounter / meta / security / userSelected
CD.codingRationale
Sometimes implied by being first
Encounter / meta / tag
Encounter / meta / tag / id
n/a
Encounter / meta / tag / extension
n/a
Encounter / meta / tag / system
./codeSystem
C*E.3
Encounter / meta / tag / version
./codeSystemVersion
C*E.7
Encounter / meta / tag / code
./code
C*E.1
Encounter / meta / tag / display
CV.displayName
C*E.2 - but note this is not well followed
Encounter / meta / tag / userSelected
CD.codingRationale
Sometimes implied by being first
Encounter / implicitRules
Encounter / language
Encounter / text
Act.text?
Encounter / contained
N/A
Encounter / Slices for extension
Encounter / Slices for extension / extension:ReferredBy
N/A
Encounter / Slices for extension / extension:DiagnoseGroup
N/A
Encounter / Slices for extension / extension:PlannedContactEndTime
N/A
Encounter / Slices for extension / extension:Termination
N/A
Encounter / Slices for extension / extension:VideoUrl
N/A
Encounter / Slices for extension / extension:DIPSLocation
N/A
Encounter / Slices for extension / extension:departmentId
N/A
Encounter / Slices for extension / extension:Sectionid
N/A
Encounter / Slices for extension / extension:Reminder
N/A
Encounter / modifierExtension
N/A
Encounter / Slices for identifier
Event.identifier
.id
FiveWs.identifier
PV1-19
Encounter / Slices for identifier / identifier:DIPS_Episode_of_CareID
Event.identifier
.id
FiveWs.identifier
PV1-19
Encounter / Slices for identifier / identifier:DIPS_Episode_of_CareID / id
n/a
Encounter / Slices for identifier / identifier:DIPS_Episode_of_CareID / extension
n/a
Encounter / Slices for identifier / identifier:DIPS_Episode_of_CareID / use
Role.code or implied by context
N/A
Encounter / Slices for identifier / identifier:DIPS_Episode_of_CareID / type
Role.code or implied by context
CX.5
Encounter / Slices for identifier / identifier:DIPS_Episode_of_CareID / system
II.root or Role.id.root
CX.4 / EI-2-4
Encounter / Slices for identifier / identifier:DIPS_Episode_of_CareID / value
II.extension or II.root if system indicates OID or GUID (Or Role.id.extension or root)
CX.1 / EI.1
Encounter / Slices for identifier / identifier:DIPS_Episode_of_CareID / period
Role.effectiveTime or implied by context
CX.7 + CX.8
Encounter / Slices for identifier / identifier:DIPS_Episode_of_CareID / assigner
II.assigningAuthorityName but note that this is an improper use by the definition of the field. Also Role.scoper
  • CX.4 / (CX.4
  • CX.9
  • CX.10)
Encounter / Slices for identifier / identifier:DIPSBookingId
Event.identifier
.id
FiveWs.identifier
PV1-19
Encounter / Slices for identifier / identifier:DIPSBookingId / id
n/a
Encounter / Slices for identifier / identifier:DIPSBookingId / extension
n/a
Encounter / Slices for identifier / identifier:DIPSBookingId / use
Role.code or implied by context
N/A
Encounter / Slices for identifier / identifier:DIPSBookingId / type
Role.code or implied by context
CX.5
Encounter / Slices for identifier / identifier:DIPSBookingId / system
II.root or Role.id.root
CX.4 / EI-2-4
Encounter / Slices for identifier / identifier:DIPSBookingId / value
II.extension or II.root if system indicates OID or GUID (Or Role.id.extension or root)
CX.1 / EI.1
Encounter / Slices for identifier / identifier:DIPSBookingId / period
Role.effectiveTime or implied by context
CX.7 + CX.8
Encounter / Slices for identifier / identifier:DIPSBookingId / assigner
II.assigningAuthorityName but note that this is an improper use by the definition of the field. Also Role.scoper
  • CX.4 / (CX.4
  • CX.9
  • CX.10)
Encounter / Slices for identifier / identifier:DIPSPlannedContactId
Event.identifier
.id
FiveWs.identifier
PV1-19
Encounter / Slices for identifier / identifier:DIPSPlannedContactId / id
n/a
Encounter / Slices for identifier / identifier:DIPSPlannedContactId / extension
n/a
Encounter / Slices for identifier / identifier:DIPSPlannedContactId / use
Role.code or implied by context
N/A
Encounter / Slices for identifier / identifier:DIPSPlannedContactId / type
Role.code or implied by context
CX.5
Encounter / Slices for identifier / identifier:DIPSPlannedContactId / system
II.root or Role.id.root
CX.4 / EI-2-4
Encounter / Slices for identifier / identifier:DIPSPlannedContactId / value
II.extension or II.root if system indicates OID or GUID (Or Role.id.extension or root)
CX.1 / EI.1
Encounter / Slices for identifier / identifier:DIPSPlannedContactId / period
Role.effectiveTime or implied by context
CX.7 + CX.8
Encounter / Slices for identifier / identifier:DIPSPlannedContactId / assigner
II.assigningAuthorityName but note that this is an improper use by the definition of the field. Also Role.scoper
  • CX.4 / (CX.4
  • CX.9
  • CX.10)
Encounter / status
Event.status
.statusCode
FiveWs.status
  • No clear equivalent in HL7 v2; active/finished could be inferred from PV1-44
  • PV1-45
  • PV2-24; inactive could be inferred from PV2-16
Encounter / statusHistory
n/a
Encounter / class
.inboundRelationship[typeCode=SUBJ].source[classCode=LIST].code
FiveWs.class
PV1-2
Encounter / class / id
n/a
Encounter / class / extension
n/a
Encounter / class / system
./codeSystem
C*E.3
Encounter / class / version
./codeSystemVersion
C*E.7
Encounter / class / code
./code
C*E.1
Encounter / class / display
CV.displayName
C*E.2 - but note this is not well followed
Encounter / class / userSelected
CD.codingRationale
Sometimes implied by being first
Encounter / classHistory
n/a
Encounter / Slices for type
Event.code
.code
FiveWs.class
PV1-4 / PV1-18
Encounter / Slices for type / type:NprLevelOfCare
Event.code
.code
FiveWs.class
PV1-4 / PV1-18
Encounter / Slices for type / type:NprLevelOfCare / id
n/a
Encounter / Slices for type / type:NprLevelOfCare / extension
n/a
Encounter / Slices for type / type:NprLevelOfCare / Slices for coding
  • union(.
  • ./translation)
  • C*E.1-8
  • C*E.10-22
Encounter / Slices for type / type:NprLevelOfCare / Slices for coding
Encounter / Slices for type / type:NprLevelOfCare / Slices for coding / coding:DipsNprLevelOfCareCodeId
  • union(.
  • ./translation)
  • C*E.1-8
  • C*E.10-22
Encounter / Slices for type / type:NprLevelOfCare / Slices for coding / coding:DipsNprLevelOfCareCodeId / id
n/a
Encounter / Slices for type / type:NprLevelOfCare / Slices for coding / coding:DipsNprLevelOfCareCodeId / extension
n/a
Encounter / Slices for type / type:NprLevelOfCare / Slices for coding / coding:DipsNprLevelOfCareCodeId / system
./codeSystem
C*E.3
Encounter / Slices for type / type:NprLevelOfCare / Slices for coding / coding:DipsNprLevelOfCareCodeId / version
./codeSystemVersion
C*E.7
Encounter / Slices for type / type:NprLevelOfCare / Slices for coding / coding:DipsNprLevelOfCareCodeId / code
./code
C*E.1
Encounter / Slices for type / type:NprLevelOfCare / Slices for coding / coding:DipsNprLevelOfCareCodeId / display
CV.displayName
C*E.2 - but note this is not well followed
Encounter / Slices for type / type:NprLevelOfCare / Slices for coding / coding:DipsNprLevelOfCareCodeId / userSelected
CD.codingRationale
Sometimes implied by being first
Encounter / Slices for type / type:NprLevelOfCare / Slices for coding / coding:NprLevelOfCareVolvenCode
  • union(.
  • ./translation)
  • C*E.1-8
  • C*E.10-22
Encounter / Slices for type / type:NprLevelOfCare / Slices for coding / coding:NprLevelOfCareVolvenCode / id
n/a
Encounter / Slices for type / type:NprLevelOfCare / Slices for coding / coding:NprLevelOfCareVolvenCode / extension
n/a
Encounter / Slices for type / type:NprLevelOfCare / Slices for coding / coding:NprLevelOfCareVolvenCode / system
./codeSystem
C*E.3
Encounter / Slices for type / type:NprLevelOfCare / Slices for coding / coding:NprLevelOfCareVolvenCode / version
./codeSystemVersion
C*E.7
Encounter / Slices for type / type:NprLevelOfCare / Slices for coding / coding:NprLevelOfCareVolvenCode / code
./code
C*E.1
Encounter / Slices for type / type:NprLevelOfCare / Slices for coding / coding:NprLevelOfCareVolvenCode / display
CV.displayName
C*E.2 - but note this is not well followed
Encounter / Slices for type / type:NprLevelOfCare / Slices for coding / coding:NprLevelOfCareVolvenCode / userSelected
CD.codingRationale
Sometimes implied by being first
Encounter / Slices for type / type:NprLevelOfCare / text
./originalText[mediaType/code="text/plain"]/data
C*E.9. But note many systems use C*E.2 for this
Encounter / Slices for type / type:ContactType
Event.code
.code
FiveWs.class
PV1-4 / PV1-18
Encounter / Slices for type / type:ContactType / id
n/a
Encounter / Slices for type / type:ContactType / extension
n/a
Encounter / Slices for type / type:ContactType / Slices for coding
  • union(.
  • ./translation)
  • C*E.1-8
  • C*E.10-22
Encounter / Slices for type / type:ContactType / Slices for coding
Encounter / Slices for type / type:ContactType / Slices for coding / coding:DipsContactTypeCodeId
  • union(.
  • ./translation)
  • C*E.1-8
  • C*E.10-22
Encounter / Slices for type / type:ContactType / Slices for coding / coding:DipsContactTypeCodeId / id
n/a
Encounter / Slices for type / type:ContactType / Slices for coding / coding:DipsContactTypeCodeId / extension
n/a
Encounter / Slices for type / type:ContactType / Slices for coding / coding:DipsContactTypeCodeId / system
./codeSystem
C*E.3
Encounter / Slices for type / type:ContactType / Slices for coding / coding:DipsContactTypeCodeId / version
./codeSystemVersion
C*E.7
Encounter / Slices for type / type:ContactType / Slices for coding / coding:DipsContactTypeCodeId / code
./code
C*E.1
Encounter / Slices for type / type:ContactType / Slices for coding / coding:DipsContactTypeCodeId / display
CV.displayName
C*E.2 - but note this is not well followed
Encounter / Slices for type / type:ContactType / Slices for coding / coding:DipsContactTypeCodeId / userSelected
CD.codingRationale
Sometimes implied by being first
Encounter / Slices for type / type:ContactType / Slices for coding / coding:ContactTypeVolvenCode
  • union(.
  • ./translation)
  • C*E.1-8
  • C*E.10-22
Encounter / Slices for type / type:ContactType / Slices for coding / coding:ContactTypeVolvenCode / id
n/a
Encounter / Slices for type / type:ContactType / Slices for coding / coding:ContactTypeVolvenCode / extension
n/a
Encounter / Slices for type / type:ContactType / Slices for coding / coding:ContactTypeVolvenCode / system
./codeSystem
C*E.3
Encounter / Slices for type / type:ContactType / Slices for coding / coding:ContactTypeVolvenCode / version
./codeSystemVersion
C*E.7
Encounter / Slices for type / type:ContactType / Slices for coding / coding:ContactTypeVolvenCode / code
./code
C*E.1
Encounter / Slices for type / type:ContactType / Slices for coding / coding:ContactTypeVolvenCode / display
CV.displayName
C*E.2 - but note this is not well followed
Encounter / Slices for type / type:ContactType / Slices for coding / coding:ContactTypeVolvenCode / userSelected
CD.codingRationale
Sometimes implied by being first
Encounter / Slices for type / type:ContactType / text
./originalText[mediaType/code="text/plain"]/data
C*E.9. But note many systems use C*E.2 for this
Encounter / serviceType
Event.code
n/a
PV1-10
Encounter / priority
.priorityCode
FiveWs.grade
PV2-25
Encounter / subject
Event.subject
.participation[typeCode=SBJ]/role[classCode=PAT]
FiveWs.subject
PID-3
Encounter / episodeOfCare
Event.context
n/a
FiveWs.context
  • PV1-54
  • PV1-53
Encounter / basedOn
Event.basedOn
.reason.ClinicalDocument
Encounter / basedOn / id
n/a
Encounter / basedOn / extension
n/a
Encounter / basedOn / reference
N/A
Encounter / basedOn / type
N/A
Encounter / basedOn / identifier
.identifier
Encounter / basedOn / display
N/A
Encounter / participant
Event.performer
.participation[typeCode=PFM]
ROL
Encounter / participant / id
n/a
Encounter / participant / extension
n/a
Encounter / participant / modifierExtension
N/A
Encounter / participant / type
Event.performer.function
.functionCode
ROL-3 (or maybe PRT-4)
Encounter / participant / type / id
n/a
Encounter / participant / type / extension
n/a
Encounter / participant / type / coding
  • union(.
  • ./translation)
  • C*E.1-8
  • C*E.10-22
Encounter / participant / type / coding / id
n/a
Encounter / participant / type / coding / extension
n/a
Encounter / participant / type / coding / system
./codeSystem
C*E.3
Encounter / participant / type / coding / version
./codeSystemVersion
C*E.7
Encounter / participant / type / coding / code
./code
C*E.1
Encounter / participant / type / coding / display
CV.displayName
C*E.2 - but note this is not well followed
Encounter / participant / type / coding / userSelected
CD.codingRationale
Sometimes implied by being first
Encounter / participant / type / text
./originalText[mediaType/code="text/plain"]/data
C*E.9. But note many systems use C*E.2 for this
Encounter / participant / period
.time
  • ROL-5
  • ROL-6 (or maybe PRT-5)
Encounter / participant / individual
Event.performer.actor
.role
FiveWs.who
ROL-4
Encounter / appointment
Event.basedOn
  • .outboundRelationship[typeCode=FLFS].target[classCode=ENC
  • moodCode=APT]
SCH-1 / SCH-2
Encounter / appointment / id
n/a
Encounter / appointment / extension
n/a
Encounter / appointment / reference
N/A
Encounter / appointment / type
N/A
Encounter / appointment / identifier
.identifier
Encounter / appointment / display
N/A
Encounter / period
Event.occurrence[x]
.effectiveTime (low & high)
FiveWs.done[x]
  • PV1-44
  • PV1-45
Encounter / period / id
n/a
Encounter / period / extension
n/a
Encounter / period / start
./low
DR.1
Encounter / period / end
./high
DR.2
Encounter / length
Event.occurrence[x]
.lengthOfStayQuantity
(PV1-45 less PV1-44) iff ( (PV1-44 not empty) and (PV1-45 not empty) ); units in minutes
Encounter / reasonCode
Event.reasonCode
.reasonCode
FiveWs.why[x]
PV2-3 is nominally constrained to inpatient admissions; HL7 v2 makes no vocabulary suggestions for PV2-3; would not expect PV2 segment or PV2-3 to be in use in all implementations )
Encounter / reasonCode / id
n/a
Encounter / reasonCode / extension
n/a
Encounter / reasonCode / coding
  • union(.
  • ./translation)
  • C*E.1-8
  • C*E.10-22
Encounter / reasonCode / text
./originalText[mediaType/code="text/plain"]/data
C*E.9. But note many systems use C*E.2 for this
Encounter / reasonReference
Event.reasonCode
.reasonCode
FiveWs.why[x]
PV2-3 is nominally constrained to inpatient admissions; HL7 v2 makes no vocabulary suggestions for PV2-3; would not expect PV2 segment or PV2-3 to be in use in all implementations )
Encounter / diagnosis
.outboundRelationship[typeCode=RSON]
Encounter / account
.pertains.A_Account
Encounter / hospitalization
  • .outboundRelationship[typeCode=COMP].target[classCode=ENC
  • moodCode=EVN]
Encounter / location
.participation[typeCode=LOC]
Encounter / location / id
n/a
Encounter / location / Slices for extension
Encounter / location / Slices for extension / extension:bedTime
Encounter / location / modifierExtension
N/A
Encounter / location / location
Event.location
.role
FiveWs.where[x]
PV1-3 / PV1-6 / PV1-11 / PV1-42 / PV1-43
Encounter / location / location / id
n/a
Encounter / location / location / extension
n/a
Encounter / location / location / reference
N/A
Encounter / location / location / type
N/A
Encounter / location / location / identifier
.identifier
Encounter / location / location / display
N/A
Encounter / location / status
.role.statusCode
Encounter / location / physicalType
Encounter / location / physicalType / id
n/a
Encounter / location / physicalType / extension
n/a
Encounter / location / physicalType / coding
  • union(.
  • ./translation)
  • C*E.1-8
  • C*E.10-22
Encounter / location / physicalType / coding / id
n/a
Encounter / location / physicalType / coding / extension
n/a
Encounter / location / physicalType / coding / system
./codeSystem
C*E.3
Encounter / location / physicalType / coding / version
./codeSystemVersion
C*E.7
Encounter / location / physicalType / coding / code
./code
C*E.1
Encounter / location / physicalType / coding / display
CV.displayName
C*E.2 - but note this is not well followed
Encounter / location / physicalType / coding / userSelected
CD.codingRationale
Sometimes implied by being first
Encounter / location / physicalType / text
./originalText[mediaType/code="text/plain"]/data
C*E.9. But note many systems use C*E.2 for this
Encounter / location / period
.time
Encounter / serviceProvider
Event.performer.actor
.particiaption[typeCode=PFM].role
PL.6 & PL.1
Encounter / partOf
Event.partOf
  • .inboundRelationship[typeCode=COMP].source[classCode=COMP
  • moodCode=EVN]
Encounter / partOf / id
n/a
Encounter / partOf / extension
n/a
Encounter / partOf / reference
N/A
Encounter / partOf / type
N/A
Encounter / partOf / identifier
.identifier
Encounter / partOf / display
N/A

doco Documentation for this format