PackagesCanonicalsLogsProblems
    Packages
    hl7.fhir.fi.base@1.0.0-rc20
    https://hl7.fi/fhir/finnish-base-profiles/StructureDefinition/fi-base-information-custodian
description: This is a Finnish abstract base profile for the Provenance resource, used to communicate the custodian of information (*rekisterinpitäjä*).
package_name: hl7.fhir.fi.base
derivation: constraint
name: FiBaseInformationCustodian
abstract: true
type: Provenance
elements:
  agent:
    short: An agent with type http://terminology.hl7.org/CodeSystem/v3-ParticipationType#CST
    index: 0
    slicing:
      rules: open
      description: An agent SHALL have the `type` `CST` from http://terminology.hl7.org/CodeSystem/v3-ParticipationType
      discriminator:
      - {path: type, type: value}
      min: null
      slices:
        custodian:
          match:
            type:
              coding:
              - {code: CST, system: 'http://terminology.hl7.org/CodeSystem/v3-ParticipationType'}
          schema:
            _required: true
            index: 1
            elements:
              type:
                pattern:
                  type: CodeableConcept
                  value:
                    coding:
                    - {code: CST, system: 'http://terminology.hl7.org/CodeSystem/v3-ParticipationType'}
                index: 2
              role:
                elements:
                  coding:
                    elements:
                      system:
                        short: Public or private occupational healthcare provider
                        pattern: {type: Uri, value: 'urn:oid:1.2.246.537.5.40172'}
                        index: 3
            required: [type]
  entity:
    short: Role source and a .what with an identifier with the system urn:oid:1.2.246.537.5.40150
    index: 4
    slicing:
      rules: open
      description: One entity SHALL have the `.role` `source` and a `.what` with an identifier with the system `urn:oid:1.2.246.537.5.40150` (*KanTa-palvelut - Potilasasiakirjan rekisteritunnus*) that indicates the type of the registry.  If the identifier has the value 4 (*työterveyshuolto*, occupational healthcare), another entity element specifies the business ID (*y-tunnus*) of the customer organization.
      discriminator:
      - {path: what.identifier.system, type: value}
      min: 1
      slices:
        registerType:
          match:
            what:
              identifier: {system: 'urn:oid:1.2.246.537.5.40150'}
          schema:
            _required: true
            index: 5
            elements:
              role:
                pattern: {type: Code, value: source}
                index: 6
              what:
                elements:
                  identifier:
                    elements:
                      system:
                        short: Type of registry
                        pattern: {type: Uri, value: 'urn:oid:1.2.246.537.5.40150'}
                        index: 7
                    required: [system]
        registerSpecifierCompanyId:
          match:
            what:
              identifier: {system: 'urn:oid:1.2.246.10'}
          schema:
            index: 8
            elements:
              role:
                pattern: {type: Code, value: source}
                index: 9
              what:
                elements:
                  identifier:
                    elements:
                      type:
                        pattern:
                          type: CodeableConcept
                          value:
                            coding:
                            - {code: TAX, system: 'http://terminology.hl7.org/CodeSystem/v2-0203'}
                        index: 10
                      system:
                        short: Customer company of private occupational healthcare
                        pattern: {type: Uri, value: 'urn:oid:1.2.246.10'}
                        index: 11
                    required: [system]
        registerSpecifierPersonId:
          match:
            what:
              identifier: {system: 'urn:oid:1.2.246.21'}
          schema:
            index: 12
            elements:
              role:
                pattern: {type: Code, value: source}
                index: 13
              what:
                elements:
                  identifier:
                    elements:
                      type:
                        pattern:
                          type: CodeableConcept
                          value:
                            coding:
                            - {code: NNFIN, system: 'http://terminology.hl7.org/CodeSystem/v2-0203'}
                        index: 14
                      system:
                        short: Customer of private occupational healthcare
                        pattern: {type: Uri, value: 'urn:oid:1.2.246.21'}
                        index: 15
                    required: [system]
        registerSpecifierCustomerWithoutId:
          match:
            what:
              identifier: {system: 'urn:oid:1.2.246.537.30'}
          schema:
            index: 16
            elements:
              role:
                pattern: {type: Code, value: source}
                index: 17
              what:
                elements:
                  identifier:
                    elements:
                      system:
                        short: Customer of private occupational healthcare
                        pattern: {type: Uri, value: 'urn:oid:1.2.246.537.30'}
                        index: 18
                    required: [system]
package_version: 1.0.0-rc20
class: profile
kind: resource
url: https://hl7.fi/fhir/finnish-base-profiles/StructureDefinition/fi-base-information-custodian
base: https://hl7.fi/fhir/finnish-base-profiles/StructureDefinition/fi-base-provenance
version: 1.0.0-rc20
required: [entity]