HL7 FHIR Implementation Guide: DK Core
3.5.0 - ci-build Denmark flag

HL7 FHIR Implementation Guide: DK Core, published by HL7 Denmark. This guide is not an authorized publication; it is the continuous build for version 3.5.0 built by the FHIR (HL7® FHIR® Standard) CI Build. This version is based on the current content of https://github.com/hl7dk/dk-core/ and changes regularly. See the Directory of published versions

Resource Profile: DkCoreDocumentReference - Mappings

Draft as of 2025-08-20

Mappings for the dk-core-documentreference resource profile.

Mappings to Structures in this Implementation Guide

No Mappings Found

Mappings to other Structures

No Mappings Found

Other Mappings

NameXDS and MHD MappingWorkflow PatternFHIR CompositionRIM MappingCDA (R2)FiveWs Pattern MappingHL7 v2 MappingXDS metadata equivalentdoco
.. DocumentReference
Used in the context of the IHE MHD ImplementationGuide
Event
when describing a Composition
Document[classCode="DOC" and moodCode="EVN"]
when describing a CDA
... id
... meta
.... id
n/a
.... extension
n/a
.... versionId
.... lastUpdated
.... source
.... profile
DocumentEntry.limitedMetadata
.... security
.... tag
... implicitRules
... text
Act.text?
... contained
N/A
... Slices for extension
.... extension:version
N/A
... modifierExtension
... masterIdentifier
DocumentEntry.uniqueId
II - The Identifier class is a little looser than the v3 type II because it allows URIs as well as registered OIDs or GUIDs. Also maps to Role[classCode=IDENT]
  • CX / EI (occasionally
  • more often EI maps to a resource id or a URL)
... Slices for identifier
DocumentEntry.entryUUID
Event.identifier
.id / .setId
FiveWs.identifier
TXA-16?
DocumentEntry.entryUUID
.... identifier:entryUUID
II - The Identifier class is a little looser than the v3 type II because it allows URIs as well as registered OIDs or GUIDs. Also maps to Role[classCode=IDENT]
  • CX / EI (occasionally
  • more often EI maps to a resource id or a URL)
... status
DocumentEntry.availabilityStatus
Event.status
  • .completionCode="IN" & ./statusCode[isNormalDatatype()]="active"; final: .completionCode="AU" && ./statusCode[isNormalDatatype()]="complete" and not(./inboundRelationship[typeCode="SUBJ" and isNormalActRelationship()]/source[subsumesCode("ActClass#CACT") and moodCode="EVN" and domainMember("ReviseDocument"
  • .completionCode="AU" && ./statusCode[isNormalDatatype()]="complete" and ./inboundRelationship[typeCode="SUBJ" and isNormalActRelationship()]/source[subsumesCode("ActClass#CACT") and moodCode="EVN" and domainMember("ReviseDocument"
  • .completionCode=NI && ./statusCode[isNormalDatatype()]="obsolete"
FiveWs.status
TXA-19
DocumentEntry.availabilityStatus
... docStatus
Composition.status
.statusCode
FiveWs.status
TXA-17
... type
DocumentEntry.typeCode
Event.code
Composition.type
./code
  • ClinicalDocument/code/@code The typeCode should be mapped from the ClinicalDocument/code element to a set of document type codes configured in the affinity domain. One suggested coding system to use for typeCode is LOINC
  • in which case the mapping step can be omitted.
FiveWs.class
TXA-2
DocumentEntry.type
... category
DocumentEntry.classCode
Composition.class
  • .outboundRelationship[typeCode="COMP].target[classCode="LIST"
  • moodCode="EVN"].code
  • Derived from a mapping of /ClinicalDocument/code/@code to an Affinity Domain specified coded value to use and coding system. Affinity Domains are encouraged to use the appropriate value for Type of Service
  • based on the LOINC Type of Service (see Page 53 of the LOINC User's Manual). Must be consistent with /ClinicalDocument/code/@code
FiveWs.class
DocumentEntry.class
... subject
DocumentEntry.patientId
Event.subject
Composition.subject
.participation[typeCode="SBJ"].role[typeCode="PAT"]
ClinicalDocument/recordTarget/
FiveWs.subject
PID-3 (No standard way to define a Practitioner or Group subject in HL7 v2 MDM message)
DocumentEntry.patientId
... date
Event.occurrence[x]
Composition.date
.availabilityTime[type="TS"]
FiveWs.recorded
... author
DocumentEntry.author
Event.performer.actor
Composition.author
.participation[typeCode="AUT"].role[classCode="ASSIGNED"]
ClinicalDocument/author
TXA-9 (No standard way to indicate a Device in HL7 v2 MDM message)
DocumentEntry.author
... authenticator
DocumentEntry.legalAuthenticator
Event.performer.actor
Composition.attester
.participation[typeCode="AUTHEN"].role[classCode="ASSIGNED"]
ClinicalDocument/legalAuthenticator
FiveWs.witness
TXA-10
DocumentEntry.legalAuthenticator
... custodian
not mapped
Event.performer.actor
Composition.custodian
.participation[typeCode="RCV"].role[classCode="CUST"].scoper[classCode="ORG" and determinerCode="INST"]
... relatesTo
DocumentEntry Associations
Composition.relatesTo
.outboundRelationship
DocumentEntry Associations
.... id
n/a
.... extension
n/a
.... modifierExtension
N/A
.... code
DocumentEntry Associations.type
Composition.relatesTo.code
.outboundRelationship.typeCode
DocumentEntry Associations type
.... target
DocumentEntry Associations.reference
Composition.relatesTo.target
  • .target[classCode="DOC"
  • moodCode="EVN"].id
DocumentEntry Associations reference
... description
DocumentEntry.comments
.outboundRelationship[typeCode="SUBJ"].target.text
TXA-25
DocumentEntry.comments
... securityLabel
DocumentEntry.confidentialityCode
  • Composition.confidentiality
  • Composition.meta.security
.confidentialityCode
ClinicalDocument/confidentialityCode/@code
TXA-18
DocumentEntry.confidentialityCode
... content
Bundle(Composition+*)
document.text
.... id
n/a
.... extension
n/a
.... modifierExtension
N/A
.... attachment
  • Composition.language
  • Composition.title
  • Composition.date
document.text
  • ClinicalDocument/languageCode
  • ClinicalDocument/title
  • ClinicalDocument/date
TXA-3 for mime type
  • DocumentEntry.mimeType
  • DocumentEntry.languageCode
  • DocumentEntry.URI
  • DocumentEntry.size
  • DocumentEntry.hash
  • DocumentEntry.title
  • DocumentEntry.creationTime
..... id
n/a
..... extension
n/a
..... contentType
DocumentEntry.mimeType
  • ./mediaType
  • ./charset
ED.2+ED.3/RP.2+RP.3. Note conversion may be needed if old style values are being used
..... language
DocumentEntry.languageCode
./language
..... data
./data
ED.5
..... url
DocumentEntry.repositoryUniqueId or DocuemntEntry.URI
./reference/literal
RP.1+RP.2 - if they refer to a URL (see v2.6)
..... size
DocumentEntry.size
N/A (needs data type R3 proposal)
..... hash
DocumentEntry.hash
:ED/integrityCheckAlgorithm="SHA-1"]
..... title
DocumentEntry.title
./title/data
..... creation
DocumentEntry.creationTime
N/A (needs data type R3 proposal)
.... format
DocumentEntry.formatCode
Composition.meta.profile
document.text
derived from the IHE Profile or Implementation Guide templateID
DocumentEntry.formatCode
... context
outboundRelationship[typeCode="SUBJ"].target[classCode<'ACT']
.... id
n/a
.... extension
n/a
.... modifierExtension
N/A
.... encounter
ihe:iti:xds:2015:encounterId
Event.context
Composition.encounter
  • unique(highest(./outboundRelationship[typeCode="SUBJ" and isNormalActRelationship()]
  • priorityNumber)/target[moodCode="EVN" and classCode=("ENC"
  • "PCPR") and isNormalAct])
FiveWs.context
.... event
DocumentEntry.eventCodeList
Composition.event.code
.code
DocumentEntry.eventCodeList
.... period
Composition.event.period
.effectiveTime
ClinicalDocument/documentationOf/ serviceEvent/effectiveTime/low/ @value --> ClinicalDocument/documentationOf/ serviceEvent/effectiveTime/high/ @value
  • DocumentEntry.serviceStartTime
  • DocumentEntry.serviceStopTime
..... id
n/a
..... extension
n/a
..... start
DocumetEntry.serviceStartTime
./low
DR.1
..... end
DocumentEntry.serviceStopTime
./high
DR.2
.... facilityType
DocumentEntry.healthcareFacilityTypeCode
usually from a mapping to a local ValueSet
.participation[typeCode="LOC"].role[classCode="DSDLOC"].code
usually a mapping to a local ValueSet. Must be consistent with /clinicalDocument/code
DocumentEntry.healthcareFacilityTypeCode
.... practiceSetting
DocumentEntry.practiceSettingCode
usually from a mapping to a local ValueSet
.participation[typeCode="LOC"].role[classCode="DSDLOC"].code
usually from a mapping to a local ValueSet
DocumentEntry.practiceSettingCode
.... sourcePatientInfo
Composition.subject
.participation[typeCode="SBJ"].role[typeCode="PAT"]
ClinicalDocument/recordTarget/
  • DocumentEntry.sourcePatientInfo
  • DocumentEntry.sourcePatientId
..... id
n/a
..... extension
n/a
..... reference
DocumentEntry.sourcePatientInfo
N/A
..... type
N/A
..... identifier
DocumentEntry.sourcePatientId
.identifier
..... display
N/A
.... related
DocumentEntry.referenceIdList using CXi encoding for type when possible
Composition.event.detail
./outboundRelationship[typeCode="PERT" and isNormalActRelationship()] / target[isNormalAct]
ClinicalDocument/relatedDocument
DocumentEntry.referenceIdList

doco Documentation for this format