Implementation Guide
TIFlow - Datenaustausch BfArM Webdienst
Version 2.0.0 - release

Resource Profile: E-T-Rezept Medication Request

Official URL: https://gematik.de/fhir/tiflow-bfarm/StructureDefinition/erp-tprescription-medication-request Version: 2.0.0
Active as of 2026-10-02 Computable Name: ERP_TPrescription_MedicationRequest

Informationen zu einer Verordnung, die ein Arzt im E-T-Rezept angegeben hat.

Mapping

Folgende Tabelle gibt eine grobe Darstellung des Mappings für dieses Profil:

Titel: E-T-Rezept Structure Map for MedicationRequest

Beschreibung: Mapping-Anweisungen zur Transformation von KBV MedicationRequest zu BfArM T-Prescription MedicationRequest

Quelle (Eingangsdaten) Ziel (Ausgabedaten) Transformation & Beschreibung
kbvMedicationRequest.status bfarmMedicationRequest.status Setzt den Status auf 'completed' für den digitalen Durchschlag (Verschreibung ist bereits abgeschlossen)
→ setzt Wert 'completed'
kbvMedicationRequest.intent bfarmMedicationRequest.intent Setzt den Intent auf 'order' entsprechend der BfArM-Spezifikation für T-Prescription
→ setzt Wert 'order'
kbvMedicationRequest.extension [KBV_EX_ERP_Teratogenic] bfarmMedicationRequest.extension Mappt T-Rezept spezifische Extensions vom KBV- zum BfArM-Format
kbvMedicationRequest.extension [KBV_EX_ERP_Teratogenic] bfarmMedicationRequest.extension.url Kopiert teratogene Extensions für T-Rezept Kennzeichnung
→ setzt URL 'https://gematik.de/fhir/epa-medication/StructureDefinition/teratogenic-extension'
kbvMedicationRequest.extension [KBV_EX_ERP_Teratogenic].extension [Off-Label] bfarmMedicationRequest.extension.extension Mappt Off-Label Extension
→ erstellt neues Extension
kbvMedicationRequest.extension [KBV_EX_ERP_Teratogenic].extension [Off-Label] bfarmMedicationRequest.extension.url Mappt Off-Label Extension
→ setzt Wert 'off-label'
kbvMedicationRequest.extension [KBV_EX_ERP_Teratogenic].extension [Off-Label].value bfarmMedicationRequest.extension.extension.value Übernimmt den Off-Label Booleschen Wert
→ übernimmt Wert aus Quellvariable
kbvMedicationRequest.extension [KBV_EX_ERP_Teratogenic].extension [GebaerfaehigeFrau] bfarmMedicationRequest.extension.extension Mappt GebaerfaehigeFrau Extension zu childbearing-potential
→ erstellt neues Extension
kbvMedicationRequest.extension [KBV_EX_ERP_Teratogenic].extension [GebaerfaehigeFrau] bfarmMedicationRequest.extension.url Mappt GebaerfaehigeFrau Extension zu childbearing-potential
→ setzt Wert 'childbearing-potential'
kbvMedicationRequest.extension [KBV_EX_ERP_Teratogenic].extension [GebaerfaehigeFrau].value bfarmMedicationRequest.extension.extension.value Übernimmt den Booleschen Wert für childbearing-potential
→ übernimmt Wert aus Quellvariable
kbvMedicationRequest.extension [KBV_EX_ERP_Teratogenic].extension [EinhaltungSicherheitsmassnahmen] bfarmMedicationRequest.extension.extension Mappt EinhaltungSicherheitsmassnahmen Extension zu security-compliance
→ erstellt neues Extension
kbvMedicationRequest.extension [KBV_EX_ERP_Teratogenic].extension [EinhaltungSicherheitsmassnahmen] bfarmMedicationRequest.extension.url Mappt EinhaltungSicherheitsmassnahmen Extension zu security-compliance
→ setzt Wert 'security-compliance'
kbvMedicationRequest.extension [KBV_EX_ERP_Teratogenic].extension [EinhaltungSicherheitsmassnahmen].value bfarmMedicationRequest.extension.extension.value Übernimmt den Booleschen Wert für security-compliance
→ übernimmt Wert aus Quellvariable
kbvMedicationRequest.extension [KBV_EX_ERP_Teratogenic].extension [AushaendigungInformationsmaterialien] bfarmMedicationRequest.extension.extension Mappt AushaendigungInformationsmaterialien Extension zu hand-out-information-material
→ erstellt neues Extension
kbvMedicationRequest.extension [KBV_EX_ERP_Teratogenic].extension [AushaendigungInformationsmaterialien] bfarmMedicationRequest.extension.url Mappt AushaendigungInformationsmaterialien Extension zu hand-out-information-material
→ setzt Wert 'hand-out-information-material'
kbvMedicationRequest.extension [KBV_EX_ERP_Teratogenic].extension [AushaendigungInformationsmaterialien].value bfarmMedicationRequest.extension.extension.value Übernimmt den Booleschen Wert für hand-out-information-material
→ übernimmt Wert aus Quellvariable
kbvMedicationRequest.extension [KBV_EX_ERP_Teratogenic].extension [ErklaerungSachkenntnis] bfarmMedicationRequest.extension.extension Mappt ErklaerungSachkenntnis Extension zu declaration-of-expertise
→ erstellt neues Extension
kbvMedicationRequest.extension [KBV_EX_ERP_Teratogenic].extension [ErklaerungSachkenntnis] bfarmMedicationRequest.extension.url Mappt ErklaerungSachkenntnis Extension zu declaration-of-expertise
→ setzt Wert 'declaration-of-expertise'
kbvMedicationRequest.extension [KBV_EX_ERP_Teratogenic].extension [ErklaerungSachkenntnis].value bfarmMedicationRequest.extension.extension.value Übernimmt den Booleschen Wert für declaration-of-expertise
→ übernimmt Wert aus Quellvariable
kbvMedicationRequest.extension [GeneratedDosageInstructionsMeta] bfarmMedicationRequest.extension Kopiert Dosage Metadata Extension
→ übernimmt Wert aus Quellvariable
kbvMedicationRequest.extension [extension-MedicationRequest.renderedDosageInstruction] bfarmMedicationRequest.extension Kopiert RenderedDosageText
→ übernimmt Wert aus Quellvariable
kbvMedicationRequest.subject bfarmMedicationRequest.subject Entfernt Patientenbezug durch data-absent-reason Extension für Datenschutz im digitalen Durchschlag
kbvMedicationRequest.subject bfarmMedicationRequest.subject.identifier.system Erstellt data-absent-reason Extension für Subject Identifier
kbvMedicationRequest.subject bfarmMedicationRequest.subject.identifier.value Erstellt data-absent-reason Extension für Subject Identifier
kbvMedicationRequest.subject bfarmMedicationRequest.subject.identifier.system.extension Erstellt data-absent-reason Extension für Subject Identifier
kbvMedicationRequest.subject bfarmMedicationRequest.subject.identifier.system.extension Erstellt data-absent-reason Extension für Subject Identifier
kbvMedicationRequest.subject bfarmMedicationRequest.subject.identifier.system.extension.url Setzt data-absent-reason auf 'not-permitted' um Patientendaten zu anonymisieren
→ setzt URL 'http://hl7.org/fhir/StructureDefinition/data-absent-reason'
kbvMedicationRequest.subject bfarmMedicationRequest.subject.identifier.system.extension.value Setzt data-absent-reason auf 'not-permitted' um Patientendaten zu anonymisieren
kbvMedicationRequest.subject bfarmMedicationRequest.subject.identifier.system.extension.url Setzt data-absent-reason auf 'not-permitted' um Patientendaten zu anonymisieren
→ setzt URL 'http://hl7.org/fhir/StructureDefinition/data-absent-reason'
kbvMedicationRequest.subject bfarmMedicationRequest.subject.identifier.system.extension.value Setzt data-absent-reason auf 'not-permitted' um Patientendaten zu anonymisieren
kbvMedicationRequest.authoredOn bfarmMedicationRequest.authoredOn Übernimmt das Verschreibungsdatum unverändert vom KBV MedicationRequest
→ übernimmt Wert aus Quellvariable
kbvMedicationRequest.dosageInstruction bfarmMedicationRequest.dosageInstruction Kopiert die Dosierungsanweisungen vollständig für den digitalen Durchschlag
→ übernimmt Wert aus Quellvariable
kbvMedicationRequest.dispenseRequest bfarmMedicationRequest.dispenseRequest Übernimmt Abgabeanweisungen (Menge, Wiederholungen) aus der ursprünglichen Verschreibung
→ übernimmt Wert aus Quellvariable
kbvMedicationRequest.medication bfarmMedicationRequest.medication Transformiert die Medication-Referenz zu urn:uuid Format
→ erstellt neues Reference

Usages:

You can also check for usages in the FHIR IG Statistics

Formal Views of Profile Content

Description of Profiles, Differentials, Snapshots and how the different presentations work.

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. MedicationRequest 0..* TIMedicationRequestDgMP Ordering of medication for patient or group
... meta SΣ 0..1 Meta Metadata about the resource
.... versionId SΣ 0..1 id Version specific identifier
.... lastUpdated SΣ 0..1 instant When the resource version last changed
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
... Slices for extension S 0..* Extension Extension
Slice: Unordered, Open by value:url
.... extension:context S 0..1 code Extension
URL: https://gematik.de/fhir/epa-medication/StructureDefinition/context-extension
Binding: Context Codes (required)
.... extension:multiplePrescription S 0..1 (Complex) MultiplePrescription
URL: https://gematik.de/fhir/epa-medication/StructureDefinition/multiple-prescription-extension
..... Slices for extension Content/Rules for all slices
...... extension:indicator S 0..1 Extension Extension
....... extension 0..0 Extension
Slice: Unordered, Open by value:url
....... url 1..1 uri "indicator"
....... value[x] S 1..1 boolean Multiple Prescription Indicator
...... extension:counter S 0..1 Extension Extension
....... extension 0..0 Extension
Slice: Unordered, Open by value:url
....... url 1..1 uri "counter"
....... value[x] S 1..1 Ratio Value of extension
........ numerator SΣC 1..1 Quantity Numerator value
Constraints: qty-3
......... value SΣ 1..1 decimal Multiple Prescription Counter
........ denominator SΣC 1..1 Quantity Denominator value
Constraints: qty-3
......... value SΣ 1..1 decimal Denominator of Multiple Prescription Series
...... extension:period S 0..1 Extension Zeitraum der Einlösefrist
....... extension 0..0 Extension
Slice: Unordered, Open by value:url
....... url 1..1 uri "period"
....... value[x] SC 1..1 Period Value of extension
Constraints: -limitationDateStart, -limitationDateEnd
........ start SΣC 1..1 dateTime Start Date of the Prescription Redemption Period
........ end SΣC 0..1 dateTime End Date of the Prescription Redemption Period
...... extension:id S 0..1 Extension Extension
....... extension 0..0 Extension
Slice: Unordered, Open by value:url
....... url 1..1 uri "id"
....... value[x] S 1..1 Identifier Value of extension
........ system SΣ 0..1 uri Specification as UUID
Fixed Value: urn:ietf:rfc:3986
........ value SΣ 0..1 string Multiple Prescription ID
Example General: 123456
..... url 1..1 uri "https://gematik.de/fhir/epa-medication/StructureDefinition/multiple-prescription-extension"
.... extension:isBvg S 0..1 boolean Extension
URL: https://gematik.de/fhir/epa-medication/StructureDefinition/indicator-bvg-extension
.... extension:isSer S 0..1 boolean Extension
URL: https://gematik.de/fhir/epa-medication/StructureDefinition/indicator-ser-extension
.... extension:prescriberID S 0..1 (Complex) Extension
URL: https://gematik.de/fhir/epa-medication/StructureDefinition/prescriber-id-extension
..... extension 0..0 Extension
Slice: Unordered, Open by value:url
..... url 1..1 uri "https://gematik.de/fhir/epa-medication/StructureDefinition/prescriber-id-extension"
..... value[x] S 1..1 Identifier Value of extension
...... value Σ 1..1 string Verschreiber-ID
Example General: 123456
.... extension:patientID S 0..1 Identifier Extension
URL: https://gematik.de/fhir/epa-medication/StructureDefinition/patient-id-extension
.... extension:narcotics S 0..1 (Complex) Betäubungsmittel (BtM)
URL: https://gematik.de/fhir/epa-medication/StructureDefinition/narcotics-extension
..... Slices for extension S 0..* Extension Extension
Slice: Unordered, Closed by value:url
..... Slices for extension Content/Rules for all slices
...... extension:narcotics-markings S 0..1 Extension Extension
....... extension 0..0 Extension
Slice: Unordered, Open by value:url
....... url 1..1 uri "narcotics-markings"
....... value[x] S 0..1 Coding Value of extension
Binding: https://fhir.kbv.de/ValueSet/KBV_VS_SFHIR_KBV_NARCOTIC_LABEL (required)
Required Pattern: At least the following
........ system SΣ 0..1 uri Identity of the terminology system
Fixed Value: https://fhir.kbv.de/CodeSystem/KBV_CS_SFHIR_KBV_NARCOTIC_LABEL
........ code SΣ 0..1 code Kennzeichen nach § 9 Abs. 1 Nr. 6 BtMVV
...... extension:additional-information-substitutes S 0..1 Extension Extension
....... extension 0..0 Extension
Slice: Unordered, Open by value:url
....... url 1..1 uri "additional-information-substitutes"
....... value[x] S 0..1 string Ergänzende Angaben zu Substitutionsmittel
..... url 1..1 uri "https://gematik.de/fhir/epa-medication/StructureDefinition/narcotics-extension"
.... extension:teratogenic S 0..1 (Complex) T-Rezept
URL: https://gematik.de/fhir/epa-medication/StructureDefinition/teratogenic-extension
.... extension:renderedDosageInstruction SN 0..1 (Complex) Vollständige Darstellung der Dosierungsanweisungen (generiert aus den Dosage-Elementen).
URL: http://hl7.org/fhir/5.0/StructureDefinition/extension-MedicationRequest.renderedDosageInstruction
..... extension 0..0 Additional content defined by implementations
Slice: Unordered, Open by value:url
..... url 1..1 uri "http://hl7.org/fhir/5.0/StructureDefinition/extension-MedicationRequest.renderedDosageInstruction"
..... value[x] S 0..1 markdown Full representation of the dosage instructions
.... extension:generatedDosageInstructionsMeta SN 0..1 (Complex) Metadaten zu den generierten Dosierungsanweisungen
URL: http://ig.fhir.de/igs/medication/StructureDefinition/GeneratedDosageInstructionsMeta
... status ?!SΣ 1..1 code Status of Medication Request
Binding: https://gematik.de/fhir/terminology/ValueSet/ti-medication-request-status-vs (required): A coded concept specifying the state of the prescribing event. Describes the lifecycle of the prescription.
Fixed Value: completed
... intent ?!SΣ 1..1 code filler-order
Binding: medicationRequest Intent (required): The kind of medication order.
Fixed Value: order
... medication[x] SΣ 1..1 Reference(Medication) Medication to be taken
... subject SΣ 1..1 Reference(Patient) Who or group medication request is for
.... identifier SΣ 1..1 IdentifierKvid10 An identifier intended for computation
... authoredOn SΣ 1..1 dateTime Issue Date
... dosageInstruction SC 0..* DosageDgMP Hier werden Informationen zur Dosierung angegeben.
Constraints: DosageStructuredOrFreeTextWarning, DosageStructuredRequiresBoth, DosageDoseUnitSameCode, DosageWarnungViererschemaInText, FreeTextSingleDosageOnlyWarning, DosageStructuredOrFreeText, DosageStructuredRequiresGeneratedText, FreeTextSingleDosageOnly, FreeTextMatchesRenderedText
... dispenseRequest S 0..1 BackboneElement Medication supply authorization
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... quantity S 0..1 SimpleQuantity Amount of medication to supply per dispense
..... value SΣ 1..1 decimal Number of Prescribed Packages
..... unit SΣ 0..1 string Unit representation
..... system SΣC 0..1 uri System that defines coded unit form
Required Pattern: http://unitsofmeasure.org
..... code SΣ 0..1 code Coded form of the unit
.... expectedSupplyDuration S 0..1 Duration Number of days supply per dispense

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
MedicationRequest.extension:narcotics.​extension:narcotics-markings.​value[x] Base required https://fhir.kbv.de/ValueSet/KBV_VS_SFHIR_KBV_NARCOTIC_LABEL Not State Unknown
MedicationRequest.status Base required https://gematik.de/fhir/terminology/ValueSet/ti-medication-request-status-vs Not State Unknown
MedicationRequest.intent Base required Medication request intent 📍4.0.1 FHIR Std.

Constraints

Id Grade Path(s) Description Expression
-limitationDateEnd error MedicationRequest.extension:multiplePrescription.extension:period.value[x] Limitation of the date format to 10 characters YYYY-MM-DD end.exists().not() or end.toString().length()=10
-limitationDateStart error MedicationRequest.extension:multiplePrescription.extension:period.value[x] Limitation of the date format to 10 characters YYYY-MM-DD start.toString().length()=10
DosageDoseUnitSameCode error MedicationRequest.dosageInstruction Die Dosiereinheit muss über alle Dosierungen gleich sein. (%resource.ofType(MedicationRequest).dosageInstruction | %resource.ofType(MedicationDispense).dosageInstruction | %resource.ofType(MedicationStatement).dosage).all( doseAndRate.exists() implies ( (%resource.ofType(MedicationRequest).dosageInstruction | %resource.ofType(MedicationDispense).dosageInstruction | %resource.ofType(MedicationStatement).dosage).doseAndRate.dose.ofType(Quantity).code | (%resource.ofType(MedicationRequest).dosageInstruction | %resource.ofType(MedicationDispense).dosageInstruction | %resource.ofType(MedicationStatement).dosage).doseAndRate.dose.ofType(Range).low.code | (%resource.ofType(MedicationRequest).dosageInstruction | %resource.ofType(MedicationDispense).dosageInstruction | %resource.ofType(MedicationStatement).dosage).doseAndRate.dose.ofType(Range).high.code ).distinct().count() = 1 )
DosageStructuredOrFreeText error MedicationRequest.dosageInstruction Die Dosierungsangabe darf entweder nur als Freitext oder nur als vollständige strukturierte Information erfolgen — eine Mischung ist nicht erlaubt. (%resource.ofType(MedicationRequest).dosageInstruction | %resource.ofType(MedicationDispense).dosageInstruction | %resource.ofType(MedicationStatement).dosage).all( (text.exists() and timing.empty() and doseAndRate.empty()) or (text.empty() and (timing.exists() or doseAndRate.exists())) )
DosageStructuredOrFreeTextWarning warning MedicationRequest.dosageInstruction Die Dosierungsangabe darf entweder nur als Freitext oder nur als vollständige strukturierte Information erfolgen — eine Mischung ist nicht erlaubt. (%resource.ofType(MedicationRequest).dosageInstruction | %resource.ofType(MedicationDispense).dosageInstruction | %resource.ofType(MedicationStatement).dosage).all( (text.exists() and timing.empty() and doseAndRate.empty()) or (text.empty() and (timing.exists() or doseAndRate.exists())) )
DosageStructuredRequiresBoth error MedicationRequest.dosageInstruction Wenn eine strukturierte Dosierungsangabe erfolgt, müssen sowohl timing als auch doseAndRate angegeben werden. (%resource.ofType(MedicationRequest).dosageInstruction | %resource.ofType(MedicationDispense).dosageInstruction | %resource.ofType(MedicationStatement).dosage).all( (timing.exists() implies doseAndRate.exists()) and (doseAndRate.exists() implies timing.exists()) )
DosageStructuredRequiresGeneratedText error MedicationRequest.dosageInstruction Liegt eine strukturierte Dosierungsangabe vor (timing und doseAndRate belegt, text leer), muss die Extension GeneratedDosageInstructionsMeta vorhanden sein. ( (%resource.ofType(MedicationRequest).dosageInstruction | %resource.ofType(MedicationDispense).dosageInstruction | %resource.ofType(MedicationStatement).dosage ).exists(timing.exists() and doseAndRate.exists() and text.empty()) ) implies ( %resource.extension.where( url = 'http://ig.fhir.de/igs/medication/StructureDefinition/GeneratedDosageInstructionsMeta' ).exists() and ( %resource.extension.where( url = 'http://hl7.org/fhir/5.0/StructureDefinition/extension-MedicationRequest.renderedDosageInstruction' ).exists() or %resource.extension.where( url = 'http://hl7.org/fhir/5.0/StructureDefinition/extension-MedicationDispense.renderedDosageInstruction' ).exists() or %resource.extension.where( url = 'http://hl7.org/fhir/5.0/StructureDefinition/extension-MedicationStatement.renderedDosageInstruction' ).exists() ) )
DosageWarnungViererschemaInText warning MedicationRequest.dosageInstruction Hinweis: In Dosage.text wurde ein Viererschema (z. B. 1-1-1-1) erkannt. Bitte prüfen, ob dies strukturiert abgebildet werden kann. text.exists() implies text.matches('.*\\d+\\s*[-–]\\s*\\d+\\s*[-–]\\s*\\d+\\s*[-–]\\d+.*').not()
FreeTextMatchesRenderedText error MedicationRequest.dosageInstruction Wenn eine Dosierung als reiner Freitext angegeben ist (text vorhanden, timing und doseAndRate leer) UND die Extension renderedDosageInstruction befüllt ist, muss der Wert in dosageInstruction.text mit dem Wert in der Extension übereinstimmen. ( (%resource.ofType(MedicationRequest).dosageInstruction | %resource.ofType(MedicationDispense).dosageInstruction | %resource.ofType(MedicationStatement).dosage ).where(text.exists() and timing.empty() and doseAndRate.empty()).exists() ) implies ( ( %resource.ofType(MedicationRequest).exists() and ( %resource.extension.where( url = 'http://hl7.org/fhir/5.0/StructureDefinition/extension-MedicationRequest.renderedDosageInstruction' ).empty() or %resource.extension.where( url = 'http://hl7.org/fhir/5.0/StructureDefinition/extension-MedicationRequest.renderedDosageInstruction' ).value = %resource.dosageInstruction.text ) ) or ( %resource.ofType(MedicationDispense).exists() and ( %resource.extension.where( url = 'http://hl7.org/fhir/5.0/StructureDefinition/extension-MedicationDispense.renderedDosageInstruction' ).empty() or %resource.extension.where( url = 'http://hl7.org/fhir/5.0/StructureDefinition/extension-MedicationDispense.renderedDosageInstruction' ).value = %resource.dosageInstruction.text ) ) or ( %resource.ofType(MedicationStatement).exists() and ( %resource.extension.where( url = 'http://hl7.org/fhir/5.0/StructureDefinition/extension-MedicationStatement.renderedDosageInstruction' ).empty() or %resource.extension.where( url = 'http://hl7.org/fhir/5.0/StructureDefinition/extension-MedicationStatement.renderedDosageInstruction' ).value = %resource.dosage.text ) ) )
FreeTextSingleDosageOnly error MedicationRequest.dosageInstruction Wenn eine Dosierung als reiner Freitext angegeben ist, darf nur genau ein Dosage-Element existieren. ( (%resource.ofType(MedicationRequest).dosageInstruction | %resource.ofType(MedicationDispense).dosageInstruction | %resource.ofType(MedicationStatement).dosage ).exists(text.exists() and timing.empty() and doseAndRate.empty()) ) implies ( (%resource.ofType(MedicationRequest).dosageInstruction | %resource.ofType(MedicationDispense).dosageInstruction | %resource.ofType(MedicationStatement).dosage ).count() = 1 )
FreeTextSingleDosageOnlyWarning warning MedicationRequest.dosageInstruction Wenn eine Dosierung als reiner Freitext angegeben ist, soll nur genau ein Dosage-Element existieren. ( (%resource.ofType(MedicationRequest).dosageInstruction | %resource.ofType(MedicationDispense).dosageInstruction | %resource.ofType(MedicationStatement).dosage ).exists(text.exists() and timing.empty() and doseAndRate.empty()) ) implies ( (%resource.ofType(MedicationRequest).dosageInstruction | %resource.ofType(MedicationDispense).dosageInstruction | %resource.ofType(MedicationStatement).dosage ).count() = 1 )
dom-2 error MedicationRequest If the resource is contained in another resource, it SHALL NOT contain nested Resources contained.contained.empty()
dom-3 error MedicationRequest If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
dom-4 error MedicationRequest If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()
dom-5 error MedicationRequest If a resource is contained in another resource, it SHALL NOT have a security label contained.meta.security.empty()
dom-6 best practice MedicationRequest A resource should have narrative for robust management text.`div`.exists()
ele-1 error **ALL** elements All FHIR elements must have a @value or children hasValue() or (children().count() > id.count())
ext-1 error **ALL** extensions Must have either extensions or value[x], not both extension.exists() != value.exists()
qty-3 error MedicationRequest.extension:multiplePrescription.extension:counter.value[x].numerator, MedicationRequest.extension:multiplePrescription.extension:counter.value[x].denominator If a code for the unit is present, the system SHALL also be present code.empty() or system.exists()

This structure is derived from TIMedicationRequestDgMP

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. MedicationRequest TIMedicationRequestDgMP
... extension S 0..* Extension Extension
... identifier 0..0 External ids for this request
... Slices for identifier Content/Rules for all slices
.... identifier:RxPrescriptionProcessIdentifier 0..0 An identifier intended for computation
.... identifier:RxOriginatorProcessIdentifier 0..0 An identifier intended for computation
... status 1..1 code Status of Medication Request
Fixed Value: completed
... statusReason 0..0 Reason for current status
... intent 1..1 code filler-order
Fixed Value: order
... category 0..0 Type of medication usage
... priority 0..0 routine | urgent | asap | stat
... doNotPerform 0..0 True if request is prohibiting action
... reported[x] 0..0 Reported rather than primary record
... subject
.... reference 0..0 Literal reference, Relative, internal or absolute URL
.... type 0..0 Type the reference refers to (e.g. "Patient")
.... display 0..0 Text alternative for the resource
... encounter 0..0 Encounter created as part of encounter/admission/stay
... supportingInformation 0..0 Information to support ordering of the medication
... requester 0..0 Who/What requested the Request
... performer 0..0 Intended performer of administration
... performerType 0..0 Desired kind of performer of the medication administration
... recorder 0..0 Person who entered the request
... reasonCode 0..0 Reason or indication for ordering or not ordering the medication
... reasonReference 0..0 Condition or observation that supports why the prescription is being written
... instantiatesCanonical 0..0 Instantiates FHIR protocol or definition
... instantiatesUri 0..0 Instantiates external protocol or definition
... basedOn 0..0 What request fulfills
... groupIdentifier 0..0 Composite request this is part of
... courseOfTherapyType 0..0 Overall pattern of medication administration
... insurance 0..0 Associated insurance coverage
... note 0..0 Information about the prescription
... dispenseRequest
.... initialFill 0..0 First fill details
.... dispenseInterval 0..0 Minimum period of time between dispenses
.... validityPeriod 0..0 Time period supply is authorized for
.... numberOfRepeatsAllowed 0..0 Number of refills authorized
.... performer 0..0 Intended dispenser
... substitution 0..0 Any restrictions on medication substitution
... priorPrescription 0..0 An order/prescription that is being replaced
... detectedIssue 0..0 Clinical Issue with action
... eventHistory 0..0 A list of events of interest in the lifecycle

doco Documentation for this format
NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. MedicationRequest 0..* TIMedicationRequestDgMP Ordering of medication for patient or group
... id Σ 0..1 id Logical id of this artifact
... meta SΣ 0..1 Meta Metadata about the resource
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
.... versionId SΣ 0..1 id Version specific identifier
.... lastUpdated SΣ 0..1 instant When the resource version last changed
.... source Σ 0..1 uri Identifies where the resource comes from
.... profile Σ 0..* canonical(StructureDefinition) Profiles this resource claims to conform to
.... security Σ 0..* Coding Security Labels applied to this resource
Binding: All Security Labels (extensible): Security Labels from the Healthcare Privacy and Security Classification System.
.... tag Σ 0..* Coding Tags applied to this resource
Binding: CommonTags (example): Codes that represent various types of tags, commonly workflow-related; e.g. "Needs review by Dr. Jones".
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
... text 0..1 Narrative Text summary of the resource, for human interpretation
This profile does not constrain the narrative in regard to content, language, or traceability to data elements
... contained 0..* Resource Contained, inline Resources
... Slices for extension S 0..* Extension Extension
Slice: Unordered, Open by value:url
.... extension:context S 0..1 code Extension
URL: https://gematik.de/fhir/epa-medication/StructureDefinition/context-extension
Binding: Context Codes (required)
.... extension:multiplePrescription S 0..1 (Complex) MultiplePrescription
URL: https://gematik.de/fhir/epa-medication/StructureDefinition/multiple-prescription-extension
..... id 0..1 string Unique id for inter-element referencing
..... Slices for extension 0..* Extension Extension
Slice: Unordered, Closed by value:url
..... Slices for extension Content/Rules for all slices
...... extension:indicator S 0..1 Extension Extension
....... id 0..1 string Unique id for inter-element referencing
....... extension 0..0 Extension
Slice: Unordered, Open by value:url
....... url 1..1 uri "indicator"
....... value[x] S 1..1 boolean Multiple Prescription Indicator
...... extension:counter S 0..1 Extension Extension
....... id 0..1 string Unique id for inter-element referencing
....... extension 0..0 Extension
Slice: Unordered, Open by value:url
....... url 1..1 uri "counter"
....... value[x] S 1..1 Ratio Value of extension
........ id 0..1 string Unique id for inter-element referencing
........ extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
........ numerator SΣC 1..1 Quantity Numerator value
Constraints: qty-3
......... id 0..1 string Unique id for inter-element referencing
......... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
......... value SΣ 1..1 decimal Multiple Prescription Counter
........ denominator SΣC 1..1 Quantity Denominator value
Constraints: qty-3
......... id 0..1 string Unique id for inter-element referencing
......... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
......... value SΣ 1..1 decimal Denominator of Multiple Prescription Series
...... extension:period S 0..1 Extension Zeitraum der Einlösefrist
....... id 0..1 string Unique id for inter-element referencing
....... extension 0..0 Extension
Slice: Unordered, Open by value:url
....... url 1..1 uri "period"
....... value[x] SC 1..1 Period Value of extension
Constraints: -limitationDateStart, -limitationDateEnd
........ id 0..1 string Unique id for inter-element referencing
........ extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
........ start SΣC 1..1 dateTime Start Date of the Prescription Redemption Period
........ end SΣC 0..1 dateTime End Date of the Prescription Redemption Period
...... extension:id S 0..1 Extension Extension
....... id 0..1 string Unique id for inter-element referencing
....... extension 0..0 Extension
Slice: Unordered, Open by value:url
....... url 1..1 uri "id"
....... value[x] S 1..1 Identifier Value of extension
........ id 0..1 string Unique id for inter-element referencing
........ extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
........ system SΣ 0..1 uri Specification as UUID
Fixed Value: urn:ietf:rfc:3986
........ value SΣ 0..1 string Multiple Prescription ID
Example General: 123456
..... url 1..1 uri "https://gematik.de/fhir/epa-medication/StructureDefinition/multiple-prescription-extension"
.... extension:isBvg S 0..1 boolean Extension
URL: https://gematik.de/fhir/epa-medication/StructureDefinition/indicator-bvg-extension
.... extension:isSer S 0..1 boolean Extension
URL: https://gematik.de/fhir/epa-medication/StructureDefinition/indicator-ser-extension
.... extension:prescriberID S 0..1 (Complex) Extension
URL: https://gematik.de/fhir/epa-medication/StructureDefinition/prescriber-id-extension
..... id 0..1 string Unique id for inter-element referencing
..... extension 0..0 Extension
Slice: Unordered, Open by value:url
..... url 1..1 uri "https://gematik.de/fhir/epa-medication/StructureDefinition/prescriber-id-extension"
..... value[x] S 1..1 Identifier Value of extension
...... id 0..1 string Unique id for inter-element referencing
...... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
...... system Σ 0..1 uri The namespace for the identifier value
Example General: http://www.acme.com/identifiers/patient
...... value Σ 1..1 string Verschreiber-ID
Example General: 123456
.... extension:patientID S 0..1 Identifier Extension
URL: https://gematik.de/fhir/epa-medication/StructureDefinition/patient-id-extension
.... extension:narcotics S 0..1 (Complex) Betäubungsmittel (BtM)
URL: https://gematik.de/fhir/epa-medication/StructureDefinition/narcotics-extension
..... id 0..1 string Unique id for inter-element referencing
..... Slices for extension S 0..* Extension Extension
Slice: Unordered, Closed by value:url
..... Slices for extension Content/Rules for all slices
...... extension:narcotics-markings S 0..1 Extension Extension
....... id 0..1 string Unique id for inter-element referencing
....... extension 0..0 Extension
Slice: Unordered, Open by value:url
....... url 1..1 uri "narcotics-markings"
....... value[x] S 0..1 Coding Value of extension
Binding: https://fhir.kbv.de/ValueSet/KBV_VS_SFHIR_KBV_NARCOTIC_LABEL (required)
Required Pattern: At least the following
........ id 0..1 string Unique id for inter-element referencing
........ extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
........ system SΣ 0..1 uri Identity of the terminology system
Fixed Value: https://fhir.kbv.de/CodeSystem/KBV_CS_SFHIR_KBV_NARCOTIC_LABEL
........ version Σ 0..1 string Version of the system - if relevant
........ code SΣ 0..1 code Kennzeichen nach § 9 Abs. 1 Nr. 6 BtMVV
........ display Σ 0..1 string Representation defined by the system
........ userSelected Σ 0..1 boolean If this coding was chosen directly by the user
...... extension:additional-information-substitutes S 0..1 Extension Extension
....... id 0..1 string Unique id for inter-element referencing
....... extension 0..0 Extension
Slice: Unordered, Open by value:url
....... url 1..1 uri "additional-information-substitutes"
....... value[x] S 0..1 string Ergänzende Angaben zu Substitutionsmittel
..... url 1..1 uri "https://gematik.de/fhir/epa-medication/StructureDefinition/narcotics-extension"
.... extension:teratogenic S 0..1 (Complex) T-Rezept
URL: https://gematik.de/fhir/epa-medication/StructureDefinition/teratogenic-extension
.... extension:renderedDosageInstruction SN 0..1 (Complex) Vollständige Darstellung der Dosierungsanweisungen (generiert aus den Dosage-Elementen).
URL: http://hl7.org/fhir/5.0/StructureDefinition/extension-MedicationRequest.renderedDosageInstruction
..... id 0..1 string Unique id for inter-element referencing
..... extension 0..0 Additional content defined by implementations
Slice: Unordered, Open by value:url
..... url 1..1 uri "http://hl7.org/fhir/5.0/StructureDefinition/extension-MedicationRequest.renderedDosageInstruction"
..... value[x] S 0..1 markdown Full representation of the dosage instructions
.... extension:generatedDosageInstructionsMeta SN 0..1 (Complex) Metadaten zu den generierten Dosierungsanweisungen
URL: http://ig.fhir.de/igs/medication/StructureDefinition/GeneratedDosageInstructionsMeta
... modifierExtension ?! 0..* Extension Extensions that cannot be ignored
... status ?!SΣ 1..1 code Status of Medication Request
Binding: https://gematik.de/fhir/terminology/ValueSet/ti-medication-request-status-vs (required): A coded concept specifying the state of the prescribing event. Describes the lifecycle of the prescription.
Fixed Value: completed
... intent ?!SΣ 1..1 code filler-order
Binding: medicationRequest Intent (required): The kind of medication order.
Fixed Value: order
... medication[x] SΣ 1..1 Reference(Medication) Medication to be taken
... subject SΣ 1..1 Reference(Patient) Who or group medication request is for
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
.... identifier SΣ 1..1 IdentifierKvid10 An identifier intended for computation
... authoredOn SΣ 1..1 dateTime Issue Date
... dosageInstruction SC 0..* DosageDgMP Hier werden Informationen zur Dosierung angegeben.
Constraints: DosageStructuredOrFreeTextWarning, DosageStructuredRequiresBoth, DosageDoseUnitSameCode, DosageWarnungViererschemaInText, FreeTextSingleDosageOnlyWarning, DosageStructuredOrFreeText, DosageStructuredRequiresGeneratedText, FreeTextSingleDosageOnly, FreeTextMatchesRenderedText
... dispenseRequest S 0..1 BackboneElement Medication supply authorization
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... quantity S 0..1 SimpleQuantity Amount of medication to supply per dispense
..... id 0..1 string Unique id for inter-element referencing
..... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
..... value SΣ 1..1 decimal Number of Prescribed Packages
..... unit SΣ 0..1 string Unit representation
..... system SΣC 0..1 uri System that defines coded unit form
Required Pattern: http://unitsofmeasure.org
..... code SΣ 0..1 code Coded form of the unit
.... expectedSupplyDuration S 0..1 Duration Number of days supply per dispense

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
MedicationRequest.meta.​security Base extensible SecurityLabels 📦4.0.1 FHIR Std.
MedicationRequest.meta.​tag Base example Common Tags 📦4.0.1 FHIR Std.
MedicationRequest.language Base preferred Common Languages 📦4.0.1 FHIR Std.
MedicationRequest.extension:narcotics.​extension:narcotics-markings.​value[x] Base required https://fhir.kbv.de/ValueSet/KBV_VS_SFHIR_KBV_NARCOTIC_LABEL Not State Unknown
MedicationRequest.status Base required https://gematik.de/fhir/terminology/ValueSet/ti-medication-request-status-vs Not State Unknown
MedicationRequest.intent Base required Medication request intent 📍4.0.1 FHIR Std.
MedicationRequest.basedOn.​type Base extensible ResourceType 📦4.0.1 FHIR Std.
MedicationRequest.substitution.​reason Base example SubstanceAdminSubstitutionReason 📦3.0.0 THO v7.4

Constraints

Id Grade Path(s) Description Expression
-limitationDateEnd error MedicationRequest.extension:multiplePrescription.extension:period.value[x] Limitation of the date format to 10 characters YYYY-MM-DD end.exists().not() or end.toString().length()=10
-limitationDateStart error MedicationRequest.extension:multiplePrescription.extension:period.value[x] Limitation of the date format to 10 characters YYYY-MM-DD start.toString().length()=10
DosageDoseUnitSameCode error MedicationRequest.dosageInstruction Die Dosiereinheit muss über alle Dosierungen gleich sein. (%resource.ofType(MedicationRequest).dosageInstruction | %resource.ofType(MedicationDispense).dosageInstruction | %resource.ofType(MedicationStatement).dosage).all( doseAndRate.exists() implies ( (%resource.ofType(MedicationRequest).dosageInstruction | %resource.ofType(MedicationDispense).dosageInstruction | %resource.ofType(MedicationStatement).dosage).doseAndRate.dose.ofType(Quantity).code | (%resource.ofType(MedicationRequest).dosageInstruction | %resource.ofType(MedicationDispense).dosageInstruction | %resource.ofType(MedicationStatement).dosage).doseAndRate.dose.ofType(Range).low.code | (%resource.ofType(MedicationRequest).dosageInstruction | %resource.ofType(MedicationDispense).dosageInstruction | %resource.ofType(MedicationStatement).dosage).doseAndRate.dose.ofType(Range).high.code ).distinct().count() = 1 )
DosageStructuredOrFreeText error MedicationRequest.dosageInstruction Die Dosierungsangabe darf entweder nur als Freitext oder nur als vollständige strukturierte Information erfolgen — eine Mischung ist nicht erlaubt. (%resource.ofType(MedicationRequest).dosageInstruction | %resource.ofType(MedicationDispense).dosageInstruction | %resource.ofType(MedicationStatement).dosage).all( (text.exists() and timing.empty() and doseAndRate.empty()) or (text.empty() and (timing.exists() or doseAndRate.exists())) )
DosageStructuredOrFreeTextWarning warning MedicationRequest.dosageInstruction Die Dosierungsangabe darf entweder nur als Freitext oder nur als vollständige strukturierte Information erfolgen — eine Mischung ist nicht erlaubt. (%resource.ofType(MedicationRequest).dosageInstruction | %resource.ofType(MedicationDispense).dosageInstruction | %resource.ofType(MedicationStatement).dosage).all( (text.exists() and timing.empty() and doseAndRate.empty()) or (text.empty() and (timing.exists() or doseAndRate.exists())) )
DosageStructuredRequiresBoth error MedicationRequest.dosageInstruction Wenn eine strukturierte Dosierungsangabe erfolgt, müssen sowohl timing als auch doseAndRate angegeben werden. (%resource.ofType(MedicationRequest).dosageInstruction | %resource.ofType(MedicationDispense).dosageInstruction | %resource.ofType(MedicationStatement).dosage).all( (timing.exists() implies doseAndRate.exists()) and (doseAndRate.exists() implies timing.exists()) )
DosageStructuredRequiresGeneratedText error MedicationRequest.dosageInstruction Liegt eine strukturierte Dosierungsangabe vor (timing und doseAndRate belegt, text leer), muss die Extension GeneratedDosageInstructionsMeta vorhanden sein. ( (%resource.ofType(MedicationRequest).dosageInstruction | %resource.ofType(MedicationDispense).dosageInstruction | %resource.ofType(MedicationStatement).dosage ).exists(timing.exists() and doseAndRate.exists() and text.empty()) ) implies ( %resource.extension.where( url = 'http://ig.fhir.de/igs/medication/StructureDefinition/GeneratedDosageInstructionsMeta' ).exists() and ( %resource.extension.where( url = 'http://hl7.org/fhir/5.0/StructureDefinition/extension-MedicationRequest.renderedDosageInstruction' ).exists() or %resource.extension.where( url = 'http://hl7.org/fhir/5.0/StructureDefinition/extension-MedicationDispense.renderedDosageInstruction' ).exists() or %resource.extension.where( url = 'http://hl7.org/fhir/5.0/StructureDefinition/extension-MedicationStatement.renderedDosageInstruction' ).exists() ) )
DosageWarnungViererschemaInText warning MedicationRequest.dosageInstruction Hinweis: In Dosage.text wurde ein Viererschema (z. B. 1-1-1-1) erkannt. Bitte prüfen, ob dies strukturiert abgebildet werden kann. text.exists() implies text.matches('.*\\d+\\s*[-–]\\s*\\d+\\s*[-–]\\s*\\d+\\s*[-–]\\d+.*').not()
FreeTextMatchesRenderedText error MedicationRequest.dosageInstruction Wenn eine Dosierung als reiner Freitext angegeben ist (text vorhanden, timing und doseAndRate leer) UND die Extension renderedDosageInstruction befüllt ist, muss der Wert in dosageInstruction.text mit dem Wert in der Extension übereinstimmen. ( (%resource.ofType(MedicationRequest).dosageInstruction | %resource.ofType(MedicationDispense).dosageInstruction | %resource.ofType(MedicationStatement).dosage ).where(text.exists() and timing.empty() and doseAndRate.empty()).exists() ) implies ( ( %resource.ofType(MedicationRequest).exists() and ( %resource.extension.where( url = 'http://hl7.org/fhir/5.0/StructureDefinition/extension-MedicationRequest.renderedDosageInstruction' ).empty() or %resource.extension.where( url = 'http://hl7.org/fhir/5.0/StructureDefinition/extension-MedicationRequest.renderedDosageInstruction' ).value = %resource.dosageInstruction.text ) ) or ( %resource.ofType(MedicationDispense).exists() and ( %resource.extension.where( url = 'http://hl7.org/fhir/5.0/StructureDefinition/extension-MedicationDispense.renderedDosageInstruction' ).empty() or %resource.extension.where( url = 'http://hl7.org/fhir/5.0/StructureDefinition/extension-MedicationDispense.renderedDosageInstruction' ).value = %resource.dosageInstruction.text ) ) or ( %resource.ofType(MedicationStatement).exists() and ( %resource.extension.where( url = 'http://hl7.org/fhir/5.0/StructureDefinition/extension-MedicationStatement.renderedDosageInstruction' ).empty() or %resource.extension.where( url = 'http://hl7.org/fhir/5.0/StructureDefinition/extension-MedicationStatement.renderedDosageInstruction' ).value = %resource.dosage.text ) ) )
FreeTextSingleDosageOnly error MedicationRequest.dosageInstruction Wenn eine Dosierung als reiner Freitext angegeben ist, darf nur genau ein Dosage-Element existieren. ( (%resource.ofType(MedicationRequest).dosageInstruction | %resource.ofType(MedicationDispense).dosageInstruction | %resource.ofType(MedicationStatement).dosage ).exists(text.exists() and timing.empty() and doseAndRate.empty()) ) implies ( (%resource.ofType(MedicationRequest).dosageInstruction | %resource.ofType(MedicationDispense).dosageInstruction | %resource.ofType(MedicationStatement).dosage ).count() = 1 )
FreeTextSingleDosageOnlyWarning warning MedicationRequest.dosageInstruction Wenn eine Dosierung als reiner Freitext angegeben ist, soll nur genau ein Dosage-Element existieren. ( (%resource.ofType(MedicationRequest).dosageInstruction | %resource.ofType(MedicationDispense).dosageInstruction | %resource.ofType(MedicationStatement).dosage ).exists(text.exists() and timing.empty() and doseAndRate.empty()) ) implies ( (%resource.ofType(MedicationRequest).dosageInstruction | %resource.ofType(MedicationDispense).dosageInstruction | %resource.ofType(MedicationStatement).dosage ).count() = 1 )
dom-2 error MedicationRequest If the resource is contained in another resource, it SHALL NOT contain nested Resources contained.contained.empty()
dom-3 error MedicationRequest If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
dom-4 error MedicationRequest If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()
dom-5 error MedicationRequest If a resource is contained in another resource, it SHALL NOT have a security label contained.meta.security.empty()
dom-6 best practice MedicationRequest A resource should have narrative for robust management text.`div`.exists()
ele-1 error **ALL** elements All FHIR elements must have a @value or children hasValue() or (children().count() > id.count())
ext-1 error **ALL** extensions Must have either extensions or value[x], not both extension.exists() != value.exists()
qty-3 error MedicationRequest.extension:multiplePrescription.extension:counter.value[x].numerator, MedicationRequest.extension:multiplePrescription.extension:counter.value[x].denominator If a code for the unit is present, the system SHALL also be present code.empty() or system.exists()

This structure is derived from TIMedicationRequestDgMP

Summary

Must-Support: 1 element
Fixed: 2 elements
Prohibited: 35 elements

Key Elements View

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. MedicationRequest 0..* TIMedicationRequestDgMP Ordering of medication for patient or group
... meta SΣ 0..1 Meta Metadata about the resource
.... versionId SΣ 0..1 id Version specific identifier
.... lastUpdated SΣ 0..1 instant When the resource version last changed
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
... Slices for extension S 0..* Extension Extension
Slice: Unordered, Open by value:url
.... extension:context S 0..1 code Extension
URL: https://gematik.de/fhir/epa-medication/StructureDefinition/context-extension
Binding: Context Codes (required)
.... extension:multiplePrescription S 0..1 (Complex) MultiplePrescription
URL: https://gematik.de/fhir/epa-medication/StructureDefinition/multiple-prescription-extension
..... Slices for extension Content/Rules for all slices
...... extension:indicator S 0..1 Extension Extension
....... extension 0..0 Extension
Slice: Unordered, Open by value:url
....... url 1..1 uri "indicator"
....... value[x] S 1..1 boolean Multiple Prescription Indicator
...... extension:counter S 0..1 Extension Extension
....... extension 0..0 Extension
Slice: Unordered, Open by value:url
....... url 1..1 uri "counter"
....... value[x] S 1..1 Ratio Value of extension
........ numerator SΣC 1..1 Quantity Numerator value
Constraints: qty-3
......... value SΣ 1..1 decimal Multiple Prescription Counter
........ denominator SΣC 1..1 Quantity Denominator value
Constraints: qty-3
......... value SΣ 1..1 decimal Denominator of Multiple Prescription Series
...... extension:period S 0..1 Extension Zeitraum der Einlösefrist
....... extension 0..0 Extension
Slice: Unordered, Open by value:url
....... url 1..1 uri "period"
....... value[x] SC 1..1 Period Value of extension
Constraints: -limitationDateStart, -limitationDateEnd
........ start SΣC 1..1 dateTime Start Date of the Prescription Redemption Period
........ end SΣC 0..1 dateTime End Date of the Prescription Redemption Period
...... extension:id S 0..1 Extension Extension
....... extension 0..0 Extension
Slice: Unordered, Open by value:url
....... url 1..1 uri "id"
....... value[x] S 1..1 Identifier Value of extension
........ system SΣ 0..1 uri Specification as UUID
Fixed Value: urn:ietf:rfc:3986
........ value SΣ 0..1 string Multiple Prescription ID
Example General: 123456
..... url 1..1 uri "https://gematik.de/fhir/epa-medication/StructureDefinition/multiple-prescription-extension"
.... extension:isBvg S 0..1 boolean Extension
URL: https://gematik.de/fhir/epa-medication/StructureDefinition/indicator-bvg-extension
.... extension:isSer S 0..1 boolean Extension
URL: https://gematik.de/fhir/epa-medication/StructureDefinition/indicator-ser-extension
.... extension:prescriberID S 0..1 (Complex) Extension
URL: https://gematik.de/fhir/epa-medication/StructureDefinition/prescriber-id-extension
..... extension 0..0 Extension
Slice: Unordered, Open by value:url
..... url 1..1 uri "https://gematik.de/fhir/epa-medication/StructureDefinition/prescriber-id-extension"
..... value[x] S 1..1 Identifier Value of extension
...... value Σ 1..1 string Verschreiber-ID
Example General: 123456
.... extension:patientID S 0..1 Identifier Extension
URL: https://gematik.de/fhir/epa-medication/StructureDefinition/patient-id-extension
.... extension:narcotics S 0..1 (Complex) Betäubungsmittel (BtM)
URL: https://gematik.de/fhir/epa-medication/StructureDefinition/narcotics-extension
..... Slices for extension S 0..* Extension Extension
Slice: Unordered, Closed by value:url
..... Slices for extension Content/Rules for all slices
...... extension:narcotics-markings S 0..1 Extension Extension
....... extension 0..0 Extension
Slice: Unordered, Open by value:url
....... url 1..1 uri "narcotics-markings"
....... value[x] S 0..1 Coding Value of extension
Binding: https://fhir.kbv.de/ValueSet/KBV_VS_SFHIR_KBV_NARCOTIC_LABEL (required)
Required Pattern: At least the following
........ system SΣ 0..1 uri Identity of the terminology system
Fixed Value: https://fhir.kbv.de/CodeSystem/KBV_CS_SFHIR_KBV_NARCOTIC_LABEL
........ code SΣ 0..1 code Kennzeichen nach § 9 Abs. 1 Nr. 6 BtMVV
...... extension:additional-information-substitutes S 0..1 Extension Extension
....... extension 0..0 Extension
Slice: Unordered, Open by value:url
....... url 1..1 uri "additional-information-substitutes"
....... value[x] S 0..1 string Ergänzende Angaben zu Substitutionsmittel
..... url 1..1 uri "https://gematik.de/fhir/epa-medication/StructureDefinition/narcotics-extension"
.... extension:teratogenic S 0..1 (Complex) T-Rezept
URL: https://gematik.de/fhir/epa-medication/StructureDefinition/teratogenic-extension
.... extension:renderedDosageInstruction SN 0..1 (Complex) Vollständige Darstellung der Dosierungsanweisungen (generiert aus den Dosage-Elementen).
URL: http://hl7.org/fhir/5.0/StructureDefinition/extension-MedicationRequest.renderedDosageInstruction
..... extension 0..0 Additional content defined by implementations
Slice: Unordered, Open by value:url
..... url 1..1 uri "http://hl7.org/fhir/5.0/StructureDefinition/extension-MedicationRequest.renderedDosageInstruction"
..... value[x] S 0..1 markdown Full representation of the dosage instructions
.... extension:generatedDosageInstructionsMeta SN 0..1 (Complex) Metadaten zu den generierten Dosierungsanweisungen
URL: http://ig.fhir.de/igs/medication/StructureDefinition/GeneratedDosageInstructionsMeta
... status ?!SΣ 1..1 code Status of Medication Request
Binding: https://gematik.de/fhir/terminology/ValueSet/ti-medication-request-status-vs (required): A coded concept specifying the state of the prescribing event. Describes the lifecycle of the prescription.
Fixed Value: completed
... intent ?!SΣ 1..1 code filler-order
Binding: medicationRequest Intent (required): The kind of medication order.
Fixed Value: order
... medication[x] SΣ 1..1 Reference(Medication) Medication to be taken
... subject SΣ 1..1 Reference(Patient) Who or group medication request is for
.... identifier SΣ 1..1 IdentifierKvid10 An identifier intended for computation
... authoredOn SΣ 1..1 dateTime Issue Date
... dosageInstruction SC 0..* DosageDgMP Hier werden Informationen zur Dosierung angegeben.
Constraints: DosageStructuredOrFreeTextWarning, DosageStructuredRequiresBoth, DosageDoseUnitSameCode, DosageWarnungViererschemaInText, FreeTextSingleDosageOnlyWarning, DosageStructuredOrFreeText, DosageStructuredRequiresGeneratedText, FreeTextSingleDosageOnly, FreeTextMatchesRenderedText
... dispenseRequest S 0..1 BackboneElement Medication supply authorization
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... quantity S 0..1 SimpleQuantity Amount of medication to supply per dispense
..... value SΣ 1..1 decimal Number of Prescribed Packages
..... unit SΣ 0..1 string Unit representation
..... system SΣC 0..1 uri System that defines coded unit form
Required Pattern: http://unitsofmeasure.org
..... code SΣ 0..1 code Coded form of the unit
.... expectedSupplyDuration S 0..1 Duration Number of days supply per dispense

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
MedicationRequest.extension:narcotics.​extension:narcotics-markings.​value[x] Base required https://fhir.kbv.de/ValueSet/KBV_VS_SFHIR_KBV_NARCOTIC_LABEL Not State Unknown
MedicationRequest.status Base required https://gematik.de/fhir/terminology/ValueSet/ti-medication-request-status-vs Not State Unknown
MedicationRequest.intent Base required Medication request intent 📍4.0.1 FHIR Std.

Constraints

Id Grade Path(s) Description Expression
-limitationDateEnd error MedicationRequest.extension:multiplePrescription.extension:period.value[x] Limitation of the date format to 10 characters YYYY-MM-DD end.exists().not() or end.toString().length()=10
-limitationDateStart error MedicationRequest.extension:multiplePrescription.extension:period.value[x] Limitation of the date format to 10 characters YYYY-MM-DD start.toString().length()=10
DosageDoseUnitSameCode error MedicationRequest.dosageInstruction Die Dosiereinheit muss über alle Dosierungen gleich sein. (%resource.ofType(MedicationRequest).dosageInstruction | %resource.ofType(MedicationDispense).dosageInstruction | %resource.ofType(MedicationStatement).dosage).all( doseAndRate.exists() implies ( (%resource.ofType(MedicationRequest).dosageInstruction | %resource.ofType(MedicationDispense).dosageInstruction | %resource.ofType(MedicationStatement).dosage).doseAndRate.dose.ofType(Quantity).code | (%resource.ofType(MedicationRequest).dosageInstruction | %resource.ofType(MedicationDispense).dosageInstruction | %resource.ofType(MedicationStatement).dosage).doseAndRate.dose.ofType(Range).low.code | (%resource.ofType(MedicationRequest).dosageInstruction | %resource.ofType(MedicationDispense).dosageInstruction | %resource.ofType(MedicationStatement).dosage).doseAndRate.dose.ofType(Range).high.code ).distinct().count() = 1 )
DosageStructuredOrFreeText error MedicationRequest.dosageInstruction Die Dosierungsangabe darf entweder nur als Freitext oder nur als vollständige strukturierte Information erfolgen — eine Mischung ist nicht erlaubt. (%resource.ofType(MedicationRequest).dosageInstruction | %resource.ofType(MedicationDispense).dosageInstruction | %resource.ofType(MedicationStatement).dosage).all( (text.exists() and timing.empty() and doseAndRate.empty()) or (text.empty() and (timing.exists() or doseAndRate.exists())) )
DosageStructuredOrFreeTextWarning warning MedicationRequest.dosageInstruction Die Dosierungsangabe darf entweder nur als Freitext oder nur als vollständige strukturierte Information erfolgen — eine Mischung ist nicht erlaubt. (%resource.ofType(MedicationRequest).dosageInstruction | %resource.ofType(MedicationDispense).dosageInstruction | %resource.ofType(MedicationStatement).dosage).all( (text.exists() and timing.empty() and doseAndRate.empty()) or (text.empty() and (timing.exists() or doseAndRate.exists())) )
DosageStructuredRequiresBoth error MedicationRequest.dosageInstruction Wenn eine strukturierte Dosierungsangabe erfolgt, müssen sowohl timing als auch doseAndRate angegeben werden. (%resource.ofType(MedicationRequest).dosageInstruction | %resource.ofType(MedicationDispense).dosageInstruction | %resource.ofType(MedicationStatement).dosage).all( (timing.exists() implies doseAndRate.exists()) and (doseAndRate.exists() implies timing.exists()) )
DosageStructuredRequiresGeneratedText error MedicationRequest.dosageInstruction Liegt eine strukturierte Dosierungsangabe vor (timing und doseAndRate belegt, text leer), muss die Extension GeneratedDosageInstructionsMeta vorhanden sein. ( (%resource.ofType(MedicationRequest).dosageInstruction | %resource.ofType(MedicationDispense).dosageInstruction | %resource.ofType(MedicationStatement).dosage ).exists(timing.exists() and doseAndRate.exists() and text.empty()) ) implies ( %resource.extension.where( url = 'http://ig.fhir.de/igs/medication/StructureDefinition/GeneratedDosageInstructionsMeta' ).exists() and ( %resource.extension.where( url = 'http://hl7.org/fhir/5.0/StructureDefinition/extension-MedicationRequest.renderedDosageInstruction' ).exists() or %resource.extension.where( url = 'http://hl7.org/fhir/5.0/StructureDefinition/extension-MedicationDispense.renderedDosageInstruction' ).exists() or %resource.extension.where( url = 'http://hl7.org/fhir/5.0/StructureDefinition/extension-MedicationStatement.renderedDosageInstruction' ).exists() ) )
DosageWarnungViererschemaInText warning MedicationRequest.dosageInstruction Hinweis: In Dosage.text wurde ein Viererschema (z. B. 1-1-1-1) erkannt. Bitte prüfen, ob dies strukturiert abgebildet werden kann. text.exists() implies text.matches('.*\\d+\\s*[-–]\\s*\\d+\\s*[-–]\\s*\\d+\\s*[-–]\\d+.*').not()
FreeTextMatchesRenderedText error MedicationRequest.dosageInstruction Wenn eine Dosierung als reiner Freitext angegeben ist (text vorhanden, timing und doseAndRate leer) UND die Extension renderedDosageInstruction befüllt ist, muss der Wert in dosageInstruction.text mit dem Wert in der Extension übereinstimmen. ( (%resource.ofType(MedicationRequest).dosageInstruction | %resource.ofType(MedicationDispense).dosageInstruction | %resource.ofType(MedicationStatement).dosage ).where(text.exists() and timing.empty() and doseAndRate.empty()).exists() ) implies ( ( %resource.ofType(MedicationRequest).exists() and ( %resource.extension.where( url = 'http://hl7.org/fhir/5.0/StructureDefinition/extension-MedicationRequest.renderedDosageInstruction' ).empty() or %resource.extension.where( url = 'http://hl7.org/fhir/5.0/StructureDefinition/extension-MedicationRequest.renderedDosageInstruction' ).value = %resource.dosageInstruction.text ) ) or ( %resource.ofType(MedicationDispense).exists() and ( %resource.extension.where( url = 'http://hl7.org/fhir/5.0/StructureDefinition/extension-MedicationDispense.renderedDosageInstruction' ).empty() or %resource.extension.where( url = 'http://hl7.org/fhir/5.0/StructureDefinition/extension-MedicationDispense.renderedDosageInstruction' ).value = %resource.dosageInstruction.text ) ) or ( %resource.ofType(MedicationStatement).exists() and ( %resource.extension.where( url = 'http://hl7.org/fhir/5.0/StructureDefinition/extension-MedicationStatement.renderedDosageInstruction' ).empty() or %resource.extension.where( url = 'http://hl7.org/fhir/5.0/StructureDefinition/extension-MedicationStatement.renderedDosageInstruction' ).value = %resource.dosage.text ) ) )
FreeTextSingleDosageOnly error MedicationRequest.dosageInstruction Wenn eine Dosierung als reiner Freitext angegeben ist, darf nur genau ein Dosage-Element existieren. ( (%resource.ofType(MedicationRequest).dosageInstruction | %resource.ofType(MedicationDispense).dosageInstruction | %resource.ofType(MedicationStatement).dosage ).exists(text.exists() and timing.empty() and doseAndRate.empty()) ) implies ( (%resource.ofType(MedicationRequest).dosageInstruction | %resource.ofType(MedicationDispense).dosageInstruction | %resource.ofType(MedicationStatement).dosage ).count() = 1 )
FreeTextSingleDosageOnlyWarning warning MedicationRequest.dosageInstruction Wenn eine Dosierung als reiner Freitext angegeben ist, soll nur genau ein Dosage-Element existieren. ( (%resource.ofType(MedicationRequest).dosageInstruction | %resource.ofType(MedicationDispense).dosageInstruction | %resource.ofType(MedicationStatement).dosage ).exists(text.exists() and timing.empty() and doseAndRate.empty()) ) implies ( (%resource.ofType(MedicationRequest).dosageInstruction | %resource.ofType(MedicationDispense).dosageInstruction | %resource.ofType(MedicationStatement).dosage ).count() = 1 )
dom-2 error MedicationRequest If the resource is contained in another resource, it SHALL NOT contain nested Resources contained.contained.empty()
dom-3 error MedicationRequest If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
dom-4 error MedicationRequest If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()
dom-5 error MedicationRequest If a resource is contained in another resource, it SHALL NOT have a security label contained.meta.security.empty()
dom-6 best practice MedicationRequest A resource should have narrative for robust management text.`div`.exists()
ele-1 error **ALL** elements All FHIR elements must have a @value or children hasValue() or (children().count() > id.count())
ext-1 error **ALL** extensions Must have either extensions or value[x], not both extension.exists() != value.exists()
qty-3 error MedicationRequest.extension:multiplePrescription.extension:counter.value[x].numerator, MedicationRequest.extension:multiplePrescription.extension:counter.value[x].denominator If a code for the unit is present, the system SHALL also be present code.empty() or system.exists()

Differential View

This structure is derived from TIMedicationRequestDgMP

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. MedicationRequest TIMedicationRequestDgMP
... extension S 0..* Extension Extension
... identifier 0..0 External ids for this request
... Slices for identifier Content/Rules for all slices
.... identifier:RxPrescriptionProcessIdentifier 0..0 An identifier intended for computation
.... identifier:RxOriginatorProcessIdentifier 0..0 An identifier intended for computation
... status 1..1 code Status of Medication Request
Fixed Value: completed
... statusReason 0..0 Reason for current status
... intent 1..1 code filler-order
Fixed Value: order
... category 0..0 Type of medication usage
... priority 0..0 routine | urgent | asap | stat
... doNotPerform 0..0 True if request is prohibiting action
... reported[x] 0..0 Reported rather than primary record
... subject
.... reference 0..0 Literal reference, Relative, internal or absolute URL
.... type 0..0 Type the reference refers to (e.g. "Patient")
.... display 0..0 Text alternative for the resource
... encounter 0..0 Encounter created as part of encounter/admission/stay
... supportingInformation 0..0 Information to support ordering of the medication
... requester 0..0 Who/What requested the Request
... performer 0..0 Intended performer of administration
... performerType 0..0 Desired kind of performer of the medication administration
... recorder 0..0 Person who entered the request
... reasonCode 0..0 Reason or indication for ordering or not ordering the medication
... reasonReference 0..0 Condition or observation that supports why the prescription is being written
... instantiatesCanonical 0..0 Instantiates FHIR protocol or definition
... instantiatesUri 0..0 Instantiates external protocol or definition
... basedOn 0..0 What request fulfills
... groupIdentifier 0..0 Composite request this is part of
... courseOfTherapyType 0..0 Overall pattern of medication administration
... insurance 0..0 Associated insurance coverage
... note 0..0 Information about the prescription
... dispenseRequest
.... initialFill 0..0 First fill details
.... dispenseInterval 0..0 Minimum period of time between dispenses
.... validityPeriod 0..0 Time period supply is authorized for
.... numberOfRepeatsAllowed 0..0 Number of refills authorized
.... performer 0..0 Intended dispenser
... substitution 0..0 Any restrictions on medication substitution
... priorPrescription 0..0 An order/prescription that is being replaced
... detectedIssue 0..0 Clinical Issue with action
... eventHistory 0..0 A list of events of interest in the lifecycle

doco Documentation for this format

Snapshot View

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. MedicationRequest 0..* TIMedicationRequestDgMP Ordering of medication for patient or group
... id Σ 0..1 id Logical id of this artifact
... meta SΣ 0..1 Meta Metadata about the resource
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
.... versionId SΣ 0..1 id Version specific identifier
.... lastUpdated SΣ 0..1 instant When the resource version last changed
.... source Σ 0..1 uri Identifies where the resource comes from
.... profile Σ 0..* canonical(StructureDefinition) Profiles this resource claims to conform to
.... security Σ 0..* Coding Security Labels applied to this resource
Binding: All Security Labels (extensible): Security Labels from the Healthcare Privacy and Security Classification System.
.... tag Σ 0..* Coding Tags applied to this resource
Binding: CommonTags (example): Codes that represent various types of tags, commonly workflow-related; e.g. "Needs review by Dr. Jones".
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
... text 0..1 Narrative Text summary of the resource, for human interpretation
This profile does not constrain the narrative in regard to content, language, or traceability to data elements
... contained 0..* Resource Contained, inline Resources
... Slices for extension S 0..* Extension Extension
Slice: Unordered, Open by value:url
.... extension:context S 0..1 code Extension
URL: https://gematik.de/fhir/epa-medication/StructureDefinition/context-extension
Binding: Context Codes (required)
.... extension:multiplePrescription S 0..1 (Complex) MultiplePrescription
URL: https://gematik.de/fhir/epa-medication/StructureDefinition/multiple-prescription-extension
..... id 0..1 string Unique id for inter-element referencing
..... Slices for extension 0..* Extension Extension
Slice: Unordered, Closed by value:url
..... Slices for extension Content/Rules for all slices
...... extension:indicator S 0..1 Extension Extension
....... id 0..1 string Unique id for inter-element referencing
....... extension 0..0 Extension
Slice: Unordered, Open by value:url
....... url 1..1 uri "indicator"
....... value[x] S 1..1 boolean Multiple Prescription Indicator
...... extension:counter S 0..1 Extension Extension
....... id 0..1 string Unique id for inter-element referencing
....... extension 0..0 Extension
Slice: Unordered, Open by value:url
....... url 1..1 uri "counter"
....... value[x] S 1..1 Ratio Value of extension
........ id 0..1 string Unique id for inter-element referencing
........ extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
........ numerator SΣC 1..1 Quantity Numerator value
Constraints: qty-3
......... id 0..1 string Unique id for inter-element referencing
......... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
......... value SΣ 1..1 decimal Multiple Prescription Counter
........ denominator SΣC 1..1 Quantity Denominator value
Constraints: qty-3
......... id 0..1 string Unique id for inter-element referencing
......... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
......... value SΣ 1..1 decimal Denominator of Multiple Prescription Series
...... extension:period S 0..1 Extension Zeitraum der Einlösefrist
....... id 0..1 string Unique id for inter-element referencing
....... extension 0..0 Extension
Slice: Unordered, Open by value:url
....... url 1..1 uri "period"
....... value[x] SC 1..1 Period Value of extension
Constraints: -limitationDateStart, -limitationDateEnd
........ id 0..1 string Unique id for inter-element referencing
........ extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
........ start SΣC 1..1 dateTime Start Date of the Prescription Redemption Period
........ end SΣC 0..1 dateTime End Date of the Prescription Redemption Period
...... extension:id S 0..1 Extension Extension
....... id 0..1 string Unique id for inter-element referencing
....... extension 0..0 Extension
Slice: Unordered, Open by value:url
....... url 1..1 uri "id"
....... value[x] S 1..1 Identifier Value of extension
........ id 0..1 string Unique id for inter-element referencing
........ extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
........ system SΣ 0..1 uri Specification as UUID
Fixed Value: urn:ietf:rfc:3986
........ value SΣ 0..1 string Multiple Prescription ID
Example General: 123456
..... url 1..1 uri "https://gematik.de/fhir/epa-medication/StructureDefinition/multiple-prescription-extension"
.... extension:isBvg S 0..1 boolean Extension
URL: https://gematik.de/fhir/epa-medication/StructureDefinition/indicator-bvg-extension
.... extension:isSer S 0..1 boolean Extension
URL: https://gematik.de/fhir/epa-medication/StructureDefinition/indicator-ser-extension
.... extension:prescriberID S 0..1 (Complex) Extension
URL: https://gematik.de/fhir/epa-medication/StructureDefinition/prescriber-id-extension
..... id 0..1 string Unique id for inter-element referencing
..... extension 0..0 Extension
Slice: Unordered, Open by value:url
..... url 1..1 uri "https://gematik.de/fhir/epa-medication/StructureDefinition/prescriber-id-extension"
..... value[x] S 1..1 Identifier Value of extension
...... id 0..1 string Unique id for inter-element referencing
...... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
...... system Σ 0..1 uri The namespace for the identifier value
Example General: http://www.acme.com/identifiers/patient
...... value Σ 1..1 string Verschreiber-ID
Example General: 123456
.... extension:patientID S 0..1 Identifier Extension
URL: https://gematik.de/fhir/epa-medication/StructureDefinition/patient-id-extension
.... extension:narcotics S 0..1 (Complex) Betäubungsmittel (BtM)
URL: https://gematik.de/fhir/epa-medication/StructureDefinition/narcotics-extension
..... id 0..1 string Unique id for inter-element referencing
..... Slices for extension S 0..* Extension Extension
Slice: Unordered, Closed by value:url
..... Slices for extension Content/Rules for all slices
...... extension:narcotics-markings S 0..1 Extension Extension
....... id 0..1 string Unique id for inter-element referencing
....... extension 0..0 Extension
Slice: Unordered, Open by value:url
....... url 1..1 uri "narcotics-markings"
....... value[x] S 0..1 Coding Value of extension
Binding: https://fhir.kbv.de/ValueSet/KBV_VS_SFHIR_KBV_NARCOTIC_LABEL (required)
Required Pattern: At least the following
........ id 0..1 string Unique id for inter-element referencing
........ extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
........ system SΣ 0..1 uri Identity of the terminology system
Fixed Value: https://fhir.kbv.de/CodeSystem/KBV_CS_SFHIR_KBV_NARCOTIC_LABEL
........ version Σ 0..1 string Version of the system - if relevant
........ code SΣ 0..1 code Kennzeichen nach § 9 Abs. 1 Nr. 6 BtMVV
........ display Σ 0..1 string Representation defined by the system
........ userSelected Σ 0..1 boolean If this coding was chosen directly by the user
...... extension:additional-information-substitutes S 0..1 Extension Extension
....... id 0..1 string Unique id for inter-element referencing
....... extension 0..0 Extension
Slice: Unordered, Open by value:url
....... url 1..1 uri "additional-information-substitutes"
....... value[x] S 0..1 string Ergänzende Angaben zu Substitutionsmittel
..... url 1..1 uri "https://gematik.de/fhir/epa-medication/StructureDefinition/narcotics-extension"
.... extension:teratogenic S 0..1 (Complex) T-Rezept
URL: https://gematik.de/fhir/epa-medication/StructureDefinition/teratogenic-extension
.... extension:renderedDosageInstruction SN 0..1 (Complex) Vollständige Darstellung der Dosierungsanweisungen (generiert aus den Dosage-Elementen).
URL: http://hl7.org/fhir/5.0/StructureDefinition/extension-MedicationRequest.renderedDosageInstruction
..... id 0..1 string Unique id for inter-element referencing
..... extension 0..0 Additional content defined by implementations
Slice: Unordered, Open by value:url
..... url 1..1 uri "http://hl7.org/fhir/5.0/StructureDefinition/extension-MedicationRequest.renderedDosageInstruction"
..... value[x] S 0..1 markdown Full representation of the dosage instructions
.... extension:generatedDosageInstructionsMeta SN 0..1 (Complex) Metadaten zu den generierten Dosierungsanweisungen
URL: http://ig.fhir.de/igs/medication/StructureDefinition/GeneratedDosageInstructionsMeta
... modifierExtension ?! 0..* Extension Extensions that cannot be ignored
... status ?!SΣ 1..1 code Status of Medication Request
Binding: https://gematik.de/fhir/terminology/ValueSet/ti-medication-request-status-vs (required): A coded concept specifying the state of the prescribing event. Describes the lifecycle of the prescription.
Fixed Value: completed
... intent ?!SΣ 1..1 code filler-order
Binding: medicationRequest Intent (required): The kind of medication order.
Fixed Value: order
... medication[x] SΣ 1..1 Reference(Medication) Medication to be taken
... subject SΣ 1..1 Reference(Patient) Who or group medication request is for
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
.... identifier SΣ 1..1 IdentifierKvid10 An identifier intended for computation
... authoredOn SΣ 1..1 dateTime Issue Date
... dosageInstruction SC 0..* DosageDgMP Hier werden Informationen zur Dosierung angegeben.
Constraints: DosageStructuredOrFreeTextWarning, DosageStructuredRequiresBoth, DosageDoseUnitSameCode, DosageWarnungViererschemaInText, FreeTextSingleDosageOnlyWarning, DosageStructuredOrFreeText, DosageStructuredRequiresGeneratedText, FreeTextSingleDosageOnly, FreeTextMatchesRenderedText
... dispenseRequest S 0..1 BackboneElement Medication supply authorization
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... quantity S 0..1 SimpleQuantity Amount of medication to supply per dispense
..... id 0..1 string Unique id for inter-element referencing
..... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
..... value SΣ 1..1 decimal Number of Prescribed Packages
..... unit SΣ 0..1 string Unit representation
..... system SΣC 0..1 uri System that defines coded unit form
Required Pattern: http://unitsofmeasure.org
..... code SΣ 0..1 code Coded form of the unit
.... expectedSupplyDuration S 0..1 Duration Number of days supply per dispense

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
MedicationRequest.meta.​security Base extensible SecurityLabels 📦4.0.1 FHIR Std.
MedicationRequest.meta.​tag Base example Common Tags 📦4.0.1 FHIR Std.
MedicationRequest.language Base preferred Common Languages 📦4.0.1 FHIR Std.
MedicationRequest.extension:narcotics.​extension:narcotics-markings.​value[x] Base required https://fhir.kbv.de/ValueSet/KBV_VS_SFHIR_KBV_NARCOTIC_LABEL Not State Unknown
MedicationRequest.status Base required https://gematik.de/fhir/terminology/ValueSet/ti-medication-request-status-vs Not State Unknown
MedicationRequest.intent Base required Medication request intent 📍4.0.1 FHIR Std.
MedicationRequest.basedOn.​type Base extensible ResourceType 📦4.0.1 FHIR Std.
MedicationRequest.substitution.​reason Base example SubstanceAdminSubstitutionReason 📦3.0.0 THO v7.4

Constraints

Id Grade Path(s) Description Expression
-limitationDateEnd error MedicationRequest.extension:multiplePrescription.extension:period.value[x] Limitation of the date format to 10 characters YYYY-MM-DD end.exists().not() or end.toString().length()=10
-limitationDateStart error MedicationRequest.extension:multiplePrescription.extension:period.value[x] Limitation of the date format to 10 characters YYYY-MM-DD start.toString().length()=10
DosageDoseUnitSameCode error MedicationRequest.dosageInstruction Die Dosiereinheit muss über alle Dosierungen gleich sein. (%resource.ofType(MedicationRequest).dosageInstruction | %resource.ofType(MedicationDispense).dosageInstruction | %resource.ofType(MedicationStatement).dosage).all( doseAndRate.exists() implies ( (%resource.ofType(MedicationRequest).dosageInstruction | %resource.ofType(MedicationDispense).dosageInstruction | %resource.ofType(MedicationStatement).dosage).doseAndRate.dose.ofType(Quantity).code | (%resource.ofType(MedicationRequest).dosageInstruction | %resource.ofType(MedicationDispense).dosageInstruction | %resource.ofType(MedicationStatement).dosage).doseAndRate.dose.ofType(Range).low.code | (%resource.ofType(MedicationRequest).dosageInstruction | %resource.ofType(MedicationDispense).dosageInstruction | %resource.ofType(MedicationStatement).dosage).doseAndRate.dose.ofType(Range).high.code ).distinct().count() = 1 )
DosageStructuredOrFreeText error MedicationRequest.dosageInstruction Die Dosierungsangabe darf entweder nur als Freitext oder nur als vollständige strukturierte Information erfolgen — eine Mischung ist nicht erlaubt. (%resource.ofType(MedicationRequest).dosageInstruction | %resource.ofType(MedicationDispense).dosageInstruction | %resource.ofType(MedicationStatement).dosage).all( (text.exists() and timing.empty() and doseAndRate.empty()) or (text.empty() and (timing.exists() or doseAndRate.exists())) )
DosageStructuredOrFreeTextWarning warning MedicationRequest.dosageInstruction Die Dosierungsangabe darf entweder nur als Freitext oder nur als vollständige strukturierte Information erfolgen — eine Mischung ist nicht erlaubt. (%resource.ofType(MedicationRequest).dosageInstruction | %resource.ofType(MedicationDispense).dosageInstruction | %resource.ofType(MedicationStatement).dosage).all( (text.exists() and timing.empty() and doseAndRate.empty()) or (text.empty() and (timing.exists() or doseAndRate.exists())) )
DosageStructuredRequiresBoth error MedicationRequest.dosageInstruction Wenn eine strukturierte Dosierungsangabe erfolgt, müssen sowohl timing als auch doseAndRate angegeben werden. (%resource.ofType(MedicationRequest).dosageInstruction | %resource.ofType(MedicationDispense).dosageInstruction | %resource.ofType(MedicationStatement).dosage).all( (timing.exists() implies doseAndRate.exists()) and (doseAndRate.exists() implies timing.exists()) )
DosageStructuredRequiresGeneratedText error MedicationRequest.dosageInstruction Liegt eine strukturierte Dosierungsangabe vor (timing und doseAndRate belegt, text leer), muss die Extension GeneratedDosageInstructionsMeta vorhanden sein. ( (%resource.ofType(MedicationRequest).dosageInstruction | %resource.ofType(MedicationDispense).dosageInstruction | %resource.ofType(MedicationStatement).dosage ).exists(timing.exists() and doseAndRate.exists() and text.empty()) ) implies ( %resource.extension.where( url = 'http://ig.fhir.de/igs/medication/StructureDefinition/GeneratedDosageInstructionsMeta' ).exists() and ( %resource.extension.where( url = 'http://hl7.org/fhir/5.0/StructureDefinition/extension-MedicationRequest.renderedDosageInstruction' ).exists() or %resource.extension.where( url = 'http://hl7.org/fhir/5.0/StructureDefinition/extension-MedicationDispense.renderedDosageInstruction' ).exists() or %resource.extension.where( url = 'http://hl7.org/fhir/5.0/StructureDefinition/extension-MedicationStatement.renderedDosageInstruction' ).exists() ) )
DosageWarnungViererschemaInText warning MedicationRequest.dosageInstruction Hinweis: In Dosage.text wurde ein Viererschema (z. B. 1-1-1-1) erkannt. Bitte prüfen, ob dies strukturiert abgebildet werden kann. text.exists() implies text.matches('.*\\d+\\s*[-–]\\s*\\d+\\s*[-–]\\s*\\d+\\s*[-–]\\d+.*').not()
FreeTextMatchesRenderedText error MedicationRequest.dosageInstruction Wenn eine Dosierung als reiner Freitext angegeben ist (text vorhanden, timing und doseAndRate leer) UND die Extension renderedDosageInstruction befüllt ist, muss der Wert in dosageInstruction.text mit dem Wert in der Extension übereinstimmen. ( (%resource.ofType(MedicationRequest).dosageInstruction | %resource.ofType(MedicationDispense).dosageInstruction | %resource.ofType(MedicationStatement).dosage ).where(text.exists() and timing.empty() and doseAndRate.empty()).exists() ) implies ( ( %resource.ofType(MedicationRequest).exists() and ( %resource.extension.where( url = 'http://hl7.org/fhir/5.0/StructureDefinition/extension-MedicationRequest.renderedDosageInstruction' ).empty() or %resource.extension.where( url = 'http://hl7.org/fhir/5.0/StructureDefinition/extension-MedicationRequest.renderedDosageInstruction' ).value = %resource.dosageInstruction.text ) ) or ( %resource.ofType(MedicationDispense).exists() and ( %resource.extension.where( url = 'http://hl7.org/fhir/5.0/StructureDefinition/extension-MedicationDispense.renderedDosageInstruction' ).empty() or %resource.extension.where( url = 'http://hl7.org/fhir/5.0/StructureDefinition/extension-MedicationDispense.renderedDosageInstruction' ).value = %resource.dosageInstruction.text ) ) or ( %resource.ofType(MedicationStatement).exists() and ( %resource.extension.where( url = 'http://hl7.org/fhir/5.0/StructureDefinition/extension-MedicationStatement.renderedDosageInstruction' ).empty() or %resource.extension.where( url = 'http://hl7.org/fhir/5.0/StructureDefinition/extension-MedicationStatement.renderedDosageInstruction' ).value = %resource.dosage.text ) ) )
FreeTextSingleDosageOnly error MedicationRequest.dosageInstruction Wenn eine Dosierung als reiner Freitext angegeben ist, darf nur genau ein Dosage-Element existieren. ( (%resource.ofType(MedicationRequest).dosageInstruction | %resource.ofType(MedicationDispense).dosageInstruction | %resource.ofType(MedicationStatement).dosage ).exists(text.exists() and timing.empty() and doseAndRate.empty()) ) implies ( (%resource.ofType(MedicationRequest).dosageInstruction | %resource.ofType(MedicationDispense).dosageInstruction | %resource.ofType(MedicationStatement).dosage ).count() = 1 )
FreeTextSingleDosageOnlyWarning warning MedicationRequest.dosageInstruction Wenn eine Dosierung als reiner Freitext angegeben ist, soll nur genau ein Dosage-Element existieren. ( (%resource.ofType(MedicationRequest).dosageInstruction | %resource.ofType(MedicationDispense).dosageInstruction | %resource.ofType(MedicationStatement).dosage ).exists(text.exists() and timing.empty() and doseAndRate.empty()) ) implies ( (%resource.ofType(MedicationRequest).dosageInstruction | %resource.ofType(MedicationDispense).dosageInstruction | %resource.ofType(MedicationStatement).dosage ).count() = 1 )
dom-2 error MedicationRequest If the resource is contained in another resource, it SHALL NOT contain nested Resources contained.contained.empty()
dom-3 error MedicationRequest If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
dom-4 error MedicationRequest If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()
dom-5 error MedicationRequest If a resource is contained in another resource, it SHALL NOT have a security label contained.meta.security.empty()
dom-6 best practice MedicationRequest A resource should have narrative for robust management text.`div`.exists()
ele-1 error **ALL** elements All FHIR elements must have a @value or children hasValue() or (children().count() > id.count())
ext-1 error **ALL** extensions Must have either extensions or value[x], not both extension.exists() != value.exists()
qty-3 error MedicationRequest.extension:multiplePrescription.extension:counter.value[x].numerator, MedicationRequest.extension:multiplePrescription.extension:counter.value[x].denominator If a code for the unit is present, the system SHALL also be present code.empty() or system.exists()

This structure is derived from TIMedicationRequestDgMP

Summary

Must-Support: 1 element
Fixed: 2 elements
Prohibited: 35 elements

 

Other representations of profile: CSV, Excel, Schematron