Release 5 Ballot

This page is part of the FHIR Specification (v5.0.0-ballot: FHIR R5 Ballot Preview). 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

Security Work GroupMaturity Level: N/AStandards Status: InformativeSecurity Category: Not Classified Compartments: Device, Patient, Practitioner, RelatedPerson

Mappings for the provenance resource (see Mappings to Other Standards for further information & status).

Provenance
    targetFiveWs.what[x]
    occurred[x]FiveWs.done[x]
    recordedFiveWs.recorded
    locationFiveWs.where[x]
    authorizationFiveWs.why[x]
    activityFiveWs.why[x]
    basedOnFiveWs.why[x]
    patientFiveWs.subject[x]
    encounterFiveWs.why[x]
    agentFiveWs.who
        whoFiveWs.actor
ProvenanceEvent
    occurred[x]Event.occurred[x]
    locationEvent.location
    authorizationEvent.reasonCode
    activityEvent.code
    basedOnEvent.code
    patientEvent.patient
    encounterEvent.code
    agentEvent.performer
        typeEvent.performer.function
        whoEvent.performer.actor
ProvenanceControlAct[isNormalAct() and subsumes(CACT, classCode) and moodCode=EVN]
    target./outboundRelationship[isNormalActRelationship() and typeCode=SUBJ]/target OR ./participation[isNormalParticipation() and typeCode=SBJ]/role OR ./participation[isNormalParticipation() and typeCode=SBJ]/role[isNormalRole()]/player
    occurred[x]./effectiveTime[type=IVL_TS]
    recordedunique(./participation[isNormalParticipation() and typeCode=AUT]/time[type=TS])
    policy./inboundRelationship[isNormalActRelationship() and typeCode="SUBJ"]/source[isNormalAct and subsumes(POLICY, classCode) and moodCode=EVN]/text[typeCode='ED'/tel
    locationunique(./participation[isNormalParticipation() and typeCode=LOC]/role[isNormalRole() and subsumes(SDLOC, classCode)]/player[isNormalEntity and classCode="LOC" and determinerCode="INST"]
    authorizationunique(./reasonCode)
    activityAct.code
    basedOnAct.code
    patientparticipation[typeCode=RTGT]
    encounterAct.code
    agent./participation[isNormalParticipation()] OR ./outboundRelationship[isNormalActRelationship() and typeCode='DRIV']
        type.role
        role.typecode
        who.id
        onBehalfOfPerson, Practitioner, Organization, Device :* .role [classCode = RoleClassMutualRelationship; role.code and * .scopes[Role](classCode=IDENT) and *.plays [Role.Code]
    entity./subjectOf
        role./typeCode
        what./text/reference
        agent./author/role
    signature./signatureText

The provenance resource is based on known practices in the HL7 implementation space, particularly those found in the v2 EVN segment, the v3 ControlAct Wrapper, the CDA header, and IHE ATNA. The conceptual model underlying the design is the W3C provenance Specification . Though the content and format of the resource is designed to meet specific requirements for FHIR, all the parts of the resource are formally mapped to the PROV-O specification, and FHIR resources can be transformed to their W3C PROV equivalent.

ProvenanceActivity
    targetEntity Created/Updated
    occurred[x]Activity.startTime & Activity.endTime
    recordedActivity.when
    policy
    locationActivity.location
    authorizationActivity.Activity
    activityActivity.Activity
    basedOnActivity.Activity
    patientEntity.Identity
    encounterActivity.Activity
    agentAgent
        typeAgent.Attribution
        role
        who
        onBehalfOf
    entityEntity
        roleEntity.role
        whatEntity.Identity
        agent
    signature
Provenance
    targetAuditEvent.entity.reference
    occurred[x]
    recordedAuditEvent.recorded
    policyAuditEvent.agent.policy
    locationAuditEvent.agent.location
    authorizationAuditEvent.purposeOfEvent
    activityAuditEvent.code
    basedOn
    patient
    encounter
    agentAuditEvent.agent
        typeAuditEvent.agent.type
        roleAuditEvent.agent.role
        who
        onBehalfOf
    entityAuditEvent.entity
        roleAuditEvent.entity.role
        whatAuditEvent.entity.reference
        agentAuditEvent.entity.agent
    signature