Provenance: Implementation Guidance
Usage
The Provenance resource is used to carry the relevant history of the triage journey. The full history of the journey will be available in the GuidanceResponse.outputParameters
and the ServiceDefinition.$evaluate.inputData
, but the key steps in the journey will be carried as the referralRequest.relevantHistory
. It will be the decision of the CDSS which assertions are most relevant, and only these will be added to the Provenance
resource. In general, it is expected that positive statements driving the result will be captured as the referralRequest.relevantHistory
. The CDSS should consider whether a particular assertion has value for another clinical user - only if it does, should it be added to the relevant history (and so to the Provenance
resource).
Each assertion which is relevant to the history of the ReferralRequest
will be carried as an independent Provenance
resource, so the relevantHistory may have multiple Provenance
resources, each identifying a key step.
The target of the Provenance
will be the assertion. The agent will always be the CDSS, and the entity will be whichever QuestionnaireResponses
drove the assertion.
The table below details implementation guidance for this resource in the scope of this implementation guide:
Name | Cardinality | Type | FHIR Documentation | CDS Implementation Guidance |
---|---|---|---|---|
id |
0..1 |
id | Logical id of this artifact | Note that this will always be populated except when the resource is being created (initial creation call) |
meta |
0..1 |
Meta | Metadata about the resource | |
implicitRules |
0..1 |
uri | A set of rules under which this content was created | |
language |
0..1 |
code | Language of the resource content. Common Languages (Extensible but limited to All Languages) |
|
text |
0..1 |
Narrative | Text summary of the resource, for human interpretation | |
contained |
0..* |
Resource | Contained, inline Resources | This SHOULD NOT be populated |
extension |
0..* |
Extension | Additional Content defined by implementations | |
modifierExtension |
0..* |
Extension | Extensions that cannot be ignored | |
target |
1..* |
Reference(Any) | Target Reference(s) (usually version specific) | This MUST be populated by the CDSS and must carry the logical ID of the assertion (typically Observation) that was generated or updated as a key step in this triage journey. |
period |
0..1 |
Period | When the activity occurred | This MUST NOT be populated. |
recorded |
1..1 |
instant | When the activity was recorded/updated | This MUST be populated by the CDSS with the time at which the assertion was recorded. |
policy |
0..* |
uri | Policy or plan the activity was defined by | This MUST NOT be populated. |
location |
0..1 |
Reference (Location) |
Where the activity occurred, if relevant | This MUST NOT be populated. |
reason |
0..* |
Coding | Reason the activity is occurring PurposeOfUse (Extensible) | This SHOULD be NULL |
activity |
0..1 |
Coding | Activity that occurred ProvenanceActivityType (Extensible) | This SHOULD be NULL |
agent |
1..* |
BackboneElement | Actor involved | |
role |
0..* |
CodeableConcept | What the agent's role was SecurityRoleType (Extensible) | This MUST NOT be populated. |
who[x] |
1..1 |
whoUri uri whoReference Reference (Practitioner | RelatedPerson | Patient | Device | Organization) |
Who participated | This MUST be if reference type device .
The device MUST be the CDSS. |
onBehalfOf[x] |
0..1 |
onBehalfOfUri uri onBehalfOfReference Reference (Practitioner | RelatedPerson | Patient | Device | Organization) |
Who participated | MUST be populated with Organization of ServiceProvider |
relatedAgentType |
0..1 |
CodeableConcept | Type of relationship between agents v3 Code System RoleLinkType (Example) | This MUST NOT be populated. |
entity |
0..* |
BackboneElement | An entity used in this activity | This MUST NOT be populated. |
role |
1..1 |
code | derivation | revision | quotation | source | removal ProvenanceEntityRole (Required) | This MUST NOT be populated. |
what[x] |
1..1 |
whatUri uri whatReference Reference(Any) whatIdentifier Identifier |
Identity of entity | This MUST NOT be populated. |
agent |
0..* |
BackboneElement | Entity is attributed to this agent | This MUST NOT be populated. |
signature |
0..* |
Signature | Signature on target | This element carries a digital signature on the target Reference(s). The signer SHOULD match a Provenance.agent |