PACIO Advance Directive Interoperability Implementation Guide
0.1.0 - STU 1 Ballot

Publication Build: This will be filled in by the publication tooling

## Resource Profile: PADIDocumentReference - Mappings

Mappings for the PADI-DocumentReference resource profile.

### Mappings for Workflow Pattern (http://hl7.org/fhir/workflow)

PADIDocumentReference
DocumentReference | Event
masterIdentifier | Event.identifier
identifier | Event.identifier
status | Event.status
type | Event.code
subject | Event.subject
date | Event.occurrence[x]
author | Event.performer.actor
authenticator | Event.performer.actor
custodian | Event.performer.actor
context |
encounter | Event.context

### Mappings for FHIR Composition (http://hl7.org/fhir/composition)

PADIDocumentReference
DocumentReference | when describing a Composition
masterIdentifier | Composition.identifier
docStatus | Composition.status
type | Composition.type
category | Composition.class
subject | Composition.subject
date | Composition.date
author | Composition.author
authenticator | Composition.attester
custodian | Composition.custodian
relatesTo | Composition.relatesTo
code | Composition.relatesTo.code
target | Composition.relatesTo.target
securityLabel | Composition.confidentiality, Composition.meta.security
content | Bundle(Composition+*)
attachment | Composition.language, Composition.title, Composition.date
format | Composition.meta.profile
context |
encounter | Composition.encounter
event | Composition.event.code
period | Composition.event.period
facilityType | usually from a mapping to a local ValueSet
practiceSetting | usually from a mapping to a local ValueSet
sourcePatientInfo | Composition.subject
related | Composition.event.detail

### Mappings for RIM Mapping (http://hl7.org/v3)

PADIDocumentReference
DocumentReference | Entity. Role, or Act, Document[classCode="DOC" and moodCode="EVN"]
text | Act.text?
contained | N/A
extension | N/A
modifierExtension | N/A
masterIdentifier | .id
identifier | .id / .setId
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"]
date | .availabilityTime[type="TS"]
author | .participation[typeCode="AUT"].role[classCode="ASSIGNED"]
authenticator | .participation[typeCode="AUTHEN"].role[classCode="ASSIGNED"]
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)
format | document.text
context | outboundRelationship[typeCode="SUBJ"].target[classCode<'ACT']
id | n/a
extension | n/a
modifierExtension | N/A
encounter | unique(highest(./outboundRelationship[typeCode="SUBJ" and isNormalActRelationship()], priorityNumber)/target[moodCode="EVN" and classCode=("ENC", "PCPR") and isNormalAct])
event | .code
period | .effectiveTime
facilityType | .participation[typeCode="LOC"].role[classCode="DSDLOC"].code
practiceSetting | .participation[typeCode="LOC"].role[classCode="DSDLOC"].code
sourcePatientInfo | .participation[typeCode="SBJ"].role[typeCode="PAT"]
related | ./outboundRelationship[typeCode="PERT" and isNormalActRelationship()] / target[isNormalAct]

### Mappings for CDA (R2) (http://hl7.org/v3/cda)

PADIDocumentReference
DocumentReference | when describing a CDA
masterIdentifier | 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/
author | ClinicalDocument/author
authenticator | ClinicalDocument/legalAuthenticator
securityLabel | ClinicalDocument/confidentialityCode/@code
content |
attachment | ClinicalDocument/languageCode, ClinicalDocument/title, ClinicalDocument/date
format | derived from the IHE Profile or Implementation Guide templateID
context |
period | ClinicalDocument/documentationOf/ serviceEvent/effectiveTime/low/ @value --> ClinicalDocument/documentationOf/ serviceEvent/effectiveTime/high/ @value
facilityType | usually a mapping to a local ValueSet. Must be consistent with /clinicalDocument/code
practiceSetting | usually from a mapping to a local ValueSet
sourcePatientInfo | ClinicalDocument/recordTarget/
related | ClinicalDocument/relatedDocument

### Mappings for FiveWs Pattern Mapping (http://hl7.org/fhir/fivews)

PADIDocumentReference
DocumentReference |
masterIdentifier | FiveWs.identifier
identifier | FiveWs.identifier
status | FiveWs.status
docStatus | FiveWs.status
type | FiveWs.class
category | FiveWs.class
subject | FiveWs.subject[x], FiveWs.subject
date | FiveWs.recorded
authenticator | FiveWs.witness
context |
encounter | FiveWs.context

### Mappings for HL7 v2 Mapping (http://hl7.org/v2)

PADIDocumentReference
DocumentReference |
masterIdentifier | TXA-12
identifier | TXA-16?
status | TXA-19
docStatus | TXA-17
type | TXA-2
subject | PID-3 (No standard way to define a Practitioner or Group subject in HL7 v2 MDM message)
author | TXA-9 (No standard way to indicate a Device in HL7 v2 MDM message)
authenticator | TXA-10
description | TXA-25
securityLabel | TXA-18
content |
attachment | TXA-3 for mime type
contentType | ED.2+ED.3/RP.2+RP.3. Note conversion may be needed if old style values are being used
data | ED.5
url | RP.1+RP.2 - if they refer to a URL (see v2.6)

### Mappings for XDS metadata equivalent (http://ihe.net/xds)

PADIDocumentReference
DocumentReference |
masterIdentifier | DocumentEntry.uniqueId
identifier | DocumentEntry.entryUUID
status | DocumentEntry.availabilityStatus
type | DocumentEntry.type
category | DocumentEntry.class
subject | DocumentEntry.patientId
author | DocumentEntry.author
authenticator | 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
format | DocumentEntry.formatCode
context |
event | DocumentEntry.eventCodeList
period | DocumentEntry.serviceStartTime, DocumentEntry.serviceStopTime
facilityType | DocumentEntry.healthcareFacilityTypeCode
practiceSetting | DocumentEntry.practiceSettingCode
sourcePatientInfo | DocumentEntry.sourcePatientInfo, DocumentEntry.sourcePatientId
related | DocumentEntry.referenceIdList