DK MedCom Messaging
2.1.0 - release Denmark flag

This page is part of the DK MedCom Messaging (v2.1.0: Release) based on FHIR R4. The current version which supercedes this version is 1.0.3. For a full list of available versions, see the Directory of published versions

Resource Profile: MedComMessagingProvenance

Official URL: http://medcomfhir.dk/ig/messaging/StructureDefinition/medcom-messaging-provenance Version: 2.1.0
Active as of 2023-10-31 Computable Name: MedComMessagingProvenance

Provenance information about the messages preceeding the current message

Scope and usage

This profile is used as the Provenance resource for MedCom FHIR messages. The Provenance resource tracks information about the activity what was created, revised, or deleted, while referencing the current message and previous messages if such exist. This is why the Provenance resource is valuable in MedCom messaging.

MedComMessagingProvenance describes the activity and history of a message. The element Provenance.agent.who contains information about the organisation that was involved in the activity, the element Provenance.target references the MessageHeader in the current message, and the element Provenance.what references the event that initiated a message e.g., a previous message.

The figure below illustrates the references from the Provenance resource.

MedComMessagingProvenance handles information about the involved organization in the element *who*, references the MessageHeader related to current message in the element *target*, and references to the event that initiated a message in the element *what*.

Please refer to the tab “Snapshot Table(Must support)” below for the definition of the required content of a MedComMessagingProvenance.

Activity

In MedCom messaging, the Provenance.target shall always be a reference to a MedComMessagingMessageHeader or an inherited of MedComMessagingMessageHeader. The target references the resources on which the activity has occurred. For instances if Provenance.activity is ‘new-message’, it describes that the message referenced from the Messageheader is a new message.

The activitycodes used to describe the activity of the MedCom message may differ between standard e.g. HospitalNotification and CareCommunication. Due to the different requirements of activities in a standard, it should be expected that there will be different invariants pointing at specific ValueSets for the given standard.

Provenance.agent describes the actor who is responsible for the activity that took place, by referencing the organisation responsible for the activity. The referenced organisation shall be an MedComMessagingOrganization.

History

MedComMessagingProvenance handles the message history in the Provenacne.entity element. This element shall be included if the message is a response to a previous message. In this case the element Provenance.entity.role is used to describe how the entity is used in the message. Provenance.entity.role shall be:

  • revision when a message is a response, a correction, or a forwarding.
  • removal when the message is a cancellation of a previously send message.

When a message is a response to a previous message, the previous message shall be referenced from the element Provenance.entity.what. The reference depends on the type of the previous message, which can be a MedCom FHIR message or a EDIFACT/OIOXML message. In the latter case, the reference shall be [lokationsnummer]#[brevid].

Timestamps

In MedComMessagingProvenance there are two timestamps, that represents the date and time the message was sent but in two different ways. Provenance.occuredDateTime is a human readable date and time and Provenance.recorded is a machine readable date and time.

Usage:

Formal Views of Profile Content

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

This structure is derived from Provenance

NameFlagsCard.TypeDescription & Constraintsdoco
.. Provenance 0..*ProvenanceWho, What, When for a set of resources
... text S0..1NarrativeText summary of the resource, for human interpretation
... target S1..1Reference(MedComMessagingMessageHeader)Targets the MedComMessagingMessageHeader from the current message.
... Slices for occurred[x] 1..1dateTimeWhen the activity occurred
Slice: Unordered, Open by type:$this
.... occurred[x]:occurredDateTime S1..1dateTimeA human readable date and time for when the message is sent. Shall include a date, a time and timezone.
... activity S1..1CodeableConceptActivity that occurred
Binding: MedComMessagingActivityCodes (required)
.... coding S1..*CodingCode defined by a terminology system
..... code S1..1codeSymbol in syntax defined by the system
... agent S1..*BackboneElementThe actors involved in the activity taking place
.... who S1..1Reference(MedComMessagingOrganization) {b}A reference to the actor of the activity, which shall be a MedComMessagingOrganization. If more actors has been involved, the element must be sliced.
... entity S0..*BackboneElementAn entity used in this activity
.... role S1..1codeWhen a message is a response, a correction or a forwarding message the role shall be 'revision' and when the message is a cancellation the role shall be 'removal'.
.... what S1..1Reference(Resource)A reference to the previous message. If the previous message is a FHIR message, the reference element must be used and if the previous message is an EDIFACT or OIOXML, the identifier element must be used.
..... reference S0..1stringIf the previous message is a FHIR message, this element must hold the MessageHeader.id from previous message.
..... identifier S0..1IdentifierIf previous message is EDIFACT or OIOXML, this element must be expressed as [lokationsnummer]#[brevid] from the EDIFACT or OIOXML message.

doco Documentation for this format

Terminology Bindings (Differential)

PathConformanceValueSet
Provenance.activityrequiredMedComMessagingActivityCodes
NameFlagsCard.TypeDescription & Constraintsdoco
.. Provenance 0..*ProvenanceWho, What, When for a set of resources
... implicitRules ?!Σ0..1uriA set of rules under which this content was created
... text S0..1NarrativeText summary of the resource, for human interpretation
... modifierExtension ?!0..*ExtensionExtensions that cannot be ignored
... Slices for occurred[x] 1..1dateTimeWhen the activity occurred
Slice: Unordered, Closed by type:$this
.... occurred[x]:occurredDateTime S1..1dateTimeA human readable date and time for when the message is sent. Shall include a date, a time and timezone.
... recorded SΣ1..1instantA system readable date and time for when the message is sent.
... activity S1..1CodeableConceptActivity that occurred
Binding: MedComMessagingActivityCodes (required)
.... coding SΣ1..*CodingCode defined by a terminology system
..... code SΣ1..1codeSymbol in syntax defined by the system
... agent S1..*BackboneElementThe actors involved in the activity taking place
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... who SΣ1..1Reference(MedComMessagingOrganization) {b}A reference to the actor of the activity, which shall be a MedComMessagingOrganization. If more actors has been involved, the element must be sliced.
... entity S0..*BackboneElementAn entity used in this activity
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... role SΣ1..1codeWhen a message is a response, a correction or a forwarding message the role shall be 'revision' and when the message is a cancellation the role shall be 'removal'.
Binding: ProvenanceEntityRole (required): How an entity was used in an activity.

.... what SΣ1..1Reference(Resource)A reference to the previous message. If the previous message is a FHIR message, the reference element must be used and if the previous message is an EDIFACT or OIOXML, the identifier element must be used.
..... reference SΣC0..1stringIf the previous message is a FHIR message, this element must hold the MessageHeader.id from previous message.
..... identifier SΣ0..1IdentifierIf previous message is EDIFACT or OIOXML, this element must be expressed as [lokationsnummer]#[brevid] from the EDIFACT or OIOXML message.

doco Documentation for this format

Terminology Bindings

PathConformanceValueSet
Provenance.activityrequiredMedComMessagingActivityCodes
Provenance.entity.rolerequiredProvenanceEntityRole

Constraints

IdGradePath(s)DetailsRequirements
dom-2errorProvenanceIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorProvenanceIf the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource
: contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
dom-4errorProvenanceIf 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-5errorProvenanceIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6best practiceProvenanceA resource should have narrative for robust management
: text.`div`.exists()
ele-1error**ALL** elementsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1error**ALL** extensionsMust have either extensions or value[x], not both
: extension.exists() != value.exists()
NameFlagsCard.TypeDescription & Constraintsdoco
.. Provenance 0..*ProvenanceWho, What, When for a set of resources
... id Σ0..1idLogical id of this artifact
... meta Σ0..1MetaMetadata about the resource
... implicitRules ?!Σ0..1uriA set of rules under which this content was created
... text S0..1NarrativeText summary of the resource, for human interpretation
... contained 0..*ResourceContained, inline Resources
... extension 0..*ExtensionAdditional content defined by implementations
... modifierExtension ?!0..*ExtensionExtensions that cannot be ignored
... target SΣ1..1Reference(MedComMessagingMessageHeader)Targets the MedComMessagingMessageHeader from the current message.
... Slices for occurred[x] 1..1dateTimeWhen the activity occurred
Slice: Unordered, Closed by type:$this
.... occurred[x]:occurredDateTime S1..1dateTimeA human readable date and time for when the message is sent. Shall include a date, a time and timezone.
... recorded SΣ1..1instantA system readable date and time for when the message is sent.
... policy 0..*uriPolicy or plan the activity was defined by
... location 0..1Reference(Location)Where the activity occurred, if relevant
... reason 0..*CodeableConceptReason the activity is occurring
Binding: PurposeOfUse (extensible): The reason the activity took place.


... activity S1..1CodeableConceptActivity that occurred
Binding: MedComMessagingActivityCodes (required)
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
.... coding SΣ1..*CodingCode defined by a terminology system
..... id 0..1stringUnique id for inter-element referencing
..... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
..... system Σ0..1uriIdentity of the terminology system
..... version Σ0..1stringVersion of the system - if relevant
..... code SΣ1..1codeSymbol in syntax defined by the system
..... display Σ0..1stringRepresentation defined by the system
..... userSelected Σ0..1booleanIf this coding was chosen directly by the user
.... text Σ0..1stringPlain text representation of the concept
... agent S1..*BackboneElementThe actors involved in the activity taking place
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... type Σ0..1CodeableConceptHow the agent participated
Binding: ProvenanceParticipantType (extensible): The type of participation that a provenance agent played with respect to the activity.

.... role 0..*CodeableConceptWhat the agents role was
Binding: SecurityRoleType (example): The role that a provenance agent played with respect to the activity.


.... who SΣ1..1Reference(MedComMessagingOrganization) {b}A reference to the actor of the activity, which shall be a MedComMessagingOrganization. If more actors has been involved, the element must be sliced.
.... onBehalfOf 0..1Reference(Practitioner | PractitionerRole | RelatedPerson | Patient | Device | Organization)Who the agent is representing
... entity S0..*BackboneElementAn entity used in this activity
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... role SΣ1..1codeWhen a message is a response, a correction or a forwarding message the role shall be 'revision' and when the message is a cancellation the role shall be 'removal'.
Binding: ProvenanceEntityRole (required): How an entity was used in an activity.

.... what SΣ1..1Reference(Resource)A reference to the previous message. If the previous message is a FHIR message, the reference element must be used and if the previous message is an EDIFACT or OIOXML, the identifier element must be used.
..... id 0..1stringUnique id for inter-element referencing
..... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
..... reference SΣC0..1stringIf the previous message is a FHIR message, this element must hold the MessageHeader.id from previous message.
..... type Σ0..1uriType the reference refers to (e.g. "Patient")
Binding: ResourceType (extensible): Aa resource (or, for logical models, the URI of the logical model).

..... identifier SΣ0..1IdentifierIf previous message is EDIFACT or OIOXML, this element must be expressed as [lokationsnummer]#[brevid] from the EDIFACT or OIOXML message.
..... display Σ0..1stringText alternative for the resource
.... agent 0..*See agent (Provenance)Entity is attributed to this agent
... signature 0..*SignatureSignature on target

doco Documentation for this format

Terminology Bindings

PathConformanceValueSet
Provenance.languagepreferredCommonLanguages
Additional Bindings Purpose
AllLanguages Max Binding
Provenance.reasonextensiblePurposeOfUse
Provenance.activityrequiredMedComMessagingActivityCodes
Provenance.agent.typeextensibleProvenanceParticipantType
Provenance.agent.roleexampleSecurityRoleType
Provenance.entity.rolerequiredProvenanceEntityRole
Provenance.entity.what.typeextensibleResourceType

Constraints

IdGradePath(s)DetailsRequirements
dom-2errorProvenanceIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorProvenanceIf the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource
: contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
dom-4errorProvenanceIf 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-5errorProvenanceIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6best practiceProvenanceA resource should have narrative for robust management
: text.`div`.exists()
ele-1error**ALL** elementsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1error**ALL** extensionsMust have either extensions or value[x], not both
: extension.exists() != value.exists()

This structure is derived from Provenance

Summary

Mandatory: 5 elements
Must-Support: 14 elements

Structures

This structure refers to these other structures:

Slices

This structure defines the following Slices:

  • The element Provenance.occurred[x] is sliced based on the value of type:$this

Differential View

This structure is derived from Provenance

NameFlagsCard.TypeDescription & Constraintsdoco
.. Provenance 0..*ProvenanceWho, What, When for a set of resources
... text S0..1NarrativeText summary of the resource, for human interpretation
... target S1..1Reference(MedComMessagingMessageHeader)Targets the MedComMessagingMessageHeader from the current message.
... Slices for occurred[x] 1..1dateTimeWhen the activity occurred
Slice: Unordered, Open by type:$this
.... occurred[x]:occurredDateTime S1..1dateTimeA human readable date and time for when the message is sent. Shall include a date, a time and timezone.
... activity S1..1CodeableConceptActivity that occurred
Binding: MedComMessagingActivityCodes (required)
.... coding S1..*CodingCode defined by a terminology system
..... code S1..1codeSymbol in syntax defined by the system
... agent S1..*BackboneElementThe actors involved in the activity taking place
.... who S1..1Reference(MedComMessagingOrganization) {b}A reference to the actor of the activity, which shall be a MedComMessagingOrganization. If more actors has been involved, the element must be sliced.
... entity S0..*BackboneElementAn entity used in this activity
.... role S1..1codeWhen a message is a response, a correction or a forwarding message the role shall be 'revision' and when the message is a cancellation the role shall be 'removal'.
.... what S1..1Reference(Resource)A reference to the previous message. If the previous message is a FHIR message, the reference element must be used and if the previous message is an EDIFACT or OIOXML, the identifier element must be used.
..... reference S0..1stringIf the previous message is a FHIR message, this element must hold the MessageHeader.id from previous message.
..... identifier S0..1IdentifierIf previous message is EDIFACT or OIOXML, this element must be expressed as [lokationsnummer]#[brevid] from the EDIFACT or OIOXML message.

doco Documentation for this format

Terminology Bindings (Differential)

PathConformanceValueSet
Provenance.activityrequiredMedComMessagingActivityCodes

Key Elements View

NameFlagsCard.TypeDescription & Constraintsdoco
.. Provenance 0..*ProvenanceWho, What, When for a set of resources
... implicitRules ?!Σ0..1uriA set of rules under which this content was created
... text S0..1NarrativeText summary of the resource, for human interpretation
... modifierExtension ?!0..*ExtensionExtensions that cannot be ignored
... Slices for occurred[x] 1..1dateTimeWhen the activity occurred
Slice: Unordered, Closed by type:$this
.... occurred[x]:occurredDateTime S1..1dateTimeA human readable date and time for when the message is sent. Shall include a date, a time and timezone.
... recorded SΣ1..1instantA system readable date and time for when the message is sent.
... activity S1..1CodeableConceptActivity that occurred
Binding: MedComMessagingActivityCodes (required)
.... coding SΣ1..*CodingCode defined by a terminology system
..... code SΣ1..1codeSymbol in syntax defined by the system
... agent S1..*BackboneElementThe actors involved in the activity taking place
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... who SΣ1..1Reference(MedComMessagingOrganization) {b}A reference to the actor of the activity, which shall be a MedComMessagingOrganization. If more actors has been involved, the element must be sliced.
... entity S0..*BackboneElementAn entity used in this activity
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... role SΣ1..1codeWhen a message is a response, a correction or a forwarding message the role shall be 'revision' and when the message is a cancellation the role shall be 'removal'.
Binding: ProvenanceEntityRole (required): How an entity was used in an activity.

.... what SΣ1..1Reference(Resource)A reference to the previous message. If the previous message is a FHIR message, the reference element must be used and if the previous message is an EDIFACT or OIOXML, the identifier element must be used.
..... reference SΣC0..1stringIf the previous message is a FHIR message, this element must hold the MessageHeader.id from previous message.
..... identifier SΣ0..1IdentifierIf previous message is EDIFACT or OIOXML, this element must be expressed as [lokationsnummer]#[brevid] from the EDIFACT or OIOXML message.

doco Documentation for this format

Terminology Bindings

PathConformanceValueSet
Provenance.activityrequiredMedComMessagingActivityCodes
Provenance.entity.rolerequiredProvenanceEntityRole

Constraints

IdGradePath(s)DetailsRequirements
dom-2errorProvenanceIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorProvenanceIf the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource
: contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
dom-4errorProvenanceIf 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-5errorProvenanceIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6best practiceProvenanceA resource should have narrative for robust management
: text.`div`.exists()
ele-1error**ALL** elementsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1error**ALL** extensionsMust have either extensions or value[x], not both
: extension.exists() != value.exists()

Snapshot View

NameFlagsCard.TypeDescription & Constraintsdoco
.. Provenance 0..*ProvenanceWho, What, When for a set of resources
... id Σ0..1idLogical id of this artifact
... meta Σ0..1MetaMetadata about the resource
... implicitRules ?!Σ0..1uriA set of rules under which this content was created
... text S0..1NarrativeText summary of the resource, for human interpretation
... contained 0..*ResourceContained, inline Resources
... extension 0..*ExtensionAdditional content defined by implementations
... modifierExtension ?!0..*ExtensionExtensions that cannot be ignored
... target SΣ1..1Reference(MedComMessagingMessageHeader)Targets the MedComMessagingMessageHeader from the current message.
... Slices for occurred[x] 1..1dateTimeWhen the activity occurred
Slice: Unordered, Closed by type:$this
.... occurred[x]:occurredDateTime S1..1dateTimeA human readable date and time for when the message is sent. Shall include a date, a time and timezone.
... recorded SΣ1..1instantA system readable date and time for when the message is sent.
... policy 0..*uriPolicy or plan the activity was defined by
... location 0..1Reference(Location)Where the activity occurred, if relevant
... reason 0..*CodeableConceptReason the activity is occurring
Binding: PurposeOfUse (extensible): The reason the activity took place.


... activity S1..1CodeableConceptActivity that occurred
Binding: MedComMessagingActivityCodes (required)
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
.... coding SΣ1..*CodingCode defined by a terminology system
..... id 0..1stringUnique id for inter-element referencing
..... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
..... system Σ0..1uriIdentity of the terminology system
..... version Σ0..1stringVersion of the system - if relevant
..... code SΣ1..1codeSymbol in syntax defined by the system
..... display Σ0..1stringRepresentation defined by the system
..... userSelected Σ0..1booleanIf this coding was chosen directly by the user
.... text Σ0..1stringPlain text representation of the concept
... agent S1..*BackboneElementThe actors involved in the activity taking place
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... type Σ0..1CodeableConceptHow the agent participated
Binding: ProvenanceParticipantType (extensible): The type of participation that a provenance agent played with respect to the activity.

.... role 0..*CodeableConceptWhat the agents role was
Binding: SecurityRoleType (example): The role that a provenance agent played with respect to the activity.


.... who SΣ1..1Reference(MedComMessagingOrganization) {b}A reference to the actor of the activity, which shall be a MedComMessagingOrganization. If more actors has been involved, the element must be sliced.
.... onBehalfOf 0..1Reference(Practitioner | PractitionerRole | RelatedPerson | Patient | Device | Organization)Who the agent is representing
... entity S0..*BackboneElementAn entity used in this activity
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... role SΣ1..1codeWhen a message is a response, a correction or a forwarding message the role shall be 'revision' and when the message is a cancellation the role shall be 'removal'.
Binding: ProvenanceEntityRole (required): How an entity was used in an activity.

.... what SΣ1..1Reference(Resource)A reference to the previous message. If the previous message is a FHIR message, the reference element must be used and if the previous message is an EDIFACT or OIOXML, the identifier element must be used.
..... id 0..1stringUnique id for inter-element referencing
..... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
..... reference SΣC0..1stringIf the previous message is a FHIR message, this element must hold the MessageHeader.id from previous message.
..... type Σ0..1uriType the reference refers to (e.g. "Patient")
Binding: ResourceType (extensible): Aa resource (or, for logical models, the URI of the logical model).

..... identifier SΣ0..1IdentifierIf previous message is EDIFACT or OIOXML, this element must be expressed as [lokationsnummer]#[brevid] from the EDIFACT or OIOXML message.
..... display Σ0..1stringText alternative for the resource
.... agent 0..*See agent (Provenance)Entity is attributed to this agent
... signature 0..*SignatureSignature on target

doco Documentation for this format

Terminology Bindings

PathConformanceValueSet
Provenance.languagepreferredCommonLanguages
Additional Bindings Purpose
AllLanguages Max Binding
Provenance.reasonextensiblePurposeOfUse
Provenance.activityrequiredMedComMessagingActivityCodes
Provenance.agent.typeextensibleProvenanceParticipantType
Provenance.agent.roleexampleSecurityRoleType
Provenance.entity.rolerequiredProvenanceEntityRole
Provenance.entity.what.typeextensibleResourceType

Constraints

IdGradePath(s)DetailsRequirements
dom-2errorProvenanceIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorProvenanceIf the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource
: contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
dom-4errorProvenanceIf 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-5errorProvenanceIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6best practiceProvenanceA resource should have narrative for robust management
: text.`div`.exists()
ele-1error**ALL** elementsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1error**ALL** extensionsMust have either extensions or value[x], not both
: extension.exists() != value.exists()

This structure is derived from Provenance

Summary

Mandatory: 5 elements
Must-Support: 14 elements

Structures

This structure refers to these other structures:

Slices

This structure defines the following Slices:

  • The element Provenance.occurred[x] is sliced based on the value of type:$this

 

Other representations of profile: CSV, Excel, Schematron