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: DIPSPatient - Mappings

Draft as of 2026-11-10

Mappings for the DIPSPatient resource profile.

Mappings to Structures in this Implementation Guide

No Mappings Found

Mappings to other Structures

No Mappings Found

Other Mappings

NameRIM MappingCDA (R2)FiveWs Pattern MappingHL7 v2 MappingLOINC code for the elementdoco
Patient
Patient[classCode=PAT]
ClinicalDocument.recordTarget.patientRole
Patient / id
Patient / meta
Patient / meta / id
n/a
Patient / meta / extension
n/a
Patient / meta / versionId
Patient / meta / lastUpdated
Patient / meta / source
Patient / meta / profile
Patient / meta / Slices for security
Patient / meta / Slices for security / security:addressConfidentiality
Patient / meta / Slices for security / security:addressConfidentiality / id
n/a
Patient / meta / Slices for security / security:addressConfidentiality / extension
n/a
Patient / meta / Slices for security / security:addressConfidentiality / system
./codeSystem
C*E.3
Patient / meta / Slices for security / security:addressConfidentiality / version
./codeSystemVersion
C*E.7
Patient / meta / Slices for security / security:addressConfidentiality / code
./code
C*E.1
Patient / meta / Slices for security / security:addressConfidentiality / display
CV.displayName
C*E.2 - but note this is not well followed
Patient / meta / Slices for security / security:addressConfidentiality / userSelected
CD.codingRationale
Sometimes implied by being first
Patient / meta / tag
Patient / implicitRules
Patient / language
Patient / text
Act.text?
Patient / contained
N/A
Patient / Slices for extension
Patient / Slices for extension / extension:citizenship
Patient / Slices for extension / extension:deathRegisteredTime
N/A
Patient / Slices for extension / extension:deathComment
N/A
Patient / Slices for extension / extension:isUpdatedByPopulationRegister
N/A
Patient / Slices for extension / extension:deathRegisteredBy
N/A
Patient / Slices for extension / extension:hospitalSectorId
N/A
Patient / Slices for extension / extension:hospitalSectorName
N/A
Patient / modifierExtension
N/A
Patient / Slices for identifier
id
.id
FiveWs.identifier
PID-3
Patient / Slices for identifier / identifier:All Slices
Patient / Slices for identifier / identifier:All Slices / id
n/a
Patient / Slices for identifier / identifier:All Slices / extension
n/a
Patient / Slices for identifier / identifier:All Slices / use
Role.code or implied by context
N/A
Patient / Slices for identifier / identifier:All Slices / type
Role.code or implied by context
CX.5
Patient / Slices for identifier / identifier:All Slices / system
II.root or Role.id.root
CX.4 / EI-2-4
Patient / Slices for identifier / identifier:All Slices / value
II.extension or II.root if system indicates OID or GUID (Or Role.id.extension or root)
CX.1 / EI.1
Patient / Slices for identifier / identifier:All Slices / period
Role.effectiveTime or implied by context
CX.7 + CX.8
Patient / Slices for identifier / identifier:All Slices / 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)
Patient / Slices for identifier / identifier:FNR
id
.id
FiveWs.identifier
PID-3
Patient / Slices for identifier / identifier:FNR / id
n/a
Patient / Slices for identifier / identifier:FNR / extension
n/a
Patient / Slices for identifier / identifier:FNR / use
Role.code or implied by context
N/A
Patient / Slices for identifier / identifier:FNR / type
Role.code or implied by context
CX.5
Patient / Slices for identifier / identifier:FNR / system
II.root or Role.id.root
CX.4 / EI-2-4
Patient / Slices for identifier / identifier:FNR / value
II.extension or II.root if system indicates OID or GUID (Or Role.id.extension or root)
CX.1 / EI.1
Patient / Slices for identifier / identifier:FNR / period
Role.effectiveTime or implied by context
CX.7 + CX.8
Patient / Slices for identifier / identifier:FNR / 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)
Patient / Slices for identifier / identifier:FHN
id
.id
FiveWs.identifier
PID-3
Patient / Slices for identifier / identifier:FHN / id
n/a
Patient / Slices for identifier / identifier:FHN / extension
n/a
Patient / Slices for identifier / identifier:FHN / use
Role.code or implied by context
N/A
Patient / Slices for identifier / identifier:FHN / type
Role.code or implied by context
CX.5
Patient / Slices for identifier / identifier:FHN / system
II.root or Role.id.root
CX.4 / EI-2-4
Patient / Slices for identifier / identifier:FHN / value
II.extension or II.root if system indicates OID or GUID (Or Role.id.extension or root)
CX.1 / EI.1
Patient / Slices for identifier / identifier:FHN / period
Role.effectiveTime or implied by context
CX.7 + CX.8
Patient / Slices for identifier / identifier:FHN / 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)
Patient / Slices for identifier / identifier:DNR
id
.id
FiveWs.identifier
PID-3
Patient / Slices for identifier / identifier:DNR / id
n/a
Patient / Slices for identifier / identifier:DNR / extension
n/a
Patient / Slices for identifier / identifier:DNR / use
Role.code or implied by context
N/A
Patient / Slices for identifier / identifier:DNR / type
Role.code or implied by context
CX.5
Patient / Slices for identifier / identifier:DNR / system
II.root or Role.id.root
CX.4 / EI-2-4
Patient / Slices for identifier / identifier:DNR / value
II.extension or II.root if system indicates OID or GUID (Or Role.id.extension or root)
CX.1 / EI.1
Patient / Slices for identifier / identifier:DNR / period
Role.effectiveTime or implied by context
CX.7 + CX.8
Patient / Slices for identifier / identifier:DNR / 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)
Patient / Slices for identifier / identifier:HNR
id
.id
FiveWs.identifier
PID-3
Patient / Slices for identifier / identifier:HNR / id
n/a
Patient / Slices for identifier / identifier:HNR / extension
n/a
Patient / Slices for identifier / identifier:HNR / use
Role.code or implied by context
N/A
Patient / Slices for identifier / identifier:HNR / type
Role.code or implied by context
CX.5
Patient / Slices for identifier / identifier:HNR / type / id
n/a
Patient / Slices for identifier / identifier:HNR / type / extension
n/a
Patient / Slices for identifier / identifier:HNR / type / coding
  • union(.
  • ./translation)
  • C*E.1-8
  • C*E.10-22
Patient / Slices for identifier / identifier:HNR / type / coding / id
n/a
Patient / Slices for identifier / identifier:HNR / type / coding / extension
n/a
Patient / Slices for identifier / identifier:HNR / type / coding / system
./codeSystem
C*E.3
Patient / Slices for identifier / identifier:HNR / type / coding / version
./codeSystemVersion
C*E.7
Patient / Slices for identifier / identifier:HNR / type / coding / code
./code
C*E.1
Patient / Slices for identifier / identifier:HNR / type / coding / display
CV.displayName
C*E.2 - but note this is not well followed
Patient / Slices for identifier / identifier:HNR / type / coding / userSelected
CD.codingRationale
Sometimes implied by being first
Patient / Slices for identifier / identifier:HNR / type / text
./originalText[mediaType/code="text/plain"]/data
C*E.9. But note many systems use C*E.2 for this
Patient / Slices for identifier / identifier:HNR / system
II.root or Role.id.root
CX.4 / EI-2-4
Patient / Slices for identifier / identifier:HNR / value
II.extension or II.root if system indicates OID or GUID (Or Role.id.extension or root)
CX.1 / EI.1
Patient / Slices for identifier / identifier:HNR / period
Role.effectiveTime or implied by context
CX.7 + CX.8
Patient / Slices for identifier / identifier:HNR / 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)
Patient / Slices for identifier / identifier:patientId
id
.id
FiveWs.identifier
PID-3
Patient / Slices for identifier / identifier:patientId / id
n/a
Patient / Slices for identifier / identifier:patientId / extension
n/a
Patient / Slices for identifier / identifier:patientId / use
Role.code or implied by context
N/A
Patient / Slices for identifier / identifier:patientId / type
Role.code or implied by context
CX.5
Patient / Slices for identifier / identifier:patientId / system
II.root or Role.id.root
CX.4 / EI-2-4
Patient / Slices for identifier / identifier:patientId / value
II.extension or II.root if system indicates OID or GUID (Or Role.id.extension or root)
CX.1 / EI.1
Patient / Slices for identifier / identifier:patientId / period
Role.effectiveTime or implied by context
CX.7 + CX.8
Patient / Slices for identifier / identifier:patientId / 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)
Patient / active
statusCode
n/a
FiveWs.status
Patient / name
name
.patient.name
  • PID-5
  • PID-9
Patient / name / id
n/a
Patient / name / Slices for extension
Patient / name / Slices for extension / extension:middlename
Patient / name / use
unique(./use)
  • XPN.7
  • but often indicated by which field contains the name
Patient / name / text
./formatted
implied by XPN.11
Patient / name / family
./part[partType = FAM]
XPN.1/FN.1
Patient / name / given
./part[partType = GIV]
XPN.2 + XPN.3
Patient / name / prefix
./part[partType = PFX]
XPN.5
Patient / name / suffix
./part[partType = SFX]
XPN/4
Patient / name / period
./usablePeriod[type="IVL<TS>"]
XPN.13 + XPN.14
Patient / telecom
telecom
.telecom
  • PID-13
  • PID-14
  • PID-40
Patient / telecom / id
n/a
Patient / telecom / Slices for extension
n/a
Patient / telecom / Slices for extension / extension:DipsPatientPhoneTypeId
N/A
Patient / telecom / Slices for extension / extension:canReceiveSms
Patient / telecom / Slices for extension / extension:commentText
Patient / telecom / system
./scheme
XTN.3
Patient / telecom / value
./url
XTN.1 (or XTN.12)
Patient / telecom / use
unique(./use)
XTN.2 - but often indicated by field
Patient / telecom / rank
n/a
n/a
Patient / telecom / period
./usablePeriod[type="IVL<TS>"]
N/A
Patient / gender
player[classCode=PSN|ANM and determinerCode=INSTANCE]/administrativeGender
.patient.administrativeGenderCode
PID-8
Patient / birthDate
player[classCode=PSN|ANM and determinerCode=INSTANCE]/birthTime
.patient.birthTime
PID-7
21112-8
Patient / deceased[x]
  • player[classCode=PSN|ANM and determinerCode=INSTANCE]/deceasedInd
  • player[classCode=PSN|ANM and determinerCode=INSTANCE]/deceasedTime
n/a
PID-30 (bool) and PID-29 (datetime)
Patient / address
addr
.addr
PID-11
Patient / address / id
n/a
Patient / address / Slices for extension
Patient / address / Slices for extension / extension:official
Patient / address / Slices for extension / extension:urbanDistrict
Patient / address / Slices for extension / extension:propertyInformation
Patient / address / Slices for extension / extension:StateName
N/A
Patient / address / Slices for extension / extension:LastOfficialAddressSyncTime
Patient / address / use
unique(./use)
XAD.7
Patient / address / type
unique(./use)
XAD.18
Patient / address / text
./formatted
XAD.1 + XAD.2 + XAD.3 + XAD.4 + XAD.5 + XAD.6
Patient / address / line
AD.part[parttype = AL]
XAD.1 and XAD.2 have different meanings for a company address than for a person address)
Patient / address / city
AD.part[parttype = CTY]
XAD.3
Patient / address / district
AD.part[parttype = CNT | CPA]
XAD.9
Patient / address / district / id
Patient / address / district / Slices for extension
Patient / address / district / Slices for extension / extension:municipalitycode
N/A
Patient / address / district / Slices for extension / extension:municipality
N/A
Patient / address / district / value
Patient / address / state
AD.part[parttype = STA]
XAD.4
Patient / address / postalCode
AD.part[parttype = ZIP]
XAD.5
Patient / address / country
AD.part[parttype = CNT]
XAD.6
Patient / address / period
./usablePeriod[type="IVL<TS>"]
XAD.12 / XAD.13 + XAD.14
Patient / address / period / id
n/a
Patient / address / period / extension
n/a
Patient / address / period / start
./low
DR.1
Patient / address / period / end
./high
DR.2
Patient / maritalStatus
player[classCode=PSN]/maritalStatusCode
.patient.maritalStatusCode
PID-16
Patient / multipleBirth[x]
  • player[classCode=PSN|ANM and determinerCode=INSTANCE]/multipleBirthInd
  • player[classCode=PSN|ANM and determinerCode=INSTANCE]/multipleBirthOrderNumber
n/a
  • PID-24 (bool)
  • PID-25 (integer)
Patient / photo
player[classCode=PSN|ANM and determinerCode=INSTANCE]/desc
n/a
OBX-5 - needs a profile
Patient / contact
player[classCode=PSN|ANM and determinerCode=INSTANCE]/scopedRole[classCode=CON]
n/a
Patient / contact / id
n/a
Patient / contact / Slices for extension
Patient / contact / Slices for extension / extension:contactIdentifier
N/A
Patient / contact / Slices for extension / extension:contactPratitionerRoleName
N/A
Patient / contact / modifierExtension
N/A
Patient / contact / relationship
code
n/a
  • NK1-7
  • NK1-3
Patient / contact / relationship / id
n/a
Patient / contact / relationship / extension
n/a
Patient / contact / relationship / Slices for coding
  • union(.
  • ./translation)
  • C*E.1-8
  • C*E.10-22
Patient / contact / relationship / Slices for coding / coding:HCPFunctionInRelationToPatient
  • union(.
  • ./translation)
  • C*E.1-8
  • C*E.10-22
Patient / contact / relationship / Slices for coding / coding:HCPFunctionInRelationToPatient / id
n/a
Patient / contact / relationship / Slices for coding / coding:HCPFunctionInRelationToPatient / extension
n/a
Patient / contact / relationship / Slices for coding / coding:HCPFunctionInRelationToPatient / system
./codeSystem
C*E.3
Patient / contact / relationship / Slices for coding / coding:HCPFunctionInRelationToPatient / version
./codeSystemVersion
C*E.7
Patient / contact / relationship / Slices for coding / coding:HCPFunctionInRelationToPatient / code
./code
C*E.1
Patient / contact / relationship / Slices for coding / coding:HCPFunctionInRelationToPatient / display
CV.displayName
C*E.2 - but note this is not well followed
Patient / contact / relationship / Slices for coding / coding:HCPFunctionInRelationToPatient / userSelected
CD.codingRationale
Sometimes implied by being first
Patient / contact / relationship / text
./originalText[mediaType/code="text/plain"]/data
C*E.9. But note many systems use C*E.2 for this
Patient / contact / name
name
n/a
NK1-2
Patient / contact / telecom
telecom
n/a
  • NK1-5
  • NK1-6
  • NK1-40
Patient / contact / address
addr
n/a
NK1-4
Patient / contact / gender
player[classCode=PSN|ANM and determinerCode=INSTANCE]/administrativeGender
n/a
NK1-15
Patient / contact / organization
scoper
n/a
  • NK1-13
  • NK1-30
  • NK1-31
  • NK1-32
  • NK1-41
Patient / contact / period
effectiveTime
n/a
Patient / communication
LanguageCommunication
patient.languageCommunication
Patient / communication / id
n/a
Patient / communication / extension
n/a
Patient / communication / modifierExtension
N/A
Patient / communication / language
player[classCode=PSN|ANM and determinerCode=INSTANCE]/languageCommunication/code
.languageCode
  • PID-15
  • LAN-2
Patient / communication / language / id
n/a
Patient / communication / language / extension
n/a
Patient / communication / language / Slices for coding
  • union(.
  • ./translation)
  • C*E.1-8
  • C*E.10-22
Patient / communication / language / Slices for coding / coding:DipsCoding
  • union(.
  • ./translation)
  • C*E.1-8
  • C*E.10-22
Patient / communication / language / Slices for coding / coding:DipsCoding / id
n/a
Patient / communication / language / Slices for coding / coding:DipsCoding / Slices for extension
n/a
Patient / communication / language / Slices for coding / coding:DipsCoding / Slices for extension
Patient / communication / language / Slices for coding / coding:DipsCoding / Slices for extension / extension:LanguageId
Patient / communication / language / Slices for coding / coding:DipsCoding / Slices for extension / extension:LanguageId / id
n/a
Patient / communication / language / Slices for coding / coding:DipsCoding / Slices for extension / extension:LanguageId / extension
Patient / communication / language / Slices for coding / coding:DipsCoding / Slices for extension / extension:LanguageId / url
N/A
Patient / communication / language / Slices for coding / coding:DipsCoding / Slices for extension / extension:LanguageId / Slices for value[x]
N/A
Patient / communication / language / Slices for coding / coding:DipsCoding / Slices for extension / extension:LanguageId / Slices for value[x]
Patient / communication / language / Slices for coding / coding:DipsCoding / Slices for extension / extension:LanguageId / Slices for value[x] / value[x]:valueId
N/A
Patient / communication / language / Slices for coding / coding:DipsCoding / system
./codeSystem
C*E.3
Patient / communication / language / Slices for coding / coding:DipsCoding / version
./codeSystemVersion
C*E.7
Patient / communication / language / Slices for coding / coding:DipsCoding / code
./code
C*E.1
Patient / communication / language / Slices for coding / coding:DipsCoding / display
CV.displayName
C*E.2 - but note this is not well followed
Patient / communication / language / Slices for coding / coding:DipsCoding / userSelected
CD.codingRationale
Sometimes implied by being first
Patient / communication / language / Slices for coding / coding:ISOCoding
  • union(.
  • ./translation)
  • C*E.1-8
  • C*E.10-22
Patient / communication / language / Slices for coding / coding:ISOCoding / id
n/a
Patient / communication / language / Slices for coding / coding:ISOCoding / extension
n/a
Patient / communication / language / Slices for coding / coding:ISOCoding / system
./codeSystem
C*E.3
Patient / communication / language / Slices for coding / coding:ISOCoding / version
./codeSystemVersion
C*E.7
Patient / communication / language / Slices for coding / coding:ISOCoding / code
./code
C*E.1
Patient / communication / language / Slices for coding / coding:ISOCoding / display
CV.displayName
C*E.2 - but note this is not well followed
Patient / communication / language / Slices for coding / coding:ISOCoding / userSelected
CD.codingRationale
Sometimes implied by being first
Patient / communication / language / text
./originalText[mediaType/code="text/plain"]/data
C*E.9. But note many systems use C*E.2 for this
Patient / communication / preferred
preferenceInd
.preferenceInd
PID-15
Patient / generalPractitioner
subjectOf.CareEvent.performer.AssignedEntity
n/a
PD1-4
Patient / managingOrganization
scoper
.providerOrganization
Patient / link
outboundLink
n/a
Patient / link / id
n/a
Patient / link / extension
n/a
Patient / link / modifierExtension
N/A
Patient / link / other
id
n/a
  • PID-3
  • MRG-1
Patient / link / type
typeCode
n/a

doco Documentation for this format