Draft PH Core Implementation Guide
0.1.0 - ci-build
Philippines
Draft PH Core Implementation Guide, published by UP Manila National TeleHealth Center. This guide is not an authorized publication; it is the continuous build for version 0.1.0 built by the FHIR (HL7® FHIR® Standard) CI Build. This version is based on the current content of https://github.com/UP-Manila-SILab/ph-core/ and changes regularly. See the Directory of published versions
| Official URL: http://doh.gov.ph/fhir/ph-core/StructureDefinition/ph-core-provenance | Version: 0.1.0 | |||
| Draft as of 2026-03-25 | Computable Name: PHCoreProvenance | |||
This profile localizes the FHIR R4 Provenance resource to the Philippine context, capturing key information about who, what, when, and where for a set of resources. It is used to track the authorship and history of healthcare data in Philippine health information systems.
The PH Core Provenance Profile inherits from the FHIR Provenance resource; refer to it for scope and usage definitions. This profile sets minimum expectations for the Provenance resource to record, search, and fetch provenance information associated with a record. It covers the minimal information to support lineage of information in Philippine health information systems.
Each Provenance Must Have:
target)recorded)Each Provenance Must Support:
agent[ProvenanceAuthor])agent[ProvenanceTransmitter])agent.onBehalfOf) - required when agent is a Practitioner or Device| Element | PH Core Profiles | Base FHIR |
|---|---|---|
agent.who |
PHCorePractitioner, PHCorePractitionerRole, PHCoreOrganization, PHCorePatient, PHCoreRelatedPerson | Device |
agent.onBehalfOf |
PHCoreOrganization | - |
location |
PHCoreLocation | - |
The agent element is sliced to distinguish between authors and transmitters:
| Slice | Type | Purpose |
|---|---|---|
ProvenanceAuthor |
author | Entity that created the data |
ProvenanceTransmitter |
transmitter | Entity that transmitted the data |
onBehalfOf SHALL be present when agent.who is a Practitioner or Device
This ensures that when an individual practitioner or device is the agent, the responsible organization is always identified.
This Provenance profile can be used with the following resource types:
| Profile |
|---|
| PHCoreEncounter |
| PHCoreImmunization |
| PHCoreObservation |
| PHCorePatient |
| PHCoreProcedure |
| PHCoreRelatedPerson |
The following resources do not have PH Core profiles yet and use base FHIR R4:
Usages:
You can also check for usages in the FHIR IG Statistics
Description of Profiles, Differentials, Snapshots and how the different presentations work.
| Name | Flags | Card. | Type | Description & Constraints Filter: ![]() ![]() |
|---|---|---|---|---|
![]() |
0..* | Provenance | Who, What, When for a set of resources | |
![]() ![]() |
?!Σ | 0..1 | uri | A set of rules under which this content was created |
![]() ![]() |
?! | 0..* | Extension | Extensions that cannot be ignored |
![]() ![]() |
SΣ | 1..* | Reference(Resource) | The Resource(s) this Provenance record supports |
![]() ![]() ![]() |
SΣC | 0..1 | string | Literal reference, Relative, internal or absolute URL |
![]() ![]() |
SΣ | 1..1 | instant | Timestamp when the activity was recorded / updated |
![]() ![]() |
0..1 | Reference(PH Core Location) | Where the activity occurred, if relevant | |
![]() ![]() |
C | 1..* | BackboneElement | Actor(s) involved Slice: Unordered, Open by value:type Constraints: provenance-1 |
![]() ![]() ![]() |
Content/Rules for all slices | |||
![]() ![]() ![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized |
![]() ![]() ![]() ![]() |
SΣ | 0..1 | CodeableConcept | How the agent participated Binding: ProvenanceParticipantType (extensible): The type of participation (author, transmitter, etc.) |
![]() ![]() ![]() ![]() |
SΣ | 1..1 | Reference(Practitioner | PractitionerRole | RelatedPerson | Patient | Device | Organization) | Who participated |
![]() ![]() ![]() ![]() |
S | 0..1 | Reference(Practitioner | PractitionerRole | RelatedPerson | Patient | Device | Organization) | Who the agent is representing |
![]() ![]() ![]() |
S | 0..* | BackboneElement | Author organization or individual responsible for the information |
![]() ![]() ![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized |
![]() ![]() ![]() ![]() |
SΣ | 1..1 | CodeableConcept | How the agent participated Binding: ProvenanceParticipantType (extensible): The type of participation (author, transmitter, etc.) Required Pattern: At least the following |
![]() ![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |
![]() ![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations | |
![]() ![]() ![]() ![]() ![]() |
1..* | Coding | Code defined by a terminology system Fixed Value: (Complex) | |
![]() ![]() ![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |
![]() ![]() ![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations | |
![]() ![]() ![]() ![]() ![]() ![]() |
1..1 | uri | Identity of the terminology system Fixed Value: http://terminology.hl7.org/CodeSystem/provenance-participant-type | |
![]() ![]() ![]() ![]() ![]() ![]() |
0..1 | string | Version of the system - if relevant | |
![]() ![]() ![]() ![]() ![]() ![]() |
1..1 | code | Symbol in syntax defined by the system Fixed Value: author | |
![]() ![]() ![]() ![]() ![]() ![]() |
0..1 | string | Representation defined by the system | |
![]() ![]() ![]() ![]() ![]() ![]() |
0..1 | boolean | If this coding was chosen directly by the user | |
![]() ![]() ![]() ![]() ![]() |
0..1 | string | Plain text representation of the concept | |
![]() ![]() ![]() ![]() |
SΣ | 1..1 | Reference(PH Core Practitioner | PH Core PractitionerRole | PH Core Organization | PH Core Patient | PH Core RelatedPerson | Device) | Who participated |
![]() ![]() ![]() ![]() |
S | 0..1 | Reference(PH Core Organization) | Who the agent is representing |
![]() ![]() ![]() |
S | 0..* | BackboneElement | Transmitter that provided the information |
![]() ![]() ![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized |
![]() ![]() ![]() ![]() |
SΣ | 1..1 | CodeableConcept | How the agent participated Binding: ProvenanceParticipantType (extensible): The type of participation (author, transmitter, etc.) Required Pattern: At least the following |
![]() ![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |
![]() ![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations | |
![]() ![]() ![]() ![]() ![]() |
1..* | Coding | Code defined by a terminology system Fixed Value: (Complex) | |
![]() ![]() ![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |
![]() ![]() ![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations | |
![]() ![]() ![]() ![]() ![]() ![]() |
1..1 | uri | Identity of the terminology system Fixed Value: http://terminology.hl7.org/CodeSystem/provenance-participant-type | |
![]() ![]() ![]() ![]() ![]() ![]() |
0..1 | string | Version of the system - if relevant | |
![]() ![]() ![]() ![]() ![]() ![]() |
1..1 | code | Symbol in syntax defined by the system Fixed Value: transmitter | |
![]() ![]() ![]() ![]() ![]() ![]() |
0..1 | string | Representation defined by the system | |
![]() ![]() ![]() ![]() ![]() ![]() |
0..1 | boolean | If this coding was chosen directly by the user | |
![]() ![]() ![]() ![]() ![]() |
0..1 | string | Plain text representation of the concept | |
![]() ![]() ![]() ![]() |
SΣ | 1..1 | Reference(PH Core Practitioner | PH Core PractitionerRole | PH Core Organization | PH Core Patient | PH Core RelatedPerson | Device) | Who participated |
![]() ![]() ![]() ![]() |
S | 0..1 | Reference(PH Core Organization) | Who the agent is representing |
Documentation for this format | ||||
| Path | Status | Usage | ValueSet | Version | Source |
| Provenance.agent.type | Base | extensible | Provenance participant type | 📦4.0.1 | FHIR Std. |
| Provenance.agent:ProvenanceAuthor.type | Base | extensible | Provenance participant type | 📦4.0.1 | FHIR Std. |
| Provenance.agent:ProvenanceTransmitter.type | Base | extensible | Provenance participant type | 📦4.0.1 | FHIR Std. |
| Id | Grade | Path(s) | Description | Expression |
| dom-2 | error | Provenance | If the resource is contained in another resource, it SHALL NOT contain nested Resources |
contained.contained.empty()
|
| dom-3 | error | Provenance | If 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-4 | error | Provenance | If 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-5 | error | Provenance | If a resource is contained in another resource, it SHALL NOT have a security label |
contained.meta.security.empty()
|
| dom-6 | best practice | Provenance | A resource should have narrative for robust management |
text.`div`.exists()
|
| ele-1 | error | **ALL** elements | All FHIR elements must have a @value or children |
hasValue() or (children().count() > id.count())
|
| ext-1 | error | **ALL** extensions | Must have either extensions or value[x], not both |
extension.exists() != value.exists()
|
| provenance-1 | error | Provenance.agent | onBehalfOf SHALL be present when Provenance.agent.who is a Practitioner or Device |
who.exists((resolve() is Practitioner) or (resolve() is Device)) implies onBehalfOf.exists()
|
This structure is derived from Provenance
| Name | Flags | Card. | Type | Description & Constraints Filter: ![]() ![]() |
|---|---|---|---|---|
![]() |
0..* | Provenance | Who, What, When for a set of resources | |
![]() ![]() |
S | 1..* | Reference(Resource) | The Resource(s) this Provenance record supports |
![]() ![]() ![]() |
S | 0..1 | string | Literal reference, Relative, internal or absolute URL |
![]() ![]() |
S | 1..1 | instant | Timestamp when the activity was recorded / updated |
![]() ![]() |
0..1 | Reference(PH Core Location) | Where the activity occurred, if relevant | |
![]() ![]() |
C | 1..* | BackboneElement | Actor(s) involved Slice: Unordered, Open by value:type Constraints: provenance-1 |
![]() ![]() ![]() |
Content/Rules for all slices | |||
![]() ![]() ![]() ![]() |
S | 0..1 | CodeableConcept | How the agent participated Binding: ProvenanceParticipantType (extensible): The type of participation (author, transmitter, etc.) |
![]() ![]() ![]() ![]() |
S | 1..1 | Reference(Practitioner | PractitionerRole | RelatedPerson | Patient | Device | Organization) | Who participated |
![]() ![]() ![]() ![]() |
S | 0..1 | Reference(Practitioner | PractitionerRole | RelatedPerson | Patient | Device | Organization) | Who the agent is representing |
![]() ![]() ![]() |
S | 0..* | BackboneElement | Author organization or individual responsible for the information |
![]() ![]() ![]() ![]() |
1..1 | CodeableConcept | How the agent participated Required Pattern: At least the following | |
![]() ![]() ![]() ![]() ![]() |
1..* | Coding | Code defined by a terminology system Fixed Value: (Complex) | |
![]() ![]() ![]() ![]() ![]() ![]() |
1..1 | uri | Identity of the terminology system Fixed Value: http://terminology.hl7.org/CodeSystem/provenance-participant-type | |
![]() ![]() ![]() ![]() ![]() ![]() |
1..1 | code | Symbol in syntax defined by the system Fixed Value: author | |
![]() ![]() ![]() ![]() |
1..1 | Reference(PH Core Practitioner | PH Core PractitionerRole | PH Core Organization | PH Core Patient | PH Core RelatedPerson | Device) | Who participated | |
![]() ![]() ![]() ![]() |
0..1 | Reference(PH Core Organization) | Who the agent is representing | |
![]() ![]() ![]() |
S | 0..* | BackboneElement | Transmitter that provided the information |
![]() ![]() ![]() ![]() |
1..1 | CodeableConcept | How the agent participated Required Pattern: At least the following | |
![]() ![]() ![]() ![]() ![]() |
1..* | Coding | Code defined by a terminology system Fixed Value: (Complex) | |
![]() ![]() ![]() ![]() ![]() ![]() |
1..1 | uri | Identity of the terminology system Fixed Value: http://terminology.hl7.org/CodeSystem/provenance-participant-type | |
![]() ![]() ![]() ![]() ![]() ![]() |
1..1 | code | Symbol in syntax defined by the system Fixed Value: transmitter | |
![]() ![]() ![]() ![]() |
1..1 | Reference(PH Core Practitioner | PH Core PractitionerRole | PH Core Organization | PH Core Patient | PH Core RelatedPerson | Device) | Who participated | |
![]() ![]() ![]() ![]() |
0..1 | Reference(PH Core Organization) | Who the agent is representing | |
Documentation for this format | ||||
| Path | Status | Usage | ValueSet | Version | Source |
| Provenance.agent.type | Base | extensible | Provenance participant type | 📦4.0.1 | FHIR Std. |
| Id | Grade | Path(s) | Description | Expression |
| provenance-1 | error | Provenance.agent | onBehalfOf SHALL be present when Provenance.agent.who is a Practitioner or Device |
who.exists((resolve() is Practitioner) or (resolve() is Device)) implies onBehalfOf.exists()
|
| Name | Flags | Card. | Type | Description & Constraints Filter: ![]() ![]() | ||||
|---|---|---|---|---|---|---|---|---|
![]() |
0..* | Provenance | Who, What, When for a set of resources | |||||
![]() ![]() |
Σ | 0..1 | id | Logical id of this artifact | ||||
![]() ![]() |
Σ | 0..1 | Meta | Metadata about the resource | ||||
![]() ![]() |
?!Σ | 0..1 | uri | A set of rules under which this content was created | ||||
![]() ![]() |
0..1 | code | Language of the resource content Binding: CommonLanguages (preferred): A human language.
| |||||
![]() ![]() |
0..1 | Narrative | Text summary of the resource, for human interpretation This profile does not constrain the narrative in regard to content, language, or traceability to data elements | |||||
![]() ![]() |
0..* | Resource | Contained, inline Resources | |||||
![]() ![]() |
0..* | Extension | Additional content defined by implementations | |||||
![]() ![]() |
?! | 0..* | Extension | Extensions that cannot be ignored | ||||
![]() ![]() |
SΣ | 1..* | Reference(Resource) | The Resource(s) this Provenance record supports | ||||
![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |||||
![]() ![]() ![]() |
SΣC | 0..1 | string | Literal reference, Relative, internal or absolute URL | ||||
![]() ![]() ![]() |
Σ | 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). | ||||
![]() ![]() ![]() |
Σ | 0..1 | Identifier | Logical reference, when literal reference is not known | ||||
![]() ![]() ![]() |
Σ | 0..1 | string | Text alternative for the resource | ||||
![]() ![]() |
0..1 | When the activity occurred | ||||||
![]() ![]() ![]() |
Period | |||||||
![]() ![]() ![]() |
dateTime | |||||||
![]() ![]() |
SΣ | 1..1 | instant | Timestamp when the activity was recorded / updated | ||||
![]() ![]() |
0..* | uri | Policy or plan the activity was defined by | |||||
![]() ![]() |
0..1 | Reference(PH Core Location) | Where the activity occurred, if relevant | |||||
![]() ![]() |
0..* | CodeableConcept | Reason the activity is occurring Binding: PurposeOfUse (extensible): The reason the activity took place. | |||||
![]() ![]() |
0..1 | CodeableConcept | Activity that occurred Binding: ProvenanceActivityType (extensible): The activity that took place. | |||||
![]() ![]() |
C | 1..* | BackboneElement | Actor(s) involved Slice: Unordered, Open by value:type Constraints: provenance-1 | ||||
![]() ![]() ![]() |
Content/Rules for all slices | |||||||
![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations | |||||
![]() ![]() ![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
![]() ![]() ![]() ![]() |
SΣ | 0..1 | CodeableConcept | How the agent participated Binding: ProvenanceParticipantType (extensible): The type of participation (author, transmitter, etc.) | ||||
![]() ![]() ![]() ![]() |
0..* | CodeableConcept | What the agents role was Binding: SecurityRoleType (example): The role that a provenance agent played with respect to the activity. | |||||
![]() ![]() ![]() ![]() |
SΣ | 1..1 | Reference(Practitioner | PractitionerRole | RelatedPerson | Patient | Device | Organization) | Who participated | ||||
![]() ![]() ![]() ![]() |
S | 0..1 | Reference(Practitioner | PractitionerRole | RelatedPerson | Patient | Device | Organization) | Who the agent is representing | ||||
![]() ![]() ![]() |
S | 0..* | BackboneElement | Author organization or individual responsible for the information | ||||
![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations | |||||
![]() ![]() ![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
![]() ![]() ![]() ![]() |
SΣ | 1..1 | CodeableConcept | How the agent participated Binding: ProvenanceParticipantType (extensible): The type of participation (author, transmitter, etc.) Required Pattern: At least the following | ||||
![]() ![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations | |||||
![]() ![]() ![]() ![]() ![]() |
1..* | Coding | Code defined by a terminology system Fixed Value: (Complex) | |||||
![]() ![]() ![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations | |||||
![]() ![]() ![]() ![]() ![]() ![]() |
1..1 | uri | Identity of the terminology system Fixed Value: http://terminology.hl7.org/CodeSystem/provenance-participant-type | |||||
![]() ![]() ![]() ![]() ![]() ![]() |
0..1 | string | Version of the system - if relevant | |||||
![]() ![]() ![]() ![]() ![]() ![]() |
1..1 | code | Symbol in syntax defined by the system Fixed Value: author | |||||
![]() ![]() ![]() ![]() ![]() ![]() |
0..1 | string | Representation defined by the system | |||||
![]() ![]() ![]() ![]() ![]() ![]() |
0..1 | boolean | If this coding was chosen directly by the user | |||||
![]() ![]() ![]() ![]() ![]() |
0..1 | string | Plain text representation of the concept | |||||
![]() ![]() ![]() ![]() |
0..* | CodeableConcept | What the agents role was Binding: SecurityRoleType (example): The role that a provenance agent played with respect to the activity. | |||||
![]() ![]() ![]() ![]() |
SΣ | 1..1 | Reference(PH Core Practitioner | PH Core PractitionerRole | PH Core Organization | PH Core Patient | PH Core RelatedPerson | Device) | Who participated | ||||
![]() ![]() ![]() ![]() |
S | 0..1 | Reference(PH Core Organization) | Who the agent is representing | ||||
![]() ![]() ![]() |
S | 0..* | BackboneElement | Transmitter that provided the information | ||||
![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations | |||||
![]() ![]() ![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
![]() ![]() ![]() ![]() |
SΣ | 1..1 | CodeableConcept | How the agent participated Binding: ProvenanceParticipantType (extensible): The type of participation (author, transmitter, etc.) Required Pattern: At least the following | ||||
![]() ![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations | |||||
![]() ![]() ![]() ![]() ![]() |
1..* | Coding | Code defined by a terminology system Fixed Value: (Complex) | |||||
![]() ![]() ![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations | |||||
![]() ![]() ![]() ![]() ![]() ![]() |
1..1 | uri | Identity of the terminology system Fixed Value: http://terminology.hl7.org/CodeSystem/provenance-participant-type | |||||
![]() ![]() ![]() ![]() ![]() ![]() |
0..1 | string | Version of the system - if relevant | |||||
![]() ![]() ![]() ![]() ![]() ![]() |
1..1 | code | Symbol in syntax defined by the system Fixed Value: transmitter | |||||
![]() ![]() ![]() ![]() ![]() ![]() |
0..1 | string | Representation defined by the system | |||||
![]() ![]() ![]() ![]() ![]() ![]() |
0..1 | boolean | If this coding was chosen directly by the user | |||||
![]() ![]() ![]() ![]() ![]() |
0..1 | string | Plain text representation of the concept | |||||
![]() ![]() ![]() ![]() |
0..* | CodeableConcept | What the agents role was Binding: SecurityRoleType (example): The role that a provenance agent played with respect to the activity. | |||||
![]() ![]() ![]() ![]() |
SΣ | 1..1 | Reference(PH Core Practitioner | PH Core PractitionerRole | PH Core Organization | PH Core Patient | PH Core RelatedPerson | Device) | Who participated | ||||
![]() ![]() ![]() ![]() |
S | 0..1 | Reference(PH Core Organization) | Who the agent is representing | ||||
![]() ![]() |
0..* | BackboneElement | An entity used in this activity | |||||
![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations | |||||
![]() ![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
![]() ![]() ![]() |
Σ | 1..1 | code | derivation | revision | quotation | source | removal Binding: ProvenanceEntityRole (required): How an entity was used in an activity. | ||||
![]() ![]() ![]() |
Σ | 1..1 | Reference(Resource) | Identity of entity | ||||
![]() ![]() ![]() |
0..* | See agent (Provenance) | Entity is attributed to this agent | |||||
![]() ![]() |
0..* | Signature | Signature on target | |||||
Documentation for this format | ||||||||
| Path | Status | Usage | ValueSet | Version | Source |
| Provenance.language | Base | preferred | Common Languages | 📍4.0.1 | FHIR Std. |
| Provenance.target.type | Base | extensible | ResourceType | 📍4.0.1 | FHIR Std. |
| Provenance.reason | Base | extensible | PurposeOfUse | 📦3.1.0 | THO v7.1 |
| Provenance.activity | Base | extensible | Provenance activity type | 📍4.0.1 | FHIR Std. |
| Provenance.agent.type | Base | extensible | Provenance participant type | 📦4.0.1 | FHIR Std. |
| Provenance.agent.role | Base | example | SecurityRoleType | 📍4.0.1 | FHIR Std. |
| Provenance.agent:ProvenanceAuthor.type | Base | extensible | Provenance participant type | 📦4.0.1 | FHIR Std. |
| Provenance.agent:ProvenanceAuthor.role | Base | example | SecurityRoleType | 📍4.0.1 | FHIR Std. |
| Provenance.agent:ProvenanceTransmitter.type | Base | extensible | Provenance participant type | 📦4.0.1 | FHIR Std. |
| Provenance.agent:ProvenanceTransmitter.role | Base | example | SecurityRoleType | 📍4.0.1 | FHIR Std. |
| Provenance.entity.role | Base | required | ProvenanceEntityRole | 📍4.0.1 | FHIR Std. |
| Id | Grade | Path(s) | Description | Expression |
| dom-2 | error | Provenance | If the resource is contained in another resource, it SHALL NOT contain nested Resources |
contained.contained.empty()
|
| dom-3 | error | Provenance | If 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-4 | error | Provenance | If 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-5 | error | Provenance | If a resource is contained in another resource, it SHALL NOT have a security label |
contained.meta.security.empty()
|
| dom-6 | best practice | Provenance | A resource should have narrative for robust management |
text.`div`.exists()
|
| ele-1 | error | **ALL** elements | All FHIR elements must have a @value or children |
hasValue() or (children().count() > id.count())
|
| ext-1 | error | **ALL** extensions | Must have either extensions or value[x], not both |
extension.exists() != value.exists()
|
| provenance-1 | error | Provenance.agent | onBehalfOf SHALL be present when Provenance.agent.who is a Practitioner or Device |
who.exists((resolve() is Practitioner) or (resolve() is Device)) implies onBehalfOf.exists()
|
This structure is derived from Provenance
Summary
Mandatory: 0 element(2 nested mandatory elements)
Must-Support: 8 elements
Structures
This structure refers to these other structures:
Slices
This structure defines the following Slices:
Key Elements View
| Name | Flags | Card. | Type | Description & Constraints Filter: ![]() ![]() |
|---|---|---|---|---|
![]() |
0..* | Provenance | Who, What, When for a set of resources | |
![]() ![]() |
?!Σ | 0..1 | uri | A set of rules under which this content was created |
![]() ![]() |
?! | 0..* | Extension | Extensions that cannot be ignored |
![]() ![]() |
SΣ | 1..* | Reference(Resource) | The Resource(s) this Provenance record supports |
![]() ![]() ![]() |
SΣC | 0..1 | string | Literal reference, Relative, internal or absolute URL |
![]() ![]() |
SΣ | 1..1 | instant | Timestamp when the activity was recorded / updated |
![]() ![]() |
0..1 | Reference(PH Core Location) | Where the activity occurred, if relevant | |
![]() ![]() |
C | 1..* | BackboneElement | Actor(s) involved Slice: Unordered, Open by value:type Constraints: provenance-1 |
![]() ![]() ![]() |
Content/Rules for all slices | |||
![]() ![]() ![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized |
![]() ![]() ![]() ![]() |
SΣ | 0..1 | CodeableConcept | How the agent participated Binding: ProvenanceParticipantType (extensible): The type of participation (author, transmitter, etc.) |
![]() ![]() ![]() ![]() |
SΣ | 1..1 | Reference(Practitioner | PractitionerRole | RelatedPerson | Patient | Device | Organization) | Who participated |
![]() ![]() ![]() ![]() |
S | 0..1 | Reference(Practitioner | PractitionerRole | RelatedPerson | Patient | Device | Organization) | Who the agent is representing |
![]() ![]() ![]() |
S | 0..* | BackboneElement | Author organization or individual responsible for the information |
![]() ![]() ![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized |
![]() ![]() ![]() ![]() |
SΣ | 1..1 | CodeableConcept | How the agent participated Binding: ProvenanceParticipantType (extensible): The type of participation (author, transmitter, etc.) Required Pattern: At least the following |
![]() ![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |
![]() ![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations | |
![]() ![]() ![]() ![]() ![]() |
1..* | Coding | Code defined by a terminology system Fixed Value: (Complex) | |
![]() ![]() ![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |
![]() ![]() ![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations | |
![]() ![]() ![]() ![]() ![]() ![]() |
1..1 | uri | Identity of the terminology system Fixed Value: http://terminology.hl7.org/CodeSystem/provenance-participant-type | |
![]() ![]() ![]() ![]() ![]() ![]() |
0..1 | string | Version of the system - if relevant | |
![]() ![]() ![]() ![]() ![]() ![]() |
1..1 | code | Symbol in syntax defined by the system Fixed Value: author | |
![]() ![]() ![]() ![]() ![]() ![]() |
0..1 | string | Representation defined by the system | |
![]() ![]() ![]() ![]() ![]() ![]() |
0..1 | boolean | If this coding was chosen directly by the user | |
![]() ![]() ![]() ![]() ![]() |
0..1 | string | Plain text representation of the concept | |
![]() ![]() ![]() ![]() |
SΣ | 1..1 | Reference(PH Core Practitioner | PH Core PractitionerRole | PH Core Organization | PH Core Patient | PH Core RelatedPerson | Device) | Who participated |
![]() ![]() ![]() ![]() |
S | 0..1 | Reference(PH Core Organization) | Who the agent is representing |
![]() ![]() ![]() |
S | 0..* | BackboneElement | Transmitter that provided the information |
![]() ![]() ![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized |
![]() ![]() ![]() ![]() |
SΣ | 1..1 | CodeableConcept | How the agent participated Binding: ProvenanceParticipantType (extensible): The type of participation (author, transmitter, etc.) Required Pattern: At least the following |
![]() ![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |
![]() ![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations | |
![]() ![]() ![]() ![]() ![]() |
1..* | Coding | Code defined by a terminology system Fixed Value: (Complex) | |
![]() ![]() ![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |
![]() ![]() ![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations | |
![]() ![]() ![]() ![]() ![]() ![]() |
1..1 | uri | Identity of the terminology system Fixed Value: http://terminology.hl7.org/CodeSystem/provenance-participant-type | |
![]() ![]() ![]() ![]() ![]() ![]() |
0..1 | string | Version of the system - if relevant | |
![]() ![]() ![]() ![]() ![]() ![]() |
1..1 | code | Symbol in syntax defined by the system Fixed Value: transmitter | |
![]() ![]() ![]() ![]() ![]() ![]() |
0..1 | string | Representation defined by the system | |
![]() ![]() ![]() ![]() ![]() ![]() |
0..1 | boolean | If this coding was chosen directly by the user | |
![]() ![]() ![]() ![]() ![]() |
0..1 | string | Plain text representation of the concept | |
![]() ![]() ![]() ![]() |
SΣ | 1..1 | Reference(PH Core Practitioner | PH Core PractitionerRole | PH Core Organization | PH Core Patient | PH Core RelatedPerson | Device) | Who participated |
![]() ![]() ![]() ![]() |
S | 0..1 | Reference(PH Core Organization) | Who the agent is representing |
Documentation for this format | ||||
| Path | Status | Usage | ValueSet | Version | Source |
| Provenance.agent.type | Base | extensible | Provenance participant type | 📦4.0.1 | FHIR Std. |
| Provenance.agent:ProvenanceAuthor.type | Base | extensible | Provenance participant type | 📦4.0.1 | FHIR Std. |
| Provenance.agent:ProvenanceTransmitter.type | Base | extensible | Provenance participant type | 📦4.0.1 | FHIR Std. |
| Id | Grade | Path(s) | Description | Expression |
| dom-2 | error | Provenance | If the resource is contained in another resource, it SHALL NOT contain nested Resources |
contained.contained.empty()
|
| dom-3 | error | Provenance | If 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-4 | error | Provenance | If 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-5 | error | Provenance | If a resource is contained in another resource, it SHALL NOT have a security label |
contained.meta.security.empty()
|
| dom-6 | best practice | Provenance | A resource should have narrative for robust management |
text.`div`.exists()
|
| ele-1 | error | **ALL** elements | All FHIR elements must have a @value or children |
hasValue() or (children().count() > id.count())
|
| ext-1 | error | **ALL** extensions | Must have either extensions or value[x], not both |
extension.exists() != value.exists()
|
| provenance-1 | error | Provenance.agent | onBehalfOf SHALL be present when Provenance.agent.who is a Practitioner or Device |
who.exists((resolve() is Practitioner) or (resolve() is Device)) implies onBehalfOf.exists()
|
Differential View
This structure is derived from Provenance
| Name | Flags | Card. | Type | Description & Constraints Filter: ![]() ![]() |
|---|---|---|---|---|
![]() |
0..* | Provenance | Who, What, When for a set of resources | |
![]() ![]() |
S | 1..* | Reference(Resource) | The Resource(s) this Provenance record supports |
![]() ![]() ![]() |
S | 0..1 | string | Literal reference, Relative, internal or absolute URL |
![]() ![]() |
S | 1..1 | instant | Timestamp when the activity was recorded / updated |
![]() ![]() |
0..1 | Reference(PH Core Location) | Where the activity occurred, if relevant | |
![]() ![]() |
C | 1..* | BackboneElement | Actor(s) involved Slice: Unordered, Open by value:type Constraints: provenance-1 |
![]() ![]() ![]() |
Content/Rules for all slices | |||
![]() ![]() ![]() ![]() |
S | 0..1 | CodeableConcept | How the agent participated Binding: ProvenanceParticipantType (extensible): The type of participation (author, transmitter, etc.) |
![]() ![]() ![]() ![]() |
S | 1..1 | Reference(Practitioner | PractitionerRole | RelatedPerson | Patient | Device | Organization) | Who participated |
![]() ![]() ![]() ![]() |
S | 0..1 | Reference(Practitioner | PractitionerRole | RelatedPerson | Patient | Device | Organization) | Who the agent is representing |
![]() ![]() ![]() |
S | 0..* | BackboneElement | Author organization or individual responsible for the information |
![]() ![]() ![]() ![]() |
1..1 | CodeableConcept | How the agent participated Required Pattern: At least the following | |
![]() ![]() ![]() ![]() ![]() |
1..* | Coding | Code defined by a terminology system Fixed Value: (Complex) | |
![]() ![]() ![]() ![]() ![]() ![]() |
1..1 | uri | Identity of the terminology system Fixed Value: http://terminology.hl7.org/CodeSystem/provenance-participant-type | |
![]() ![]() ![]() ![]() ![]() ![]() |
1..1 | code | Symbol in syntax defined by the system Fixed Value: author | |
![]() ![]() ![]() ![]() |
1..1 | Reference(PH Core Practitioner | PH Core PractitionerRole | PH Core Organization | PH Core Patient | PH Core RelatedPerson | Device) | Who participated | |
![]() ![]() ![]() ![]() |
0..1 | Reference(PH Core Organization) | Who the agent is representing | |
![]() ![]() ![]() |
S | 0..* | BackboneElement | Transmitter that provided the information |
![]() ![]() ![]() ![]() |
1..1 | CodeableConcept | How the agent participated Required Pattern: At least the following | |
![]() ![]() ![]() ![]() ![]() |
1..* | Coding | Code defined by a terminology system Fixed Value: (Complex) | |
![]() ![]() ![]() ![]() ![]() ![]() |
1..1 | uri | Identity of the terminology system Fixed Value: http://terminology.hl7.org/CodeSystem/provenance-participant-type | |
![]() ![]() ![]() ![]() ![]() ![]() |
1..1 | code | Symbol in syntax defined by the system Fixed Value: transmitter | |
![]() ![]() ![]() ![]() |
1..1 | Reference(PH Core Practitioner | PH Core PractitionerRole | PH Core Organization | PH Core Patient | PH Core RelatedPerson | Device) | Who participated | |
![]() ![]() ![]() ![]() |
0..1 | Reference(PH Core Organization) | Who the agent is representing | |
Documentation for this format | ||||
| Path | Status | Usage | ValueSet | Version | Source |
| Provenance.agent.type | Base | extensible | Provenance participant type | 📦4.0.1 | FHIR Std. |
| Id | Grade | Path(s) | Description | Expression |
| provenance-1 | error | Provenance.agent | onBehalfOf SHALL be present when Provenance.agent.who is a Practitioner or Device |
who.exists((resolve() is Practitioner) or (resolve() is Device)) implies onBehalfOf.exists()
|
Snapshot View
| Name | Flags | Card. | Type | Description & Constraints Filter: ![]() ![]() | ||||
|---|---|---|---|---|---|---|---|---|
![]() |
0..* | Provenance | Who, What, When for a set of resources | |||||
![]() ![]() |
Σ | 0..1 | id | Logical id of this artifact | ||||
![]() ![]() |
Σ | 0..1 | Meta | Metadata about the resource | ||||
![]() ![]() |
?!Σ | 0..1 | uri | A set of rules under which this content was created | ||||
![]() ![]() |
0..1 | code | Language of the resource content Binding: CommonLanguages (preferred): A human language.
| |||||
![]() ![]() |
0..1 | Narrative | Text summary of the resource, for human interpretation This profile does not constrain the narrative in regard to content, language, or traceability to data elements | |||||
![]() ![]() |
0..* | Resource | Contained, inline Resources | |||||
![]() ![]() |
0..* | Extension | Additional content defined by implementations | |||||
![]() ![]() |
?! | 0..* | Extension | Extensions that cannot be ignored | ||||
![]() ![]() |
SΣ | 1..* | Reference(Resource) | The Resource(s) this Provenance record supports | ||||
![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |||||
![]() ![]() ![]() |
SΣC | 0..1 | string | Literal reference, Relative, internal or absolute URL | ||||
![]() ![]() ![]() |
Σ | 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). | ||||
![]() ![]() ![]() |
Σ | 0..1 | Identifier | Logical reference, when literal reference is not known | ||||
![]() ![]() ![]() |
Σ | 0..1 | string | Text alternative for the resource | ||||
![]() ![]() |
0..1 | When the activity occurred | ||||||
![]() ![]() ![]() |
Period | |||||||
![]() ![]() ![]() |
dateTime | |||||||
![]() ![]() |
SΣ | 1..1 | instant | Timestamp when the activity was recorded / updated | ||||
![]() ![]() |
0..* | uri | Policy or plan the activity was defined by | |||||
![]() ![]() |
0..1 | Reference(PH Core Location) | Where the activity occurred, if relevant | |||||
![]() ![]() |
0..* | CodeableConcept | Reason the activity is occurring Binding: PurposeOfUse (extensible): The reason the activity took place. | |||||
![]() ![]() |
0..1 | CodeableConcept | Activity that occurred Binding: ProvenanceActivityType (extensible): The activity that took place. | |||||
![]() ![]() |
C | 1..* | BackboneElement | Actor(s) involved Slice: Unordered, Open by value:type Constraints: provenance-1 | ||||
![]() ![]() ![]() |
Content/Rules for all slices | |||||||
![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations | |||||
![]() ![]() ![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
![]() ![]() ![]() ![]() |
SΣ | 0..1 | CodeableConcept | How the agent participated Binding: ProvenanceParticipantType (extensible): The type of participation (author, transmitter, etc.) | ||||
![]() ![]() ![]() ![]() |
0..* | CodeableConcept | What the agents role was Binding: SecurityRoleType (example): The role that a provenance agent played with respect to the activity. | |||||
![]() ![]() ![]() ![]() |
SΣ | 1..1 | Reference(Practitioner | PractitionerRole | RelatedPerson | Patient | Device | Organization) | Who participated | ||||
![]() ![]() ![]() ![]() |
S | 0..1 | Reference(Practitioner | PractitionerRole | RelatedPerson | Patient | Device | Organization) | Who the agent is representing | ||||
![]() ![]() ![]() |
S | 0..* | BackboneElement | Author organization or individual responsible for the information | ||||
![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations | |||||
![]() ![]() ![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
![]() ![]() ![]() ![]() |
SΣ | 1..1 | CodeableConcept | How the agent participated Binding: ProvenanceParticipantType (extensible): The type of participation (author, transmitter, etc.) Required Pattern: At least the following | ||||
![]() ![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations | |||||
![]() ![]() ![]() ![]() ![]() |
1..* | Coding | Code defined by a terminology system Fixed Value: (Complex) | |||||
![]() ![]() ![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations | |||||
![]() ![]() ![]() ![]() ![]() ![]() |
1..1 | uri | Identity of the terminology system Fixed Value: http://terminology.hl7.org/CodeSystem/provenance-participant-type | |||||
![]() ![]() ![]() ![]() ![]() ![]() |
0..1 | string | Version of the system - if relevant | |||||
![]() ![]() ![]() ![]() ![]() ![]() |
1..1 | code | Symbol in syntax defined by the system Fixed Value: author | |||||
![]() ![]() ![]() ![]() ![]() ![]() |
0..1 | string | Representation defined by the system | |||||
![]() ![]() ![]() ![]() ![]() ![]() |
0..1 | boolean | If this coding was chosen directly by the user | |||||
![]() ![]() ![]() ![]() ![]() |
0..1 | string | Plain text representation of the concept | |||||
![]() ![]() ![]() ![]() |
0..* | CodeableConcept | What the agents role was Binding: SecurityRoleType (example): The role that a provenance agent played with respect to the activity. | |||||
![]() ![]() ![]() ![]() |
SΣ | 1..1 | Reference(PH Core Practitioner | PH Core PractitionerRole | PH Core Organization | PH Core Patient | PH Core RelatedPerson | Device) | Who participated | ||||
![]() ![]() ![]() ![]() |
S | 0..1 | Reference(PH Core Organization) | Who the agent is representing | ||||
![]() ![]() ![]() |
S | 0..* | BackboneElement | Transmitter that provided the information | ||||
![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations | |||||
![]() ![]() ![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
![]() ![]() ![]() ![]() |
SΣ | 1..1 | CodeableConcept | How the agent participated Binding: ProvenanceParticipantType (extensible): The type of participation (author, transmitter, etc.) Required Pattern: At least the following | ||||
![]() ![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations | |||||
![]() ![]() ![]() ![]() ![]() |
1..* | Coding | Code defined by a terminology system Fixed Value: (Complex) | |||||
![]() ![]() ![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations | |||||
![]() ![]() ![]() ![]() ![]() ![]() |
1..1 | uri | Identity of the terminology system Fixed Value: http://terminology.hl7.org/CodeSystem/provenance-participant-type | |||||
![]() ![]() ![]() ![]() ![]() ![]() |
0..1 | string | Version of the system - if relevant | |||||
![]() ![]() ![]() ![]() ![]() ![]() |
1..1 | code | Symbol in syntax defined by the system Fixed Value: transmitter | |||||
![]() ![]() ![]() ![]() ![]() ![]() |
0..1 | string | Representation defined by the system | |||||
![]() ![]() ![]() ![]() ![]() ![]() |
0..1 | boolean | If this coding was chosen directly by the user | |||||
![]() ![]() ![]() ![]() ![]() |
0..1 | string | Plain text representation of the concept | |||||
![]() ![]() ![]() ![]() |
0..* | CodeableConcept | What the agents role was Binding: SecurityRoleType (example): The role that a provenance agent played with respect to the activity. | |||||
![]() ![]() ![]() ![]() |
SΣ | 1..1 | Reference(PH Core Practitioner | PH Core PractitionerRole | PH Core Organization | PH Core Patient | PH Core RelatedPerson | Device) | Who participated | ||||
![]() ![]() ![]() ![]() |
S | 0..1 | Reference(PH Core Organization) | Who the agent is representing | ||||
![]() ![]() |
0..* | BackboneElement | An entity used in this activity | |||||
![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations | |||||
![]() ![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
![]() ![]() ![]() |
Σ | 1..1 | code | derivation | revision | quotation | source | removal Binding: ProvenanceEntityRole (required): How an entity was used in an activity. | ||||
![]() ![]() ![]() |
Σ | 1..1 | Reference(Resource) | Identity of entity | ||||
![]() ![]() ![]() |
0..* | See agent (Provenance) | Entity is attributed to this agent | |||||
![]() ![]() |
0..* | Signature | Signature on target | |||||
Documentation for this format | ||||||||
| Path | Status | Usage | ValueSet | Version | Source |
| Provenance.language | Base | preferred | Common Languages | 📍4.0.1 | FHIR Std. |
| Provenance.target.type | Base | extensible | ResourceType | 📍4.0.1 | FHIR Std. |
| Provenance.reason | Base | extensible | PurposeOfUse | 📦3.1.0 | THO v7.1 |
| Provenance.activity | Base | extensible | Provenance activity type | 📍4.0.1 | FHIR Std. |
| Provenance.agent.type | Base | extensible | Provenance participant type | 📦4.0.1 | FHIR Std. |
| Provenance.agent.role | Base | example | SecurityRoleType | 📍4.0.1 | FHIR Std. |
| Provenance.agent:ProvenanceAuthor.type | Base | extensible | Provenance participant type | 📦4.0.1 | FHIR Std. |
| Provenance.agent:ProvenanceAuthor.role | Base | example | SecurityRoleType | 📍4.0.1 | FHIR Std. |
| Provenance.agent:ProvenanceTransmitter.type | Base | extensible | Provenance participant type | 📦4.0.1 | FHIR Std. |
| Provenance.agent:ProvenanceTransmitter.role | Base | example | SecurityRoleType | 📍4.0.1 | FHIR Std. |
| Provenance.entity.role | Base | required | ProvenanceEntityRole | 📍4.0.1 | FHIR Std. |
| Id | Grade | Path(s) | Description | Expression |
| dom-2 | error | Provenance | If the resource is contained in another resource, it SHALL NOT contain nested Resources |
contained.contained.empty()
|
| dom-3 | error | Provenance | If 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-4 | error | Provenance | If 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-5 | error | Provenance | If a resource is contained in another resource, it SHALL NOT have a security label |
contained.meta.security.empty()
|
| dom-6 | best practice | Provenance | A resource should have narrative for robust management |
text.`div`.exists()
|
| ele-1 | error | **ALL** elements | All FHIR elements must have a @value or children |
hasValue() or (children().count() > id.count())
|
| ext-1 | error | **ALL** extensions | Must have either extensions or value[x], not both |
extension.exists() != value.exists()
|
| provenance-1 | error | Provenance.agent | onBehalfOf SHALL be present when Provenance.agent.who is a Practitioner or Device |
who.exists((resolve() is Practitioner) or (resolve() is Device)) implies onBehalfOf.exists()
|
This structure is derived from Provenance
Summary
Mandatory: 0 element(2 nested mandatory elements)
Must-Support: 8 elements
Structures
This structure refers to these other structures:
Slices
This structure defines the following Slices:
Other representations of profile: CSV, Excel, Schematron