PACIO Advance Directive Interoperability Implementation Guide
0.1.0 - STU 1 Ballot

Publication Build: This will be filled in by the publication tooling

## Resource Profile: PACIO ADI Provenance

Defining URL: | http://hl7.org/fhir/us/pacio-adi/StructureDefinition/PADI-Provenance
Version: | 0.1.0
Name: | PADIProvenance
Title: | PACIO ADI Provenance
Status: | Active as of 12/6/21 8:50 PM
Definition: | Advance Directive Interoperability Provenance based on US Core to capture, search and fetch provenance information associated with advance directive interoperability data.
Publisher: | HL7 Patient Empowerment Working Group
Source Resource: | XML / JSON / Turtle

The official URL for this profile is:

    http://hl7.org/fhir/us/pacio-adi/StructureDefinition/PADI-Provenance

### Formal Views of Profile Content

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

- Text Summary
- Differential Table
- Snapshot Table
- Snapshot Table (Must Support)
- All

This structure is derived from USCoreProvenance

Summary

Mandatory: 0 element (1 nested mandatory element)
Must-Support: 1 element

This structure is derived from USCoreProvenance

Name | Flags | Card. | Type | Description & Constraints
--- | --- | --- | --- | ---
Provenance |  | 0..* | USCoreProvenance | US Core Provenance
agent:assembler | S | 0..1 | BackboneElement | Indicates the name of the system used to assemble the person's original advance care planning information into a document for exchange.
type |  | 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/provenance-participant-type
code |  | 1..1 | code | Symbol in syntax defined by the system Fixed Value: assembler
Documentation for this format

Name | Flags | Card. | Type | Description & Constraints
--- | --- | --- | --- | ---
Provenance |  | 0..* | USCoreProvenance | US Core Provenance
id | Σ | 0..1 | string | 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
language |  | 0..1 | code | Language of the resource content Binding: CommonLanguages (preferred) Max Binding: AllLanguages: A human language.
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) | The Resource this Provenance record supports
id |  | 0..1 | string | Unique id for inter-element referencing
Slices for extension |  | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url
reference | S Σ I | 1..1 | string | Literal reference, Relative, internal or absolute URL
type | Σ | 0..1 | uri | Type the reference refers to (e.g. "Patient") Binding: ResourceType (extensible): Aa resource (or, for logical models, the URI of the logical model).
identifier | Σ | 0..1 | Identifier | Logical reference, when literal reference is not known
display | Σ | 0..1 | string | Text alternative for the resource
occurred[x] |  | 0..1 |  | When the activity occurred
occurredPeriod |  |  | Period |
occurredDateTime |  |  | dateTime |
recorded | S Σ | 1..1 | instant | Timestamp 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 |  | 0..* | CodeableConcept | Reason the activity is occurring Binding: PurposeOfUse (extensible): The reason the activity took place.
activity |  | 0..1 | CodeableConcept | Activity that occurred Binding: ProvenanceActivityType (extensible): The activity that took place.
Slices for agent | S | 1..* | BackboneElement | Actor involved Slice: Unordered, Open by pattern: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 Σ | 0..1 | CodeableConcept | How the agent participated Binding: US Core Provenance Participant Type Codes (extensible)
role |  | 0..* | CodeableConcept | What the agents role was Binding: SecurityRoleType (example): The role that a provenance agent played with respect to the activity.
who | S Σ | 1..1 | Reference(US Core Practitioner Profile S | US Core Organization Profile | US Core Patient Profile | US Core PractitionerRole Profile | RelatedPerson | Device) | Who participated
onBehalfOf | S I | 0..1 | Reference(US Core Organization Profile) | Who the agent is representing provenance-1: onBehalfOf SHALL be present when Provenance.agent.who is a Practitioner or Device
agent:ProvenanceAuthor | S | 0..* | BackboneElement | Actor involved
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 (extensible): 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/provenance-participant-type
version |  | 0..1 | string | Version of the system - if relevant
code |  | 1..1 | code | Symbol in syntax defined by the system Fixed Value: author
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 (example): The role that a provenance agent played with respect to the activity.
who | Σ | 1..1 | Reference(Practitioner | PractitionerRole | RelatedPerson | Patient | Device | Organization) | Who participated
onBehalfOf |  | 0..1 | Reference(Practitioner | PractitionerRole | RelatedPerson | Patient | Device | Organization) | Who the agent is representing
agent:ProvenanceTransmitter | S | 0..1 | BackboneElement | Actor involved
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 (extensible): 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://hl7.org/fhir/us/core/CodeSystem/us-core-provenance-participant-type
version |  | 0..1 | string | Version of the system - if relevant
code |  | 1..1 | code | Symbol in syntax defined by the system Fixed Value: transmitter
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 (example): The role that a provenance agent played with respect to the activity.
who | Σ | 1..1 | Reference(Practitioner | PractitionerRole | RelatedPerson | Patient | Device | Organization) | Who participated
onBehalfOf |  | 0..1 | Reference(Practitioner | PractitionerRole | RelatedPerson | Patient | Device | Organization) | Who the agent is representing
agent:assembler | S | 0..1 | BackboneElement | Indicates the name of the system used to assemble the person's original advance care planning information into a document for exchange.
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: US Core Provenance Participant Type Codes (extensible) 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/provenance-participant-type
version |  | 0..1 | string | Version of the system - if relevant
code |  | 1..1 | code | Symbol in syntax defined by the system Fixed Value: assembler
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 (example): The role that a provenance agent played with respect to the activity.
who | S Σ | 1..1 | Reference(US Core Practitioner Profile S | US Core Organization Profile | US Core Patient Profile | US Core PractitionerRole Profile | RelatedPerson | Device) | Who participated
onBehalfOf | S I | 0..1 | Reference(US Core Organization Profile) | Who the agent is representing provenance-1: onBehalfOf SHALL be present when Provenance.agent.who is a Practitioner or Device
entity |  | 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 | derivation | revision | quotation | source | removal Binding: ProvenanceEntityRole (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 |  | 0..* | Signature | Signature on target
Documentation for this format

Name | Flags | Card. | Type | Description & Constraints
--- | --- | --- | --- | ---
Provenance |  | 0..* | USCoreProvenance | US Core Provenance
target | Σ | 1..* | Reference(Resource) | The Resource this Provenance record supports
reference | Σ I | 1..1 | string | Literal reference, Relative, internal or absolute URL
recorded | Σ | 1..1 | instant | Timestamp when the activity was recorded / updated
Slices for agent |  | 1..* | BackboneElement | Actor involved Slice: Unordered, Open by pattern:type
agent:All Slices |  |  |  | Content/Rules for all slices
type | Σ | 0..1 | CodeableConcept | How the agent participated Binding: US Core Provenance Participant Type Codes (extensible)
who | Σ | 1..1 | Reference(US Core Practitioner Profile) | Who participated
onBehalfOf | I | 0..1 | Reference(US Core Organization Profile) | Who the agent is representing provenance-1: onBehalfOf SHALL be present when Provenance.agent.who is a Practitioner or Device
agent:ProvenanceAuthor |  | 0..* | BackboneElement | Actor involved
type | Σ | 1..1 | CodeableConcept | How the agent participated Binding: ProvenanceParticipantType (extensible): The type of participation that a provenance agent played with respect to the activity. 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/provenance-participant-type
code |  | 1..1 | code | Symbol in syntax defined by the system Fixed Value: author
agent:ProvenanceTransmitter |  | 0..1 | BackboneElement | Actor involved
type | Σ | 1..1 | CodeableConcept | How the agent participated Binding: ProvenanceParticipantType (extensible): The type of participation that a provenance agent played with respect to the activity. 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://hl7.org/fhir/us/core/CodeSystem/us-core-provenance-participant-type
code |  | 1..1 | code | Symbol in syntax defined by the system Fixed Value: transmitter
agent:assembler |  | 0..1 | BackboneElement | Indicates the name of the system used to assemble the person's original advance care planning information into a document for exchange.
type | Σ | 1..1 | CodeableConcept | How the agent participated Binding: US Core Provenance Participant Type Codes (extensible) 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/provenance-participant-type
code |  | 1..1 | code | Symbol in syntax defined by the system Fixed Value: assembler
who | Σ | 1..1 | Reference(US Core Practitioner Profile) | Who participated
onBehalfOf | I | 0..1 | Reference(US Core Organization Profile) | Who the agent is representing provenance-1: onBehalfOf SHALL be present when Provenance.agent.who is a Practitioner or Device
Documentation for this format

This structure is derived from USCoreProvenance

Summary

Mandatory: 0 element (1 nested mandatory element)
Must-Support: 1 element

Differential View

This structure is derived from USCoreProvenance

Name | Flags | Card. | Type | Description & Constraints
--- | --- | --- | --- | ---
Provenance |  | 0..* | USCoreProvenance | US Core Provenance
agent:assembler | S | 0..1 | BackboneElement | Indicates the name of the system used to assemble the person's original advance care planning information into a document for exchange.
type |  | 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/provenance-participant-type
code |  | 1..1 | code | Symbol in syntax defined by the system Fixed Value: assembler
Documentation for this format

Snapshot View

Name | Flags | Card. | Type | Description & Constraints
--- | --- | --- | --- | ---
Provenance |  | 0..* | USCoreProvenance | US Core Provenance
id | Σ | 0..1 | string | 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
language |  | 0..1 | code | Language of the resource content Binding: CommonLanguages (preferred) Max Binding: AllLanguages: A human language.
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) | The Resource this Provenance record supports
id |  | 0..1 | string | Unique id for inter-element referencing
Slices for extension |  | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url
reference | S Σ I | 1..1 | string | Literal reference, Relative, internal or absolute URL
type | Σ | 0..1 | uri | Type the reference refers to (e.g. "Patient") Binding: ResourceType (extensible): Aa resource (or, for logical models, the URI of the logical model).
identifier | Σ | 0..1 | Identifier | Logical reference, when literal reference is not known
display | Σ | 0..1 | string | Text alternative for the resource
occurred[x] |  | 0..1 |  | When the activity occurred
occurredPeriod |  |  | Period |
occurredDateTime |  |  | dateTime |
recorded | S Σ | 1..1 | instant | Timestamp 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 |  | 0..* | CodeableConcept | Reason the activity is occurring Binding: PurposeOfUse (extensible): The reason the activity took place.
activity |  | 0..1 | CodeableConcept | Activity that occurred Binding: ProvenanceActivityType (extensible): The activity that took place.
Slices for agent | S | 1..* | BackboneElement | Actor involved Slice: Unordered, Open by pattern: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 Σ | 0..1 | CodeableConcept | How the agent participated Binding: US Core Provenance Participant Type Codes (extensible)
role |  | 0..* | CodeableConcept | What the agents role was Binding: SecurityRoleType (example): The role that a provenance agent played with respect to the activity.
who | S Σ | 1..1 | Reference(US Core Practitioner Profile S | US Core Organization Profile | US Core Patient Profile | US Core PractitionerRole Profile | RelatedPerson | Device) | Who participated
onBehalfOf | S I | 0..1 | Reference(US Core Organization Profile) | Who the agent is representing provenance-1: onBehalfOf SHALL be present when Provenance.agent.who is a Practitioner or Device
agent:ProvenanceAuthor | S | 0..* | BackboneElement | Actor involved
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 (extensible): 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/provenance-participant-type
version |  | 0..1 | string | Version of the system - if relevant
code |  | 1..1 | code | Symbol in syntax defined by the system Fixed Value: author
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 (example): The role that a provenance agent played with respect to the activity.
who | Σ | 1..1 | Reference(Practitioner | PractitionerRole | RelatedPerson | Patient | Device | Organization) | Who participated
onBehalfOf |  | 0..1 | Reference(Practitioner | PractitionerRole | RelatedPerson | Patient | Device | Organization) | Who the agent is representing
agent:ProvenanceTransmitter | S | 0..1 | BackboneElement | Actor involved
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 (extensible): 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://hl7.org/fhir/us/core/CodeSystem/us-core-provenance-participant-type
version |  | 0..1 | string | Version of the system - if relevant
code |  | 1..1 | code | Symbol in syntax defined by the system Fixed Value: transmitter
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 (example): The role that a provenance agent played with respect to the activity.
who | Σ | 1..1 | Reference(Practitioner | PractitionerRole | RelatedPerson | Patient | Device | Organization) | Who participated
onBehalfOf |  | 0..1 | Reference(Practitioner | PractitionerRole | RelatedPerson | Patient | Device | Organization) | Who the agent is representing
agent:assembler | S | 0..1 | BackboneElement | Indicates the name of the system used to assemble the person's original advance care planning information into a document for exchange.
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: US Core Provenance Participant Type Codes (extensible) 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/provenance-participant-type
version |  | 0..1 | string | Version of the system - if relevant
code |  | 1..1 | code | Symbol in syntax defined by the system Fixed Value: assembler
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 (example): The role that a provenance agent played with respect to the activity.
who | S Σ | 1..1 | Reference(US Core Practitioner Profile S | US Core Organization Profile | US Core Patient Profile | US Core PractitionerRole Profile | RelatedPerson | Device) | Who participated
onBehalfOf | S I | 0..1 | Reference(US Core Organization Profile) | Who the agent is representing provenance-1: onBehalfOf SHALL be present when Provenance.agent.who is a Practitioner or Device
entity |  | 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 | derivation | revision | quotation | source | removal Binding: ProvenanceEntityRole (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 |  | 0..* | Signature | Signature on target
Documentation for this format

Other representations of profile: CSV, Excel, Schematron

#### Terminology Bindings

Path | Conformance | ValueSet / Code
Provenance.language | preferred | CommonLanguages Max Binding: AllLanguages
Provenance.target.type | extensible | ResourceType
Provenance.reason | extensible | PurposeOfUse
Provenance.activity | extensible | ProvenanceActivityType
Provenance.agent.type | extensible | USCoreProvenancePaticipantTypeCodes
Provenance.agent.role | example | SecurityRoleType
Provenance.agent:ProvenanceAuthor.type | extensible | Pattern: author
Provenance.agent:ProvenanceAuthor.role | example | SecurityRoleType
Provenance.agent:ProvenanceTransmitter.type | extensible | Pattern: transmitter
Provenance.agent:ProvenanceTransmitter.role | example | SecurityRoleType
Provenance.agent:assembler.type | extensible | Pattern: assembler
Provenance.agent:assembler.role | example | SecurityRoleType
Provenance.entity.role | required | ProvenanceEntityRole

#### Constraints

Id | Path | Details | Requirements
provenance-1 | Provenance.agent.onBehalfOf | onBehalfOf SHALL be present when Provenance.agent.who is a Practitioner or Device : ((%resource.agent.who.resolve() is Practitioner) or (%resource.agent.who.resolve() is Device)) implies exists() |
provenance-1 | Provenance.agent:assembler.onBehalfOf | onBehalfOf SHALL be present when Provenance.agent.who is a Practitioner or Device : ((%resource.agent.who.resolve() is Practitioner) or (%resource.agent.who.resolve() is Device)) implies exists() |