eHealth Infrastructure (v2020.1)

StructureDefinition: ehealth-detached-provenance

Introduction

Detached Provenance is a replica of the ehealth-provenance resource. While the ehealth-provenance profile is nested into other resource types, the “Detached Provenance” exists as a stand-alone entity that can be created, searched, and read.

Scope and Usage

In scope of the eHealth infrastructure the purpose of the Detached Provenance resource is:

  • Marking instances of ehealth-messages read/acknowledged (see eHealth-message for further details). Eg. to mark a message as read, a DetachedProvenance instance must be created with activity=read.
  • Indicating the temporal validity of notifications using the “period” attribute (to indicate in which point in the the notification is no longer valid)
  • Specifying legal patient context

A DetachedProvenance resource must reference the related ehealth-message instance using the “target” field, and the actual message recipient in the agent/whoReference field (see example in the “Examples” tab). Only one Provenance instance may be created per ehealth-message. If a different state must be registered, the existing Provenance resource must be updated.

Java examples of searching for DetachedProvenance based on message and recipient are located on the Wiki.

Formal Views of Profile Content

The official URL for this profile is:

http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-detached-provenance

This profile builds on Provenance.

This profile was published on Tue Feb 04 09:11:17 UTC 2020 as a draft by ehealth.sundhed.dk.

Description of Profiles, Differentials, Snapshots, and how the XML and JSON presentations work.

This structure is derived from Provenance

Summary

Structures

This structure refers to these other structures:

 

Terminology Bindings

PathConformanceValueSet
Provenance.languageextensibleCommon Languages
Max Binding: All Languages
Provenance.reasonextensiblePurposeOfUse
Provenance.activityextensibleProvenanceActivityType
Provenance.agent.roleextensibleSecurityRoleType
Provenance.agent.relatedAgentTypeexamplev3 Code System RoleLinkType
Provenance.entity.rolerequiredProvenanceEntityRole

Constraints

IdPathDetailsRequirements
dom-2ProvenanceIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-1ProvenanceIf the resource is contained in another resource, it SHALL NOT contain any narrative
: contained.text.empty()
dom-4ProvenanceIf a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated
: contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()
dom-3ProvenanceIf the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource
: contained.where(('#'+id in %resource.descendants().reference).not()).empty()
ele-1Provenance.agentAll FHIR elements must have a @value or children
: hasValue() | (children().count() > id.count())
ele-1Provenance.entityAll FHIR elements must have a @value or children
: hasValue() | (children().count() > id.count())
.