PackagesCanonicalsLogsProblems
    Packages
    dosing.aid-medicationrequest@1.0.3
    https://fhir.dosing-gmbh.de/StructureDefinition/AID-MedicationRequest
{
  "description": "MedicationRequest for a write-back callback to a host clinical system. Binds DosageDgMP for dosageInstruction; subject/requester/insurance do not require literal references.",
  "_filename": "StructureDefinition-AID-MedicationRequest.json",
  "package_name": "dosing.aid-medicationrequest",
  "date": "2026-08-21",
  "derivation": "constraint",
  "publisher": "Dosing GmbH",
  "fhirVersion": "4.0.1",
  "purpose": "Dosage information (structured and/or free text) for a write-back callback, without requiring literal Patient/Practitioner/Coverage references.",
  "name": "AIDMedicationRequest",
  "mapping": [ {
    "uri": "http://hl7.org/fhir/workflow",
    "name": "Workflow Pattern",
    "identity": "workflow"
  } ],
  "abstract": false,
  "type": "MedicationRequest",
  "experimental": null,
  "resourceType": "StructureDefinition",
  "title": "AiD Medication Request",
  "package_version": "1.0.3",
  "status": "draft",
  "id": "a049f1d6-e69d-4b23-8057-6bbf2d259d16",
  "kind": "resource",
  "url": "https://fhir.dosing-gmbh.de/StructureDefinition/AID-MedicationRequest",
  "version": "1.0.3",
  "differential": {
    "element": [ {
      "id": "MedicationRequest",
      "path": "MedicationRequest",
      "short": "Prescription in a write-back callback",
      "constraint": [ {
        "key": "aid-dosageFlag-true",
        "human": "If the dosage-present indicator is true, a dosage instruction must be present.",
        "severity": "error",
        "expression": "extension('https://fhir.kbv.de/StructureDefinition/KBV_EX_ERP_DosageFlag').exists().not() or ((extension('https://fhir.kbv.de/StructureDefinition/KBV_EX_ERP_DosageFlag').value as boolean)=true implies dosageInstruction.exists())"
      }, {
        "key": "aid-dosageFlag-false",
        "human": "If the dosage-present indicator is false, no dosage instruction may be present.",
        "severity": "error",
        "expression": "extension('https://fhir.kbv.de/StructureDefinition/KBV_EX_ERP_DosageFlag').exists().not() or ((extension('https://fhir.kbv.de/StructureDefinition/KBV_EX_ERP_DosageFlag').value as boolean)=false implies dosageInstruction.exists().not())"
      } ],
      "definition": "One issued prescription: status, dosage, and a reference to the associated Medication resource within the same payload."
    }, {
      "id": "MedicationRequest.extension",
      "path": "MedicationRequest.extension",
      "short": "Extensions",
      "slicing": {
        "rules": "open",
        "ordered": false,
        "discriminator": [ {
          "path": "url",
          "type": "value"
        } ]
      }
    }, {
      "path": "MedicationRequest.extension",
      "min": 0,
      "definition": "Whether a dosage instruction is given at all (KBV_EX_ERP_DosageFlag). Governs, together with the aid-dosageFlag-true/aid-dosageFlag-false constraints, whether dosageInstruction may be present.",
      "short": "Dosage-present indicator",
      "type": [ {
        "code": "Extension",
        "profile": [ "https://fhir.kbv.de/StructureDefinition/KBV_EX_ERP_DosageFlag" ]
      } ],
      "mustSupport": true,
      "sliceName": "dosageFlag",
      "max": "1",
      "id": "MedicationRequest.extension:dosageFlag"
    }, {
      "path": "MedicationRequest.extension",
      "min": 0,
      "definition": "Human-readable text generated from the structured dosage. Required once dosageInstruction is structured (see DosageDgMP: DosageStructuredRequiresGeneratedText).",
      "short": "Rendered dosage text (e.g. \"1-2-0-1\")",
      "type": [ {
        "code": "Extension",
        "profile": [ "http://hl7.org/fhir/5.0/StructureDefinition/extension-MedicationRequest.renderedDosageInstruction" ]
      } ],
      "mustSupport": true,
      "sliceName": "renderedDosageInstruction",
      "max": "1",
      "id": "MedicationRequest.extension:renderedDosageInstruction"
    }, {
      "path": "MedicationRequest.extension",
      "min": 0,
      "definition": "Language and algorithm version of the generated dosage text. algorithmVersion is the version of the reference implementation, not of our own code.",
      "short": "Metadata for the generated dosage text",
      "type": [ {
        "code": "Extension",
        "profile": [ "http://ig.fhir.de/igs/medication/StructureDefinition/GeneratedDosageInstructionsMeta" ]
      } ],
      "mustSupport": true,
      "sliceName": "generatedDosageInstructionsMeta",
      "max": "1",
      "id": "MedicationRequest.extension:generatedDosageInstructionsMeta"
    }, {
      "path": "MedicationRequest.extension",
      "min": 0,
      "definition": "Indicator, numbering and period of a multiple prescription (KBV_EX_ERP_Multiple_Prescription).",
      "short": "Multiple-prescription indicator",
      "type": [ {
        "code": "Extension",
        "profile": [ "https://fhir.kbv.de/StructureDefinition/KBV_EX_ERP_Multiple_Prescription" ]
      } ],
      "mustSupport": true,
      "sliceName": "multiplePrescription",
      "max": "1",
      "id": "MedicationRequest.extension:multiplePrescription"
    }, {
      "path": "MedicationRequest.extension",
      "min": 0,
      "definition": "Legal basis of the prescription (KBV_EX_FOR_Legal_basis). Codes relevant here: \"00\" (standard) and \"10\" (replacement prescription per § 31 Abs. 3 Satz 7 SGB V).",
      "short": "Legal basis (incl. replacement prescription)",
      "type": [ {
        "code": "Extension",
        "profile": [ "https://fhir.kbv.de/StructureDefinition/KBV_EX_FOR_Legal_basis" ]
      } ],
      "mustSupport": true,
      "sliceName": "legalBasis",
      "max": "1",
      "id": "MedicationRequest.extension:legalBasis"
    }, {
      "path": "MedicationRequest.extension",
      "min": 0,
      "definition": "Co-payment status of the prescription (KBV_EX_FOR_StatusCoPayment). Codes: \"0\" co-payment required, \"1\" co-payment exempt, \"2\" assisted reproduction per § 27a SGB V.",
      "short": "Co-payment status",
      "type": [ {
        "code": "Extension",
        "profile": [ "https://fhir.kbv.de/StructureDefinition/KBV_EX_FOR_StatusCoPayment" ]
      } ],
      "mustSupport": true,
      "sliceName": "statusCoPayment",
      "max": "1",
      "id": "MedicationRequest.extension:statusCoPayment"
    }, {
      "path": "MedicationRequest.extension",
      "min": 0,
      "definition": "Special marker per § 9 Abs. 1 Nr. 6 BtMVV plus supplementary notes on the substitution medicine (KBV_EX_ERP_Narcotic).",
      "short": "Narcotic (BtM)",
      "type": [ {
        "code": "Extension",
        "profile": [ "https://fhir.kbv.de/StructureDefinition/KBV_EX_ERP_Narcotic" ]
      } ],
      "mustSupport": true,
      "sliceName": "narcotic",
      "max": "1",
      "id": "MedicationRequest.extension:narcotic"
    }, {
      "path": "MedicationRequest.extension",
      "min": 0,
      "definition": "Declarations required for prescribing a teratogenic medicine (KBV_EX_ERP_Teratogenic): off-label status, childbearing potential, compliance with safety measures, provision of information material, and declared expertise.",
      "short": "T-prescription (teratogenic medicine)",
      "type": [ {
        "code": "Extension",
        "profile": [ "https://fhir.kbv.de/StructureDefinition/KBV_EX_ERP_Teratogenic" ]
      } ],
      "mustSupport": true,
      "sliceName": "teratogenic",
      "max": "1",
      "id": "MedicationRequest.extension:teratogenic"
    }, {
      "path": "MedicationRequest.medication[x]",
      "min": 1,
      "definition": "urn:uuid reference to the Medication resource of the same prescription, resolvable only within the payload, not as a Bundle.",
      "short": "Reference to the Medication resource",
      "type": [ {
        "code": "Reference",
        "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Medication" ]
      } ],
      "mustSupport": true,
      "sliceName": "medicationReference",
      "max": "1",
      "id": "MedicationRequest.medicationReference"
    }, {
      "id": "MedicationRequest.subject",
      "path": "MedicationRequest.subject",
      "short": "Patient (display-only is sufficient)",
      "mustSupport": true
    }, {
      "id": "MedicationRequest.authoredOn",
      "path": "MedicationRequest.authoredOn",
      "short": "Date the prescription was issued",
      "mustSupport": true
    }, {
      "id": "MedicationRequest.requester",
      "max": "1",
      "path": "MedicationRequest.requester",
      "short": "Requesting practitioner (optional)",
      "mustSupport": false
    }, {
      "id": "MedicationRequest.insurance",
      "path": "MedicationRequest.insurance",
      "short": "Insurance coverage (optional)",
      "mustSupport": false
    }, {
      "id": "MedicationRequest.dosageInstruction",
      "min": 0,
      "path": "MedicationRequest.dosageInstruction",
      "type": [ {
        "code": "Dosage",
        "profile": [ "http://ig.fhir.de/igs/medication/StructureDefinition/DosageDgMP" ]
      } ],
      "short": "Dosage, structured and/or free text (DosageDgMP)",
      "definition": "Binds DosageDgMP from de.fhir.medication for structured and/or free-text dosage. Whether an entry is present is governed by the dosageFlag extension, not by cardinality.",
      "mustSupport": true
    }, {
      "id": "MedicationRequest.dispenseRequest",
      "path": "MedicationRequest.dispenseRequest",
      "short": "Dispense authorization",
      "mustSupport": true
    }, {
      "id": "MedicationRequest.dispenseRequest.quantity",
      "path": "MedicationRequest.dispenseRequest.quantity",
      "short": "Package quantity to dispense",
      "mustSupport": true
    }, {
      "id": "MedicationRequest.dispenseRequest.expectedSupplyDuration",
      "path": "MedicationRequest.dispenseRequest.expectedSupplyDuration",
      "short": "Expected supply duration (days for narcotics, weeks for T-prescriptions)",
      "definition": "Expected supply duration of the medicine: in days for narcotics, in weeks for teratogenic medicines.",
      "mustSupport": true
    }, {
      "id": "MedicationRequest.substitution",
      "path": "MedicationRequest.substitution",
      "short": "Substitution permission (aut idem)",
      "mustSupport": true
    }, {
      "id": "MedicationRequest.substitution.allowed[x]",
      "path": "MedicationRequest.substitution.allowed[x]",
      "type": [ {
        "code": "boolean"
      } ],
      "short": "Substitution permission (aut idem)",
      "mustSupport": true
    } ]
  },
  "contact": [ {
    "name": "Dosing GmbH",
    "telecom": [ {
      "value": "https://www.dosing-gmbh.de",
      "system": "url"
    } ]
  } ],
  "baseDefinition": "http://hl7.org/fhir/StructureDefinition/MedicationRequest"
}