{
"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"
}