PackagesCanonicalsLogsProblems
    Packages
    KBV.ITA.ERP@1.0.0
    https://fhir.kbv.de/StructureDefinition/KBV_PR_ERP_Prescription
description: null
package_name: KBV.ITA.ERP
derivation: constraint
name: KBV_PR_ERP_Prescription
type: MedicationRequest
elements:
  performerType: {index: 102}
  category: {index: 73}
  insurance:
    type: Reference
    mustSupport: true
    refers: ['https://fhir.kbv.de/StructureDefinition/KBV_PR_FOR_Coverage|1.0.1']
    index: 111
    elements:
      reference: {mustSupport: true, index: 112}
      type: {index: 113}
      identifier: {index: 114}
      display: {index: 115}
    required: [reference]
  instantiatesCanonical: {index: 106}
  eventHistory: {index: 166}
  meta:
    mustSupport: true
    index: 1
    elements:
      versionId: {index: 2}
      lastUpdated: {index: 3}
      source: {index: 4}
      profile:
        pattern: {type: Canonical, value: 'https://fhir.kbv.de/StructureDefinition/KBV_PR_ERP_Prescription|1.0.0'}
        index: 5
      security: {index: 6}
      tag: {index: 7}
    required: [profile]
  instantiatesUri: {index: 107}
  substitution:
    mustSupport: true
    index: 156
    elements:
      allowed:
        short: Aut idem
        mustSupport: true
        choices: [allowedBoolean]
        index: 161
        slicing:
          slices:
            allowedBoolean:
              match: {}
              schema:
                short: Aut idem
                mustSupport: true
                choices: [allowedBoolean]
                _required: true
                index: 161
              min: 1
      allowedBoolean:
        short: Aut idem
        type: boolean
        mustSupport: true
        choiceOf: allowed
        index: 162
        slicing:
          slices:
            allowedBoolean:
              match: {}
              schema: {short: Aut idem, type: boolean, mustSupport: true, _required: true, choiceOf: allowed, index: 162}
              min: 1
      reason: {index: 163}
    required: [allowed, allowedBoolean]
  detectedIssue: {index: 165}
  encounter: {index: 93}
  medication[x]:
    elements:
      reference: {index: 84}
      type: {index: 85}
      identifier: {index: 86}
      display: {index: 87}
    required: [reference]
  dispenseRequest:
    mustSupport: true
    index: 142
    elements:
      initialFill: {index: 143}
      dispenseInterval: {index: 144}
      validityPeriod:
        short: Angabe der Einlösefristen der Verordnung
        mustSupport: true
        index: 145
        elements:
          start: {short: Beginn Einlösefrist der Verordnung, mustSupport: true, index: 146}
          end: {short: Ende Einlösefrist der Verordnung, mustSupport: true, index: 147}
        required: [start]
      numberOfRepeatsAllowed: {index: 148}
      quantity:
        mustSupport: true
        index: 149
        elements:
          value: {short: Anzahl der verordneten Packungen, mustSupport: true, maxValueDecimal: 999, index: 150}
          unit: {index: 151}
          system:
            pattern: {type: Uri, value: 'http://unitsofmeasure.org'}
            mustSupport: true
            index: 152
          code:
            pattern: {type: Code, value: '{Package}'}
            mustSupport: true
            index: 153
        required: [value, system, code]
      expectedSupplyDuration: {index: 154}
      performer: {index: 155}
    required: [quantity]
  implicitRules: {index: 8}
  reported:
    choices: []
    index: 77
  reasonCode: {index: 104}
  statusReason: {index: 71}
  authoredOn: {short: Ausstellungsdarum, mustSupport: true, index: 95}
  note:
    constraint:
      -erp-begrenzungText: {human: Die Länge der Abgeabehinweise (text) darf 160 Zeichen nicht überschreiten., source: 'https://fhir.kbv.de/StructureDefinition/KBV_PR_ERP_Prescription', severity: error, expression: text.toString().length() <=160}
    mustSupport: true
    index: 116
    elements:
      author:
        choices: []
        index: 118
      time: {index: 119}
      text: {short: Abgabehinweis, mustSupport: true, index: 120}
  extension:
    index: 12
    slicing:
      rules: open
      discriminator:
      - {path: url, type: value}
      min: null
      slices:
        Zuzahlungsstatus:
          match: {url: null}
          schema:
            type: Extension
            mustSupport: true
            url: https://fhir.kbv.de/StructureDefinition/KBV_EX_ERP_StatusCoPayment
            index: 13
            elements:
              value:
                mustSupport: true
                choices: []
                index: 15
                slicing:
                  slices:
                    valueCoding:
                      match: {}
                      schema:
                        mustSupport: true
                        choices: []
                        index: 17
              value[x]:
                elements:
                  system: {mustSupport: true, index: 18}
                  code: {mustSupport: true, index: 19}
        Notdienstgebuehr:
          match: {url: null}
          schema:
            type: Extension
            mustSupport: true
            url: https://fhir.kbv.de/StructureDefinition/KBV_EX_ERP_EmergencyServicesFee
            index: 20
            elements:
              value:
                mustSupport: true
                choices: []
                index: 22
                slicing:
                  slices:
                    valueBoolean:
                      match: {}
                      schema:
                        mustSupport: true
                        choices: []
                        index: 24
        BVG:
          match: {url: null}
          schema:
            type: Extension
            mustSupport: true
            url: https://fhir.kbv.de/StructureDefinition/KBV_EX_ERP_BVG
            index: 25
            elements:
              value:
                mustSupport: true
                choices: []
                index: 27
                slicing:
                  slices:
                    valueBoolean:
                      match: {}
                      schema:
                        mustSupport: true
                        choices: []
                        index: 29
        unfallinformationen:
          match: {url: null}
          schema:
            type: Extension
            constraint:
              -erp-angabeUnfallbetrieb: {human: 'Unfallbetrieb nicht vorhanden, aber Pflicht bei Arbeitsunfall (code=''2'')', source: 'https://fhir.kbv.de/StructureDefinition/KBV_PR_ERP_Prescription', severity: error, expression: extension('unfallkennzeichen').valueCoding.code = '2' implies extension('unfallbetrieb').exists()}
            mustSupport: true
            url: https://fhir.kbv.de/StructureDefinition/KBV_EX_ERP_Accident
            index: 30
            extensions:
              unfallkennzeichen:
                url: null
                mustSupport: true
                index: 32
                elements:
                  value:
                    mustSupport: true
                    choices: []
                    index: 34
                    slicing:
                      slices:
                        valueCoding:
                          match: {}
                          schema:
                            mustSupport: true
                            choices: []
                            index: 36
                  value[x]:
                    elements:
                      system: {mustSupport: true, index: 37}
                      code: {mustSupport: true, index: 38}
              unfallbetrieb:
                url: null
                mustSupport: true
                index: 39
                elements:
                  value:
                    mustSupport: true
                    choices: []
                    index: 41
                    slicing:
                      slices:
                        valueString:
                          match: {}
                          schema:
                            mustSupport: true
                            choices: []
                            index: 43
              unfalltag:
                url: null
                mustSupport: true
                index: 44
                elements:
                  value:
                    mustSupport: true
                    choices: []
                    index: 46
                    slicing:
                      slices:
                        valueDate:
                          match: {}
                          schema:
                            mustSupport: true
                            choices: []
                            _required: true
                            index: 48
                          min: 1
                required: [value]
            elements:
              extension:
                index: 31
                slicing:
                  rules: open
                  discriminator:
                  - {path: url, type: value}
                  min: null
                  slices:
                    unfallkennzeichen:
                      match: {url: null}
                      schema:
                        mustSupport: true
                        index: 32
                        elements:
                          value:
                            mustSupport: true
                            choices: []
                            index: 34
                            slicing:
                              slices:
                                valueCoding:
                                  match: {}
                                  schema:
                                    mustSupport: true
                                    choices: []
                                    index: 36
                          value[x]:
                            elements:
                              system: {mustSupport: true, index: 37}
                              code: {mustSupport: true, index: 38}
                    unfallbetrieb:
                      match: {url: null}
                      schema:
                        mustSupport: true
                        index: 39
                        elements:
                          value:
                            mustSupport: true
                            choices: []
                            index: 41
                            slicing:
                              slices:
                                valueString:
                                  match: {}
                                  schema:
                                    mustSupport: true
                                    choices: []
                                    index: 43
                    unfalltag:
                      match: {url: null}
                      schema:
                        mustSupport: true
                        index: 44
                        elements:
                          value:
                            mustSupport: true
                            choices: []
                            index: 46
                            slicing:
                              slices:
                                valueDate:
                                  match: {}
                                  schema:
                                    mustSupport: true
                                    choices: []
                                    _required: true
                                    index: 48
                                  min: 1
                        required: [value]
        Mehrfachverordnung:
          match: {url: null}
          schema:
            type: Extension
            mustSupport: true
            url: https://fhir.kbv.de/StructureDefinition/KBV_EX_ERP_Multiple_Prescription
            index: 49
            extensions:
              Kennzeichen:
                url: null
                mustSupport: true
                index: 51
                elements:
                  value:
                    mustSupport: true
                    choices: []
                    index: 53
                  valueBoolean:
                    mustSupport: true
                    index: 54
                    slicing:
                      slices:
                        valueBoolean:
                          match: {}
                          schema: {mustSupport: true, index: 54}
              Nummerierung:
                url: null
                mustSupport: true
                index: 55
                elements:
                  value:
                    mustSupport: true
                    choices: []
                    index: 57
                  valueRatio:
                    mustSupport: true
                    index: 58
                    slicing:
                      slices:
                        valueRatio:
                          match: {}
                          schema:
                            mustSupport: true
                            index: 58
                            elements:
                              numerator:
                                mustSupport: true
                                index: 59
                                elements:
                                  value: {mustSupport: true, index: 60}
                              denominator:
                                mustSupport: true
                                index: 61
                                elements:
                                  value: {mustSupport: true, index: 62}
              Zeitraum:
                url: null
                mustSupport: true
                index: 63
                elements:
                  value:
                    mustSupport: true
                    choices: []
                    index: 65
                  valuePeriod:
                    mustSupport: true
                    index: 66
                    slicing:
                      slices:
                        valuePeriod:
                          match: {}
                          schema:
                            mustSupport: true
                            index: 66
                            elements:
                              start: {mustSupport: true, index: 67}
                              end: {mustSupport: true, index: 68}
            elements:
              extension:
                index: 50
                slicing:
                  rules: open
                  discriminator:
                  - {path: url, type: value}
                  min: null
                  slices:
                    Kennzeichen:
                      match: {url: null}
                      schema:
                        mustSupport: true
                        index: 51
                        elements:
                          value:
                            mustSupport: true
                            choices: []
                            index: 53
                          valueBoolean:
                            mustSupport: true
                            index: 54
                            slicing:
                              slices:
                                valueBoolean:
                                  match: {}
                                  schema: {mustSupport: true, index: 54}
                    Nummerierung:
                      match: {url: null}
                      schema:
                        mustSupport: true
                        index: 55
                        elements:
                          value:
                            mustSupport: true
                            choices: []
                            index: 57
                          valueRatio:
                            mustSupport: true
                            index: 58
                            slicing:
                              slices:
                                valueRatio:
                                  match: {}
                                  schema:
                                    mustSupport: true
                                    index: 58
                                    elements:
                                      numerator:
                                        mustSupport: true
                                        index: 59
                                        elements:
                                          value: {mustSupport: true, index: 60}
                                      denominator:
                                        mustSupport: true
                                        index: 61
                                        elements:
                                          value: {mustSupport: true, index: 62}
                    Zeitraum:
                      match: {url: null}
                      schema:
                        mustSupport: true
                        index: 63
                        elements:
                          value:
                            mustSupport: true
                            choices: []
                            index: 65
                          valuePeriod:
                            mustSupport: true
                            index: 66
                            slicing:
                              slices:
                                valuePeriod:
                                  match: {}
                                  schema:
                                    mustSupport: true
                                    index: 66
                                    elements:
                                      start: {mustSupport: true, index: 67}
                                      end: {mustSupport: true, index: 68}
  contained: {index: 11}
  requester:
    type: Reference
    mustSupport: true
    refers: ['https://fhir.kbv.de/StructureDefinition/KBV_PR_FOR_Practitioner|1.0.1']
    index: 96
    elements:
      reference: {mustSupport: true, index: 97}
      type: {index: 98}
      identifier: {index: 99}
      display: {index: 100}
    required: [reference]
  supportingInformation: {index: 94}
  priority: {index: 74}
  status:
    pattern: {type: Code, value: active}
    mustSupport: true
    index: 70
  language: {index: 9}
  id: {mustSupport: true, index: 0}
  dosageInstruction:
    constraint:
      -erp-angabeDosierung: {human: 'Wenn das Dosierungskennzeichen nicht gesetzt ist, darf auch kein Text vorhanden sein.', source: 'https://fhir.kbv.de/StructureDefinition/KBV_PR_ERP_Prescription', severity: error, expression: '(extension(''https://fhir.kbv.de/StructureDefinition/KBV_EX_ERP_DosageFlag'').empty() or extension(''https://fhir.kbv.de/StructureDefinition/KBV_EX_ERP_DosageFlag'').valueBoolean=false) implies text.empty()'}
    mustSupport: true
    index: 121
    extensions:
      dosierungskennzeichen:
        url: https://fhir.kbv.de/StructureDefinition/KBV_EX_ERP_DosageFlag
        type: Extension
        mustSupport: true
        index: 123
        elements:
          value:
            mustSupport: true
            choices: []
            index: 125
            slicing:
              slices:
                valueBoolean:
                  match: {}
                  schema:
                    mustSupport: true
                    choices: []
                    index: 127
    elements:
      site: {index: 135}
      asNeeded:
        choices: []
        index: 134
      method: {index: 137}
      patientInstruction: {short: Gebrauchsanweisung einer Rezeptur, maxLength: 60, mustSupport: true, index: 131}
      maxDosePerLifetime: {index: 141}
      maxDosePerAdministration: {index: 140}
      route: {index: 136}
      extension:
        index: 122
        slicing:
          rules: open
          discriminator:
          - {path: url, type: value}
          min: null
          slices:
            dosierungskennzeichen:
              match: {url: null}
              schema:
                type: Extension
                mustSupport: true
                url: https://fhir.kbv.de/StructureDefinition/KBV_EX_ERP_DosageFlag
                index: 123
                elements:
                  value:
                    mustSupport: true
                    choices: []
                    index: 125
                    slicing:
                      slices:
                        valueBoolean:
                          match: {}
                          schema:
                            mustSupport: true
                            choices: []
                            index: 127
      timing: {index: 132}
      additionalInstruction: {index: 130}
      sequence: {index: 128}
      maxDosePerPeriod: {index: 139}
      doseAndRate: {index: 138}
      text: {short: Dosieranweisung, maxLength: 60, mustSupport: true, index: 129}
  groupIdentifier: {index: 109}
  recorder: {index: 103}
  identifier: {index: 69}
  doNotPerform: {index: 75}
  intent:
    pattern: {type: Code, value: order}
    mustSupport: true
    index: 72
  basedOn: {index: 108}
  priorPrescription: {index: 164}
  medicationReference:
    type: Reference
    mustSupport: true
    choiceOf: medication
    refers: ['https://fhir.kbv.de/StructureDefinition/KBV_PR_ERP_Medication_Compounding|1.0.0', 'https://fhir.kbv.de/StructureDefinition/KBV_PR_ERP_Medication_FreeText|1.0.0', 'https://fhir.kbv.de/StructureDefinition/KBV_PR_ERP_Medication_Ingredient|1.0.0', 'https://fhir.kbv.de/StructureDefinition/KBV_PR_ERP_Medication_PZN|1.0.0']
    index: 83
    slicing:
      slices:
        medicationReference:
          match: {}
          schema:
            type: Reference
            mustSupport: true
            choiceOf: medication
            refers: ['https://fhir.kbv.de/StructureDefinition/KBV_PR_ERP_Medication_Compounding|1.0.0', 'https://fhir.kbv.de/StructureDefinition/KBV_PR_ERP_Medication_FreeText|1.0.0', 'https://fhir.kbv.de/StructureDefinition/KBV_PR_ERP_Medication_Ingredient|1.0.0', 'https://fhir.kbv.de/StructureDefinition/KBV_PR_ERP_Medication_PZN|1.0.0']
            _required: true
            index: 83
          min: 1
  courseOfTherapyType: {index: 110}
  subject:
    type: Reference
    mustSupport: true
    refers: ['https://fhir.kbv.de/StructureDefinition/KBV_PR_FOR_Patient|1.0.1']
    index: 88
    elements:
      reference: {mustSupport: true, index: 89}
      type: {index: 90}
      identifier: {index: 91}
      display: {index: 92}
    required: [reference]
  performer: {index: 101}
  medication:
    mustSupport: true
    choices: [medicationReference]
    index: 82
    slicing:
      slices:
        medicationReference:
          match: {}
          schema:
            mustSupport: true
            choices: [medicationReference]
            _required: true
            index: 82
          min: 1
  reasonReference: {index: 105}
  text: {index: 10}
package_version: 1.0.0
extensions:
  Zuzahlungsstatus:
    url: https://fhir.kbv.de/StructureDefinition/KBV_EX_ERP_StatusCoPayment
    type: Extension
    mustSupport: true
    index: 13
    elements:
      value:
        mustSupport: true
        choices: []
        index: 15
        slicing:
          slices:
            valueCoding:
              match: {}
              schema:
                mustSupport: true
                choices: []
                index: 17
      value[x]:
        elements:
          system: {mustSupport: true, index: 18}
          code: {mustSupport: true, index: 19}
  Notdienstgebuehr:
    url: https://fhir.kbv.de/StructureDefinition/KBV_EX_ERP_EmergencyServicesFee
    type: Extension
    mustSupport: true
    index: 20
    elements:
      value:
        mustSupport: true
        choices: []
        index: 22
        slicing:
          slices:
            valueBoolean:
              match: {}
              schema:
                mustSupport: true
                choices: []
                index: 24
  BVG:
    url: https://fhir.kbv.de/StructureDefinition/KBV_EX_ERP_BVG
    type: Extension
    mustSupport: true
    index: 25
    elements:
      value:
        mustSupport: true
        choices: []
        index: 27
        slicing:
          slices:
            valueBoolean:
              match: {}
              schema:
                mustSupport: true
                choices: []
                index: 29
  unfallinformationen:
    url: https://fhir.kbv.de/StructureDefinition/KBV_EX_ERP_Accident
    type: Extension
    constraint:
      -erp-angabeUnfallbetrieb: {human: 'Unfallbetrieb nicht vorhanden, aber Pflicht bei Arbeitsunfall (code=''2'')', source: 'https://fhir.kbv.de/StructureDefinition/KBV_PR_ERP_Prescription', severity: error, expression: extension('unfallkennzeichen').valueCoding.code = '2' implies extension('unfallbetrieb').exists()}
    mustSupport: true
    index: 30
    extensions:
      unfallkennzeichen:
        url: null
        mustSupport: true
        index: 32
        elements:
          value:
            mustSupport: true
            choices: []
            index: 34
            slicing:
              slices:
                valueCoding:
                  match: {}
                  schema:
                    mustSupport: true
                    choices: []
                    index: 36
          value[x]:
            elements:
              system: {mustSupport: true, index: 37}
              code: {mustSupport: true, index: 38}
      unfallbetrieb:
        url: null
        mustSupport: true
        index: 39
        elements:
          value:
            mustSupport: true
            choices: []
            index: 41
            slicing:
              slices:
                valueString:
                  match: {}
                  schema:
                    mustSupport: true
                    choices: []
                    index: 43
      unfalltag:
        url: null
        mustSupport: true
        index: 44
        elements:
          value:
            mustSupport: true
            choices: []
            index: 46
            slicing:
              slices:
                valueDate:
                  match: {}
                  schema:
                    mustSupport: true
                    choices: []
                    _required: true
                    index: 48
                  min: 1
        required: [value]
    elements:
      extension:
        index: 31
        slicing:
          rules: open
          discriminator:
          - {path: url, type: value}
          min: null
          slices:
            unfallkennzeichen:
              match: {url: null}
              schema:
                mustSupport: true
                index: 32
                elements:
                  value:
                    mustSupport: true
                    choices: []
                    index: 34
                    slicing:
                      slices:
                        valueCoding:
                          match: {}
                          schema:
                            mustSupport: true
                            choices: []
                            index: 36
                  value[x]:
                    elements:
                      system: {mustSupport: true, index: 37}
                      code: {mustSupport: true, index: 38}
            unfallbetrieb:
              match: {url: null}
              schema:
                mustSupport: true
                index: 39
                elements:
                  value:
                    mustSupport: true
                    choices: []
                    index: 41
                    slicing:
                      slices:
                        valueString:
                          match: {}
                          schema:
                            mustSupport: true
                            choices: []
                            index: 43
            unfalltag:
              match: {url: null}
              schema:
                mustSupport: true
                index: 44
                elements:
                  value:
                    mustSupport: true
                    choices: []
                    index: 46
                    slicing:
                      slices:
                        valueDate:
                          match: {}
                          schema:
                            mustSupport: true
                            choices: []
                            _required: true
                            index: 48
                          min: 1
                required: [value]
  Mehrfachverordnung:
    url: https://fhir.kbv.de/StructureDefinition/KBV_EX_ERP_Multiple_Prescription
    type: Extension
    mustSupport: true
    index: 49
    extensions:
      Kennzeichen:
        url: null
        mustSupport: true
        index: 51
        elements:
          value:
            mustSupport: true
            choices: []
            index: 53
          valueBoolean:
            mustSupport: true
            index: 54
            slicing:
              slices:
                valueBoolean:
                  match: {}
                  schema: {mustSupport: true, index: 54}
      Nummerierung:
        url: null
        mustSupport: true
        index: 55
        elements:
          value:
            mustSupport: true
            choices: []
            index: 57
          valueRatio:
            mustSupport: true
            index: 58
            slicing:
              slices:
                valueRatio:
                  match: {}
                  schema:
                    mustSupport: true
                    index: 58
                    elements:
                      numerator:
                        mustSupport: true
                        index: 59
                        elements:
                          value: {mustSupport: true, index: 60}
                      denominator:
                        mustSupport: true
                        index: 61
                        elements:
                          value: {mustSupport: true, index: 62}
      Zeitraum:
        url: null
        mustSupport: true
        index: 63
        elements:
          value:
            mustSupport: true
            choices: []
            index: 65
          valuePeriod:
            mustSupport: true
            index: 66
            slicing:
              slices:
                valuePeriod:
                  match: {}
                  schema:
                    mustSupport: true
                    index: 66
                    elements:
                      start: {mustSupport: true, index: 67}
                      end: {mustSupport: true, index: 68}
    elements:
      extension:
        index: 50
        slicing:
          rules: open
          discriminator:
          - {path: url, type: value}
          min: null
          slices:
            Kennzeichen:
              match: {url: null}
              schema:
                mustSupport: true
                index: 51
                elements:
                  value:
                    mustSupport: true
                    choices: []
                    index: 53
                  valueBoolean:
                    mustSupport: true
                    index: 54
                    slicing:
                      slices:
                        valueBoolean:
                          match: {}
                          schema: {mustSupport: true, index: 54}
            Nummerierung:
              match: {url: null}
              schema:
                mustSupport: true
                index: 55
                elements:
                  value:
                    mustSupport: true
                    choices: []
                    index: 57
                  valueRatio:
                    mustSupport: true
                    index: 58
                    slicing:
                      slices:
                        valueRatio:
                          match: {}
                          schema:
                            mustSupport: true
                            index: 58
                            elements:
                              numerator:
                                mustSupport: true
                                index: 59
                                elements:
                                  value: {mustSupport: true, index: 60}
                              denominator:
                                mustSupport: true
                                index: 61
                                elements:
                                  value: {mustSupport: true, index: 62}
            Zeitraum:
              match: {url: null}
              schema:
                mustSupport: true
                index: 63
                elements:
                  value:
                    mustSupport: true
                    choices: []
                    index: 65
                  valuePeriod:
                    mustSupport: true
                    index: 66
                    slicing:
                      slices:
                        valuePeriod:
                          match: {}
                          schema:
                            mustSupport: true
                            index: 66
                            elements:
                              start: {mustSupport: true, index: 67}
                              end: {mustSupport: true, index: 68}
class: profile
kind: resource
url: https://fhir.kbv.de/StructureDefinition/KBV_PR_ERP_Prescription
base: http://hl7.org/fhir/StructureDefinition/MedicationRequest
version: 1.0.0
required: [authoredOn, requester, substitution, id, insurance, medication, meta, dispenseRequest, medicationReference]