PackagesCanonicalsLogsProblems
    Packages
    hl7.fhir.us.core@3.1.1
    http://hl7.org/fhir/us/core/StructureDefinition/us-core-provenance
description: Draft set of requirements to satisfy Basic Provenance Requirements.
package_name: hl7.fhir.us.core
derivation: constraint
name: USCoreProvenance
type: Provenance
elements:
  target:
    min: 1
    isModifier: false
    short: The Resource this Provenance record supports
    index: 0
    refers: ['http://hl7.org/fhir/StructureDefinition/Resource']
    type: Reference
    mustSupport: true
    array: true
  recorded: {isModifier: false, short: Timestamp when the activity was recorded / updated, type: instant, mustSupport: true, index: 1}
  agent:
    min: 1
    isModifier: false
    index: 2
    slicing:
      rules: open
      discriminator:
      - {path: type, type: pattern}
      min: 1
      slices:
        ProvenanceAuthor:
          match:
            type:
              coding:
              - {code: author, system: 'http://terminology.hl7.org/CodeSystem/provenance-participant-type'}
          schema:
            isModifier: false
            mustSupport: true
            array: true
            index: 6
            elements:
              type:
                type: CodeableConcept
                isModifier: false
                mustSupport: true
                pattern:
                  type: CodeableConcept
                  value:
                    coding:
                    - {code: author, system: 'http://terminology.hl7.org/CodeSystem/provenance-participant-type'}
                index: 7
            required: [type]
        ProvenanceTransmitter:
          match:
            type:
              coding:
              - {code: transmitter, system: 'http://hl7.org/fhir/us/core/CodeSystem/us-core-provenance-participant-type'}
          schema:
            isModifier: false
            mustSupport: true
            index: 8
            elements:
              type:
                type: CodeableConcept
                isModifier: false
                mustSupport: true
                pattern:
                  type: CodeableConcept
                  value:
                    coding:
                    - {code: transmitter, system: 'http://hl7.org/fhir/us/core/CodeSystem/us-core-provenance-participant-type'}
                index: 9
            required: [type]
    mustSupport: true
    array: true
    elements:
      type:
        type: CodeableConcept
        binding: {strength: extensible, valueSet: 'http://hl7.org/fhir/us/core/ValueSet/us-core-provenance-participant-type'}
        isModifier: false
        mustSupport: true
        index: 3
      who:
        type: Reference
        isModifier: false
        mustSupport: true
        refers: ['http://hl7.org/fhir/us/core/StructureDefinition/us-core-organization', 'http://hl7.org/fhir/us/core/StructureDefinition/us-core-patient', 'http://hl7.org/fhir/us/core/StructureDefinition/us-core-practitioner']
        index: 4
      onBehalfOf:
        constraint:
          provenance-1: {human: onBehalfOf SHALL be present when Provenance.agent.who is a Practitioner or Device, severity: error, expression: (($this.agent.who.resolve() is Practitioner) or ($this.agent.who.resolve() is Device)) implies exists()}
        isModifier: false
        refers: ['http://hl7.org/fhir/us/core/StructureDefinition/us-core-organization']
        type: Reference
        mustSupport: true
        index: 5
    required: [who]
package_version: 3.1.1
class: profile
kind: resource
url: http://hl7.org/fhir/us/core/StructureDefinition/us-core-provenance
base: http://hl7.org/fhir/StructureDefinition/Provenance
version: 3.1.1
required: [agent, recorded, target]