FHIR © HL7.org  |  Server Home  |  XIG Home  |  XIG Stats  |  Server Source  |  FHIR  

FHIR IG Statistics: StructureDefinition/KBV-EX-ERP-Multiple-Prescription

Packagekbv.ita.erp
Resource TypeStructureDefinition
IdKBV-EX-ERP-Multiple-Prescription
FHIR VersionR4
Sourcehttps://simplifier.net/resolve?scope=kbv.ita.erp@1.4.0-alpha&canonical=https://fhir.kbv.de/StructureDefinition/KBV_EX_ERP_Multiple_Prescription
URLhttps://fhir.kbv.de/StructureDefinition/KBV_EX_ERP_Multiple_Prescription
Version1.4.0
Statusdraft
Date2025-06-17
NameKBV_EX_ERP_Multiple_Prescription
TypeExtension
Kindcomplex-type

Resources that use this resource

StructureDefinition
KBV_PR_ERP_PrescriptionKBV_PR_ERP_Prescription

Resources that this resource uses

No resources found


Examples of Use for Extension

No extension usage examples found


Narrative

No narrative content found in resource


Source

{
  "resourceType": "StructureDefinition",
  "id": "KBV-EX-ERP-Multiple-Prescription",
  "url": "https://fhir.kbv.de/StructureDefinition/KBV_EX_ERP_Multiple_Prescription",
  "version": "1.4.0",
  "name": "KBV_EX_ERP_Multiple_Prescription",
  "status": "draft",
  "date": "2025-06-17",
  "publisher": "Kassenärztliche Bundesvereinigung (KBV)",
  "fhirVersion": "4.0.1",
  "kind": "complex-type",
  "abstract": false,
  "context": [
    {
      "type": "element",
      "expression": "MedicationRequest"
    }
  ],
  "type": "Extension",
  "baseDefinition": "http://hl7.org/fhir/StructureDefinition/Extension",
  "derivation": "constraint",
  "differential": {
    "element": [
      {
        "id": "Extension",
        "path": "Extension",
        "short": "Mehrfachverordnung",
        "definition": "Abbildung der Informationen im Rahmen einer Mehrfachverordnung",
        "constraint": [
          {
            "key": "-erp-multiplePrescriptionKennzeichenTrueNummerierung",
            "severity": "error",
            "human": "Mehrfachverordnung: Wenn das Kennzeichen gleich true ist, muss eine Nummerierung (Zaehler und Nenner) angegeben werden.",
            "expression": "(extension('Kennzeichen').value as boolean)=true implies extension('Nummerierung').exists()"
          },
          {
            "key": "-erp-multiplePrescriptionKennzeichenFalseNummerierung",
            "severity": "error",
            "human": "Mehrfachverordnung: Wenn das Kennzeichen gleich false ist, darf keine Nummerierung (Zaehler und Nenner) angegeben werden.",
            "expression": "(extension('Kennzeichen').value as boolean)=false implies extension('Nummerierung').exists().not()"
          },
          {
            "key": "-erp-multiplePrescriptionKennzeichenTrueZeitraum",
            "severity": "error",
            "human": "Mehrfachverordnung: Wenn das Kennzeichen gleich true ist, muss ein Zeitraum (mindestens Beginn der Einlösefrist) angegeben werden.",
            "expression": "(extension('Kennzeichen').value as boolean)=true implies extension('Zeitraum').exists()"
          },
          {
            "key": "-erp-multiplePrescriptionKennzeichenFalseZeitraum",
            "severity": "error",
            "human": "Mehrfachverordnung: Wenn das Kennzeichen gleich false ist, darf kein Zeitraum angegeben werden.",
            "expression": "(extension('Kennzeichen').value as boolean)=false implies extension('Zeitraum').exists().not()"
          },
          {
            "key": "-erp-multiplePrescriptionKennzeichenTrueID",
            "severity": "error",
            "human": "Mehrfachverordnung: Wenn das Kennzeichen gleich true ist, muss eine ID angegeben werden.",
            "expression": "(extension('Kennzeichen').value as boolean)=true implies extension('ID').exists()"
          },
          {
            "key": "-erp-multiplePrescriptionKennzeichenFalseID",
            "severity": "error",
            "human": "Mehrfachverordnung: Wenn das Kennzeichen gleich false ist, darf keine ID angegeben werden.",
            "expression": "(extension('Kennzeichen').value as boolean)=false implies extension('ID').exists().not()"
          },
          {
            "key": "-erp-multiplePrescriptionEinloesefristEnde",
            "severity": "error",
            "human": "Das Ende der Einlösefrist darf nicht vor dem Beginn der Einlösefrist liegen.",
            "expression": "(extension('Kennzeichen').value as boolean)=true and extension('Zeitraum').value.end.exists() implies extension('Zeitraum').value.start <= extension('Zeitraum').value.end"
          }
        ]
      },
      {
        "id": "Extension.extension",
        "path": "Extension.extension",
        "slicing": {
          "discriminator": [
            {
              "type": "value",
              "path": "url"
            }
          ],
          "rules": "closed"
        },
        "min": 1,
        "max": "4"
      },
      {
        "id": "Extension.extension:Kennzeichen",
        "path": "Extension.extension",
        "sliceName": "Kennzeichen",
        "min": 1,
        "max": "1"
      },
      {
        "id": "Extension.extension:Kennzeichen.url",
        "path": "Extension.extension.url",
        "fixedUri": "Kennzeichen"
      },
      {
        "id": "Extension.extension:Kennzeichen.value[x]",
        "path": "Extension.extension.value[x]",
        "slicing": {
          "discriminator": [
            {
              "type": "type",
              "path": "$this"
            }
          ],
          "rules": "closed"
        },
        "min": 1,
        "type": [
          {
            "code": "boolean"
          }
        ]
      },
      {
        "id": "Extension.extension:Kennzeichen.value[x]:valueBoolean",
        "path": "Extension.extension.value[x]",
        "sliceName": "valueBoolean",
        "short": "Kennzeichen Mehrfachverordnung",
        "definition": "Abbildung, ob die aktuelle Verordnung Teil einer Mehrfachverordnung ist\r\n\r\ntrue - die aktuelle Verordnung ist Teil einer Mehrfachverordnung \r\nfalse - die aktuelle Verordnung ist kein Teil einer Mehrfachverordnung",
        "min": 1,
        "type": [
          {
            "code": "boolean"
          }
        ]
      },
      {
        "id": "Extension.extension:Nummerierung",
        "path": "Extension.extension",
        "sliceName": "Nummerierung",
        "max": "1"
      },
      {
        "id": "Extension.extension:Nummerierung.url",
        "path": "Extension.extension.url",
        "fixedUri": "Nummerierung"
      },
      {
        "id": "Extension.extension:Nummerierung.value[x]",
        "path": "Extension.extension.value[x]",
        "slicing": {
          "discriminator": [
            {
              "type": "type",
              "path": "$this"
            }
          ],
          "rules": "closed"
        },
        "min": 1,
        "type": [
          {
            "code": "Ratio"
          }
        ]
      },
      {
        "id": "Extension.extension:Nummerierung.value[x]:valueRatio",
        "path": "Extension.extension.value[x]",
        "sliceName": "valueRatio",
        "min": 1,
        "type": [
          {
            "code": "Ratio"
          }
        ],
        "constraint": [
          {
            "key": "-erp-multiplePrescriptionNummerierung",
            "severity": "error",
            "human": "Mehrfachverordnung: Der Zaehler (Nummer der Teilverordnung) darf nicht größer als der Nenner (Gesamtanzahl) sein.",
            "expression": "numerator.value <= denominator.value"
          }
        ]
      },
      {
        "id": "Extension.extension:Nummerierung.value[x]:valueRatio.numerator",
        "path": "Extension.extension.value[x].numerator",
        "min": 1,
        "constraint": [
          {
            "key": "-erp-multiplePrescriptionNumeratorValue",
            "severity": "error",
            "human": "Mehrfachverordnung: Zaehler muss den Wert 1, 2, 3 oder 4 haben.",
            "expression": "where(value=1 or value=2 or value=3 or value=4).count()=1"
          }
        ]
      },
      {
        "id": "Extension.extension:Nummerierung.value[x]:valueRatio.numerator.value",
        "path": "Extension.extension.value[x].numerator.value",
        "short": "Zähler Mehrfachverordnung",
        "definition": "Das Feld dient der Kennzeichnung, um die wievielte Mehrfachverordnung einer Serie es sich handelt. Beispiel: \"2\" in \"2 von 4\"",
        "min": 1
      },
      {
        "id": "Extension.extension:Nummerierung.value[x]:valueRatio.numerator.comparator",
        "path": "Extension.extension.value[x].numerator.comparator",
        "max": "0"
      },
      {
        "id": "Extension.extension:Nummerierung.value[x]:valueRatio.numerator.unit",
        "path": "Extension.extension.value[x].numerator.unit",
        "max": "0"
      },
      {
        "id": "Extension.extension:Nummerierung.value[x]:valueRatio.numerator.system",
        "path": "Extension.extension.value[x].numerator.system",
        "max": "0"
      },
      {
        "id": "Extension.extension:Nummerierung.value[x]:valueRatio.numerator.code",
        "path": "Extension.extension.value[x].numerator.code",
        "max": "0"
      },
      {
        "id": "Extension.extension:Nummerierung.value[x]:valueRatio.denominator",
        "path": "Extension.extension.value[x].denominator",
        "min": 1,
        "constraint": [
          {
            "key": "-erp-multiplePrescriptionDenominatorValue",
            "severity": "error",
            "human": "Mehrfachverordnung: Nenner muss den Wert 2, 3 oder 4 haben.",
            "expression": "where(value=2 or value=3 or value=4).count()=1"
          }
        ]
      },
      {
        "id": "Extension.extension:Nummerierung.value[x]:valueRatio.denominator.value",
        "path": "Extension.extension.value[x].denominator.value",
        "short": "Nenner Mehrfachverordnung",
        "definition": "Das Feld dient der Kennzeichnung der Länge dieser Serie. Beispiel: \"4\" in \"2 von 4\"",
        "min": 1
      },
      {
        "id": "Extension.extension:Nummerierung.value[x]:valueRatio.denominator.comparator",
        "path": "Extension.extension.value[x].denominator.comparator",
        "max": "0"
      },
      {
        "id": "Extension.extension:Nummerierung.value[x]:valueRatio.denominator.unit",
        "path": "Extension.extension.value[x].denominator.unit",
        "max": "0"
      },
      {
        "id": "Extension.extension:Nummerierung.value[x]:valueRatio.denominator.system",
        "path": "Extension.extension.value[x].denominator.system",
        "max": "0"
      },
      {
        "id": "Extension.extension:Nummerierung.value[x]:valueRatio.denominator.code",
        "path": "Extension.extension.value[x].denominator.code",
        "max": "0"
      },
      {
        "id": "Extension.extension:Zeitraum",
        "path": "Extension.extension",
        "sliceName": "Zeitraum",
        "short": "Zeitraum der Einlösefrist",
        "max": "1"
      },
      {
        "id": "Extension.extension:Zeitraum.url",
        "path": "Extension.extension.url",
        "fixedUri": "Zeitraum"
      },
      {
        "id": "Extension.extension:Zeitraum.value[x]",
        "path": "Extension.extension.value[x]",
        "slicing": {
          "discriminator": [
            {
              "type": "type",
              "path": "$this"
            }
          ],
          "rules": "closed"
        },
        "min": 1,
        "type": [
          {
            "code": "Period"
          }
        ]
      },
      {
        "id": "Extension.extension:Zeitraum.value[x]:valuePeriod",
        "path": "Extension.extension.value[x]",
        "sliceName": "valuePeriod",
        "min": 1,
        "type": [
          {
            "code": "Period"
          }
        ],
        "constraint": [
          {
            "key": "-erp-begrenzungDateStart",
            "severity": "error",
            "human": "Begrenzung der Datumsangabe auf 10 Zeichen JJJJ-MM-TT",
            "expression": "start.toString().length()=10"
          },
          {
            "key": "-erp-begrenzungDateEnd",
            "severity": "error",
            "human": "Begrenzung der Datumsangabe auf 10 Zeichen JJJJ-MM-TT",
            "expression": "end.exists().not() or end.toString().length()=10"
          }
        ]
      },
      {
        "id": "Extension.extension:Zeitraum.value[x]:valuePeriod.start",
        "path": "Extension.extension.value[x].start",
        "short": "Beginn Einlösefrist der Verordnung",
        "definition": "Datum, ab dem die Teilverordnung der Mehrfachverordnung eingelöst werden kann",
        "min": 1
      },
      {
        "id": "Extension.extension:Zeitraum.value[x]:valuePeriod.end",
        "path": "Extension.extension.value[x].end",
        "short": "Ende Einlösefrist der Verordnung",
        "definition": "Datum des letzten Einlösetages der Teilverordnung der Mehrfachverordnung.\r\nVon der ausstellenden Person kann eine von der Arzneimittelverschreibungsverordnung (AMVV) abweichende Einlösefrist angegeben werden."
      },
      {
        "id": "Extension.extension:ID",
        "path": "Extension.extension",
        "sliceName": "ID",
        "max": "1"
      },
      {
        "id": "Extension.extension:ID.url",
        "path": "Extension.extension.url",
        "fixedUri": "ID"
      },
      {
        "id": "Extension.extension:ID.value[x]",
        "path": "Extension.extension.value[x]",
        "slicing": {
          "discriminator": [
            {
              "type": "type",
              "path": "$this"
            }
          ],
          "rules": "closed"
        },
        "min": 1,
        "type": [
          {
            "code": "Identifier"
          }
        ]
      },
      {
        "id": "Extension.extension:ID.value[x]:valueIdentifier",
        "path": "Extension.extension.value[x]",
        "sliceName": "valueIdentifier",
        "min": 1,
        "type": [
          {
            "code": "Identifier"
          }
        ]
      },
      {
        "id": "Extension.extension:ID.value[x]:valueIdentifier.use",
        "path": "Extension.extension.value[x].use",
        "max": "0"
      },
      {
        "id": "Extension.extension:ID.value[x]:valueIdentifier.type",
        "path": "Extension.extension.value[x].type",
        "max": "0"
      },
      {
        "id": "Extension.extension:ID.value[x]:valueIdentifier.system",
        "path": "Extension.extension.value[x].system",
        "short": "Festlegung als UUID",
        "min": 1,
        "fixedUri": "urn:ietf:rfc:3986"
      },
      {
        "id": "Extension.extension:ID.value[x]:valueIdentifier.value",
        "path": "Extension.extension.value[x].value",
        "short": "ID Mehrfachverordnung",
        "definition": "Eineindeutige ID, welche über alle Teilverordnungen einer Mehrfachverordnung identisch ist.",
        "min": 1,
        "constraint": [
          {
            "key": "-erp-aufbauMehrfachverordnungID",
            "severity": "error",
            "human": "Der Aufbau der ID Mehrfachverordnung muss dem System urn:ietf:rfc:3986 entsprechen.",
            "expression": "matches('^urn:uuid:[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}[%content%]#39;)"
          }
        ]
      },
      {
        "id": "Extension.extension:ID.value[x]:valueIdentifier.period",
        "path": "Extension.extension.value[x].period",
        "max": "0"
      },
      {
        "id": "Extension.extension:ID.value[x]:valueIdentifier.assigner",
        "path": "Extension.extension.value[x].assigner",
        "max": "0"
      },
      {
        "id": "Extension.url",
        "path": "Extension.url",
        "fixedUri": "https://fhir.kbv.de/StructureDefinition/KBV_EX_ERP_Multiple_Prescription"
      },
      {
        "id": "Extension.value[x]",
        "path": "Extension.value[x]",
        "max": "0"
      }
    ]
  }
}