FHIR IG Statistics: StructureDefinition/erp-service-request-dispense-request
Resources that use this resource
Resources that this resource uses
Narrative
No narrative content found in resource
Source
{
"resourceType": "StructureDefinition",
"id": "erp-service-request-dispense-request",
"url": "https://gematik.de/fhir/erp-servicerequest/StructureDefinition/erp-service-request-dispense-request",
"version": "1.2.0",
"name": "ERPServiceRequestDispenseRequest",
"title": "ERP Service Request Abgabeanforderung",
"status": "active",
"experimental": false,
"date": "2025-07-31",
"publisher": "gematik GmbH",
"description": "ServiceRequest, der zur Abgabe eines Rezepts verwendet wird",
"fhirVersion": "4.0.1",
"kind": "resource",
"abstract": false,
"type": "ServiceRequest",
"baseDefinition": "http://hl7.org/fhir/StructureDefinition/ServiceRequest",
"derivation": "constraint",
"differential": {
"element": [
{
"id": "ServiceRequest",
"path": "ServiceRequest",
"constraint": [
{
"key": "servicerequest-dispense-request-1",
"severity": "error",
"human": "Wenn der Status aktiv ist, muss der Anforderer vorhanden sein.",
"expression": "status = 'active' implies requester.exists()",
"source": "https://gematik.de/fhir/erp-servicerequest/StructureDefinition/erp-service-request-dispense-request"
},
{
"key": "servicerequest-dispense-request-2",
"severity": "error",
"human": "Wenn der Status aktiv ist, muss der E-Rezept-Token vorhanden sein.",
"expression": "status = 'active' implies extension.where(url = 'https://gematik.de/fhir/erp-servicerequest/StructureDefinition/eprescription-token-ex').exists()",
"source": "https://gematik.de/fhir/erp-servicerequest/StructureDefinition/erp-service-request-dispense-request"
},
{
"key": "servicerequest-dispense-request-3",
"severity": "error",
"human": "Wenn der Status abgeschlossen ist, müssen die Abgabedaten vorhanden sein.",
"expression": "status = 'completed' implies supportingInfo.where(type='MedicationDispense').exists()",
"source": "https://gematik.de/fhir/erp-servicerequest/StructureDefinition/erp-service-request-dispense-request"
},
{
"key": "servicerequest-dispense-request-4",
"severity": "error",
"human": "Wenn der Code für den Liefertyp 'alternative-address' ist, muss die Adresse angegeben werden.",
"expression": "(status = 'active' and code.coding.where(system='https://gematik.de/fhir/erp-servicerequest/CodeSystem/delivery-type-cs').exists() and code.coding.where(system='https://gematik.de/fhir/erp-servicerequest/CodeSystem/delivery-type-cs').code = 'delivery-to-alternative-address') implies (extension.where(url = 'https://gematik.de/fhir/erp-servicerequest/StructureDefinition/alternative-delivery-address-ex').exists() and extension.where(url = 'https://gematik.de/fhir/erp-servicerequest/StructureDefinition/alternative-delivery-address-ex').value.empty().not())",
"source": "https://gematik.de/fhir/erp-servicerequest/StructureDefinition/erp-service-request-dispense-request"
}
]
},
{
"id": "ServiceRequest.extension",
"path": "ServiceRequest.extension",
"slicing": {
"discriminator": [
{
"type": "value",
"path": "url"
}
],
"ordered": false,
"rules": "open"
},
"mustSupport": true
},
{
"id": "ServiceRequest.extension:EPrescriptionToken",
"path": "ServiceRequest.extension",
"sliceName": "EPrescriptionToken",
"short": "The e-prescription token for delivery to the pharmacy can be provided here.",
"comment": "The token is of the form '/Task/{PrescriptionID}/$accept?ac={AccessCode}. See [gemSpec_DM_eRp](https://fachportal.gematik.de/fachportal-import/files/gemSpec_DM_eRp_V1.5.0.pdf)'.",
"min": 0,
"max": "1",
"type": [
{
"code": "Extension",
"profile": [
"https://gematik.de/fhir/erp-servicerequest/StructureDefinition/eprescription-token-ex"
]
}
],
"mustSupport": true
},
{
"id": "ServiceRequest.extension:alternativeDeliveryAddress",
"path": "ServiceRequest.extension",
"sliceName": "alternativeDeliveryAddress",
"short": "Alternative delivery address.",
"definition": "If the ServiceRequest states that the delivery should be delivered to an alternative address, it must be stated here.",
"min": 0,
"max": "1",
"type": [
{
"code": "Extension",
"profile": [
"https://gematik.de/fhir/erp-servicerequest/StructureDefinition/alternative-delivery-address-ex"
]
}
],
"mustSupport": true
},
{
"id": "ServiceRequest.modifierExtension",
"path": "ServiceRequest.modifierExtension",
"slicing": {
"discriminator": [
{
"type": "value",
"path": "url"
}
],
"ordered": false,
"rules": "open"
}
},
{
"id": "ServiceRequest.modifierExtension:medicationChanged",
"path": "ServiceRequest.modifierExtension",
"sliceName": "medicationChanged",
"short": "Indicates whether the medication has been changed by the pharmacy.",
"definition": "If the medication has been changed, the value is set to true.",
"comment": "If the medication has been changed, the receiving system must display the changed medication to the receiving user.",
"min": 0,
"max": "1",
"type": [
{
"code": "Extension",
"profile": [
"https://gematik.de/fhir/erp-servicerequest/StructureDefinition/changed-medication-ex"
]
}
],
"mustSupport": true,
"isModifierReason": "If the medication has been changed, the receiving system must display the changed medication to the receiving user."
},
{
"id": "ServiceRequest.identifier",
"path": "ServiceRequest.identifier",
"slicing": {
"discriminator": [
{
"type": "pattern",
"path": "system"
}
],
"rules": "open",
"description": "Defines identifiers to be used in a process"
},
"min": 1,
"mustSupport": true
},
{
"id": "ServiceRequest.identifier:requestId",
"path": "ServiceRequest.identifier",
"sliceName": "requestId",
"short": "Identifier that uniquely references a ServiceRequest.",
"comment": "For referencing and assignment of ServiceRequest, e.g. if one ServiceRequest is to replace another, it is important to be able to make this assignment with the identifier. Can be mapped via a UUID, for example.",
"min": 1,
"max": "1",
"type": [
{
"code": "Identifier",
"profile": [
"https://gematik.de/fhir/erp-servicerequest/StructureDefinition/erp-service-request-request-identifier"
]
}
]
},
{
"id": "ServiceRequest.requisition",
"path": "ServiceRequest.requisition",
"short": "Identifier of the process. All ServiceRequests within a process receive the same ID.",
"comment": "Is to be understood as a case or process ID in order to be able to track which request the ServiceRequest belongs to.",
"min": 1,
"type": [
{
"code": "Identifier",
"profile": [
"https://gematik.de/fhir/erp-servicerequest/StructureDefinition/erp-service-request-procedure-identifier"
]
}
],
"mustSupport": true
},
{
"id": "ServiceRequest.status",
"path": "ServiceRequest.status",
"short": "Indicates the processing status of a service request.",
"comment": "If the status changes, this value is overwritten.",
"mustSupport": true,
"binding": {
"strength": "required",
"valueSet": "https://gematik.de/fhir/erp-servicerequest/ValueSet/service-request-status-vs"
}
},
{
"id": "ServiceRequest.intent",
"path": "ServiceRequest.intent",
"fixedCode": "filler-order"
},
{
"id": "ServiceRequest.priority",
"path": "ServiceRequest.priority",
"short": "Indicates the urgency of the request.",
"definition": "The priority can be used to indicate the urgency of the request.",
"comment": "Allowed values: routine | urgent",
"mustSupport": true,
"binding": {
"strength": "required",
"valueSet": "https://gematik.de/fhir/erp-servicerequest/ValueSet/service-request-priority-vs"
}
},
{
"id": "ServiceRequest.code",
"path": "ServiceRequest.code",
"short": "Indicates the type of service request.",
"min": 1,
"mustSupport": true
},
{
"id": "ServiceRequest.code.coding",
"path": "ServiceRequest.code.coding",
"slicing": {
"discriminator": [
{
"type": "pattern",
"path": "$this"
}
],
"rules": "open",
"description": "Differentiates between the service request type and additional information.",
"ordered": false
},
"min": 1,
"mustSupport": true
},
{
"id": "ServiceRequest.code.coding:request-type",
"path": "ServiceRequest.code.coding",
"sliceName": "request-type",
"short": "Indicates the type of service request.",
"min": 1,
"max": "1",
"patternCoding": {
"code": "dispense-request",
"system": "https://gematik.de/fhir/erp-servicerequest/CodeSystem/service-request-type-cs"
},
"mustSupport": true,
"binding": {
"strength": "required",
"valueSet": "https://gematik.de/fhir/erp-servicerequest/ValueSet/service-request-type-vs"
}
},
{
"id": "ServiceRequest.code.coding:request-type.system",
"path": "ServiceRequest.code.coding.system",
"min": 1
},
{
"id": "ServiceRequest.code.coding:request-type.code",
"path": "ServiceRequest.code.coding.code",
"comment": "#dispense-request serves as a service request for a pharmacy to deliver a prescription.",
"min": 1
},
{
"id": "ServiceRequest.code.coding:delivery-type",
"path": "ServiceRequest.code.coding",
"sliceName": "delivery-type",
"short": "Indicates how the delivery should be made.",
"definition": "The delivery type can be used to indicate how the delivery should be made. The following options are available: pickup-by-healthcare-service, pickup-by-patient, delivery-to-healthcare-service, delivery-to-alternative-address.",
"comment": "If the delivery type is delivery-to-alternative-address, the alternative address must be specified in location.",
"min": 0,
"max": "1",
"mustSupport": true,
"binding": {
"strength": "required",
"valueSet": "https://gematik.de/fhir/erp-servicerequest/ValueSet/delivery-type-vs"
}
},
{
"id": "ServiceRequest.code.coding:delivery-type.system",
"path": "ServiceRequest.code.coding.system",
"min": 1
},
{
"id": "ServiceRequest.code.coding:delivery-type.code",
"path": "ServiceRequest.code.coding.code",
"min": 1
},
{
"id": "ServiceRequest.subject",
"path": "ServiceRequest.subject",
"short": "Patient for whom a dispense is requested on behalf of the patient.",
"type": [
{
"code": "Reference",
"targetProfile": [
"https://gematik.de/fhir/erp-servicerequest/StructureDefinition/erp-service-request-patient"
]
}
],
"mustSupport": true
},
{
"id": "ServiceRequest.occurrence[x]",
"path": "ServiceRequest.occurrence[x]",
"short": "Indicates the date when the medication should be delivered.",
"type": [
{
"code": "dateTime"
}
],
"mustSupport": true
},
{
"id": "ServiceRequest.authoredOn",
"path": "ServiceRequest.authoredOn",
"short": "Creation date of the request.",
"comment": "Is initially created and then no longer changed.",
"min": 1,
"mustSupport": true
},
{
"id": "ServiceRequest.requester",
"path": "ServiceRequest.requester",
"short": "Inquiring facility or practitioner.",
"comment": "The KIM address is already stored in the message header.",
"type": [
{
"code": "Reference",
"targetProfile": [
"https://gematik.de/fhir/erp-servicerequest/StructureDefinition/erp-service-request-organization"
]
}
],
"mustSupport": true
},
{
"id": "ServiceRequest.supportingInfo",
"path": "ServiceRequest.supportingInfo",
"slicing": {
"discriminator": [
{
"type": "pattern",
"path": "type"
}
],
"rules": "open",
"description": "Supporting information about dispense"
},
"mustSupport": true
},
{
"id": "ServiceRequest.supportingInfo:AbgabeDaten",
"path": "ServiceRequest.supportingInfo",
"sliceName": "AbgabeDaten",
"min": 0,
"max": "1",
"type": [
{
"code": "Reference",
"targetProfile": [
"https://gematik.de/fhir/erp-servicerequest/StructureDefinition/erp-service-request-medication-dispense"
]
}
],
"mustSupport": true
},
{
"id": "ServiceRequest.supportingInfo:AbgabeDaten.type",
"path": "ServiceRequest.supportingInfo.type",
"short": "Dispense data that is also sent to the e-prescription server.",
"min": 1,
"fixedUri": "MedicationDispense"
},
{
"id": "ServiceRequest.note",
"path": "ServiceRequest.note",
"short": "Further information on the dispense request.",
"comment": "Any use cases that are not specified can be placed here in free text.",
"mustSupport": true
},
{
"id": "ServiceRequest.note.time",
"path": "ServiceRequest.note.time",
"comment": "This is used in order to sort the Annotations",
"min": 1,
"mustSupport": true
}
]
}
}