Profiles & Operations Index > Profile: Provenance

Profile: Provenance

Canonical URL:http://ontariohealth.ca/fhir/mi/StructureDefinition/ca-on-mi-profile-provenance

Simplifier project page: Provenance

Derived from: Provenance (R4)

Formal Views of Profile Content

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

Differential View

idΣ0..1string
id0..1string
extensionC0..*Extension
versionIdΣ0..1id
lastUpdatedΣ0..1instant
sourceΣ0..1uri
profileΣ0..*canonical(StructureDefinition)
securityΣ0..*CodingBinding
id0..1string
extensionC0..*Extension
systemS Σ1..1uriFixed Value
versionΣ0..1string
codeS Σ1..1codeFixed Value
displayS Σ0..1string
userSelectedΣ0..1boolean
implicitRulesΣ ?!0..1uri
language0..1codeBinding
text0..1Narrative
contained0..*Resource
extensionC0..*Extension
modifierExtension?! C0..*Extension
id0..1string
extensionC0..*Extension
referenceΣ C0..1string
typeΣ0..1uriBinding
id0..1string
extensionC0..*Extension
useΣ ?!0..1codeBinding
typeΣ0..1CodeableConceptBinding
systemS Σ1..1uri
valueS Σ1..1string
periodΣ C0..1Period
assignerΣ C0..1Reference(Organization)
displayΣ0..1string
occurredDateTimedateTime
occurredPeriodPeriod
recordedS Σ1..1instant
policyS1..1uriFixed Value
locationC0..1Reference(Location)
reason0..*CodeableConceptBinding
id0..1string
extensionC0..*Extension
id0..1string
extensionC0..*Extension
systemS Σ1..1uriFixed Value
versionΣ0..1string
codeS Σ1..1codeFixed Value
displayS Σ1..1stringFixed Value
userSelectedΣ0..1boolean
textΣ0..1string
id0..1string
extensionC0..*Extension
modifierExtensionΣ ?! C0..*Extension
typeΣ0..1CodeableConceptBinding
role0..*CodeableConcept
whoΣ C1..1Reference(Device | Organization | Patient | Practitioner | PractitionerRole | RelatedPerson)
onBehalfOfC0..1Reference(Device | Organization | Patient | Practitioner | PractitionerRole | RelatedPerson)
id0..1string
extensionC0..*Extension
modifierExtensionΣ ?! C0..*Extension
id0..1string
extensionC0..*Extension
id0..1string
extensionC0..*Extension
systemS Σ1..1uriPattern
versionΣ0..1string
codeS Σ1..1codePattern
displayS Σ1..1stringPattern
userSelectedΣ0..1boolean
textΣ0..1string
role0..*CodeableConcept
id0..1string
extensionC0..*Extension
referenceΣ C0..1string
typeΣ0..1uriBinding
id0..1string
extensionC0..*Extension
useΣ ?!0..1codeBinding
typeΣ0..1CodeableConceptBinding
systemS Σ1..1uriFixed Value
valueS Σ1..1string
periodΣ C0..1Period
assignerΣ C0..1Reference(Organization)
displayΣ0..1string
onBehalfOfC0..1Reference(Device | Organization | Patient | Practitioner | PractitionerRole | RelatedPerson)
id0..1string
extensionC0..*Extension
modifierExtensionΣ ?! C0..*Extension
id0..1string
extensionC0..*Extension
id0..1string
extensionC0..*Extension
systemS Σ1..1uriPattern
versionΣ0..1string
codeS Σ1..1codePattern
displayS Σ1..1stringPattern
userSelectedΣ0..1boolean
textΣ0..1string
role0..*CodeableConcept
id0..1string
extensionC0..*Extension
referenceΣ C0..1string
typeΣ0..1uriBinding
identifierΣ0..1Identifier
displayS Σ1..1stringFixed Value
onBehalfOfC0..1Reference(Device | Organization | Patient | Practitioner | PractitionerRole | RelatedPerson)
id0..1string
extensionC0..*Extension
modifierExtensionΣ ?! C0..*Extension
id0..1string
extensionC0..*Extension
codingS Σ1..1Coding
textΣ0..1string
role0..*CodeableConcept
id0..1string
extensionC0..*Extension
referenceΣ C0..1string
typeΣ0..1uriBinding
identifierS Σ0..1Identifier
displayΣ0..1string
onBehalfOfC0..1Reference(Device | Organization | Patient | Practitioner | PractitionerRole | RelatedPerson)
id0..1string
extensionC0..*Extension
modifierExtensionΣ ?! C0..*Extension
roleS Σ1..1codeBindingFixed Value
id0..1string
extensionC0..*Extension
referenceΣ C0..1string
typeΣ0..1uriBinding
identifierS Σ1..1Identifier
displayΣ0..1string
agent0..*see (agent)
signature0..*Signature

Hybrid View

idΣ0..1string
id0..1string
extensionC0..*Extension
versionIdΣ0..1id
lastUpdatedΣ0..1instant
sourceΣ0..1uri
profileΣ0..*canonical(StructureDefinition)
securityΣ0..*CodingBinding
id0..1string
extensionC0..*Extension
systemS Σ1..1uriFixed Value
versionΣ0..1string
codeS Σ1..1codeFixed Value
displayS Σ0..1string
userSelectedΣ0..1boolean
implicitRulesΣ ?!0..1uri
language0..1codeBinding
text0..1Narrative
contained0..*Resource
extensionC0..*Extension
modifierExtension?! C0..*Extension
id0..1string
extensionC0..*Extension
referenceΣ C0..1string
typeΣ0..1uriBinding
id0..1string
extensionC0..*Extension
useΣ ?!0..1codeBinding
typeΣ0..1CodeableConceptBinding
systemS Σ1..1uri
valueS Σ1..1string
periodΣ C0..1Period
assignerΣ C0..1Reference(Organization)
displayΣ0..1string
occurredDateTimedateTime
occurredPeriodPeriod
recordedS Σ1..1instant
policyS1..1uriFixed Value
locationC0..1Reference(Location)
reason0..*CodeableConceptBinding
id0..1string
extensionC0..*Extension
id0..1string
extensionC0..*Extension
systemS Σ1..1uriFixed Value
versionΣ0..1string
codeS Σ1..1codeFixed Value
displayS Σ1..1stringFixed Value
userSelectedΣ0..1boolean
textΣ0..1string
id0..1string
extensionC0..*Extension
modifierExtensionΣ ?! C0..*Extension
typeΣ0..1CodeableConceptBinding
role0..*CodeableConcept
whoΣ C1..1Reference(Device | Organization | Patient | Practitioner | PractitionerRole | RelatedPerson)
onBehalfOfC0..1Reference(Device | Organization | Patient | Practitioner | PractitionerRole | RelatedPerson)
id0..1string
extensionC0..*Extension
modifierExtensionΣ ?! C0..*Extension
id0..1string
extensionC0..*Extension
id0..1string
extensionC0..*Extension
systemS Σ1..1uriPattern
versionΣ0..1string
codeS Σ1..1codePattern
displayS Σ1..1stringPattern
userSelectedΣ0..1boolean
textΣ0..1string
role0..*CodeableConcept
id0..1string
extensionC0..*Extension
referenceΣ C0..1string
typeΣ0..1uriBinding
id0..1string
extensionC0..*Extension
useΣ ?!0..1codeBinding
typeΣ0..1CodeableConceptBinding
systemS Σ1..1uriFixed Value
valueS Σ1..1string
periodΣ C0..1Period
assignerΣ C0..1Reference(Organization)
displayΣ0..1string
onBehalfOfC0..1Reference(Device | Organization | Patient | Practitioner | PractitionerRole | RelatedPerson)
id0..1string
extensionC0..*Extension
modifierExtensionΣ ?! C0..*Extension
id0..1string
extensionC0..*Extension
id0..1string
extensionC0..*Extension
systemS Σ1..1uriPattern
versionΣ0..1string
codeS Σ1..1codePattern
displayS Σ1..1stringPattern
userSelectedΣ0..1boolean
textΣ0..1string
role0..*CodeableConcept
id0..1string
extensionC0..*Extension
referenceΣ C0..1string
typeΣ0..1uriBinding
identifierΣ0..1Identifier
displayS Σ1..1stringFixed Value
onBehalfOfC0..1Reference(Device | Organization | Patient | Practitioner | PractitionerRole | RelatedPerson)
id0..1string
extensionC0..*Extension
modifierExtensionΣ ?! C0..*Extension
id0..1string
extensionC0..*Extension
codingS Σ1..1Coding
textΣ0..1string
role0..*CodeableConcept
id0..1string
extensionC0..*Extension
referenceΣ C0..1string
typeΣ0..1uriBinding
identifierS Σ0..1Identifier
displayΣ0..1string
onBehalfOfC0..1Reference(Device | Organization | Patient | Practitioner | PractitionerRole | RelatedPerson)
id0..1string
extensionC0..*Extension
modifierExtensionΣ ?! C0..*Extension
roleS Σ1..1codeBindingFixed Value
id0..1string
extensionC0..*Extension
referenceΣ C0..1string
typeΣ0..1uriBinding
identifierS Σ1..1Identifier
displayΣ0..1string
agent0..*see (agent)
signature0..*Signature

Snapshot View

idΣ0..1string
id0..1string
extensionC0..*Extension
versionIdΣ0..1id
lastUpdatedΣ0..1instant
sourceΣ0..1uri
profileΣ0..*canonical(StructureDefinition)
securityΣ0..*CodingBinding
id0..1string
extensionC0..*Extension
systemS Σ1..1uriFixed Value
versionΣ0..1string
codeS Σ1..1codeFixed Value
displayS Σ0..1string
userSelectedΣ0..1boolean
implicitRulesΣ ?!0..1uri
language0..1codeBinding
text0..1Narrative
contained0..*Resource
extensionC0..*Extension
modifierExtension?! C0..*Extension
id0..1string
extensionC0..*Extension
referenceΣ C0..1string
typeΣ0..1uriBinding
id0..1string
extensionC0..*Extension
useΣ ?!0..1codeBinding
typeΣ0..1CodeableConceptBinding
systemS Σ1..1uri
valueS Σ1..1string
periodΣ C0..1Period
assignerΣ C0..1Reference(Organization)
displayΣ0..1string
occurredDateTimedateTime
occurredPeriodPeriod
recordedS Σ1..1instant
policyS1..1uriFixed Value
locationC0..1Reference(Location)
reason0..*CodeableConceptBinding
id0..1string
extensionC0..*Extension
id0..1string
extensionC0..*Extension
systemS Σ1..1uriFixed Value
versionΣ0..1string
codeS Σ1..1codeFixed Value
displayS Σ1..1stringFixed Value
userSelectedΣ0..1boolean
textΣ0..1string
id0..1string
extensionC0..*Extension
modifierExtensionΣ ?! C0..*Extension
typeΣ0..1CodeableConceptBinding
role0..*CodeableConcept
whoΣ C1..1Reference(Device | Organization | Patient | Practitioner | PractitionerRole | RelatedPerson)
onBehalfOfC0..1Reference(Device | Organization | Patient | Practitioner | PractitionerRole | RelatedPerson)
id0..1string
extensionC0..*Extension
modifierExtensionΣ ?! C0..*Extension
id0..1string
extensionC0..*Extension
id0..1string
extensionC0..*Extension
systemS Σ1..1uriPattern
versionΣ0..1string
codeS Σ1..1codePattern
displayS Σ1..1stringPattern
userSelectedΣ0..1boolean
textΣ0..1string
role0..*CodeableConcept
id0..1string
extensionC0..*Extension
referenceΣ C0..1string
typeΣ0..1uriBinding
id0..1string
extensionC0..*Extension
useΣ ?!0..1codeBinding
typeΣ0..1CodeableConceptBinding
systemS Σ1..1uriFixed Value
valueS Σ1..1string
periodΣ C0..1Period
assignerΣ C0..1Reference(Organization)
displayΣ0..1string
onBehalfOfC0..1Reference(Device | Organization | Patient | Practitioner | PractitionerRole | RelatedPerson)
id0..1string
extensionC0..*Extension
modifierExtensionΣ ?! C0..*Extension
id0..1string
extensionC0..*Extension
id0..1string
extensionC0..*Extension
systemS Σ1..1uriPattern
versionΣ0..1string
codeS Σ1..1codePattern
displayS Σ1..1stringPattern
userSelectedΣ0..1boolean
textΣ0..1string
role0..*CodeableConcept
id0..1string
extensionC0..*Extension
referenceΣ C0..1string
typeΣ0..1uriBinding
identifierΣ0..1Identifier
displayS Σ1..1stringFixed Value
onBehalfOfC0..1Reference(Device | Organization | Patient | Practitioner | PractitionerRole | RelatedPerson)
id0..1string
extensionC0..*Extension
modifierExtensionΣ ?! C0..*Extension
id0..1string
extensionC0..*Extension
codingS Σ1..1Coding
textΣ0..1string
role0..*CodeableConcept
id0..1string
extensionC0..*Extension
referenceΣ C0..1string
typeΣ0..1uriBinding
identifierS Σ0..1Identifier
displayΣ0..1string
onBehalfOfC0..1Reference(Device | Organization | Patient | Practitioner | PractitionerRole | RelatedPerson)
id0..1string
extensionC0..*Extension
modifierExtensionΣ ?! C0..*Extension
roleS Σ1..1codeBindingFixed Value
id0..1string
extensionC0..*Extension
referenceΣ C0..1string
typeΣ0..1uriBinding
identifierS Σ1..1Identifier
displayΣ0..1string
agent0..*see (agent)
signature0..*Signature

Table View

Provenance..
Provenance.meta1..
Provenance.meta.tag1..
Provenance.meta.tag.system1..
Provenance.meta.tag.code1..
Provenance.meta.tag.display..
Provenance.target..
Provenance.target.identifier1..
Provenance.target.identifier.system1..
Provenance.target.identifier.value1..
Provenance.recorded..
Provenance.policy1..1
Provenance.activity1..
Provenance.activity.coding1..1
Provenance.activity.coding.system1..
Provenance.activity.coding.code1..
Provenance.activity.coding.display1..
Provenance.agent..
Provenance.agent:sliceAgent-composer1..1
Provenance.agent:sliceAgent-composer.type1..
Provenance.agent:sliceAgent-composer.type.coding1..1
Provenance.agent:sliceAgent-composer.type.coding.system1..
Provenance.agent:sliceAgent-composer.type.coding.code1..
Provenance.agent:sliceAgent-composer.type.coding.display1..
Provenance.agent:sliceAgent-composer.who..
Provenance.agent:sliceAgent-composer.who.identifier1..
Provenance.agent:sliceAgent-composer.who.identifier.system1..
Provenance.agent:sliceAgent-composer.who.identifier.value1..
Provenance.agent:sliceAgent-transformer..1
Provenance.agent:sliceAgent-transformer.type1..
Provenance.agent:sliceAgent-transformer.type.coding1..1
Provenance.agent:sliceAgent-transformer.type.coding.system1..
Provenance.agent:sliceAgent-transformer.type.coding.code1..
Provenance.agent:sliceAgent-transformer.type.coding.display1..
Provenance.agent:sliceAgent-transformer.who..
Provenance.agent:sliceAgent-transformer.who.display1..
Provenance.agent:sliceAgent-sendingOrganization..1
Provenance.agent:sliceAgent-sendingOrganization.type1..
Provenance.agent:sliceAgent-sendingOrganization.type.coding1..1
Provenance.agent:sliceAgent-sendingOrganization.who..
Provenance.agent:sliceAgent-sendingOrganization.who.identifier..
Provenance.entity1..1
Provenance.entity.role..
Provenance.entity.what..
Provenance.entity.what.identifier1..

JSON View

{
"resourceType": "StructureDefinition",
"url": "http://ontariohealth.ca/fhir/mi/StructureDefinition/ca-on-mi-profile-provenance",
"version": "1.0.0",
"name": "Provenance",
"status": "active",
"fhirVersion": "4.0.1",
"kind": "resource",
"abstract": false,
"type": "Provenance",
"baseDefinition": "http://hl7.org/fhir/StructureDefinition/Provenance",
"derivation": "constraint",
"element": [
{
"id": "Provenance.meta",
"path": "Provenance.meta",
"min": 1,
"mustSupport": true
},
{
"id": "Provenance.meta.tag",
"path": "Provenance.meta.tag",
"min": 1,
"mustSupport": true,
"binding": {
"strength": "required",
"description": "Codes representing data domains within Ontario Health Clinical Data Foundation",
"valueSet": "http://ontariohealth.ca/fhir/ehr/ValueSet/cdf-data-domain"
}
},
{
"id": "Provenance.meta.tag.system",
"path": "Provenance.meta.tag.system",
"min": 1,
"fixedUri": "http://ontariohealth.ca/fhir/CodeSystem/cdf-data-domains",
"mustSupport": true
},
{
"id": "Provenance.meta.tag.code",
"path": "Provenance.meta.tag.code",
"min": 1,
"fixedCode": "mi",
"mustSupport": true
},
{
"id": "Provenance.meta.tag.display",
"path": "Provenance.meta.tag.display",
"mustSupport": true
},
{
"id": "Provenance.target",
"path": "Provenance.target",
"mustSupport": true
},
{
"id": "Provenance.target.identifier",
"path": "Provenance.target.identifier",
"min": 1,
"mustSupport": true
},
{
"id": "Provenance.target.identifier.system",
"path": "Provenance.target.identifier.system",
"min": 1,
"mustSupport": true
},
{
"id": "Provenance.target.identifier.value",
"path": "Provenance.target.identifier.value",
"min": 1,
"mustSupport": true
},
{
"id": "Provenance.recorded",
"path": "Provenance.recorded",
"mustSupport": true
},
{
"id": "Provenance.policy",
"path": "Provenance.policy",
"min": 1,
"max": "1",
"fixedUri": "http://ontariohealth.ca/fhir/provenance-policy/ocinet",
"mustSupport": true
},
{
"id": "Provenance.activity",
"path": "Provenance.activity",
"min": 1,
"coding": [
{
"system": "http://terminology.hl7.org/CodeSystem/iso-21089-lifecycle",
"code": "transform",
"display": "Transform/Translate Record Lifecycle Event"
}
]
},
"mustSupport": true,
"binding": {
"strength": "required",
"valueSet": "http://ontariohealth.ca/fhir/ehr/ValueSet/provenance-activity-type"
}
},
{
"id": "Provenance.activity.coding",
"path": "Provenance.activity.coding",
"min": 1,
"max": "1",
"mustSupport": true
},
{
"id": "Provenance.activity.coding.system",
"path": "Provenance.activity.coding.system",
"min": 1,
"mustSupport": true
},
{
"id": "Provenance.activity.coding.code",
"path": "Provenance.activity.coding.code",
"min": 1,
"mustSupport": true
},
{
"id": "Provenance.activity.coding.display",
"path": "Provenance.activity.coding.display",
"min": 1,
"mustSupport": true
},
{
"id": "Provenance.agent",
"path": "Provenance.agent",
"slicing": {
{
"type": "pattern",
"path": "type.coding"
}
],
"rules": "open"
},
"mustSupport": true
},
{
"id": "Provenance.agent:sliceAgent-composer",
"path": "Provenance.agent",
"sliceName": "sliceAgent-composer",
"min": 1,
"max": "1",
"mustSupport": true
},
{
"id": "Provenance.agent:sliceAgent-composer.type",
"path": "Provenance.agent.type",
"min": 1,
"mustSupport": true,
"binding": {
"strength": "required",
"valueSet": "http://ontariohealth.ca/fhir/ehr/ValueSet/provenance-agent-type"
}
},
{
"id": "Provenance.agent:sliceAgent-composer.type.coding",
"path": "Provenance.agent.type.coding",
"min": 1,
"max": "1",
"system": "http://terminology.hl7.org/CodeSystem/provenance-participant-type",
"code": "composer",
"display": "Composer"
},
"mustSupport": true
},
{
"id": "Provenance.agent:sliceAgent-composer.type.coding.system",
"path": "Provenance.agent.type.coding.system",
"min": 1,
"mustSupport": true
},
{
"id": "Provenance.agent:sliceAgent-composer.type.coding.code",
"path": "Provenance.agent.type.coding.code",
"min": 1,
"mustSupport": true
},
{
"id": "Provenance.agent:sliceAgent-composer.type.coding.display",
"path": "Provenance.agent.type.coding.display",
"min": 1,
"mustSupport": true
},
{
"id": "Provenance.agent:sliceAgent-composer.who",
"path": "Provenance.agent.who",
"mustSupport": true
},
{
"id": "Provenance.agent:sliceAgent-composer.who.identifier",
"path": "Provenance.agent.who.identifier",
"min": 1,
"mustSupport": true
},
{
"id": "Provenance.agent:sliceAgent-composer.who.identifier.system",
"path": "Provenance.agent.who.identifier.system",
"min": 1,
"fixedUri": "http://ehealthontario.ca/fhir/NamingSystem/id-oneid-clientid",
"mustSupport": true
},
{
"id": "Provenance.agent:sliceAgent-composer.who.identifier.value",
"path": "Provenance.agent.who.identifier.value",
"min": 1,
"mustSupport": true
},
{
"id": "Provenance.agent:sliceAgent-transformer",
"path": "Provenance.agent",
"sliceName": "sliceAgent-transformer",
"max": "1",
"mustSupport": true
},
{
"id": "Provenance.agent:sliceAgent-transformer.type",
"path": "Provenance.agent.type",
"min": 1,
"mustSupport": true
},
{
"id": "Provenance.agent:sliceAgent-transformer.type.coding",
"path": "Provenance.agent.type.coding",
"min": 1,
"max": "1",
"system": "http://terminology.hl7.org/CodeSystem/provenance-participant-type",
"code": "transformer",
"display": "Transformer"
},
"mustSupport": true
},
{
"id": "Provenance.agent:sliceAgent-transformer.type.coding.system",
"path": "Provenance.agent.type.coding.system",
"min": 1,
"mustSupport": true
},
{
"id": "Provenance.agent:sliceAgent-transformer.type.coding.code",
"path": "Provenance.agent.type.coding.code",
"min": 1,
"mustSupport": true
},
{
"id": "Provenance.agent:sliceAgent-transformer.type.coding.display",
"path": "Provenance.agent.type.coding.display",
"min": 1,
"mustSupport": true
},
{
"id": "Provenance.agent:sliceAgent-transformer.who",
"path": "Provenance.agent.who",
"mustSupport": true
},
{
"id": "Provenance.agent:sliceAgent-transformer.who.display",
"path": "Provenance.agent.who.display",
"min": 1,
"fixedString": "OCINet HL7v2 to FHIR Translation Engine",
"mustSupport": true
},
{
"id": "Provenance.agent:sliceAgent-sendingOrganization",
"path": "Provenance.agent",
"sliceName": "sliceAgent-sendingOrganization",
"max": "1",
"mustSupport": true
},
{
"id": "Provenance.agent:sliceAgent-sendingOrganization.type",
"path": "Provenance.agent.type",
"min": 1,
"mustSupport": true,
"binding": {
"strength": "required",
"valueSet": "http://ontariohealth.ca/fhir/ehr/ValueSet/provenance-agent-type"
}
},
{
"id": "Provenance.agent:sliceAgent-sendingOrganization.type.coding",
"path": "Provenance.agent.type.coding",
"min": 1,
"max": "1",
"mustSupport": true
},
{
"id": "Provenance.agent:sliceAgent-sendingOrganization.who",
"path": "Provenance.agent.who",
"mustSupport": true
},
{
"id": "Provenance.agent:sliceAgent-sendingOrganization.who.identifier",
"path": "Provenance.agent.who.identifier",
"mustSupport": true
},
{
"id": "Provenance.entity",
"path": "Provenance.entity",
"min": 1,
"max": "1",
"mustSupport": true
},
{
"id": "Provenance.entity.role",
"path": "Provenance.entity.role",
"fixedCode": "derivation",
"mustSupport": true
},
{
"id": "Provenance.entity.what",
"path": "Provenance.entity.what",
"mustSupport": true
},
{
"id": "Provenance.entity.what.identifier",
"path": "Provenance.entity.what.identifier",
"min": 1,
"mustSupport": true
}
]
}
}

Usage

The Provenance resource must be provided in OCINet's live FHIR feed to miCDR to describe the entities and process involved in the producing the submitted resource.

Notes

.meta.tag

  • SHALL populate two instances with the value below:

First instance:

  "system": "http://ontariohealth.ca/fhir/CodeSystem/cdf-data-domains",     "code": "mi",
  "display": "Medical Imaging"

Second instance:

  "system": "http://ontariohealth.ca/fhir/CodeSystem/cdf-v2-message-type",  "code": `use <MSH-9.1>^<MSH-9.2>, e.g. ORU^R01"
  

.target.identifier

  • SHALL contain the identifier of the bundle in the submission (i.e. Bundle.identifier). Both system and value must be provided.

.recorded

  • SHALL contain the current timestamp

.policy

  • SHALL contain fixed URI value http://ontariohealth.ca/fhir/provenance-policy/ocinet

.activity

  • SHALL contain the elements as shown below:
"activity" : {
    "coding" : [
      {
        "system" : "http://terminology.hl7.org/CodeSystem/iso-21089-lifecycle",
        "code" : "transform",
        "display" : "Transform/Translate Record Lifecycle Event"
      }
    ]
  }

.agent

  • SHALL contain the instances to support different agents: composer, transformer, and author.

  • To support composer. It should contain the following

    • agent.type
 "system": "http://terminology.hl7.org/CodeSystem/provenance-participant-type",
 "code" : "composer",
  "display" : "Composer"
  • agent.who.identifier: for reports and orders, identifier.system MUST be urn:ietf:rfc:3986. For agent.who.identifier.value, use the organization OID converted from PID-3.6. This OID must be prefixed with "urn:oid:"

Example:

"identifier": [
{
 "system": "urn:ietf:rfc:3986",
 "value" : "urn:oid:[org OID]"
  }
]
  • To support transformer (i.e. OCINet). It should contain the following
    • agent.type
 "system": "http://terminology.hl7.org/CodeSystem/provenance-participant-type",
 "code" : "transformer",
  "display" : "Transformer"
  • agent.who.display: use fixed value OCINet HL7v2 to FHIR Translation Engine

  • If MSH-3 has value, author agent should be populated. It should contain the following

  • agent.type

 "system": "http://terminology.hl7.org/CodeSystem/provenance-participant-type",
 "code" : "author",
  "display" : "Author"
  • agent.who:
    • For reports and orders, map identifier.value to MSH-3
    • For image manifests, map display to full name of DIR

.entity

SHALL be populated as follows:

  • entity.role SHALL be fixed to derivation
  • entity.what.identifier:
    • For reports and orders:
      • For system, use the OID converted from PID-3.6 (MRN assigning authority) and map it to this field with prefix `urn:oid:"
      • For value, use the value from MSH-10
    • For imaging manifests:
      • Use the same value for system
      • Use submission set unique ID for value. The unique ID is found in XDS submission set. Example below:
      <rim:ExternalIdentifier id="EI_02" registryObject="Document01" identificationScheme="urn:uuid:2e82c1f6-a085-4c72-9da3-8640a32e42ab" value="2.16.840.1.113883.3.239.23.7.2043249">
      <rim:Name> 
      <rim:LocalizedString value="XDSDocumentEntry.uniqueId"/> 
      </rim:Name>
      </rim:ExternalIdentifier>