Release 4B R5 Final QA

This page is part of the FHIR Specification (v4.3.0: R4B (v5.0.0-draft-final: Final QA Preview for R5 - STU see ballot notes ). The current version which supercedes this version is 5.0.0 . For a full list of available versions, see the Directory of published versions . Page versions: R5 R4B R4

Security icon Work Group   Maturity Level : 0 Trial Use Use Context : Any

The official canonical URL for this profile is:

http://hl7.org/fhir/StructureDefinition/provenance-relevant-history

Guidance on using Provenance for related history elements to provide key events that have happened over the lifespan of the resource - see the use of this pattern in the [Request Pattern](request.html#history)

This profile was published on Tue, Dec 3, 2013 00:00+1100 as a draft by Health Level Seven International.

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

This structure is derived from Provenance .

Summary

Mandatory: 3 elements (+2 nested mandatory elements)
Must-Support: 9 elements

Slices

This structure defines the following Slices :

  • The element Provenance.agent is sliced based on the value of value:type

This structure is derived from indicates the differences between this profile and the base Provenance . structure.

Name Flags Card. Type Description & Constraints doco
. . Provenance 0..* Provenance Who, What, When for a set of resources
. . . target S 1 .. * Reference ( Resource ) Resource version
. . . occurred[x] S 1..1 dateTime When the activity occurred
. . . reason authorization S 0 .. * CodeableConcept CodeableReference () Reason Authorization (purposeOfUse) related to the activity is occurring event
. . . Slices for agent S 1 .. * BackboneElement Who was involved with change
Slice: Unordered, Open by value:type
. . . . agent:All Slices Content/Rules for all slices
. . . . . type S 1..1 CodeableConcept How the agent participated
Binding: Provenance Event History Agent Role Codes ( extensible ): Types of roles that agents can play when tracking event history using Provenance.

. . . . agent:Author S 0..1 BackboneElement Author
. . . . . type S 1..1 CodeableConcept How the agent participated
Required Pattern: At least the following
. . . . . . coding 1..* Coding Code defined by a terminology system
Fixed Value: (complex)
. . . . . . . system 1..1 uri Identity of the terminology system
Fixed Value: http://terminology.hl7.org/CodeSystem/v3-ParticipationType
. . . . . . . code 1..1 code Symbol in syntax defined by the system
Fixed Value: AUT
. . . . . who S 1..1 Reference ( Practitioner | PractitionerRole | RelatedPerson Organization | CareTeam | Patient | Device | Organization RelatedPerson ) Author Reference

doco Documentation for this format icon

This provides the consolidated view (aka snapshot) of the profile after applying the changes in this profile to the base Provenance structure.

Who Who the Who the derivation |
Name Flags Card. Type Description & Constraints doco
. . Provenance 0..* Provenance Who, What, When for a set of resources
. . . id Σ 0..1 id Logical id of this artifact
. . . meta Σ 0..1 Meta Metadata about the resource
. . . implicitRules ?! Σ 0..1 uri A set of rules under which this content was created
. . . text 0..1 Narrative Text summary of the resource, for human interpretation
. . . contained 0..* Resource Contained, inline Resources
. . . extension 0..* Extension Additional content defined by implementations
. . . modifierExtension ?! Σ 0..* Extension Extensions that cannot be ignored
. . . target S Σ 1..* Reference ( Resource ) Resource version
. . . occurred[x] S 1..1 dateTime When the activity occurred
. . . recorded Σ 1..1 0..1 instant When the activity was recorded / updated
. . . policy 0..* uri Policy or plan the activity was defined by
. . . location 0..1 Reference ( Location ) Where the activity occurred, if relevant
. . reason . authorization S 0..* CodeableConcept CodeableReference () Reason Authorization (purposeOfUse) related to the activity is occurring event
Binding: PurposeOfUse icon ( extensible example ): The reason authorized purposeOfUse for the activity took place. activity.


. . . activity S 1..1 CodeableConcept Record activity
Binding: Provenance History Record Activity Codes ( extensible ): Types of activities that are relevant for tracking event history using Provenance.

. . . basedOn TU 0..* Reference ( CarePlan | DeviceRequest | ImmunizationRecommendation | MedicationRequest | NutritionOrder | ServiceRequest | Task ) Workflow authorization within which this event occurred
... patient TU 0..1 Reference ( Patient ) The patient is the subject of the data created/updated (.target) by the activity
... encounter TU 0..1 Reference ( Encounter ) Encounter within which this event occurred or which the event is tightly associated
. . . Slices for agent S Σ C icon 1 .. * BackboneElement Who was involved with change
Slice: Unordered, Open by value:type
. . . . agent:All Slices Content/Rules for all slices
. . . . . id 0..1 string Unique id for inter-element referencing
. . . . . extension 0..* Extension Additional content defined by implementations
. . . . . modifierExtension ?! Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
. . . . . type S Σ 1..1 CodeableConcept How the agent participated
Binding: Provenance Event History Agent Role Codes ( extensible ): Types of roles that agents can play when tracking event history using Provenance.

. . . . . role 0..* CodeableConcept What the agents role was
Binding: SecurityRoleType Security Role Type ( example ): The role that a provenance agent played with respect to the activity.


. . . . . who Σ C icon 1..1 Reference ( Practitioner | PractitionerRole | RelatedPerson Organization | CareTeam | Patient | Device | Organization RelatedPerson ) The agent that participated in the event
. . . . . onBehalfOf C icon 0..1 Reference ( Practitioner | PractitionerRole | RelatedPerson | Patient Organization | Device CareTeam | Organization Patient ) The agent is representing that delegated
. . . . agent:Author S Σ C icon 0..1 BackboneElement Author
. . . . . id 0..1 string Unique id for inter-element referencing
. . . . . extension 0..* Extension Additional content defined by implementations
. . . . . modifierExtension ?! Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
. . . . . type S Σ 1..1 CodeableConcept How the agent participated
Binding: ProvenanceParticipantType Participation Role Type ( extensible example ): The type of participation that a provenance agent played with respect to the activity.


Required Pattern: At least the following
. . . . . . id 0..1 string Unique id for inter-element referencing
. . . . . . extension 0..* Extension Additional content defined by implementations
. . . . . . coding 1..* Coding Code defined by a terminology system
Fixed Value: (complex)
. . . . . . . id 0..1 string Unique id for inter-element referencing
. . . . . . . extension 0..* Extension Additional content defined by implementations
. . . . . . . system 1..1 uri Identity of the terminology system
Fixed Value: http://terminology.hl7.org/CodeSystem/v3-ParticipationType
. . . . . . . version 0..1 string Version of the system - if relevant
. . . . . . . code 1..1 code Symbol in syntax defined by the system
Fixed Value: AUT
. . . . . . . display 0..1 string Representation defined by the system
. . . . . . . userSelected 0..1 boolean If this coding was chosen directly by the user
. . . . . . text 0..1 string Plain text representation of the concept
. . . . . role 0..* CodeableConcept What the agents role was
Binding: SecurityRoleType Security Role Type ( example ): The role that a provenance agent played with respect to the activity.


. . . . . who S Σ C icon 1..1 Reference ( Practitioner | PractitionerRole | RelatedPerson Organization | CareTeam | Patient | Device | Organization RelatedPerson ) Author Reference
. . . . . onBehalfOf C icon 0..1 Reference ( Practitioner | PractitionerRole | RelatedPerson | Patient Organization | Device CareTeam | Organization Patient ) The agent is representing that delegated
. . . entity Σ TU 0..* BackboneElement An entity used in this activity
. . . . id 0..1 string Unique id for inter-element referencing
. . . . extension 0..* Extension Additional content defined by implementations
. . . . modifierExtension ?! Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
. . . . role Σ 1..1 code revision | quotation | source | instantiates | removal
Binding: ProvenanceEntityRole Provenance Entity Role ( required ): How an entity was used in an activity.

. . . . what Σ 1..1 Reference ( Resource ) Identity of entity
. . . . agent 0..* See agent (Provenance) Entity is attributed to this agent
. . . signature TU 0..* Signature Signature on target

doco Documentation for this format icon
<!-- Provenance Relevant History -->

<!-- ProvenanceRelevantHistory -->doco


<Provenance xmlns="http://hl7.org/fhir"
>
  <!-- from Element: extension -->
 <id value="[id]"/><!-- 0..1 Logical id of this artifact -->
 <</meta>
 <
 <
 <

 <meta><!-- I 0..1 Meta Metadata about the resource --></meta>
 <implicitRules value="[uri]"/><!-- I 0..1 A set of rules under which this content was created -->
 <language value="[code]"/><!-- I 0..1 Language of the resource content   -->
 <text><!-- I 0..1 Narrative 

     Text summary of the resource, for human interpretation --></text>
 <</contained>
 <<a href="provenance-relevant-history-definitions.html#Provenance.modifierExtension" title="May be used to represent additional information that is not part of the basic definition of the resource and that modifies the understanding of the element that contains it and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer is allowed to define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.

 <contained><!-- 0..* Resource Contained, inline Resources --></contained>
 <Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself) (this element modifies the meaning of other elements)" class="dict"></modifierExtension>
 <</target>
 <
 <
 <
 <

Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself) (this element modifies the meaning of other elements)" class="dict">modifierExtension><!-- I 0..* Extension  Extensions that cannot be ignored  --></modifierExtension>
 <target><!-- I 1..* Reference(Resource) Resource version --></target>
 <occurredDateTime value="[dateTime]"/><!-- I 1..1 When the activity occurred -->
 <recorded value="[instant]"/><!-- I 0..1 When the activity was recorded / updated -->
 <policy value="[uri]"/><!-- I 0..* Policy or plan the activity was defined by -->
 <location><!-- I 0..1 Reference(Location) 

     Where the activity occurred, if relevant --></location>
 <</reason>
 <</activity>

 <authorization><!-- I 0..* CodeableReference Authorization (purposeOfUse) related to the event icon   --></authorization>
 <activity><!-- I 1..1 CodeableConcept Record activity   --></activity>
 <basedOn><!-- I 0..* Reference(CarePlan) 
     Workflow authorization within which this event occurred --></basedOn>
 <patient><!-- I 0..1 Reference(Patient) 
     The patient is the subject of the data created/updated (.target) by the activity --></patient>
 <encounter><!-- I 0..1 Reference(Encounter) 
     Encounter within which this event occurred or which the event is tightly associated --></encounter>

 <-- agent sliced by value:type  in the specified orderOpen-->
 <
  <<a href="provenance-relevant-history-definitions.html#Provenance.agent.modifierExtension" title="May be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.

 <agent> I 0..1 BackboneElement  <!-- I 0..1 Author -->
  <Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself) (this element modifies the meaning of other elements)" class="dict"></modifierExtension>
  <</type>
  <</role>
  <</who>
  <
      Who the agent is representing</onBehalfOf>

Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself) (this element modifies the meaning of other elements)" class="dict">modifierExtension><!-- I 0..* Extension  Extensions that cannot be ignored even if unrecognized  --></modifierExtension>
  <type><!-- I 1..1 CodeableConcept How the agent participated   --></type>
  <role><!-- I 0..* CodeableConcept What the agents role was   --></role>
  <who><!-- I 1..1 Reference(Practitioner) Author Reference --></who>
  <onBehalfOf><!-- I 0..1 Reference(Practitioner) 
      The agent that delegated --></onBehalfOf>

 </agent>
 <
  <<a href="provenance-relevant-history-definitions.html#Provenance.entity.modifierExtension" title="May be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.

 <entity> I 0..* BackboneElement  <!-- I 0..* An entity used in this activity -->
  <Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself) (this element modifies the meaning of other elements)" class="dict"></modifierExtension>
  <
  <</what>
  <</agent>

Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself) (this element modifies the meaning of other elements)" class="dict">modifierExtension><!-- I 0..* Extension  Extensions that cannot be ignored even if unrecognized  --></modifierExtension>
  <role value="[code]"/><!-- I 1..1 revision | quotation | source | instantiates | removal   -->
  <what><!-- I 1..1 Reference(Resource) Identity of entity --></what>
  <agent><!-- See http://hl7.org/fhir/StructureDefinition/Provenance#Provenance.agent  Entity is attributed to this agent --></agent>

 </entity>
 <</signature>

 <signature><!-- I 0..* Signature Signature on target --></signature>

</Provenance>
{ // 

{ // ProvenanceRelevantHistory

  // from Element: extension
    "
    "
    "
    "
    "
    "<a href="provenance-relevant-history-definitions.html#Provenance.modifierExtension" title="May be used to represent additional information that is not part of the basic definition of the resource and that modifies the understanding of the element that contains it and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer is allowed to define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.

    "meta" : { Meta }, // IMetadata about the resource
    "implicitRules" : "<uri>", // IA set of rules under which this content was created
    "language" : "<code>", // ILanguage of the resource content
    "text" : { Narrative }, // IText summary of the resource, for human interpretation
    "contained" : [{ Resource }], //Contained, inline Resources
    "Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself) (this element modifies the meaning of other elements)" class="dict">
    "
    "
    "
    "
    "
    "
    "

Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself) (this element modifies the meaning of other elements)" class="dict">modifierExtension" : [{ Extension }], // IExtensions that cannot be ignored
    "target" : [{ Reference(Resource) }], // I R! Resource version
    "occurredDateTime" : "<dateTime>", // I R! When the activity occurred
    "recorded" : "<instant>", // IWhen the activity was recorded / updated
    "policy" : ["<uri>"], // IPolicy or plan the activity was defined by
    "location" : { Reference(Location) }, // IWhere the activity occurred, if relevant
    "authorization" : [{ CodeableReference }], // IAuthorization (purposeOfUse) related to the event icon
    "activity" : { CodeableConcept }, // I R! Record activity
    "basedOn" : [{ Reference(CarePlan) }], // IWorkflow authorization within which this event occurred
    "patient" : { Reference(Patient) }, // IThe patient is the subject of the data created/updated (.target) by the activity
    "encounter" : { Reference(Encounter) }, // IEncounter within which this event occurred or which the event is tightly associated

    "agent" : [ //  sliced by value:type  in the specified order, Open 
      { // 

      { // Author // I

        // from Element: extension
        "<a href="provenance-relevant-history-definitions.html#Provenance.agent.modifierExtension" title="May be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.

        "Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself) (this element modifies the meaning of other elements)" class="dict">
        "
        "
        "
        "

Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself) (this element modifies the meaning of other elements)" class="dict">modifierExtension" : [{ Extension }], // IExtensions that cannot be ignored even if unrecognized
        "type" : { CodeableConcept }, // I R! How the agent participated
        "role" : [{ CodeableConcept }], // IWhat the agents role was
        "who" : { Reference(Practitioner) }, // I R! Author Reference
        "onBehalfOf" : { Reference(Practitioner) } // IThe agent that delegated

      }
    ],
    "
    "

    "entity" : [{ BackboneElement }], // IAn entity used in this activity
    "signature" : [{ Signature }], // ISignature on target

  }

This structure is derived from Provenance .

Summary

Mandatory: 3 elements (+2 nested mandatory elements)
Must-Support: 9 elements

Slices

This structure defines the following Slices :

  • The element Provenance.agent is sliced based on the value of value:type

Differential View

This structure is derived from indicates the differences between this profile and the base Provenance . structure.

Name Flags Card. Type Description & Constraints doco
. . Provenance 0..* Provenance Who, What, When for a set of resources
. . . target S 1 .. * Reference ( Resource ) Resource version
. . . occurred[x] S 1..1 dateTime When the activity occurred
. . . reason authorization S 0 .. * CodeableConcept CodeableReference () Reason Authorization (purposeOfUse) related to the activity is occurring event
. . . Slices for agent S 1 .. * BackboneElement Who was involved with change
Slice: Unordered, Open by value:type
. . . . agent:All Slices Content/Rules for all slices
. . . . . type S 1..1 CodeableConcept How the agent participated
Binding: Provenance Event History Agent Role Codes ( extensible ): Types of roles that agents can play when tracking event history using Provenance.

. . . . agent:Author S 0..1 BackboneElement Author
. . . . . type S 1..1 CodeableConcept How the agent participated
Required Pattern: At least the following
. . . . . . coding 1..* Coding Code defined by a terminology system
Fixed Value: (complex)
. . . . . . . system 1..1 uri Identity of the terminology system
Fixed Value: http://terminology.hl7.org/CodeSystem/v3-ParticipationType
. . . . . . . code 1..1 code Symbol in syntax defined by the system
Fixed Value: AUT
. . . . . who S 1..1 Reference ( Practitioner | PractitionerRole | RelatedPerson Organization | CareTeam | Patient | Device | Organization RelatedPerson ) Author Reference

doco Documentation for this format icon

Snapshot View

This provides the consolidated view (aka snapshot) of the profile after applying the changes in this profile to the base Provenance structure.

Who Who the Who the derivation |
Name Flags Card. Type Description & Constraints doco
. . Provenance 0..* Provenance Who, What, When for a set of resources
. . . id Σ 0..1 id Logical id of this artifact
. . . meta Σ 0..1 Meta Metadata about the resource
. . . implicitRules ?! Σ 0..1 uri A set of rules under which this content was created
. . . text 0..1 Narrative Text summary of the resource, for human interpretation
. . . contained 0..* Resource Contained, inline Resources
. . . extension 0..* Extension Additional content defined by implementations
. . . modifierExtension ?! Σ 0..* Extension Extensions that cannot be ignored
. . . target S Σ 1..* Reference ( Resource ) Resource version
. . . occurred[x] S 1..1 dateTime When the activity occurred
. . . recorded Σ 1..1 0..1 instant When the activity was recorded / updated
. . . policy 0..* uri Policy or plan the activity was defined by
. . . location 0..1 Reference ( Location ) Where the activity occurred, if relevant
. . reason . authorization S 0..* CodeableConcept CodeableReference () Reason Authorization (purposeOfUse) related to the activity is occurring event
Binding: PurposeOfUse icon ( extensible example ): The reason authorized purposeOfUse for the activity took place. activity.


. . . activity S 1..1 CodeableConcept Record activity
Binding: Provenance History Record Activity Codes ( extensible ): Types of activities that are relevant for tracking event history using Provenance.

. . . basedOn TU 0..* Reference ( CarePlan | DeviceRequest | ImmunizationRecommendation | MedicationRequest | NutritionOrder | ServiceRequest | Task ) Workflow authorization within which this event occurred
... patient TU 0..1 Reference ( Patient ) The patient is the subject of the data created/updated (.target) by the activity
... encounter TU 0..1 Reference ( Encounter ) Encounter within which this event occurred or which the event is tightly associated
. . . Slices for agent S Σ C icon 1 .. * BackboneElement Who was involved with change
Slice: Unordered, Open by value:type
. . . . agent:All Slices Content/Rules for all slices
. . . . . id 0..1 string Unique id for inter-element referencing
. . . . . extension 0..* Extension Additional content defined by implementations
. . . . . modifierExtension ?! Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
. . . . . type S Σ 1..1 CodeableConcept How the agent participated
Binding: Provenance Event History Agent Role Codes ( extensible ): Types of roles that agents can play when tracking event history using Provenance.

. . . . . role 0..* CodeableConcept What the agents role was
Binding: SecurityRoleType Security Role Type ( example ): The role that a provenance agent played with respect to the activity.


. . . . . who Σ C icon 1..1 Reference ( Practitioner | PractitionerRole | RelatedPerson Organization | CareTeam | Patient | Device | Organization RelatedPerson ) The agent that participated in the event
. . . . . onBehalfOf C icon 0..1 Reference ( Practitioner | PractitionerRole | RelatedPerson | Patient Organization | Device CareTeam | Organization Patient ) The agent is representing that delegated
. . . . agent:Author S Σ C icon 0..1 BackboneElement Author
. . . . . id 0..1 string Unique id for inter-element referencing
. . . . . extension 0..* Extension Additional content defined by implementations
. . . . . modifierExtension ?! Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
. . . . . type S Σ 1..1 CodeableConcept How the agent participated
Binding: ProvenanceParticipantType Participation Role Type ( extensible example ): The type of participation that a provenance agent played with respect to the activity.


Required Pattern: At least the following
. . . . . . id 0..1 string Unique id for inter-element referencing
. . . . . . extension 0..* Extension Additional content defined by implementations
. . . . . . coding 1..* Coding Code defined by a terminology system
Fixed Value: (complex)
. . . . . . . id 0..1 string Unique id for inter-element referencing
. . . . . . . extension 0..* Extension Additional content defined by implementations
. . . . . . . system 1..1 uri Identity of the terminology system
Fixed Value: http://terminology.hl7.org/CodeSystem/v3-ParticipationType
. . . . . . . version 0..1 string Version of the system - if relevant
. . . . . . . code 1..1 code Symbol in syntax defined by the system
Fixed Value: AUT
. . . . . . . display 0..1 string Representation defined by the system
. . . . . . . userSelected 0..1 boolean If this coding was chosen directly by the user
. . . . . . text 0..1 string Plain text representation of the concept
. . . . . role 0..* CodeableConcept What the agents role was
Binding: SecurityRoleType Security Role Type ( example ): The role that a provenance agent played with respect to the activity.


. . . . . who S Σ C icon 1..1 Reference ( Practitioner | PractitionerRole | RelatedPerson Organization | CareTeam | Patient | Device | Organization RelatedPerson ) Author Reference
. . . . . onBehalfOf C icon 0..1 Reference ( Practitioner | PractitionerRole | RelatedPerson | Patient Organization | Device CareTeam | Organization Patient ) The agent is representing that delegated
. . . entity Σ TU 0..* BackboneElement An entity used in this activity
. . . . id 0..1 string Unique id for inter-element referencing
. . . . extension 0..* Extension Additional content defined by implementations
. . . . modifierExtension ?! Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
. . . . role Σ 1..1 code revision | quotation | source | instantiates | removal
Binding: ProvenanceEntityRole Provenance Entity Role ( required ): How an entity was used in an activity.

. . . . what Σ 1..1 Reference ( Resource ) Identity of entity
. . . . agent 0..* See agent (Provenance) Entity is attributed to this agent
. . . signature TU 0..* Signature Signature on target

doco Documentation for this format icon

XML Template

<!-- Provenance Relevant History -->

<!-- ProvenanceRelevantHistory -->doco


<Provenance xmlns="http://hl7.org/fhir"
>
  <!-- from Element: extension -->
 <id value="[id]"/><!-- 0..1 Logical id of this artifact -->
 <</meta>
 <
 <
 <

 <meta><!-- I 0..1 Meta Metadata about the resource --></meta>
 <implicitRules value="[uri]"/><!-- I 0..1 A set of rules under which this content was created -->
 <language value="[code]"/><!-- I 0..1 Language of the resource content   -->
 <text><!-- I 0..1 Narrative 

     Text summary of the resource, for human interpretation --></text>
 <</contained>
 <<a href="provenance-relevant-history-definitions.html#Provenance.modifierExtension" title="May be used to represent additional information that is not part of the basic definition of the resource and that modifies the understanding of the element that contains it and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer is allowed to define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.

 <contained><!-- 0..* Resource Contained, inline Resources --></contained>
 <Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself) (this element modifies the meaning of other elements)" class="dict"></modifierExtension>
 <</target>
 <
 <
 <
 <

Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself) (this element modifies the meaning of other elements)" class="dict">modifierExtension><!-- I 0..* Extension  Extensions that cannot be ignored  --></modifierExtension>
 <target><!-- I 1..* Reference(Resource) Resource version --></target>
 <occurredDateTime value="[dateTime]"/><!-- I 1..1 When the activity occurred -->
 <recorded value="[instant]"/><!-- I 0..1 When the activity was recorded / updated -->
 <policy value="[uri]"/><!-- I 0..* Policy or plan the activity was defined by -->
 <location><!-- I 0..1 Reference(Location) 

     Where the activity occurred, if relevant --></location>
 <</reason>
 <</activity>

 <authorization><!-- I 0..* CodeableReference Authorization (purposeOfUse) related to the event icon   --></authorization>
 <activity><!-- I 1..1 CodeableConcept Record activity   --></activity>
 <basedOn><!-- I 0..* Reference(CarePlan) 
     Workflow authorization within which this event occurred --></basedOn>
 <patient><!-- I 0..1 Reference(Patient) 
     The patient is the subject of the data created/updated (.target) by the activity --></patient>
 <encounter><!-- I 0..1 Reference(Encounter) 
     Encounter within which this event occurred or which the event is tightly associated --></encounter>

 <-- agent sliced by value:type  in the specified orderOpen-->
 <
  <<a href="provenance-relevant-history-definitions.html#Provenance.agent.modifierExtension" title="May be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.

 <agent> I 0..1 BackboneElement  <!-- I 0..1 Author -->
  <Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself) (this element modifies the meaning of other elements)" class="dict"></modifierExtension>
  <</type>
  <</role>
  <</who>
  <
      Who the agent is representing</onBehalfOf>

Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself) (this element modifies the meaning of other elements)" class="dict">modifierExtension><!-- I 0..* Extension  Extensions that cannot be ignored even if unrecognized  --></modifierExtension>
  <type><!-- I 1..1 CodeableConcept How the agent participated   --></type>
  <role><!-- I 0..* CodeableConcept What the agents role was   --></role>
  <who><!-- I 1..1 Reference(Practitioner) Author Reference --></who>
  <onBehalfOf><!-- I 0..1 Reference(Practitioner) 
      The agent that delegated --></onBehalfOf>

 </agent>
 <
  <<a href="provenance-relevant-history-definitions.html#Provenance.entity.modifierExtension" title="May be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.

 <entity> I 0..* BackboneElement  <!-- I 0..* An entity used in this activity -->
  <Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself) (this element modifies the meaning of other elements)" class="dict"></modifierExtension>
  <
  <</what>
  <</agent>

Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself) (this element modifies the meaning of other elements)" class="dict">modifierExtension><!-- I 0..* Extension  Extensions that cannot be ignored even if unrecognized  --></modifierExtension>
  <role value="[code]"/><!-- I 1..1 revision | quotation | source | instantiates | removal   -->
  <what><!-- I 1..1 Reference(Resource) Identity of entity --></what>
  <agent><!-- See http://hl7.org/fhir/StructureDefinition/Provenance#Provenance.agent  Entity is attributed to this agent --></agent>

 </entity>
 <</signature>

 <signature><!-- I 0..* Signature Signature on target --></signature>

</Provenance>

JSON Template

{ // 

{ // ProvenanceRelevantHistory

  // from Element: extension
    "
    "
    "
    "
    "
    "<a href="provenance-relevant-history-definitions.html#Provenance.modifierExtension" title="May be used to represent additional information that is not part of the basic definition of the resource and that modifies the understanding of the element that contains it and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer is allowed to define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.

    "meta" : { Meta }, // IMetadata about the resource
    "implicitRules" : "<uri>", // IA set of rules under which this content was created
    "language" : "<code>", // ILanguage of the resource content
    "text" : { Narrative }, // IText summary of the resource, for human interpretation
    "contained" : [{ Resource }], //Contained, inline Resources
    "Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself) (this element modifies the meaning of other elements)" class="dict">
    "
    "
    "
    "
    "
    "
    "

Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself) (this element modifies the meaning of other elements)" class="dict">modifierExtension" : [{ Extension }], // IExtensions that cannot be ignored
    "target" : [{ Reference(Resource) }], // I R! Resource version
    "occurredDateTime" : "<dateTime>", // I R! When the activity occurred
    "recorded" : "<instant>", // IWhen the activity was recorded / updated
    "policy" : ["<uri>"], // IPolicy or plan the activity was defined by
    "location" : { Reference(Location) }, // IWhere the activity occurred, if relevant
    "authorization" : [{ CodeableReference }], // IAuthorization (purposeOfUse) related to the event icon
    "activity" : { CodeableConcept }, // I R! Record activity
    "basedOn" : [{ Reference(CarePlan) }], // IWorkflow authorization within which this event occurred
    "patient" : { Reference(Patient) }, // IThe patient is the subject of the data created/updated (.target) by the activity
    "encounter" : { Reference(Encounter) }, // IEncounter within which this event occurred or which the event is tightly associated

    "agent" : [ //  sliced by value:type  in the specified order, Open 
      { // 

      { // Author // I

        // from Element: extension
        "<a href="provenance-relevant-history-definitions.html#Provenance.agent.modifierExtension" title="May be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.

        "Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself) (this element modifies the meaning of other elements)" class="dict">
        "
        "
        "
        "

Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself) (this element modifies the meaning of other elements)" class="dict">modifierExtension" : [{ Extension }], // IExtensions that cannot be ignored even if unrecognized
        "type" : { CodeableConcept }, // I R! How the agent participated
        "role" : [{ CodeableConcept }], // IWhat the agents role was
        "who" : { Reference(Practitioner) }, // I R! Author Reference
        "onBehalfOf" : { Reference(Practitioner) } // IThe agent that delegated

      }
    ],
    "
    "

    "entity" : [{ BackboneElement }], // IAn entity used in this activity
    "signature" : [{ Signature }], // ISignature on target

  }

 

Alternate definitions: Master Definition ( XML , JSON ), Schematron

Path Name Conformance ValueSet
Provenance.language Common All Languages preferred required Common All Languages
Provenance.reason Provenance.authorization PurposeOfUse extensible example PurposeOfUse icon
Provenance.activity Provenance History Record Activity Codes extensible Provenance History Record Activity Codes
Provenance.agent.type ProvenanceParticipantType Participation Role Type extensible example ProvenanceParticipantType Participation Role Type
Provenance.agent.role SecurityRoleType Security Role Type example SecurityRoleType Security Role Type
Provenance.agent.type ProvenanceParticipantType Participation Role Type extensible example ProvenanceParticipantType Participation Role Type
Provenance.agent.role SecurityRoleType Security Role Type example SecurityRoleType Security Role Type
Provenance.entity.role ProvenanceEntityRole Provenance Entity Role required ProvenanceEntityRole Provenance Entity Role
.

This profile marks a number of elements as 'must-support' (see Must Support ). In this profile, must-support means that this implements should consider populating these elements, or that these elements are typically populated in this usage.

.