R4 Draft for Comment

This page is part of the FHIR Specification (v3.2.0: R4 Ballot 1). The current version which supercedes this version is 5.0.0. For a full list of available versions, see the Directory of published versions . Page versions: R5 R4B R4 R3 R2

Structured Documents Work GroupMaturity Level: N/ABallot Status: Informative Compartments: Device, Encounter, Patient, Practitioner, RelatedPerson

Mappings for the documentreference resource.

DocumentReference
    masterIdentifierFiveWs.identifier
    identifierFiveWs.identifier
    statusFiveWs.status
    docStatusFiveWs.status
    typeFiveWs.class
    classFiveWs.class
    subjectFiveWs.subject[x]
    createdFiveWs.done[x]
    dateFiveWs.recorded
    agentFiveWs.author
    authenticatorFiveWs.witness
        encounterFiveWs.context
DocumentReferenceEvent
    masterIdentifierEvent.identifier
    identifierEvent.identifier
    statusEvent.status
    typeEvent.code
    subjectEvent.subject
    createdEvent.occurrence[x]
    agentEvent.performer
        typeEvent.performer.function
        whoEvent.performer.actor
    authenticatorEvent.performer.actor
    custodianEvent.performer.actor
        encounterEvent.context
DocumentReference
    masterIdentifierTXA-12
    identifierTXA-16?
    statusTXA-19
    docStatusTXA-17
    typeTXA-2
    class
    subjectPID-3 (No standard way to define a Practitioner or Group subject in HL7 v2 MDM message)
    createdTXA-6
    date
    agent
        type
        whoTXA-9 (No standard way to indicate a Device in HL7 v2 MDM message)
    authenticatorTXA-10
    custodian
    relatesTo
        code
        target
    descriptionTXA-25
    securityLabelTXA-18
    content
        attachmentTXA-3 for mime type
        format
    context
        encounter
        event
        period
        facilityType
        practiceSetting
        sourcePatientInfo
        related
            identifier
            ref
DocumentReferenceDocument[classCode="DOC" and moodCode="EVN"]
    masterIdentifier.id
    identifier.id / .setId
    statusinterim: .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
    class.outboundRelationship[typeCode="COMP].target[classCode="LIST", moodCode="EVN"].code
    subject.participation[typeCode="SBJ"].role[typeCode="PAT"]
    created.effectiveTime[type="TS"]
    date.availabilityTime[type="TS"]
    agent.participation
        type.participation.typeCode
        who.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
        code.outboundRelationship.typeCode
        target.target[classCode="DOC", moodCode="EVN"].id
    description.outboundRelationship[typeCode="SUBJ"].target.text
    securityLabel.confidentialityCode
    contentdocument.text
        attachmentdocument.text
        formatdocument.text
    contextoutboundRelationship[typeCode="SUBJ"].target[classCode<'ACT']
        encounterunique(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]
            identifier./outboundRelationship[typeCode="PERT" and isNormalActRelationship()] / target[isNormalAct] .id
            ref./outboundRelationship[typeCode="PERT" and isNormalActRelationship()] / target[isNormalAct].text.reference
DocumentReference
    masterIdentifierDocumentEntry.uniqueId
    identifierDocumentEntry.entryUUID
    statusDocumentEntry.availabilityStatus
    docStatus
    typeDocumentEntry.type
    classDocumentEntry.class
    subjectDocumentEntry.patientId
    created
    dateDocumentEntry.creationTime
    agentDocumentEntry.author
        type
        who
    authenticatorDocumentEntry.legalAuthenticator
    custodian
    relatesTo
        codeDocumentEntry Associations type
        targetDocumentEntry Associations reference
    descriptionDocumentEntry.description
    securityLabelDocumentEntry.confidentialityCode
    content
        attachmentDocumentEntry.mimeType DocumentEntry.languageCode DocumentEntry.URI DocumentEntry.size DocumentEntry.hash DocumentEntry.title
        formatDocumentEntry.formatCode
    context
        encounter
        eventDocumentEntry.eventCodeList
        periodDocumentEntry.serviceStartTime DocumentEntry.serviceStopTime
        facilityTypeDocumentEntry.healthcareFacilityTypeCode
        practiceSettingDocumentEntry.practiceSettingCode
        sourcePatientInfoDocumentEntry.sourcePatientInfo DocumentEntry.sourcePatientId
        relatedDocumentEntry.referenceIdList
            identifier
            ref