CH EMED EPR
2.0.1-ci-build - ci-build Switzerland flag

CH EMED EPR, published by CARA. This guide is not an authorized publication; it is the continuous build for version 2.0.1-ci-build built by the FHIR (HL7® FHIR® Standard) CI Build. This version is based on the current content of https://github.com/CARA-ch/ch-emed-epr/ and changes regularly. See the Directory of published versions

Resource Profile: DIS MedicationDispense

Official URL: http://fhir.ch/ig/ch-emed-epr/StructureDefinition/ch-emed-epr-medicationdispense Version: 2.0.1-ci-build
Draft as of 2025-01-23 Computable Name: CHEMEDEPRMedicationDispense

Copyright/Legal: CC0-1.0

Definition of the medication dispense for the medication dispense document

Usage:

Formal Views of Profile Content

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

NameFlagsCard.TypeDescription & Constraintsdoco
.. MedicationDispense C 0..* CHEMEDMedicationDispense CH EMED MedicationDispense (DIS)
dom-2: If the resource is contained in another resource, it SHALL NOT contain nested Resources
dom-3: 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
dom-4: If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated
dom-5: If a resource is contained in another resource, it SHALL NOT have a security label
dom-6: A resource should have narrative for robust management
mdd-1: whenHandedOver cannot be before whenPrepared
ch-dosage-meddis: If one dosage element is present, it should not have a sequence number. If more than one dosage element is present, the base entry has the sequence number 1.
split-dosage-instruction-unit-must-match-base-dosage-instruction: The unit for doseAndRate of different dosages (split dosage) belonging to the same statement/request/dispense must match.
... contained 1..* Resource Contained, inline Resources
... Slices for extension 1..* Extension Extension
Slice: Unordered, Open by value:url
ele-1: All FHIR elements must have a @value or children
ext-1: Must have either extensions or value[x], not both
.... treatmentReason 0..* string Treatment reason
URL: http://fhir.ch/ig/ch-emed/StructureDefinition/ch-emed-ext-treatmentreason
ele-1: All FHIR elements must have a @value or children
ext-1: Must have either extensions or value[x], not both
.... prescription 0..1 (Complex) Reference to te medication prescription. This item is mandantory if the treatment has already been prescribed.
URL: http://fhir.ch/ig/ch-emed/StructureDefinition/ch-emed-ext-prescription
ele-1: All FHIR elements must have a @value or children
ext-1: Must have either extensions or value[x], not both
.... pharmaceuticalAdvice D 0..1 (Complex) ✕ This element is not supported
URL: http://fhir.ch/ig/ch-emed/StructureDefinition/ch-emed-ext-pharmaceuticaladvice
ele-1: All FHIR elements must have a @value or children
ext-1: Must have either extensions or value[x], not both
.... treatmentPlan 1..1 (Complex) CH EMED Extension
URL: http://fhir.ch/ig/ch-emed/StructureDefinition/ch-emed-ext-treatmentplan
ele-1: All FHIR elements must have a @value or children
ext-1: Must have either extensions or value[x], not both
... identifier 1..1 Identifier MedicationDispense Identifier
ele-1: All FHIR elements must have a @value or children
.... use ?!Σ 0..1 code usual | official | temp | secondary | old (If known)
Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known .


ele-1: All FHIR elements must have a @value or children
.... system Σ 1..1 uri The namespace for the identifier value
ele-1: All FHIR elements must have a @value or children
Fixed Value: urn:ietf:rfc:3986
.... value Σ 1..1 string Identifier value as UUID
ele-1: All FHIR elements must have a @value or children
Example General: 123456
Example CH EMED: urn:uuid:daa8cd41-34a1-4a9c-9a6d-cd3f850142e9
... status ?!Σ 1..1 code preparation | in-progress | cancelled | on-hold | completed | entered-in-error | stopped | declined | unknown
Binding: MedicationDispense Status Codes (required): A coded concept specifying the state of the dispense event.


ele-1: All FHIR elements must have a @value or children
Fixed Value: completed
... statusReason[x] D 0..1 ✕ This is only meaningful when the dispense was not performed
Binding: MedicationDispense Status Reason Codes (example): A code describing why a dispense was not performed.


ele-1: All FHIR elements must have a @value or children
.... statusReasonCodeableConcept CodeableConcept
.... statusReasonReference Reference(DetectedIssue)
... category D 0..1 CodeableConcept ✕ This element is not supported
Binding: MedicationDispense Category Codes (preferred): A code describing where the dispensed medication is expected to be consumed or administered.


ele-1: All FHIR elements must have a @value or children
... Slices for medication[x] Σ 1..1 Reference(CH Core Medication(6.0.0-ballot-ci-build)) What medication was supplied
Slice: Unordered, Closed by type:$this
ele-1: All FHIR elements must have a @value or children
.... medication[x]:medicationReference Σ 0..1 Reference(CH EMED EPR Medication (DIS)) {c} Reference to the contained medication
ele-1: All FHIR elements must have a @value or children
... subject Σ 0..1 Reference(CH EMED EPR Patient) {r, b} Patient
ele-1: All FHIR elements must have a @value or children
.... reference ΣC 1..1 string Literal reference, Relative, internal or absolute URL
ele-1: All FHIR elements must have a @value or children
... context D 0..1 Reference(Encounter | EpisodeOfCare) ✕ This element is not supported
ele-1: All FHIR elements must have a @value or children
... supportingInformation D 0..* Reference(Resource) ✕ This element is not supported
ele-1: All FHIR elements must have a @value or children
... performer 1..1 BackboneElement Who performed event
ele-1: All FHIR elements must have a @value or children
.... actor 1..1 Reference(CH EMED PractitionerRole) The author of the medical decision, see also 'Guidance - Authorship'
ele-1: All FHIR elements must have a @value or children
..... reference ΣC 1..1 string Literal reference, Relative, internal or absolute URL
ele-1: All FHIR elements must have a @value or children
... location D 0..1 Reference(Location) ✕ This element is not supported
ele-1: All FHIR elements must have a @value or children
... authorizingPrescription D 0..* Reference(MedicationRequest) ✕ This element is not supported
ele-1: All FHIR elements must have a @value or children
... type D 0..1 CodeableConcept ✕ This element is not supported
Binding: ActPharmacySupplyType (example): Indicates the type of dispensing event that is performed. For example, Trial Fill, Completion of Trial, Partial Fill, Emergency Fill, Samples, etc.


ele-1: All FHIR elements must have a @value or children
... quantity 1..1 CHEMEDEPRAmountQuantity Number of packages
ele-1: All FHIR elements must have a @value or children
... daysSupply D 0..1 CHEMEDEPRTimeQuantity ✕ This element is not supported
ele-1: All FHIR elements must have a @value or children
... whenPrepared ΣD 0..1 dateTime ✕ This element is not supported
ele-1: All FHIR elements must have a @value or children
... whenHandedOver 1..1 dateTime When product was given out
ele-1: All FHIR elements must have a @value or children
... destination D 0..1 Reference(Location) ✕ This element is not supported
ele-1: All FHIR elements must have a @value or children
... receiver D 0..* Reference(Patient | Practitioner) ✕ This element is not supported
ele-1: All FHIR elements must have a @value or children
... Slices for dosageInstruction 1..* CHCoreDosage(6.0.0-ballot-ci-build) How the medication should be taken
Slice: Unordered, Closed by profile:$this
ele-1: All FHIR elements must have a @value or children
.... dosageInstruction:baseEntry C 1..1 CHEMEDEPRDosage Base entry of the dosage instruction
ele-1: All FHIR elements must have a @value or children
ch-dosage-4: For split dosage timing event and dose/rate are required
.... dosageInstruction:additionalEntry 0..* CHEMEDEPRDosageSplit Additional entry of the dosage instruction
ele-1: All FHIR elements must have a @value or children
... detectedIssue D 0..* Reference(DetectedIssue) ✕ This element is not supported
ele-1: All FHIR elements must have a @value or children
... eventHistory D 0..* Reference(Provenance) ✕ This element is not supported
ele-1: All FHIR elements must have a @value or children

doco Documentation for this format

Terminology Bindings

PathConformanceValueSet / CodeURI
MedicationDispense.identifier.userequiredIdentifierUse
http://hl7.org/fhir/ValueSet/identifier-use|4.0.1
from the FHIR Standard
MedicationDispense.statusrequiredFixed Value: completed
http://hl7.org/fhir/ValueSet/medicationdispense-status|4.0.1
from the FHIR Standard
MedicationDispense.statusReason[x]exampleMedicationDispense Status Reason Codes
http://hl7.org/fhir/ValueSet/medicationdispense-status-reason
from the FHIR Standard
MedicationDispense.categorypreferredMedicationDispense Category Codes
http://hl7.org/fhir/ValueSet/medicationdispense-category
from the FHIR Standard
MedicationDispense.typeexampleActPharmacySupplyType
http://terminology.hl7.org/ValueSet/v3-ActPharmacySupplyType

Constraints

IdGradePath(s)DetailsRequirements
ch-dosage-4errorMedicationDispense.dosageInstruction:baseEntryFor split dosage timing event and dose/rate are required
: sequence.exists() implies (timing.repeat.when.exists() and doseAndRate.dose.exists())
ch-dosage-meddiserrorMedicationDispenseIf one dosage element is present, it should not have a sequence number. If more than one dosage element is present, the base entry has the sequence number 1.
: (dosageInstruction.count() > 1 implies dosageInstruction.where($this.conformsTo('http://fhir.ch/ig/ch-emed/StructureDefinition/ch-emed-dosage') and sequence = 1).exists()) and (dosageInstruction.count() = 1 implies dosageInstruction.single().sequence.exists().not())
dom-2errorMedicationDispenseIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorMedicationDispenseIf 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-4errorMedicationDispenseIf 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-5errorMedicationDispenseIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6best practiceMedicationDispenseA resource should have narrative for robust management
: text.`div`.exists()
ele-1error**ALL** elementsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1error**ALL** extensionsMust have either extensions or value[x], not both
: extension.exists() != value.exists()
mdd-1errorMedicationDispensewhenHandedOver cannot be before whenPrepared
: whenHandedOver.empty() or whenPrepared.empty() or whenHandedOver >= whenPrepared
split-dosage-instruction-unit-must-match-base-dosage-instructionerrorMedicationDispenseThe unit for doseAndRate of different dosages (split dosage) belonging to the same statement/request/dispense must match.
: (dosageInstruction.count() > 1) implies dosageInstruction.doseAndRate.dose.ofType(Quantity).code.union(dosageInstruction.doseAndRate.dose.ofType(Range).low.code).union(dosageInstruction.doseAndRate.dose.ofType(Range).high.code).union(dosageInstruction.doseAndRate.rate.numerator.code).count() = 1

 

Other representations of profile: CSV, Excel, Schematron