SPL Mapping FHIR R5 Implementation Guide, published by HL7 International / Biomedical Research and Regulation. This guide is not an authorized publication; it is the continuous build for version 0.2.1 built by the FHIR (HL7® FHIR® Standard) CI Build. This version is based on the current content of https://github.com/HL7/fhir-spl/ and changes regularly. See the Directory of published versions
Mappings for the SPLDocumentReference resource profile.
SPLDocumentReference |
DocumentReference | when describing a Composition |
identifier | Composition.identifier |
version | Composition.version |
docStatus | Composition.status |
type | Composition.type |
category | Composition.category |
subject | Composition.subject |
context | Composition.encounter |
event | Composition.event.detail |
facilityType | usually from a mapping to a local ValueSet |
practiceSetting | usually from a mapping to a local ValueSet |
period | Composition.event.period |
date | Composition.date |
author | Composition.author |
attester | Composition.attester |
mode | Composition.attester.mode |
time | Composition.attester.time |
party | Composition.attester.party |
custodian | Composition.custodian |
relatesTo | Composition.relatesTo |
code | Composition.relatesTo.type |
target | Composition.relatesTo.resourceReference |
securityLabel | Bundle.meta.security |
content | Bundle(Composition+*) |
attachment | Composition.language,
Composition.title,
Composition.date |
profile | Composition.meta.profile |
value[x] | Composition.meta.profile |
SPLDocumentReference |
DocumentReference | Entity, Role, or Act,Document[classCode="DOC" and moodCode="EVN"] |
text | Act.text? |
contained | N/A |
modifierExtension | N/A |
identifier | .id / .setId |
basedOn | .outboundRelationship[typeCode=FLFS].target |
status | interim: .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", code) and isNormalAct()]); amended: .completionCode="AU" && ./statusCode[isNormalDatatype()]="complete" and ./inboundRelationship[typeCode="SUBJ" and isNormalActRelationship()]/source[subsumesCode("ActClass#CACT") and moodCode="EVN" and domainMember("ReviseDocument", code) and isNormalAct() and statusCode="completed"]; withdrawn : .completionCode=NI && ./statusCode[isNormalDatatype()]="obsolete" |
docStatus | .statusCode |
type | ./code |
category | .outboundRelationship[typeCode="COMP].target[classCode="LIST", moodCode="EVN"].code |
subject | .participation[typeCode="SBJ"].role[typeCode="PAT"] |
context | unique(highest(./outboundRelationship[typeCode="SUBJ" and isNormalActRelationship()], priorityNumber)/target[moodCode="EVN" and classCode=("ENC", "PCPR") and isNormalAct]) |
event | .code |
bodySite | .targetSiteCode |
facilityType | .participation[typeCode="LOC"].role[classCode="DSDLOC"].code |
practiceSetting | .participation[typeCode="LOC"].role[classCode="DSDLOC"].code |
period | .effectiveTime |
date | .availabilityTime[type="TS"] |
author | .participation[typeCode="AUT"].role[classCode="ASSIGNED"] |
attester | .participation[typeCode="AUTHEN"].role[classCode="ASSIGNED"] |
id | n/a |
extension | n/a |
modifierExtension | N/A |
mode | unique(./modeCode) |
time | ./time[type="TS" and isNormalDatatype()] |
party | ./role[classCode="ASSIGNED" and isNormalRole]/player[determinerCode="INST" and classCode=("DEV", "PSN") and isNormalEntity()] or ./role[classCode="ASSIGNED" and isNormalRole and not(player)]/scoper[determinerCode="INST" and classCode="ORG" and isNormalEntity()] |
custodian | .participation[typeCode="RCV"].role[classCode="CUST"].scoper[classCode="ORG" and determinerCode="INST"] |
relatesTo | .outboundRelationship |
id | n/a |
extension | n/a |
modifierExtension | N/A |
code | .outboundRelationship.typeCode |
target | .target[classCode="DOC", moodCode="EVN"].id |
description | .outboundRelationship[typeCode="SUBJ"].target.text |
securityLabel | .confidentialityCode |
content | document.text |
id | n/a |
extension | n/a |
modifierExtension | N/A |
attachment | document.text |
id | n/a |
extension | n/a |
contentType | ./mediaType, ./charset |
language | ./language |
data | ./data |
url | ./reference/literal |
size | N/A (needs data type R3 proposal) |
hash | .integrityCheck[parent::ED/integrityCheckAlgorithm="SHA-1"] |
title | ./title/data |
creation | N/A (needs data type R3 proposal) |
height | .outboundRelationship[typeCode="COMP].target[classCode="OBS", moodCode="EVN",code="<CODE>"].value |
width | .outboundRelationship[typeCode="COMP].target[classCode="OBS", moodCode="EVN",code="<CODE>"].value |
frames | .outboundRelationship[typeCode="COMP].target[classCode="OBS", moodCode="EVN",code="<CODE>"].value |
duration | .outboundRelationship[typeCode="COMP].target[classCode="OBS", moodCode="EVN",code="<CODE>"].value |
profile | document.text |
id | n/a |
extension | n/a |
modifierExtension | N/A |
value[x] | document.text |
SPLDocumentReference |
DocumentReference | DocumentEntry |
identifier | DocumentEntry.entryUUID, DocumentEntry.uniqueId |
basedOn | DocumentEntry.referenceIdList |
status | DocumentEntry.availabilityStatus |
type | DocumentEntry.typeCode |
category | DocumentEntry.classCode |
subject | DocumentEntry.patientId |
event | DocumentEntry.referenceIdList |
facilityType | DocumentEntry.healthcareFacilityTypeCode |
practiceSetting | DocumentEntry.practiceSettingCode |
period | DocumentEntry.serviceStartTime, DocumentEntry.serviceStopTime |
author | DocumentEntry.author |
attester | DocumentEntry.legalAuthenticator |
relatesTo | DocumentEntry Associations |
code | DocumentEntry Associations type |
target | DocumentEntry Associations reference |
description | DocumentEntry.comments |
securityLabel | DocumentEntry.confidentialityCode |
content | |
attachment | DocumentEntry.mimeType, DocumentEntry.languageCode, DocumentEntry.URI, DocumentEntry.size, DocumentEntry.hash, DocumentEntry.title, DocumentEntry.creationTime |
profile | DocumentEntry.formatCode |
value[x] | DocumentEntry.formatCode |
SPLDocumentReference |
DocumentReference | when describing a CDA |
identifier | ClinicalDocument/id |
type | 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. |
category | 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 |
subject | ClinicalDocument/recordTarget/ |
facilityType | usually a mapping to a local ValueSet. Must be consistent with /clinicalDocument/code |
practiceSetting | usually from a mapping to a local ValueSet |
period | ClinicalDocument/documentationOf/
serviceEvent/effectiveTime/low/
@value --> ClinicalDocument/documentationOf/
serviceEvent/effectiveTime/high/
@value |
author | ClinicalDocument/author |
attester | .authenticator/.legalAuthenticator |
mode | implied by .authenticator/.legalAuthenticator |
time | .authenticator.time |
party | .authenticator.assignedEnttty |
relatesTo | |
code | ClinicalDocument/relatedDocument/typeCode |
target | ClinicalDocument/relatedDocument/parentDocument |
securityLabel | ClinicalDocument/confidentialityCode/@code |
content | |
attachment | ClinicalDocument/languageCode, ClinicalDocument/title, ClinicalDocument/date |
profile | derived from the IHE Profile or Implementation Guide templateID |
value[x] | derived from the IHE Profile or Implementation Guide templateID |