CH EMED EPR
2.0.0 - trial-use Switzerland flag

This page is part of the FHIR eMedication exchange formats for the implementation effort of CARA within its EPR community (v2.0.0: STU2) based on FHIR (HL7® FHIR® Standard) R4. This is the current published version. For a full list of available versions, see the Directory of published versions

Resource Profile: PML MedicationDispense

Official URL: http://fhir.ch/ig/ch-emed-epr/StructureDefinition/ch-emed-epr-medicationdispense-list Version: 2.0.0
Draft as of 2025-01-21 Computable Name: CHEMEDEPRMedicationDispenseList

Copyright/Legal: CC0-1.0

Definition of the medication dispense for the medication list document

Usage:

Formal Views of Profile Content

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

NameFlagsCard.TypeDescription & Constraintsdoco
.. MedicationDispense C 0..* CHEMEDMedicationDispenseList CH EMED MedicationDispense (LIST)
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 2..* 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
.... parentDocument 1..1 (Complex) CH EMED Extension
URL: http://fhir.ch/ig/ch-emed/StructureDefinition/ch-emed-ext-dispense
ele-1: All FHIR elements must have a @value or children
ext-1: Must have either extensions or value[x], not both
.... authorDocument 0..1 (Complex) Optional Extensions Element
URL: http://fhir.ch/ig/ch-core/StructureDefinition/ch-ext-author
ele-1: All FHIR elements must have a @value or children
ext-1: Must have either extensions or value[x], not both
..... extension 0..0
..... url 1..1 uri "http://fhir.ch/ig/ch-core/StructureDefinition/ch-ext-author"
..... Slices for value[x] 1..1 Reference() Value of extension
Slice: Unordered, Closed by type:$this
ele-1: All FHIR elements must have a @value or children
...... value[x]:valueReference 1..1 Reference(CH EMED EPR PractitionerRole | CH EMED EPR Patient | CH EMED EPR RelatedPerson) Author of the content
ele-1: All FHIR elements must have a @value or children
....... Slices for extension Content/Rules for all slices
........ time 0..1 dateTime Timestamp of the authorship/data input
URL: http://fhir.ch/ig/ch-core/StructureDefinition/ch-ext-epr-time
ele-1: All FHIR elements must have a @value or children
ext-1: Must have either extensions or value[x], not both
....... reference ΣC 1..1 string Literal reference, Relative, internal or absolute URL
ele-1: All FHIR elements must have a @value or children
... 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) 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 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

This structure is derived from CHEMEDMedicationDispenseList

NameFlagsCard.TypeDescription & Constraintsdoco
.. MedicationDispense C 0..* CHEMEDMedicationDispenseList CH EMED MedicationDispense (LIST)
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.
... meta
.... extension D 0..* Extension ✕ This element is not supported
.... versionId D 0..1 id ✕ This element is not supported
.... lastUpdated D 0..1 instant ✕ This element is not supported
.... source D 0..1 uri ✕ This element is not supported
.... security D 0..* Coding ✕ This element is not supported
.... tag D 0..* Coding ✕ This element is not supported
... implicitRules 0..0
... extension 2..* Extension Extension
... Slices for extension Content/Rules for all slices
.... extension:prescription 0..1 CHEMEDExtPrescription Reference to te medication prescription. This item is mandantory if the treatment has already been prescribed.
.... extension:pharmaceuticalAdvice D 0..1 CHEMEDExtPharmaceuticalAdvice ✕ This element is not supported
.... extension:treatmentPlan 1..1 CHEMEDExtTreatmentPlan CH EMED Extension
.... extension:parentDocument 1..1 CHEMEDExtDispense CH EMED Extension
.... extension:authorDocument 0..1 Author Optional Extensions Element
..... Slices for value[x] Content/Rules for all slices
...... value[x]:valueReference 1..1 Reference(CH EMED EPR PractitionerRole | CH EMED EPR Patient | CH EMED EPR RelatedPerson) Author of the content
... modifierExtension 0..0
... partOf D 0..* Reference(Procedure) ✕ This element is not supported
... statusReason[x] D 0..1 CodeableConcept, Reference(DetectedIssue) ✕ This is only meaningful when the dispense was not performed
... category D 0..1 CodeableConcept ✕ This element is not supported
... medication[x] 1..1 Reference(CH Core Medication) What medication was supplied
... Slices for medication[x] Content/Rules for all slices
.... medication[x]:medicationReference 0..1 Reference(CH EMED EPR Medication (DIS)) {c} Reference to the contained medication
... subject 0..1 Reference(CH EMED EPR Patient) {r, b} Patient
... context D 0..1 Reference(Encounter | EpisodeOfCare) ✕ This element is not supported
... supportingInformation D 0..* Reference(Resource) ✕ This element is not supported
... performer
.... modifierExtension 0..0
... location D 0..1 Reference(Location) ✕ This element is not supported
... authorizingPrescription D 0..* Reference(MedicationRequest) ✕ This element is not supported
... type D 0..1 CodeableConcept ✕ This element is not supported
... quantity 1..1 CHEMEDEPRAmountQuantity Number of packages
... daysSupply D 0..1 CHEMEDEPRTimeQuantity ✕ This element is not supported
... whenPrepared D 0..1 dateTime ✕ This element is not supported
... destination D 0..1 Reference(Location) ✕ This element is not supported
... receiver D 0..* Reference(Patient | Practitioner) ✕ This element is not supported
... note
.... id D 0..1 string ✕ This element is not supported
.... extension D 0..* Extension ✕ This element is not supported
.... author[x] D 0..1 Reference(Practitioner | Patient | RelatedPerson | Organization), string ✕ The note author is ignored, as it cannot be different than the document and/or entry's author
.... time D 0..1 dateTime ✕ This element is not supported
.... text 1..1 markdown The annotation text content (as raw text, no markdown allowed).
... Slices for dosageInstruction Content/Rules for all slices
.... dosageInstruction:baseEntry 1..1 CHEMEDEPRDosage Base entry of the dosage instruction
.... dosageInstruction:additionalEntry 0..* CHEMEDEPRDosageSplit Additional entry of the dosage instruction
... substitution
.... modifierExtension 0..0
.... type
..... coding 0..* Coding Code defined by a terminology system
Required Pattern: At least the following
...... system 1..1 uri Identity of the terminology system
Fixed Value: http://terminology.hl7.org/CodeSystem/v3-substanceAdminSubstitution
...... code 1..1 code Symbol in syntax defined by the system
Fixed Value: E
...... display 1..1 string Representation defined by the system
Fixed Value: equivalent
.... reason D 0..* CodeableConcept ✕ This element is not supported
.... responsibleParty D 0..* Reference(Practitioner | PractitionerRole) ✕ This element is not supported
... detectedIssue D 0..* Reference(DetectedIssue) ✕ This element is not supported
... eventHistory D 0..* Reference(Provenance) ✕ This element is not supported

doco Documentation for this format

Constraints

IdGradePath(s)DetailsRequirements
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
NameFlagsCard.TypeDescription & Constraintsdoco
.. MedicationDispense C 0..* CHEMEDMedicationDispenseList CH EMED MedicationDispense (LIST)
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.
... id Σ 0..1 id Logical id of this artifact
... meta Σ 0..1 Meta Metadata about the resource
.... id 0..1 string Unique id for inter-element referencing
.... extension D 0..* Extension ✕ This element is not supported
Slice: Unordered, Open by value:url
.... versionId ΣD 0..1 id ✕ This element is not supported
.... lastUpdated ΣD 0..1 instant ✕ This element is not supported
.... source ΣD 0..1 uri ✕ This element is not supported
.... profile Σ 0..* canonical(StructureDefinition) Profiles this resource claims to conform to
.... security ΣD 0..* Coding ✕ This element is not supported
Binding: All Security Labels (extensible): Security Labels from the Healthcare Privacy and Security Classification System.


.... tag ΣD 0..* Coding ✕ This element is not supported
Binding: CommonTags (example): Codes that represent various types of tags, commonly workflow-related; e.g. "Needs review by Dr. Jones".


... language 0..1 code Language of the resource content
Binding: CommonLanguages (preferred): A human language.

Additional BindingsPurpose
AllLanguages Max Binding
... text 0..1 Narrative Text summary of the resource, for human interpretation
... contained 1..* Resource Contained, inline Resources
... Slices for extension 2..* Extension Extension
Slice: Unordered, Open by value:url
.... treatmentReason 0..* string Treatment reason
URL: http://fhir.ch/ig/ch-emed/StructureDefinition/ch-emed-ext-treatmentreason
.... 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
.... pharmaceuticalAdvice D 0..1 (Complex) ✕ This element is not supported
URL: http://fhir.ch/ig/ch-emed/StructureDefinition/ch-emed-ext-pharmaceuticaladvice
.... treatmentPlan 1..1 (Complex) CH EMED Extension
URL: http://fhir.ch/ig/ch-emed/StructureDefinition/ch-emed-ext-treatmentplan
.... parentDocument 1..1 (Complex) CH EMED Extension
URL: http://fhir.ch/ig/ch-emed/StructureDefinition/ch-emed-ext-dispense
.... authorDocument 0..1 (Complex) Optional Extensions Element
URL: http://fhir.ch/ig/ch-core/StructureDefinition/ch-ext-author
..... id 0..1 string Unique id for inter-element referencing
..... extension 0..0
..... url 1..1 uri "http://fhir.ch/ig/ch-core/StructureDefinition/ch-ext-author"
..... Slices for value[x] 1..1 Reference() Value of extension
Slice: Unordered, Closed by type:$this
...... value[x]:valueReference 1..1 Reference(CH EMED EPR PractitionerRole | CH EMED EPR Patient | CH EMED EPR RelatedPerson) Author of the content
....... id 0..1 string Unique id for inter-element referencing
....... Slices for extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
........ time 0..1 dateTime Timestamp of the authorship/data input
URL: http://fhir.ch/ig/ch-core/StructureDefinition/ch-ext-epr-time
....... reference ΣC 1..1 string Literal reference, Relative, internal or absolute URL
....... type Σ 0..1 uri Type the reference refers to (e.g. "Patient")
Binding: ResourceType (extensible): Aa resource (or, for logical models, the URI of the logical model).

....... identifier Σ 0..1 Identifier Logical reference, when literal reference is not known
....... display Σ 0..1 string Text alternative for the resource
... identifier 1..1 Identifier MedicationDispense Identifier
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
.... use ?!Σ 0..1 code usual | official | temp | secondary | old (If known)
Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known .

.... type Σ 0..1 CodeableConcept Description of identifier
Binding: Identifier Type Codes (extensible): A coded type for an identifier that can be used to determine which identifier to use for a specific purpose.

.... system Σ 1..1 uri The namespace for the identifier value
Fixed Value: urn:ietf:rfc:3986
.... value Σ 1..1 string Identifier value as UUID
Example General: 123456
Example CH EMED: urn:uuid:daa8cd41-34a1-4a9c-9a6d-cd3f850142e9
.... period Σ 0..1 Period Time period when id is/was valid for use
.... assigner Σ 0..1 Reference(Organization) Organization that issued id (may be just text)
... partOf D 0..* Reference(Procedure) ✕ This element is not supported
... 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.


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.

.... 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.

... Slices for medication[x] Σ 1..1 Reference(CH Core Medication) What medication was supplied
Slice: Unordered, Closed by type:$this
.... medication[x]:medicationReference Σ 0..1 Reference(CH EMED EPR Medication (DIS)) {c} Reference to the contained medication
... subject Σ 0..1 Reference(CH EMED EPR Patient) {r, b} Patient
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
.... reference ΣC 1..1 string Literal reference, Relative, internal or absolute URL
.... type Σ 0..1 uri Type the reference refers to (e.g. "Patient")
Binding: ResourceType (extensible): Aa resource (or, for logical models, the URI of the logical model).

.... identifier Σ 0..1 Identifier Logical reference, when literal reference is not known
.... display Σ 0..1 string Text alternative for the resource
... context D 0..1 Reference(Encounter | EpisodeOfCare) ✕ This element is not supported
... supportingInformation D 0..* Reference(Resource) ✕ This element is not supported
... performer 1..1 BackboneElement Who performed event
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
.... function 0..1 CodeableConcept Who performed the dispense and what they did
Binding: MedicationDispense Performer Function Codes (example): A code describing the role an individual played in dispensing a medication.

.... actor 1..1 Reference(CH EMED PractitionerRole) The author of the medical decision, see also 'Guidance - Authorship'
..... id 0..1 string Unique id for inter-element referencing
..... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
..... reference ΣC 1..1 string Literal reference, Relative, internal or absolute URL
..... type Σ 0..1 uri Type the reference refers to (e.g. "Patient")
Binding: ResourceType (extensible): Aa resource (or, for logical models, the URI of the logical model).

..... identifier Σ 0..1 Identifier Logical reference, when literal reference is not known
..... display Σ 0..1 string Text alternative for the resource
... location D 0..1 Reference(Location) ✕ This element is not supported
... authorizingPrescription D 0..* Reference(MedicationRequest) ✕ This element is not supported
... 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.

... quantity 1..1 CHEMEDEPRAmountQuantity Number of packages
... daysSupply D 0..1 CHEMEDEPRTimeQuantity ✕ This element is not supported
... whenPrepared ΣD 0..1 dateTime ✕ This element is not supported
... whenHandedOver 1..1 dateTime When product was given out
... destination D 0..1 Reference(Location) ✕ This element is not supported
... receiver D 0..* Reference(Patient | Practitioner) ✕ This element is not supported
... note 0..* Annotation Information about the dispense
.... id D 0..1 string ✕ This element is not supported
.... extension D 0..* Extension ✕ This element is not supported
Slice: Unordered, Open by value:url
.... author[x] ΣD 0..1 ✕ The note author is ignored, as it cannot be different than the document and/or entry's author
..... authorReference Reference(Practitioner | Patient | RelatedPerson | Organization)
..... authorString string
.... time ΣD 0..1 dateTime ✕ This element is not supported
.... text Σ 1..1 markdown The annotation text content (as raw text, no markdown allowed).
... Slices for dosageInstruction 1..* CHCoreDosage How the medication should be taken
Slice: Unordered, Closed by profile:$this
.... dosageInstruction:baseEntry C 1..1 CHEMEDEPRDosage Base entry of the dosage instruction
ch-dosage-4: For split dosage timing event and dose/rate are required
.... dosageInstruction:additionalEntry 0..* CHEMEDEPRDosageSplit Additional entry of the dosage instruction
... substitution C 0..1 BackboneElement Whether a substitution was performed on the dispense
ch-meddis-1: If no substitution was performed, no type is expected.
ch-emed-dis-1: If no substitution was performed, no type is expected.
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
.... wasSubstituted 1..1 boolean Whether a substitution was (true) or was not (false) performed on the dispense
.... type 0..1 CodeableConcept If 'wasSubstituted = true', the type can be defined in addition (optional). If 'wasSubstituted = false', no type is expected.
Binding: ActSubstanceAdminSubstitutionCode (required)
..... id 0..1 string Unique id for inter-element referencing
..... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
..... coding Σ 0..* Coding Code defined by a terminology system

Required Pattern: At least the following
...... id 0..1 string Unique id for inter-element referencing
...... extension 0..* Extension Additional content defined by implementations
...... system 1..1 uri Identity of the terminology system
Fixed Value: http://terminology.hl7.org/CodeSystem/v3-substanceAdminSubstitution
...... version 0..1 string Version of the system - if relevant
...... code 1..1 code Symbol in syntax defined by the system
Fixed Value: E
...... display 1..1 string Representation defined by the system
Fixed Value: equivalent
...... userSelected 0..1 boolean If this coding was chosen directly by the user
..... text Σ 0..1 string Plain text representation of the concept
.... reason D 0..* CodeableConcept ✕ This element is not supported
Binding: SubstanceAdminSubstitutionReason (example): A coded concept describing the reason that a different medication should (or should not) be substituted from what was prescribed.


.... responsibleParty D 0..* Reference(Practitioner | PractitionerRole) ✕ This element is not supported
... detectedIssue D 0..* Reference(DetectedIssue) ✕ This element is not supported
... eventHistory D 0..* Reference(Provenance) ✕ This element is not supported

doco Documentation for this format

Terminology Bindings

PathConformanceValueSet / CodeURI
MedicationDispense.meta.securityextensibleAll Security Labels
http://hl7.org/fhir/ValueSet/security-labels
from the FHIR Standard
MedicationDispense.meta.tagexampleCommonTags
http://hl7.org/fhir/ValueSet/common-tags
from the FHIR Standard
MedicationDispense.languagepreferredCommonLanguages
http://hl7.org/fhir/ValueSet/languages
from the FHIR Standard
Additional Bindings Purpose
AllLanguages Max Binding
MedicationDispense.extension:authorDocument.value[x]:valueReference.typeextensibleResourceType
http://hl7.org/fhir/ValueSet/resource-types
from the FHIR Standard
MedicationDispense.identifier.userequiredIdentifierUse
http://hl7.org/fhir/ValueSet/identifier-use|4.0.1
from the FHIR Standard
MedicationDispense.identifier.typeextensibleIdentifier Type Codes
http://hl7.org/fhir/ValueSet/identifier-type
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.subject.typeextensibleResourceType
http://hl7.org/fhir/ValueSet/resource-types
from the FHIR Standard
MedicationDispense.performer.functionexampleMedicationDispense Performer Function Codes
http://hl7.org/fhir/ValueSet/medicationdispense-performer-function
from the FHIR Standard
MedicationDispense.performer.actor.typeextensibleResourceType
http://hl7.org/fhir/ValueSet/resource-types
from the FHIR Standard
MedicationDispense.typeexampleActPharmacySupplyType
http://terminology.hl7.org/ValueSet/v3-ActPharmacySupplyType
MedicationDispense.substitution.typerequiredActSubstanceAdminSubstitutionCode
http://fhir.ch/ig/ch-term/ValueSet/ActSubstanceAdminSubstitutionCode
MedicationDispense.substitution.reasonexampleSubstanceAdminSubstitutionReason
http://terminology.hl7.org/ValueSet/v3-SubstanceAdminSubstitutionReason

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())
ch-emed-dis-1errorMedicationDispense.substitutionIf no substitution was performed, no type is expected.
: wasSubstituted = true or (wasSubstituted = false and type.exists().not())
ch-meddis-1warningMedicationDispense.substitutionIf no substitution was performed, no type is expected.
: wasSubstituted = true or (wasSubstituted = false and type.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

Key Elements View

NameFlagsCard.TypeDescription & Constraintsdoco
.. MedicationDispense C 0..* CHEMEDMedicationDispenseList CH EMED MedicationDispense (LIST)
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 2..* 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
.... parentDocument 1..1 (Complex) CH EMED Extension
URL: http://fhir.ch/ig/ch-emed/StructureDefinition/ch-emed-ext-dispense
ele-1: All FHIR elements must have a @value or children
ext-1: Must have either extensions or value[x], not both
.... authorDocument 0..1 (Complex) Optional Extensions Element
URL: http://fhir.ch/ig/ch-core/StructureDefinition/ch-ext-author
ele-1: All FHIR elements must have a @value or children
ext-1: Must have either extensions or value[x], not both
..... extension 0..0
..... url 1..1 uri "http://fhir.ch/ig/ch-core/StructureDefinition/ch-ext-author"
..... Slices for value[x] 1..1 Reference() Value of extension
Slice: Unordered, Closed by type:$this
ele-1: All FHIR elements must have a @value or children
...... value[x]:valueReference 1..1 Reference(CH EMED EPR PractitionerRole | CH EMED EPR Patient | CH EMED EPR RelatedPerson) Author of the content
ele-1: All FHIR elements must have a @value or children
....... Slices for extension Content/Rules for all slices
........ time 0..1 dateTime Timestamp of the authorship/data input
URL: http://fhir.ch/ig/ch-core/StructureDefinition/ch-ext-epr-time
ele-1: All FHIR elements must have a @value or children
ext-1: Must have either extensions or value[x], not both
....... reference ΣC 1..1 string Literal reference, Relative, internal or absolute URL
ele-1: All FHIR elements must have a @value or children
... 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) 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 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

Differential View

This structure is derived from CHEMEDMedicationDispenseList

NameFlagsCard.TypeDescription & Constraintsdoco
.. MedicationDispense C 0..* CHEMEDMedicationDispenseList CH EMED MedicationDispense (LIST)
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.
... meta
.... extension D 0..* Extension ✕ This element is not supported
.... versionId D 0..1 id ✕ This element is not supported
.... lastUpdated D 0..1 instant ✕ This element is not supported
.... source D 0..1 uri ✕ This element is not supported
.... security D 0..* Coding ✕ This element is not supported
.... tag D 0..* Coding ✕ This element is not supported
... implicitRules 0..0
... extension 2..* Extension Extension
... Slices for extension Content/Rules for all slices
.... extension:prescription 0..1 CHEMEDExtPrescription Reference to te medication prescription. This item is mandantory if the treatment has already been prescribed.
.... extension:pharmaceuticalAdvice D 0..1 CHEMEDExtPharmaceuticalAdvice ✕ This element is not supported
.... extension:treatmentPlan 1..1 CHEMEDExtTreatmentPlan CH EMED Extension
.... extension:parentDocument 1..1 CHEMEDExtDispense CH EMED Extension
.... extension:authorDocument 0..1 Author Optional Extensions Element
..... Slices for value[x] Content/Rules for all slices
...... value[x]:valueReference 1..1 Reference(CH EMED EPR PractitionerRole | CH EMED EPR Patient | CH EMED EPR RelatedPerson) Author of the content
... modifierExtension 0..0
... partOf D 0..* Reference(Procedure) ✕ This element is not supported
... statusReason[x] D 0..1 CodeableConcept, Reference(DetectedIssue) ✕ This is only meaningful when the dispense was not performed
... category D 0..1 CodeableConcept ✕ This element is not supported
... medication[x] 1..1 Reference(CH Core Medication) What medication was supplied
... Slices for medication[x] Content/Rules for all slices
.... medication[x]:medicationReference 0..1 Reference(CH EMED EPR Medication (DIS)) {c} Reference to the contained medication
... subject 0..1 Reference(CH EMED EPR Patient) {r, b} Patient
... context D 0..1 Reference(Encounter | EpisodeOfCare) ✕ This element is not supported
... supportingInformation D 0..* Reference(Resource) ✕ This element is not supported
... performer
.... modifierExtension 0..0
... location D 0..1 Reference(Location) ✕ This element is not supported
... authorizingPrescription D 0..* Reference(MedicationRequest) ✕ This element is not supported
... type D 0..1 CodeableConcept ✕ This element is not supported
... quantity 1..1 CHEMEDEPRAmountQuantity Number of packages
... daysSupply D 0..1 CHEMEDEPRTimeQuantity ✕ This element is not supported
... whenPrepared D 0..1 dateTime ✕ This element is not supported
... destination D 0..1 Reference(Location) ✕ This element is not supported
... receiver D 0..* Reference(Patient | Practitioner) ✕ This element is not supported
... note
.... id D 0..1 string ✕ This element is not supported
.... extension D 0..* Extension ✕ This element is not supported
.... author[x] D 0..1 Reference(Practitioner | Patient | RelatedPerson | Organization), string ✕ The note author is ignored, as it cannot be different than the document and/or entry's author
.... time D 0..1 dateTime ✕ This element is not supported
.... text 1..1 markdown The annotation text content (as raw text, no markdown allowed).
... Slices for dosageInstruction Content/Rules for all slices
.... dosageInstruction:baseEntry 1..1 CHEMEDEPRDosage Base entry of the dosage instruction
.... dosageInstruction:additionalEntry 0..* CHEMEDEPRDosageSplit Additional entry of the dosage instruction
... substitution
.... modifierExtension 0..0
.... type
..... coding 0..* Coding Code defined by a terminology system
Required Pattern: At least the following
...... system 1..1 uri Identity of the terminology system
Fixed Value: http://terminology.hl7.org/CodeSystem/v3-substanceAdminSubstitution
...... code 1..1 code Symbol in syntax defined by the system
Fixed Value: E
...... display 1..1 string Representation defined by the system
Fixed Value: equivalent
.... reason D 0..* CodeableConcept ✕ This element is not supported
.... responsibleParty D 0..* Reference(Practitioner | PractitionerRole) ✕ This element is not supported
... detectedIssue D 0..* Reference(DetectedIssue) ✕ This element is not supported
... eventHistory D 0..* Reference(Provenance) ✕ This element is not supported

doco Documentation for this format

Constraints

IdGradePath(s)DetailsRequirements
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

Snapshot View

NameFlagsCard.TypeDescription & Constraintsdoco
.. MedicationDispense C 0..* CHEMEDMedicationDispenseList CH EMED MedicationDispense (LIST)
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.
... id Σ 0..1 id Logical id of this artifact
... meta Σ 0..1 Meta Metadata about the resource
.... id 0..1 string Unique id for inter-element referencing
.... extension D 0..* Extension ✕ This element is not supported
Slice: Unordered, Open by value:url
.... versionId ΣD 0..1 id ✕ This element is not supported
.... lastUpdated ΣD 0..1 instant ✕ This element is not supported
.... source ΣD 0..1 uri ✕ This element is not supported
.... profile Σ 0..* canonical(StructureDefinition) Profiles this resource claims to conform to
.... security ΣD 0..* Coding ✕ This element is not supported
Binding: All Security Labels (extensible): Security Labels from the Healthcare Privacy and Security Classification System.


.... tag ΣD 0..* Coding ✕ This element is not supported
Binding: CommonTags (example): Codes that represent various types of tags, commonly workflow-related; e.g. "Needs review by Dr. Jones".


... language 0..1 code Language of the resource content
Binding: CommonLanguages (preferred): A human language.

Additional BindingsPurpose
AllLanguages Max Binding
... text 0..1 Narrative Text summary of the resource, for human interpretation
... contained 1..* Resource Contained, inline Resources
... Slices for extension 2..* Extension Extension
Slice: Unordered, Open by value:url
.... treatmentReason 0..* string Treatment reason
URL: http://fhir.ch/ig/ch-emed/StructureDefinition/ch-emed-ext-treatmentreason
.... 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
.... pharmaceuticalAdvice D 0..1 (Complex) ✕ This element is not supported
URL: http://fhir.ch/ig/ch-emed/StructureDefinition/ch-emed-ext-pharmaceuticaladvice
.... treatmentPlan 1..1 (Complex) CH EMED Extension
URL: http://fhir.ch/ig/ch-emed/StructureDefinition/ch-emed-ext-treatmentplan
.... parentDocument 1..1 (Complex) CH EMED Extension
URL: http://fhir.ch/ig/ch-emed/StructureDefinition/ch-emed-ext-dispense
.... authorDocument 0..1 (Complex) Optional Extensions Element
URL: http://fhir.ch/ig/ch-core/StructureDefinition/ch-ext-author
..... id 0..1 string Unique id for inter-element referencing
..... extension 0..0
..... url 1..1 uri "http://fhir.ch/ig/ch-core/StructureDefinition/ch-ext-author"
..... Slices for value[x] 1..1 Reference() Value of extension
Slice: Unordered, Closed by type:$this
...... value[x]:valueReference 1..1 Reference(CH EMED EPR PractitionerRole | CH EMED EPR Patient | CH EMED EPR RelatedPerson) Author of the content
....... id 0..1 string Unique id for inter-element referencing
....... Slices for extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
........ time 0..1 dateTime Timestamp of the authorship/data input
URL: http://fhir.ch/ig/ch-core/StructureDefinition/ch-ext-epr-time
....... reference ΣC 1..1 string Literal reference, Relative, internal or absolute URL
....... type Σ 0..1 uri Type the reference refers to (e.g. "Patient")
Binding: ResourceType (extensible): Aa resource (or, for logical models, the URI of the logical model).

....... identifier Σ 0..1 Identifier Logical reference, when literal reference is not known
....... display Σ 0..1 string Text alternative for the resource
... identifier 1..1 Identifier MedicationDispense Identifier
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
.... use ?!Σ 0..1 code usual | official | temp | secondary | old (If known)
Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known .

.... type Σ 0..1 CodeableConcept Description of identifier
Binding: Identifier Type Codes (extensible): A coded type for an identifier that can be used to determine which identifier to use for a specific purpose.

.... system Σ 1..1 uri The namespace for the identifier value
Fixed Value: urn:ietf:rfc:3986
.... value Σ 1..1 string Identifier value as UUID
Example General: 123456
Example CH EMED: urn:uuid:daa8cd41-34a1-4a9c-9a6d-cd3f850142e9
.... period Σ 0..1 Period Time period when id is/was valid for use
.... assigner Σ 0..1 Reference(Organization) Organization that issued id (may be just text)
... partOf D 0..* Reference(Procedure) ✕ This element is not supported
... 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.


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.

.... 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.

... Slices for medication[x] Σ 1..1 Reference(CH Core Medication) What medication was supplied
Slice: Unordered, Closed by type:$this
.... medication[x]:medicationReference Σ 0..1 Reference(CH EMED EPR Medication (DIS)) {c} Reference to the contained medication
... subject Σ 0..1 Reference(CH EMED EPR Patient) {r, b} Patient
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
.... reference ΣC 1..1 string Literal reference, Relative, internal or absolute URL
.... type Σ 0..1 uri Type the reference refers to (e.g. "Patient")
Binding: ResourceType (extensible): Aa resource (or, for logical models, the URI of the logical model).

.... identifier Σ 0..1 Identifier Logical reference, when literal reference is not known
.... display Σ 0..1 string Text alternative for the resource
... context D 0..1 Reference(Encounter | EpisodeOfCare) ✕ This element is not supported
... supportingInformation D 0..* Reference(Resource) ✕ This element is not supported
... performer 1..1 BackboneElement Who performed event
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
.... function 0..1 CodeableConcept Who performed the dispense and what they did
Binding: MedicationDispense Performer Function Codes (example): A code describing the role an individual played in dispensing a medication.

.... actor 1..1 Reference(CH EMED PractitionerRole) The author of the medical decision, see also 'Guidance - Authorship'
..... id 0..1 string Unique id for inter-element referencing
..... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
..... reference ΣC 1..1 string Literal reference, Relative, internal or absolute URL
..... type Σ 0..1 uri Type the reference refers to (e.g. "Patient")
Binding: ResourceType (extensible): Aa resource (or, for logical models, the URI of the logical model).

..... identifier Σ 0..1 Identifier Logical reference, when literal reference is not known
..... display Σ 0..1 string Text alternative for the resource
... location D 0..1 Reference(Location) ✕ This element is not supported
... authorizingPrescription D 0..* Reference(MedicationRequest) ✕ This element is not supported
... 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.

... quantity 1..1 CHEMEDEPRAmountQuantity Number of packages
... daysSupply D 0..1 CHEMEDEPRTimeQuantity ✕ This element is not supported
... whenPrepared ΣD 0..1 dateTime ✕ This element is not supported
... whenHandedOver 1..1 dateTime When product was given out
... destination D 0..1 Reference(Location) ✕ This element is not supported
... receiver D 0..* Reference(Patient | Practitioner) ✕ This element is not supported
... note 0..* Annotation Information about the dispense
.... id D 0..1 string ✕ This element is not supported
.... extension D 0..* Extension ✕ This element is not supported
Slice: Unordered, Open by value:url
.... author[x] ΣD 0..1 ✕ The note author is ignored, as it cannot be different than the document and/or entry's author
..... authorReference Reference(Practitioner | Patient | RelatedPerson | Organization)
..... authorString string
.... time ΣD 0..1 dateTime ✕ This element is not supported
.... text Σ 1..1 markdown The annotation text content (as raw text, no markdown allowed).
... Slices for dosageInstruction 1..* CHCoreDosage How the medication should be taken
Slice: Unordered, Closed by profile:$this
.... dosageInstruction:baseEntry C 1..1 CHEMEDEPRDosage Base entry of the dosage instruction
ch-dosage-4: For split dosage timing event and dose/rate are required
.... dosageInstruction:additionalEntry 0..* CHEMEDEPRDosageSplit Additional entry of the dosage instruction
... substitution C 0..1 BackboneElement Whether a substitution was performed on the dispense
ch-meddis-1: If no substitution was performed, no type is expected.
ch-emed-dis-1: If no substitution was performed, no type is expected.
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
.... wasSubstituted 1..1 boolean Whether a substitution was (true) or was not (false) performed on the dispense
.... type 0..1 CodeableConcept If 'wasSubstituted = true', the type can be defined in addition (optional). If 'wasSubstituted = false', no type is expected.
Binding: ActSubstanceAdminSubstitutionCode (required)
..... id 0..1 string Unique id for inter-element referencing
..... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
..... coding Σ 0..* Coding Code defined by a terminology system

Required Pattern: At least the following
...... id 0..1 string Unique id for inter-element referencing
...... extension 0..* Extension Additional content defined by implementations
...... system 1..1 uri Identity of the terminology system
Fixed Value: http://terminology.hl7.org/CodeSystem/v3-substanceAdminSubstitution
...... version 0..1 string Version of the system - if relevant
...... code 1..1 code Symbol in syntax defined by the system
Fixed Value: E
...... display 1..1 string Representation defined by the system
Fixed Value: equivalent
...... userSelected 0..1 boolean If this coding was chosen directly by the user
..... text Σ 0..1 string Plain text representation of the concept
.... reason D 0..* CodeableConcept ✕ This element is not supported
Binding: SubstanceAdminSubstitutionReason (example): A coded concept describing the reason that a different medication should (or should not) be substituted from what was prescribed.


.... responsibleParty D 0..* Reference(Practitioner | PractitionerRole) ✕ This element is not supported
... detectedIssue D 0..* Reference(DetectedIssue) ✕ This element is not supported
... eventHistory D 0..* Reference(Provenance) ✕ This element is not supported

doco Documentation for this format

Terminology Bindings

PathConformanceValueSet / CodeURI
MedicationDispense.meta.securityextensibleAll Security Labels
http://hl7.org/fhir/ValueSet/security-labels
from the FHIR Standard
MedicationDispense.meta.tagexampleCommonTags
http://hl7.org/fhir/ValueSet/common-tags
from the FHIR Standard
MedicationDispense.languagepreferredCommonLanguages
http://hl7.org/fhir/ValueSet/languages
from the FHIR Standard
Additional Bindings Purpose
AllLanguages Max Binding
MedicationDispense.extension:authorDocument.value[x]:valueReference.typeextensibleResourceType
http://hl7.org/fhir/ValueSet/resource-types
from the FHIR Standard
MedicationDispense.identifier.userequiredIdentifierUse
http://hl7.org/fhir/ValueSet/identifier-use|4.0.1
from the FHIR Standard
MedicationDispense.identifier.typeextensibleIdentifier Type Codes
http://hl7.org/fhir/ValueSet/identifier-type
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.subject.typeextensibleResourceType
http://hl7.org/fhir/ValueSet/resource-types
from the FHIR Standard
MedicationDispense.performer.functionexampleMedicationDispense Performer Function Codes
http://hl7.org/fhir/ValueSet/medicationdispense-performer-function
from the FHIR Standard
MedicationDispense.performer.actor.typeextensibleResourceType
http://hl7.org/fhir/ValueSet/resource-types
from the FHIR Standard
MedicationDispense.typeexampleActPharmacySupplyType
http://terminology.hl7.org/ValueSet/v3-ActPharmacySupplyType
MedicationDispense.substitution.typerequiredActSubstanceAdminSubstitutionCode
http://fhir.ch/ig/ch-term/ValueSet/ActSubstanceAdminSubstitutionCode
MedicationDispense.substitution.reasonexampleSubstanceAdminSubstitutionReason
http://terminology.hl7.org/ValueSet/v3-SubstanceAdminSubstitutionReason

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())
ch-emed-dis-1errorMedicationDispense.substitutionIf no substitution was performed, no type is expected.
: wasSubstituted = true or (wasSubstituted = false and type.exists().not())
ch-meddis-1warningMedicationDispense.substitutionIf no substitution was performed, no type is expected.
: wasSubstituted = true or (wasSubstituted = false and type.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