FHIR IG Statistics: StructureDefinition/erp-service-request-message-container
Resources that use this resource
Resources that this resource uses
Narrative
No narrative content found in resource
Source
{
"resourceType": "StructureDefinition",
"id": "erp-service-request-message-container",
"url": "https://gematik.de/fhir/erp-servicerequest/StructureDefinition/erp-service-request-message-container",
"version": "1.2.0",
"name": "ERPServiceRequestMessageContainer",
"title": "ERP Service Request Nachrichten-Container",
"status": "active",
"experimental": false,
"date": "2025-07-31",
"publisher": "gematik GmbH",
"description": "Bundle, welches alle Ressourcen einer Nachricht enthält",
"fhirVersion": "4.0.1",
"kind": "resource",
"abstract": false,
"type": "Bundle",
"baseDefinition": "https://gematik.de/fhir/atf/StructureDefinition/atf-message-bundle",
"derivation": "constraint",
"differential": {
"element": [
{
"id": "Bundle",
"path": "Bundle",
"constraint": [
{
"key": "service-request-message-container-1",
"severity": "error",
"human": "Wenn die Nachricht eine Kopie ist, muss der Fokus des MessageHeaders ein Bundle sein, andernfalls ein ServiceRequest.",
"expression": "(Bundle.entry[0].resource.event.code = 'eRezept_Rezeptanforderung;NachrichtKopie' implies (Bundle.entry[0].resource.focus.all($this.resolve() is Bundle))) and (Bundle.entry[0].resource.event.code != 'eRezept_Rezeptanforderung;NachrichtKopie' implies Bundle.entry[0].resource.focus.all($this.resolve() is ServiceRequest))",
"source": "https://gematik.de/fhir/erp-servicerequest/StructureDefinition/erp-service-request-message-container"
},
{
"key": "service-request-message-container-2",
"severity": "error",
"human": "Wenn der Prescription-ServiceRequest den Pflegedienst als Referenz enthält, muss der E-Mail-Kontakt vorhanden sein.",
"expression": "Bundle.entry.resource.children().reference.where($this.startsWith('ServiceRequest')).all(($this.resolve().supportingInfo.where($this.type = 'Organization').exists() and $this.resolve().code.coding.code = 'prescription-request')implies $this.resolve().supportingInfo.where($this.type = 'Organization').reference.resolve().contact.telecom.where(system = 'email').exists())",
"source": "https://gematik.de/fhir/erp-servicerequest/StructureDefinition/erp-service-request-message-container"
},
{
"key": "service-request-message-container-3",
"severity": "error",
"human": "Wenn der Prescription-ServiceRequest den Pflegedienst als Referenz enthält, muss die Organisation den entsprechenden Typ haben.",
"expression": "Bundle.entry.resource.children().reference.where($this.startsWith('ServiceRequest')).all(($this.resolve().code.coding.code = 'prescription-request' and $this.resolve().supportingInfo.where($this.type = 'Organization').exists()) implies $this.resolve().supportingInfo.where($this.type = 'Organization').reference.resolve().type.coding.code = '1.2.276.0.76.4.245')",
"source": "https://gematik.de/fhir/erp-servicerequest/StructureDefinition/erp-service-request-message-container"
},
{
"key": "service-request-message-container-4",
"severity": "error",
"human": "Wenn der Prescription-ServiceRequest aktiv ist, nicht Zyto ist und der Anforderer eine Apotheke ist, muss der Pflegedienst für den Erhalt einer Kopie angegeben werden.",
"expression": "(Bundle.entry[0].resource.event.code != 'eRezept_ParenteraleZubereitung;Rezeptanfrage') implies Bundle.entry.resource.children().reference.where($this.startsWith('ServiceRequest')).all(($this.resolve().code.coding.code = 'prescription-request' and $this.resolve().status = 'active' and $this.resolve().requester.resolve().type.coding.code = '1.2.276.0.76.4.54') implies $this.resolve().supportingInfo.where($this.type = 'Organization').exists())",
"source": "https://gematik.de/fhir/erp-servicerequest/StructureDefinition/erp-service-request-message-container"
},
{
"key": "service-request-message-container-5",
"severity": "error",
"human": "Wenn der Dispense-ServiceRequest aktiv ist, muss der Anforderer ein Pflegedienst sein.",
"expression": "Bundle.entry.resource.children().reference.where($this.startsWith('ServiceRequest')).all(($this.resolve().code.coding.code = 'dispense-request' and $this.resolve().status = 'active') implies $this.resolve().requester.resolve().type.coding.code = '1.2.276.0.76.4.245')",
"source": "https://gematik.de/fhir/erp-servicerequest/StructureDefinition/erp-service-request-message-container"
}
]
},
{
"id": "Bundle.entry:MessageHeader",
"path": "Bundle.entry",
"sliceName": "MessageHeader"
},
{
"id": "Bundle.entry:MessageHeader.resource",
"path": "Bundle.entry.resource",
"type": [
{
"code": "MessageHeader",
"profile": [
"https://gematik.de/fhir/erp-servicerequest/StructureDefinition/erp-service-request-request-header"
]
}
]
}
]
}
}