Overview
Provenance of a resource is a record that describes entities and processes involved in producing and delivering or otherwise influencing that resource.
The Provenance resource tracks information about the activity that created, revised, deleted, or signed a version of a resource, describing the entities and agents involved. This information can be used to form assessments about its quality, reliability, trustworthiness, or to provide pointers for where to go to further investigate the origins of the resource and the information in it.
Each Provenance has next elements:
- a reference to the resource(s) the Provenance record is supporting (target)
- a date and time for the activity
Each Provenance must support:
- an author responsible for the update
- the author organization responsible for the information
- the transmitter that provided the information
- the transmitter organization responsible for the transmission (if the transmitter is a device the transmitter organization must also be valued).
Profile specific implementation guidance:
The US Core Provenance resource SHALL be supported for these US Core resources:
- US Core Pediatric Head Occipital-frontal Circumference Percentile Profile
- US Core AllergyIntolerance Profile
- US Core Blood Pressure Profile
- US Core BMI Profile
- US Core Body Height Profile
- US Core Body Temperature Profile
- US Core Body Weight Profile
- US Core CarePlan Profile
- US Core CareTeam Profile
- US Core Condition Encounter Diagnosis Profile
- US Core Condition Problems and Health Concerns Profile
- US Core DiagnosticReport Profile for Laboratory Results Reporting
- US Core DiagnosticReport Profile for Report and Note Exchange
- US Core DocumentReference Profile
- US Core Encounter Profile
- US Core Goal Profile
- US Core Head Circumference Profile
- US Core Heart Rate Profile
- US Core Immunization Profile
- US Core Implantable Device Profile
- US Core MedicationRequest Profile
- US Core Observation Clinical Test Result Profile
- US Core Observation Imaging Result Profile
- US Core Laboratory Result Observation Profile
- US Core Observation SDOH Assessment Profile
- US Core Observation Sexual Orientation Profile
- US Core Observation Social History Profile
- US Core Observation Survey Profile
- US Core Patient Profile
- US Core Pediatric BMI for Age Observation Profile
- US Core Pediatric Weight for Height Observation Profile
- US Core Procedure Profile
- US Core Pulse Oximetry Profile
- US Core QuestionnaireResponse Profile
- US Core RelatedPerson Profile
- US Core Respiratory Rate Profile
- US Core ServiceRequest Profile
- US Core Smoking Status Observation Profile
- US Core Vital Signs Profile
- If a system receives a provider in
Provenance.agent.who
as free text they must capture who sent them the information as the organization. On request they SHALL provide this organization as the source and MAY include the free text provider. - Systems that need to know the activity has occurred SHOULD populate the activity.
This resource conforms to USCDI V2 profile for Provenance - refers to US Core Provenance Profile. Provenance response will be provided in JSON (refers to Capability Statement) format as per FHIR standard R4 version.
USCDI | USCore Data Element | FHIR Resource Field |
---|---|---|
Author Time Stamp | recorded | Provenance.recorded |
Author Organization | agent | Provenance.agent.who |
Must support elements, mandatory and optional search parameters
Provenance must support these elements:
- target
- reference
- recorded
- agent
- Slices:
- All Slices:
- type
- who
- onBehalfOf
- :ProvenanceAuthor
- type
- :ProvenanceTransmitter
- type
- All Slices:
- Slices:
The following search parameters and search parameter combinations SHALL be supported:
The syntax used to describe the interactions is described here.
SHALL support searching for all US Core Profile resource types listed above for a patient and all the Provenance records for those resources using a combination of the patient
and [_revinclude]
search parameters:
GET [base url]/[Resource]?patient=[id]&_revinclude=Provenance:target
SHALL support searching for a particular instance of a US Core Profile resource type listed above and all its Provenance resources using combination of the _id
and the [_revinclude] search parameters:
GET [base url]/[Resource]?_id=[id]&_revinclude=Provenance:target
The response to any search operation is always a list of resources in a Bundle or an Operation Outcome.
Provenance By id
Get Provenance by id
METHOD GET
[base url]/Provenance/{id}
or
[base url]/Provenance?_id={id}
PARAMS
[base url] - FHIR base url
{id} - Id for Provenance resource
HEADERS
The Authorization token SHALL be obtained during Authentication and Authorization process. Goto Authentication and Authorization for further details.
Header | Type | Required/Optional | Value |
---|---|---|---|
Authorization | string | required | 'Bearer' |
RESPONSES
Code | Description | Comment |
---|---|---|
200 | OK | The request was processed successfully |
400 | Bad request | Invalid request parameters or FHIR operation outcome resource returned |
401 | Unauthorized | This code indicates that the client request has not been completed because it lacks valid authentication credentials for the requested resource |
404 | no Route matched with those values | The request was able to communicate with a given server, but the server could not find what was requested |
500 | Internal Server Error | The server has encountered a situation it doesn't know how to handle |
The response to any search operation is always a list of resources in a Bundle or an Operation Outcome.
EXAMPLE:
curl --location --request GET 'https://sandbox.fhir.elationemr.com/fhir/Provenance/a210cfa5-2116-c12a-fbbc-f2c323a3c1g7' \
--header 'Authorization: Bearer fe1cd986-1ac7-4c26-b8b3-d632a48408fd'
Resource By id and _revinclude
Get any supported resource by id
and corresponding provenance by usin _revinclude
search parameter.
METHOD GET
[base url]/[Resource]?_id=[id]&_revinclude=Provenance:target
PARAMS
[base url] - FHIR base url
[Resource] - Resource type
[id] - Id for the resource
HEADERS
The Authorization token SHALL be obtained during Authentication and Authorization process. Goto Authentication and Authorization for further details.
Header | Type | Required/Optional | Value |
---|---|---|---|
Authorization | string | required | 'Bearer' |
RESPONSES
Code | Description | Comment |
---|---|---|
200 | OK | The request was processed successfully |
400 | Bad request | Invalid request parameters or FHIR operation outcome resource returned |
401 | Unauthorized | This code indicates that the client request has not been completed because it lacks valid authentication credentials for the requested resource |
404 | no Route matched with those values | The request was able to communicate with a given server, but the server could not find what was requested |
500 | Internal Server Error | The server has encountered a situation it doesn't know how to handle |
The response to any search operation is always a list of resources in a Bundle or an Operation Outcome.
EXAMPLE:
curl --location --request GET 'https://sandbox.fhir.elationemr.com/fhir/Patient?_id=05b87542-b50e-4f19-8a87-2da2e6959bfb&_revinclude=Provenance:target' \
--header 'Authorization: Bearer fe1cd986-1ac7-4c26-b8b3-d632a48408fd'