US Core Implementation Guide
6.1.0-snapshot1 - STU6 United States of America flag

This page is part of the US Core (v6.1.0-snapshot1: STU6 Update) based on FHIR R4. The current version which supercedes this version is 6.0.0. For a full list of available versions, see the Directory of published versions

Basic Provenance

​This section provides implementers with important definitions to create and share the Provenance Resource1.

Basic Provenance

The FHIR Provenance Resource provides a foundation for assessing authenticity, enabling trust, and allowing reproducibility. It is not scoped to a specific use case nor limits the number of Provenance records associated with a Resource. The primary guidance here, and in the US Core Provenance Profile, focuses on a key subset of elements, the ‘last hop’, and specific use cases. The guidance here does not preclude more advanced use cases or additional elements.

Full Provenance of a Resource requires details from the original resource creator and all intermediary actors that updated the Resource. Members of the Argonaut community and the HL7 security working group discussed the current sharing approaches and end-user display. They agreed the most important information is the last organization making a meaningful clinical update to the data and the prior system providing the data - the ‘last hop’. Participants didn’t dispute the potential need to recreate the entire chain but didn’t see this as relevant to the immediate end-user.

Key Provenance Elements

The guidance for Provenance in US Core focuses on six key elements: Timestamp, the Target Resource, Author, Author Organization, Transmitter, and Transmitter Organization. The Timestamp is the date and time the author created, updated, or deleted the data. The Target Resource is the Resource the Provenance record supports. The Author represents the person(s) responsible for the information. The Author Organization defines the organization the author is associated with when they created, updated, or deleted the data. The Transmitter represents the system responsible for transmitting the information. Finally, the Transmitter Organization defines the organization responsible for the transmission.

Key Provenance elements:

Element Required Must Support Optional FHIR Element
Target Resource Provenance
record supports
    Provenance.target
Timestamp Date   Time with timezone offset Provenance.recorded
Author   Name
Identifier
NPI recommended, additional identifiers allowed Provenance.agent.who
Author Organization   Name
Identifier
NPI recommended, additional identifiers allowed Provenance.agent.onBehalfOf
Transmitter   Name
Identifier
NPI recommended, additional identifiers allowed Provenance.agent.who
Transmitter Organization   Name
Identifier
NPI recommended, additional identifiers allowed Provenance.agent.onBehalfOf

Use Cases

The HL7 Basic Provenance Informative implementation guide outlines four use cases: Fax, Health Information Exchange (HIE) redistribution, HIE transformation, and Clinical Information Reconciliation and Incorporation (CIRI). While these use cases may have FHIR implications in the future, CIRI and HIE are the key use cases and are covered in detail here.

Clinical Information Reconciliation and Incorporation

Clinical Information Reconciliation and Incorporation (CIRI) is a process in which a user reviews and updates or accepts information into their system. The data could come from a Health Information Exchange (HIE), a 3rd-party FHIR server, or a patient providing information. Figure 1 represents information supplied from two different sources, Good Health and Sunshine Health Organization. Dr. Reconciled reviews the data in Figure 1, updates the reaction to hives, and stores it in the Future Health Organization system. When a mobile app requests the information, they receive Dr. Reconciled as the Author and Future Health as the organization. This type of authorship change is only relevant for data suitable for reconciliation, such as medications, allergies, and problems. If Dr. Accepted had saved other clinical content into his EHR that is not reconciled but stored, such as clinical notes, that content must retain its original author.

The Figure below represents information from two different organizations to a clinician for reconciliation:

Figure 1: Clinical Information Reconciliation and Incorporation (CIRI) from two Organizations
Provenance_Recon_Workflow_Step2.svg

Dr. Reconciled is the latest author after updating the reaction on 5/15/2019 and accepting it to the local data store. By accepting the information, Dr. Reconciled is taking over the responsibility.

GET /AllergyIntolerance?patient=[ID]&_revinclude=Provenance:target

Good Health Organization Provenance

Request:

Get “all allergies” for a patient and all corresponding Provenance records.

GET [base]/AllergyIntolerance?patient=12345&_revinclude=Provenance:target

Response:

A Server returns a search Bundle resource containing all the Allergies for the patient and corresponding Provenance records.

HTTP/1.1 200 OK
[other headers]

{
"resourceType": "Bundle",
"id": "c887e62f-6166-419f-8268-b5ecd6c7b901",
"meta": {
    "lastUpdated": "2019-07-09T18:49:01.235+00:00"
},
"type": "searchset",
"total": 1,
"link": [
    {
        "relation": "self",
        "url": "http://hapi.fhir.org/baseR4/AllergyIntolerance?patient=Examples&_revinclude=Provenance:target"
    }
],
"entry": [
    {
        "fullUrl": "http://hapi.fhir.org/baseR4/AllergyIntolerance/79613",
        "resource": {
            "resourceType": "AllergyIntolerance",
            "id": "79613",
            "meta": {
                "versionId": "1",
                "lastUpdated": "2019-07-09T15:26:23.217+00:00",
                "profile": [
                   "http://hl7.org/fhir/us/core/StructureDefinition/us-core-allergyintolerance"
                ]
            },
            "clinicalStatus": {
                "coding": [
                    {
                        "system": "http://terminology.hl7.org/CodeSystem/allergyintolerance-clinical",
                        "code": "active",
                        "display": "Active"
                    }
                ]
            },
            "verificationStatus": {
                "coding": [
                    {
                        "system": "http://terminology.hl7.org/CodeSystem/allergyintolerance-verification",
                        "code": "confirmed",
                        "display": "Confirmed"
                    }
                ]
            },
            "code": {
                "coding": [
                    {
                        "system": "http://snomed.info/sct",
                        "code": "762952008",
                        "display": "Peanuts"
                    }
                ],
                "text": "Peanuts"
            },
            "category": [
                "medication"
            ],
            "criticality": "high",
            "patient": {
                "reference": "Patient/example"
            },
            "onsetDateTime": "2018-01",
            "reaction": [
                {
                    "manifestation": [
                        {
                            "coding": [
                                {
                                    "system": "http://snomed.info/sct",
                                    "code": "247472004",
                                    "display": "Hives"
                                }
                            ]
                        }
                    ],
                    "onset": "2018-01"
                }
            ]
        },
        "search": {
            "mode": "match"
        }
    },
    {
        "fullUrl": "http://hapi.fhir.org/baseR4/Provenance/79614",
        "resource": {
            "resourceType": "Provenance",
            "id": "79614",
            "meta": {
                "versionId": "1",
                "lastUpdated": "2019-07-09T15:26:23.217+00:00",
                "profile": [
                   "http://hl7.org/fhir/us/core/StructureDefinition/us-core-provenance"
                ]
            },
            "target": [
                 {
                    "reference": "AllergyIntolerance/79613"
                }
            ],
         "recorded": "2018-02T15:26:23.217+00:00",
         "agent": [
                {
                    "type": [
                        {
                            "coding": [
                                {
                                    "system": "http://terminology.hl7.org/CodeSystem/provenance-participant-type",
                                    "code": "author",
                                    "display": "Author"
                                }
                            ]
                        }
                    ],
                    "who": {
                            "reference": "Practitioner/Dr-Jones-12345"
                    },
                    "onBehalfOf": {
                            "reference": "Organization/good-health-54321"
                    }
                }
            ]},
        "search": {
            "mode": "include"
        }
    }
] }


Sunshine Health Organization Provenance

Request:

Get “all allergies” for a patient and all corresponding Provenance records.

GET [base]/AllergyIntolerance?patient=1234599&_revinclude=Provenance:target

Response:

A Server returns a search Bundle resource containing all the Allergies for the patient and corresponding Provenance records.

HTTP/1.1 200 OK
[other headers]

{
"resourceType": "Bundle",
"id": "c887e62f-6166-419f-8268-b5ecd6c7b901",
"meta": {
    "lastUpdated": "2019-07-09T18:49:01.235+00:00"
},
"type": "searchset",
"total": 1,
"link": [
    {
        "relation": "self",
        "url": "http://hapi.fhir.org/baseR4/AllergyIntolerance?patient=Examples99&_revinclude=Provenance:target"
    }
],
"entry": [
    {
        "fullUrl": "http://hapi.fhir.org/baseR4/AllergyIntolerance/7961399",
        "resource": {
            "resourceType": "AllergyIntolerance",
            "id": "7961399",
            "meta": {
                "versionId": "1",
                "lastUpdated": "2019-07-09T15:26:23.217+00:00",
                "profile": [
                   "http://hl7.org/fhir/us/core/StructureDefinition/us-core-allergyintolerance"
                ]
            },
            "clinicalStatus": {
                "coding": [
                    {
                        "system": "http://terminology.hl7.org/CodeSystem/allergyintolerance-clinical",
                        "code": "active",
                        "display": "Active"
                    }
                ]
            },
            "verificationStatus": {
                "coding": [
                    {
                        "system": "http://terminology.hl7.org/CodeSystem/allergyintolerance-verification",
                        "code": "confirmed",
                        "display": "Confirmed"
                    }
                ]
            },
            "code": {
                "coding": [
                    {
                        "system": "http://snomed.info/sct",
                        "code": "762952008",
                        "display": "Peanuts"
                    }
                ],
                "text": "Peanuts"
            },
            "category": [
                "medication"
            ],
            "criticality": "high",
            "patient": {
                "reference": "Patient/example"
            },
            "onsetDateTime": "2017-09",
            "reaction": [
                {
                    "manifestation": [
                        {
                            "coding": [
                                {
                                    "system": "http://terminology.hl7.org/CodeSystem/v3-NullFlavor",
                                    "code": "UNK",
                                    "display": "Unknown"
                                }
                            ]
                        }
                    ],
                    "onset": "2017-09"
                }
            ]
        },
        "search": {
            "mode": "match"
        }
    },
    {
        "fullUrl": "http://hapi.fhir.org/baseR4/Provenance/7961499",
        "resource": {
            "resourceType": "Provenance",
            "id": "7961499",
            "meta": {
                "versionId": "1",
                "lastUpdated": "2019-07-09T15:26:23.217+00:00",
                "profile": [
                   "http://hl7.org/fhir/us/core/StructureDefinition/us-core-provenance"
                ]
            },
            "target": [
                 {
                    "reference": "AllergyIntolerance/7961399"
                }
            ],
         "recorded": "2017-09T15:26:23.217+00:00",
         "agent": [
                {
                    "type": [
                        {
                            "coding": [
                                {
                                    "system": "http://terminology.hl7.org/CodeSystem/provenance-participant-type",
                                    "code": "author",
                                    "display": "Author"
                                }
                            ]
                        }
                    ],
                    "who": {
                            "reference": "Practitioner/Dr-Smith-1234599"
                    },
                    "onBehalfOf": {
                            "reference": "Organization/sunshine-health-5432199"
                    }
                }
            ]},
        "search": {
            "mode": "include"
        }
    }
] }


After reconciliation, the Future Health Organization Provenance contains the latest information.

Request:

Get “all allergies” for a patient and all corresponding Provenance records.

GET [base]/AllergyIntolerance?patient=123459988&_revinclude=Provenance:target

Response:

A Server returns a search Bundle resource containing all the Allergies for the patient and corresponding Provenance records.

HTTP/1.1 200 OK
[other headers]

{
"resourceType": "Bundle",
"id": "94d5d5ac-6645-41dc-8282-1870b71e840a",
"meta": {
    "lastUpdated": "2019-07-20T18:49:01.235+00:00"
},
"type": "searchset",
"total": 1,
"link": [
    {
        "relation": "self",
        "url": "http://hapi.fhir.org/baseR4/AllergyIntolerance?patient=Examples9988&_revinclude=Provenance:target"
    }
],
"entry": [
    {
        "fullUrl": "http://hapi.fhir.org/baseR4/AllergyIntolerance/796139988",
        "resource": {
            "resourceType": "AllergyIntolerance",
            "id": "796139988",
            "meta": {
                "versionId": "1",
                "lastUpdated": "2019-07-09T15:26:23.217+00:00",
                "profile": [
                   "http://hl7.org/fhir/us/core/StructureDefinition/us-core-allergyintolerance"
                ]
            },
            "clinicalStatus": {
                "coding": [
                    {
                        "system": "http://terminology.hl7.org/CodeSystem/allergyintolerance-clinical",
                        "code": "active",
                        "display": "Active"
                    }
                ]
            },
            "verificationStatus": {
                "coding": [
                    {
                        "system": "http://terminology.hl7.org/CodeSystem/allergyintolerance-verification",
                        "code": "confirmed",
                        "display": "Confirmed"
                    }
                ]
            },
            "code": {
                "coding": [
                    {
                        "system": "http://snomed.info/sct",
                        "code": "762952008",
                        "display": "Peanuts"
                    }
                ],
                "text": "Peanuts"
            },
            "category": [
                "medication"
            ],
            "criticality": "high",
            "patient": {
                "reference": "Patient/example"
            },
            "onsetDateTime": "2017-09",
            "reaction": [
                {
                    "manifestation": [
                        {
                            "coding": [
                                {
                                    "system": "http://snomed.info/sct",
                                    "code": "247472004",
                                    "display": "Hives"
                                }
                            ]
                        }
                    ],
                    "onset": "2017-09"
                }
            ]
        },
        "search": {
            "mode": "match"
        }
    },
    {
        "fullUrl": "http://hapi.fhir.org/baseR4/Provenance/796149988",
        "resource": {
            "resourceType": "Provenance",
            "id": "796149988",
            "meta": {
                "versionId": "1",
                "lastUpdated": "2019-07-09T15:26:23.217+00:00",
                "profile": [
                   "http://hl7.org/fhir/us/core/StructureDefinition/us-core-provenance"
                ]
            },
            "target": [
                 {
                    "reference": "AllergyIntolerance/796139988"
                }
            ],
         "recorded": "2019-05-15T15:26:23.217+00:00",
         "agent": [
                {
                    "type": [
                        {
                            "coding": [
                                {
                                    "system": "http://terminology.hl7.org/CodeSystem/provenance-participant-type",
                                    "code": "author",
                                    "display": "Author"
                                }
                            ]
                        }
                    ],
                    "who": {
                            "reference": "Practitioner/dr-reconciled-123459988"
                    },
                    "onBehalfOf": {
                            "reference": "Organization/future-health-543219988"
                    }
                }
            ]},
        "search": {
            "mode": "include"
        }
    }
] }


Accepting information from a single site

The Figure below represents information after a provider accepted data from a single site:

Figure 2: CIRI After Accepting Reconciliation, No Changes
Provenance_Recon_Single_Organization.svg

Dr. Accepted is the latest author after verifying the problem on 5/2018 and accepting the problem data into their local data store since it went through an interactive reconciliation process.

HIE Redistribution

A Health Information Exchange (HIE) is an organization and a technology to facilitate exchange from one to many partners. In specific HIE scenarios, they only redistribute information, while in others, they store, transform, and redistribute information. The HIE must keep the clinical content fidelity (original author, author organization, and timestamp). In addition, the HIE must keep track of who sent them the information for auditing; however, they are not required to include the original transmitter when redistributing content.

Figure 3: HIE Redistribution - No clinical content transformation
Provenance_HIE_Single_Org_Device.svg

Since no clinical content is changed in the HIE redistribution, the best scenario is a Provenance Record with:

  • Provenance.agent.type = author
    • Provenance.agent.who set to the practitioner who authored the content (i.e., not the HIE)
    • Provenance.agent.onBehalfOf set to the organization that the author acted on behalf of before sharing with the HIE
  • Provenance.agent.type = transmitter
    • Provenance.agent.who set to the HIE organization

The timestamp and pointer (i.e., target) to the appropriate Resource are required in all cases and must be included. This IG would note these as SHALL constraints if systems always had the Author and Author Organizations available. Participants in the development of this guide reported Author information provided to HIEs needs to be more consistent and reliable.

HIE Transformation

Unlike Use Case 3 - HIE Redistribution, Use Case 4 includes data transformation. Information is received (e.g., v2 lab, other CDs), transformed by a HIE, stored, and then passed in a new format (e.g., CCD or FHIR).

Figure 4: HIE Transformation - Clinical content is transformed
Provenance_HIE_Multi_Org_Device.svg

Transformation of data from one format to another MAY change the authorship of the information, where the HIE is the author/author organization. The HIE must maintain the original data source. An agent.type=”assembler”, agent.type=”transmitter”, or other agents from Provenance Agent Type value set MAY also be included. Due to insufficient implementer guidance, the Basic Provenance guidance here does not specify how to assign authorship for this use case. HL7 plans to gather additional input and include it in the HL7 Basic Provenance Informative guide for C-CDA and FHIR.

Element Level Provenance

This section is informative and not a requirement for systems conforming to the US Core Provenance Profile.

Using the FHIR Extension Target Element, Provenance can target a particular element or set of elements. For example, to document how and who supplied patient demographic data such as Race and Ethnicity (R/E), gender identity, and sexual orientation.

Example:

In this US Core Patient Profile example, the patient demographic data such as Race and Ethnicity (R/E), gender identity, etc., have individual element ids within a resource for internal and external referencing:

{
  "resourceType" : "Patient",
  "id" : "example-targeted-provenance",
  "meta" : {
    "profile" : ["http://hl7.org/fhir/us/core/StructureDefinition/us-core-patient"]
  },
  "extension" : [{
    "id" : "race",
    "extension" : [{
      "url" : "ombCategory",
      "valueCoding" : {
        "system" : "urn:oid:2.16.840.1.113883.6.238",
        "code" : "2106-3",
        "display" : "White"
      }
    },
    {
      "url" : "text",
      "valueString" : "Mixed"
    }],
    "url" : "http://hl7.org/fhir/us/core/StructureDefinition/us-core-race"
  },
  {
    "id" : "ethnicity",
    "extension" : [{
      "url" : "ombCategory",
      "valueCoding" : {
        "system" : "urn:oid:2.16.840.1.113883.6.238",
        "code" : "2135-2",
        "display" : "Hispanic or Latino"
      }
    },
    {
      "url" : "text",
      "valueString" : "Hispanic or Latino"
    }],
    "url" : "http://hl7.org/fhir/us/core/StructureDefinition/us-core-ethnicity"
  },
  {
    "id" : "birthsex",
    "url" : "http://hl7.org/fhir/us/core/StructureDefinition/us-core-birthsex",
    "valueCode" : "F"
  },
  {
    "id" : "sex",
    "url" : "http://hl7.org/fhir/us/core/StructureDefinition/us-core-sex",
    "valueCode" : "248152002"
  },
  {
    "id" : "genderIdentity",
    "url" : "http://hl7.org/fhir/us/core/StructureDefinition/us-core-genderIdentity",
    "valueCodeableConcept" : {
      "coding" : [{
        "system" : "http://terminology.hl7.org/CodeSystem/v3-NullFlavor",
        "code" : "UNK"
      }]
    }
  }],
  "identifier" : [{
    "system" : "http://hospital.smarthealthit.org",
    "value" : "1032702"
  }],
  "active" : true,
  "name" : [{
    "family" : "Shaw",
    "given" : ["Amy",
    "V."]
  }],
  "telecom" : [{
    "system" : "phone",
    "value" : "555-555-5555"
  }],
  "gender" : "female",
  "_gender" : {
    "id" : "gender"
  },
  "birthDate" : "1987-02-20",
  "address" : [{
    "line" : ["183 Mountain View St"],
    "city" : "Mounds",
    "state" : "OK"
  }]
}


This US Core Provenance Profile resource communicates who, how, and when elements such as Race and Ethnicity (R/E), gender identity, etc., were collected. Note that the Target Element Extension references the element ids within the Patient resource:

{
  "resourceType" : "Provenance",
  "id" : "example-targeted-provenance",
  "meta" : {
    "profile" : ["http://hl7.org/fhir/us/core/StructureDefinition/us-core-provenance"]
  },
  "target" : [{
    "extension" : [{
      "url" : "http://hl7.org/fhir/StructureDefinition/targetElement",
      "valueUri" : "race"
    }],
    "reference" : "Patient/example-targeted-provenance"
  }],
  "recorded" : "2023-02-28T15:26:23.217+00:00",
  "agent" : [{
    "type" : {
      "coding" : [{
        "system" : "http://terminology.hl7.org/CodeSystem/provenance-participant-type",
        "code" : "informant",
        "display" : "Informant"
      }]
    },
    "who" : {
      "reference" : "Patient/example-targeted-provenance"
    }
  }],
  "entity" : [{
    "role" : "source",
    "what" : {
      "display" : "admission form"
    }
  }]
}




Footnotes

  1. This Basic Provenance guidance and US Core Provenance Profile are provisional and may change in future releases. Although it is based on feedback from the HL7 and Argonaut communities, there was only preliminary testing of this approach before publication.