{
"description": "Ressource used for the communication of dispense request between patient/representative and provider based on ePrescription",
"_filename": "StructureDefinition-GEM-ERP-PR-Communication-DispReq.json",
"package_name": "de.gematik.erezept-workflow.r4",
"date": "2025-02-28",
"derivation": "constraint",
"publisher": null,
"fhirVersion": "4.0.1",
"name": "GEM_ERP_PR_Communication_DispReq",
"abstract": false,
"type": "Communication",
"experimental": null,
"resourceType": "StructureDefinition",
"title": "Request for Dispense of ePrescription",
"package_version": "1.5.0-rc2",
"status": "draft",
"id": "e8b10f6b-599d-4e2a-99fc-a20119005ed9",
"kind": "resource",
"url": "https://gematik.de/fhir/erp/StructureDefinition/GEM_ERP_PR_Communication_DispReq",
"version": "1.5.0",
"differential": {
"element": [ {
"id": "Communication",
"path": "Communication",
"constraint": [ {
"key": "workflow-communication-payload-1",
"human": "Payload muss angegeben werden, wenn eine Zuweisung für ein Arzneimittel vorgenommen wird",
"source": "https://gematik.de/fhir/erp/StructureDefinition/GEM_ERP_PR_Communication_DispReq",
"severity": "error",
"expression": "(extension.where(url = 'https://gematik.de/fhir/erp/StructureDefinition/GEM_ERP_EX_PrescriptionType').value.code = '162' implies payload.exists().not()) and (extension.where(url = 'https://gematik.de/fhir/erp/StructureDefinition/GEM_ERP_EX_PrescriptionType').value.code != '162' implies payload.exists() and payload.empty().not())"
}, {
"key": "workflow-communication-flowtype-1",
"human": "Der flowType einer Zuweisung muss zu einem Task mit entsprechender Task-ID passen",
"source": "https://gematik.de/fhir/erp/StructureDefinition/GEM_ERP_PR_Communication_DispReq",
"severity": "error",
"expression": "basedOn.reference.startsWith(('Task/' | %resource.extension.where(url = 'https://gematik.de/fhir/erp/StructureDefinition/GEM_ERP_EX_PrescriptionType').value.code).join())"
} ]
}, {
"id": "Communication.meta",
"min": 1,
"path": "Communication.meta",
"mustSupport": true
}, {
"id": "Communication.meta.profile",
"max": "1",
"min": 1,
"path": "Communication.meta.profile",
"slicing": {
"rules": "closed",
"ordered": false,
"description": "Slicing for meta profile",
"discriminator": [ {
"path": "$this",
"type": "value"
} ]
},
"mustSupport": true
}, {
"id": "Communication.meta.profile:workflowProfile",
"max": "1",
"min": 1,
"path": "Communication.meta.profile",
"sliceName": "workflowProfile",
"mustSupport": true,
"fixedCanonical": "https://gematik.de/fhir/erp/StructureDefinition/GEM_ERP_PR_Communication_DispReq|1.5"
}, {
"id": "Communication.extension",
"min": 1,
"path": "Communication.extension"
}, {
"id": "Communication.extension:flowType",
"max": "1",
"min": 1,
"path": "Communication.extension",
"type": [ {
"code": "Extension",
"profile": [ "https://gematik.de/fhir/erp/StructureDefinition/GEM_ERP_EX_PrescriptionType" ]
} ],
"sliceName": "flowType"
}, {
"id": "Communication.basedOn",
"max": "1",
"min": 1,
"path": "Communication.basedOn",
"type": [ {
"code": "Reference",
"aggregation": [ "referenced" ],
"targetProfile": [ "https://gematik.de/fhir/erp/StructureDefinition/GEM_ERP_PR_Task" ]
} ],
"mustSupport": true
}, {
"id": "Communication.basedOn.reference",
"min": 1,
"path": "Communication.basedOn.reference",
"short": "States the E-Rezept-Token according to gemSpec_DM_eRp.",
"comment": "Has the form \"Task/{{PrescriptionID}}\"",
"mustSupport": true
}, {
"id": "Communication.status",
"path": "Communication.status",
"fixedCode": "unknown"
}, {
"id": "Communication.sent",
"path": "Communication.sent",
"short": "The time when this communication was sent.",
"comment": "Set by the eprescription server. A client therefore will always have this value available.",
"mustSupport": true
}, {
"id": "Communication.received",
"path": "Communication.received",
"short": "The time when this communication was received.",
"comment": "Set by the eprescription server. A client therefore will always have this value available.",
"mustSupport": true
}, {
"id": "Communication.recipient",
"max": "1",
"min": 1,
"path": "Communication.recipient",
"short": "The entity (e.g. person, organization) which was the target of the communication.",
"comment": "This needs to be set by the sender of the communication to define the target.",
"mustSupport": true
}, {
"id": "Communication.recipient.identifier",
"min": 1,
"path": "Communication.recipient.identifier",
"type": [ {
"code": "Identifier",
"profile": [ "http://fhir.de/StructureDefinition/identifier-telematik-id" ]
} ],
"mustSupport": true
}, {
"id": "Communication.sender",
"path": "Communication.sender",
"short": "The entity (e.g. person, organization) which was the source of the communication.",
"comment": "Set by ePrescription server using client AuthN-Credential",
"mustSupport": true
}, {
"id": "Communication.sender.identifier",
"min": 1,
"path": "Communication.sender.identifier",
"type": [ {
"code": "Identifier",
"profile": [ "http://fhir.de/StructureDefinition/identifier-kvid-10" ]
} ],
"mustSupport": true
}, {
"id": "Communication.payload",
"max": "1",
"path": "Communication.payload",
"mustSupport": true
}, {
"id": "Communication.payload.extension",
"path": "Communication.payload.extension",
"slicing": {
"rules": "closed",
"description": "Extensions are always sliced by (at least) url",
"discriminator": [ {
"path": "url",
"type": "value"
} ]
}
}, {
"id": "Communication.payload.content[x]",
"path": "Communication.payload.content[x]",
"type": [ {
"code": "string"
} ],
"short": "The actual content of the message",
"comment": "This content needs to be a JSON according to gemSpec_DM_eRp."
} ]
},
"baseDefinition": "http://hl7.org/fhir/StructureDefinition/Communication"
}