
**Example Usage Scenarios:**

The following are example usage scenarios for this profile:

-   Query for the Provenance records associated with an Allergy
-   Query for the Provenance records associated with a Problem

### Mandatory and Must Support Data Elements

The following data elements are mandatory (i.e., data MUST be present) or must be supported if the data is present in the sending system ([Must Support] definition). They are presented below in a simple human-readable explanation. Profile specific guidance and examples are provided as well. The [Formal Views] below provides the formal summary, definitions, and terminology requirements.

**Each Provenance Must Have:**

1.  a reference to the resource(s) the Provenance record is supporting (target)<sup>1</sup>
1. a date and time for the activity

**Each Provenance Must Support:**

1. the author organization responsible for the information
1. the transmitter that provided the information<sup>2</sup>
1. the transmitter organization responsible for the transmission (if the transmitter is a device, the transmitter organization must also be valued).

<sup>1,2</sup> see guidance below

### Profile Specific Implementation Guidance

This section provides detailed implementation guidance for the US Core Profile to support implementation and certification.

<!-- ================================================================
 The following Provenance list is generated by the liquid script below.
 The source data is at temp/pages/_data/structuredefinitions.json
 which is automatically generated by the build

The "black_list" below is manually updated as needed when new profiles are added to the guide.
====================================================================== -->

{% assign black_list = "Extension,Provenance,Medication,Organization,Practitioner,PractitionerRole,Location,Specimen,Questionnaire" | split:"," -%}
{% assign resource_list = "" -%}
{%- for sd_hash in site.data.structuredefinitions -%}
  {%- assign sd = sd_hash[1] -%}
  {%- unless black_list contains sd.type -%}
       {% assign resource_list = resource_list | append: sd.type | append: "," -%}
  {%- endunless -%}
{%- endfor -%}
<ul>
<li> <sup>1</sup>The US Core Provenance resource <strong>SHALL</strong> be supported for these US Core resource types:<sup><a id="CONF-0489" href="requirements.html#CONF-0489">§</a></sup>
<ul id="prov-white-list">
{% assign resource_list = resource_list | split: "," | uniq | sort -%}
{% for r in  resource_list %}
    <li>{{r}}</li>
{% endfor %}
</ul>
</li>
</ul>

<!-- ========================== end liquid ====================== -->

- <sup>2</sup>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.<sup>[§][CONF-0508],[§][CONF-0509]</sup>
- Other information can be tracked such as what activity has occurred in `Provenance.activity`, and details about where the entity came from (for example, a document source's identity and role) in `Provenance.entity`.<sup>[§][CONF-0893]</sup>

{% include link-list.md %}
