FR Document Core (FHIR)
0.1.0 - ci-build

FR Document Core (FHIR), published by Agence du Numérique en Santé (ANS) - 2-10 Rue d'Oradour-sur-Glane, 75015 Paris. This guide is not an authorized publication; it is the continuous build for version 0.1.0 built by the FHIR (HL7® FHIR® Standard) CI Build. This version is based on the current content of https://github.com/ansforge/interop-IG-fhir-document-core/ and changes regularly. See the Directory of published versions

## Resource Profile: MedicationDispense - FR Medication Dispense Document

Official URL: https://interop.esante.gouv.fr/ig/fhir/document-core/StructureDefinition/fr-medication-dispense-document | Version: 0.1.0 | Highlight text changes?
Draft as of 2026-08-07 | Computable Name: FRMedicationDispenseDocument

FRMedicationDispenseDocument permet de décrire un traitement dispensé avec notamment le médicament dispensé, la quantité et la référence de la prescription.

Usages:

- This Profile is not used by any profiles in this Specification

You can also check for usages in the FHIR IG Statistics

### Formal Views of Profile Content

Description Differentials, Snapshots, and other representations.

- Key Elements Table
- Differential Table
- Snapshot Table
- Statistics/References
- All

Name | Flags | Card. | Type | Description & Constraints Filter: Bindings Constraints Obligations
--- | --- | --- | --- | ---
MedicationDispense | C | 0..* | MedicationDispense(4.0.1) | Dispensing a medication to a named patient Constraints: mdd-1
implicitRules | ?!Σ | 0..1 | uri | A set of rules under which this content was created
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored Constraints: ext-1
identifier |  | 0..* | Identifier | Identifiant
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.
medication[x] | S Σ | 1..1 |  | Médicament délivré Binding: SNOMEDCTMedicationCodes (example): A coded concept identifying which substance or product can be dispensed.
medicationCodeableConcept |  |  | CodeableConcept |
medicationReference |  |  | Reference(Medication - FR Medication Document(0.1.0)) |
supportingInformation | S | 0..1 | Reference(MedicationAdministration - FR Medication Administration Document(0.1.0)) | Posologie
authorizingPrescription | S | 0..1 | Reference(MedicationRequest - FR Medication Request Document(0.1.0)) | Référence de la prescription
type | S | 1..1 | CodeableConcept | Complétude de la dispensation Binding: ActPharmacySupplyType (3.0.0) (example): Indicates the type of dispensing event that is performed. For example, Trial Fill, Completion of Trial, Partial Fill, Emergency Fill, Samples, etc.
coding | Σ | 0..* | Coding | Code defined by a terminology system Binding: JdvCompletudeDispensationCisis (20260619134041) (required)
quantity | S | 1..1 | SimpleQuantity(4.0.1) | Quantité : Unité issue de EDQM Packaging / classe CON (Récipient)
unit | Σ | 0..1 | string | Unit representation Binding: FRValueSetEDQMDocument (0.1.0) (required)
dosageInstruction |  | 0..* | Dosage | How the medication is to be used by the patient or administered by the caregiver
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized Constraints: ext-1
text | S Σ | 0..1 | string | Instructions au dispensateur
additionalInstruction | S Σ | 0..* | CodeableConcept | Instruction au patient sous forme codée Binding: SNOMEDCTAdditionalDosageInstructions (example): A coded concept identifying additional instructions such as "take with water" or "avoid operating heavy machinery".
patientInstruction | S Σ | 0..1 | string | Instructions au patient
substitution | S | 0..1 | BackboneElement | Acte de substitution
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized Constraints: ext-1
wasSubstituted |  | 1..1 | boolean | Whether a substitution was or was not performed on the dispense
type | S | 1..1 | CodeableConcept | Code signifying whether a different drug was dispensed from what was prescribed Binding: ActSubstanceAdminSubstitutionCode (3.0.0) (example): A coded concept describing whether a different medicinal product may be dispensed other than the product as specified exactly in the prescription. Required Pattern: At least the following
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations
coding |  | 1..* | Coding | Code defined by a terminology system Fixed Value: (Complex)
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations
system |  | 0..1 | uri | Identity of the terminology system
version |  | 0..1 | string | Version of the system - if relevant
code |  | 1..1 | code | Symbol in syntax defined by the system Fixed Value: G
display |  | 1..1 | string | Representation defined by the system Fixed Value: Substitution autorisée par un produit générique
userSelected |  | 0..1 | boolean | If this coding was chosen directly by the user
text |  | 0..1 | string | Plain text representation of the concept
Documentation for this format

#### Terminology Bindings

Path | Status | Usage | ValueSet | Version | Source
MedicationDispense.status | Base | required | Medication dispense status codes | 📍4.0.1 | FHIR Std.
MedicationDispense.medication[x] | Base | example | SNOMED CT Medication Codes | 📍4.0.1 | FHIR Std.
MedicationDispense.type | Base | example | ActPharmacySupplyType | 📍3.0.0 | THO v7.3
MedicationDispense.type.​coding | Base | required | JDV Completude Dispensation CISIS | 📍20260619134041 | Terminologies de Santé v1.11
MedicationDispense.quantity.​unit | Base | required | ValueSet - FR ValueSet EDQM Document | 📍0.1.0 | This IG
MedicationDispense.dosageInstruction.​additionalInstruction | Base | example | SNOMED CT Additional Dosage Instructions | 📍4.0.1 | FHIR Std.
MedicationDispense.substitution.​type | Base | example | ActSubstanceAdminSubstitutionCode | 📍3.0.0 | THO v7.3

#### Constraints

Id | Grade | Path(s) | Description | Expression
dom-2 | error | MedicationDispense | If the resource is contained in another resource, it SHALL NOT contain nested Resources | `contained.contained.empty()`
dom-3 | error | MedicationDispense | 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 | `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-4 | error | MedicationDispense | If 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-5 | error | MedicationDispense | If a resource is contained in another resource, it SHALL NOT have a security label | `contained.meta.security.empty()`
dom-6 | best practice | MedicationDispense | A resource should have narrative for robust management | `text.`div`.exists()`
ele-1 | error | MedicationDispense.implicitRules, MedicationDispense.modifierExtension, MedicationDispense.identifier, MedicationDispense.status, MedicationDispense.medication[x], MedicationDispense.supportingInformation, MedicationDispense.authorizingPrescription, MedicationDispense.type, MedicationDispense.type.coding, MedicationDispense.quantity, MedicationDispense.quantity.unit, MedicationDispense.dosageInstruction, MedicationDispense.dosageInstruction.modifierExtension, MedicationDispense.dosageInstruction.text, MedicationDispense.dosageInstruction.additionalInstruction, MedicationDispense.dosageInstruction.patientInstruction, MedicationDispense.substitution, MedicationDispense.substitution.modifierExtension, MedicationDispense.substitution.wasSubstituted, MedicationDispense.substitution.type | All FHIR elements must have a @value or children | `hasValue() or (children().count() > id.count())`
ext-1 | error | MedicationDispense.modifierExtension, MedicationDispense.dosageInstruction.modifierExtension, MedicationDispense.substitution.modifierExtension | Must have either extensions or value[x], not both | `extension.exists() != value.exists()`
mdd-1 | error | MedicationDispense | whenHandedOver cannot be before whenPrepared | `whenHandedOver.empty() or whenPrepared.empty() or whenHandedOver >= whenPrepared`

Name | Flags | Card. | Type | Description & Constraints Filter: Bindings Constraints Obligations
--- | --- | --- | --- | ---
MedicationDispense |  | 0..* | MedicationDispense(4.0.1) | Dispensing a medication to a named patient
identifier |  | 0..* | Identifier | Identifiant
medication[x] | S | 1..1 |  | Médicament délivré
medicationCodeableConcept |  |  | CodeableConcept |
medicationReference |  |  | Reference(Medication - FR Medication Document(0.1.0)) |
supportingInformation | S | 0..1 | Reference(MedicationAdministration - FR Medication Administration Document(0.1.0)) | Posologie
authorizingPrescription | S | 0..1 | Reference(MedicationRequest - FR Medication Request Document(0.1.0)) | Référence de la prescription
type | S | 1..1 | CodeableConcept | Complétude de la dispensation
coding |  | 0..* | Coding | Code defined by a terminology system Binding: JdvCompletudeDispensationCisis (20260619134041) (required)
quantity | S | 1..1 | SimpleQuantity(4.0.1) | Quantité : Unité issue de EDQM Packaging / classe CON (Récipient)
unit |  | 0..1 | string | Unit representation Binding: FRValueSetEDQMDocument (0.1.0) (required)
dosageInstruction |  |  |  |
text | S | 0..1 | string | Instructions au dispensateur
additionalInstruction | S | 0..* | CodeableConcept | Instruction au patient sous forme codée
patientInstruction | S | 0..1 | string | Instructions au patient
substitution | S | 0..1 | BackboneElement | Acte de substitution
type | S | 1..1 | CodeableConcept | Code signifying whether a different drug was dispensed from what was prescribed Required Pattern: At least the following
coding |  | 1..* | Coding | Code defined by a terminology system Fixed Value: (Complex)
code |  | 1..1 | code | Symbol in syntax defined by the system Fixed Value: G
display |  | 1..1 | string | Representation defined by the system Fixed Value: Substitution autorisée par un produit générique
Documentation for this format

#### Terminology Bindings (Differential)

Path | Status | Usage | ValueSet | Version | Source
MedicationDispense.type.​coding | Base | required | JDV Completude Dispensation CISIS | 📍20260619134041 | Terminologies de Santé v1.11
MedicationDispense.quantity.​unit | Base | required | ValueSet - FR ValueSet EDQM Document | 📍0.1.0 | This IG

Name | Flags | Card. | Type | Description & Constraints Filter: Bindings Constraints Obligations
--- | --- | --- | --- | ---
MedicationDispense | C | 0..* | MedicationDispense(4.0.1) | Dispensing a medication to a named patient Constraints: mdd-1
id | Σ | 0..1 | id | Logical id of this artifact
meta | Σ | 0..1 | Meta | Metadata about the resource
implicitRules | ?!Σ | 0..1 | uri | A set of rules under which this content was created
language |  | 0..1 | code | Language of the resource content Binding: CommonLanguages (preferred): A human language.
Additional Bindings | Purpose
AllLanguages | Max Binding
text |  | 0..1 | Narrative | Text summary of the resource, for human interpretation This profile does not constrain the narrative in regard to content, language, or traceability to data elements
contained |  | 0..* | Resource | Contained, inline Resources
extension |  | 0..* | Extension | Additional content defined by implementations Constraints: ext-1
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored Constraints: ext-1
identifier |  | 0..* | Identifier | Identifiant
partOf |  | 0..* | Reference(Procedure) | Event that dispense is part of
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.
statusReason[x] |  | 0..1 |  | Why a 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 |  | 0..1 | CodeableConcept | Type of medication dispense Binding: MedicationDispense Category Codes (preferred): A code describing where the dispensed medication is expected to be consumed or administered.
medication[x] | S Σ | 1..1 |  | Médicament délivré Binding: SNOMEDCTMedicationCodes (example): A coded concept identifying which substance or product can be dispensed.
medicationCodeableConcept |  |  | CodeableConcept |
medicationReference |  |  | Reference(Medication - FR Medication Document(0.1.0)) |
subject | Σ | 0..1 | Reference(Patient | Group) | Who the dispense is for
context |  | 0..1 | Reference(Encounter | EpisodeOfCare) | Encounter / Episode associated with event
supportingInformation | S | 0..1 | Reference(MedicationAdministration - FR Medication Administration Document(0.1.0)) | Posologie
performer |  | 0..* | BackboneElement | Who performed event
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations Constraints: ext-1
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized Constraints: ext-1
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(Practitioner | PractitionerRole | Organization | Patient | Device | RelatedPerson) | Individual who was performing
location |  | 0..1 | Reference(Location) | Where the dispense occurred
authorizingPrescription | S | 0..1 | Reference(MedicationRequest - FR Medication Request Document(0.1.0)) | Référence de la prescription
type | S | 1..1 | CodeableConcept | Complétude de la dispensation Binding: ActPharmacySupplyType (3.0.0) (example): Indicates the type of dispensing event that is performed. For example, Trial Fill, Completion of Trial, Partial Fill, Emergency Fill, Samples, etc.
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url Constraints: ext-1
coding | Σ | 0..* | Coding | Code defined by a terminology system Binding: JdvCompletudeDispensationCisis (20260619134041) (required)
text | Σ | 0..1 | string | Plain text representation of the concept
quantity | S | 1..1 | SimpleQuantity(4.0.1) | Quantité : Unité issue de EDQM Packaging / classe CON (Récipient)
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url Constraints: ext-1
value | Σ | 0..1 | decimal | Numerical value (with implicit precision)
unit | Σ | 0..1 | string | Unit representation Binding: FRValueSetEDQMDocument (0.1.0) (required)
system | Σ C | 0..1 | uri | System that defines coded unit form
code | Σ | 0..1 | code | Coded form of the unit
daysSupply |  | 0..1 | SimpleQuantity(4.0.1) | Amount of medication expressed as a timing amount
whenPrepared | Σ | 0..1 | dateTime | When product was packaged and reviewed
whenHandedOver |  | 0..1 | dateTime | When product was given out
destination |  | 0..1 | Reference(Location) | Where the medication was sent
receiver |  | 0..* | Reference(Patient | Practitioner) | Who collected the medication
note |  | 0..* | Annotation | Information about the dispense
dosageInstruction |  | 0..* | Dosage | How the medication is to be used by the patient or administered by the caregiver
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url Constraints: ext-1
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized Constraints: ext-1
sequence | Σ | 0..1 | integer | The order of the dosage instructions
text | S Σ | 0..1 | string | Instructions au dispensateur
additionalInstruction | S Σ | 0..* | CodeableConcept | Instruction au patient sous forme codée Binding: SNOMEDCTAdditionalDosageInstructions (example): A coded concept identifying additional instructions such as "take with water" or "avoid operating heavy machinery".
patientInstruction | S Σ | 0..1 | string | Instructions au patient
timing | Σ | 0..1 | Timing | When medication should be administered
asNeeded[x] | Σ | 0..1 |  | Take "as needed" (for x) Binding: SNOMEDCTMedicationAsNeededReasonCodes (example): A coded concept identifying the precondition that should be met or evaluated prior to consuming or administering a medication dose. For example "pain", "30 minutes prior to sexual intercourse", "on flare-up" etc.
asNeededBoolean |  |  | boolean |
asNeededCodeableConcept |  |  | CodeableConcept |
site | Σ | 0..1 | CodeableConcept | Body site to administer to Binding: SNOMEDCTAnatomicalStructureForAdministrationSiteCodes (example): A coded concept describing the site location the medicine enters into or onto the body.
route | Σ | 0..1 | CodeableConcept | How drug should enter body Binding: SNOMEDCTRouteCodes (example): A coded concept describing the route or physiological path of administration of a therapeutic agent into or onto the body of a subject.
method | Σ | 0..1 | CodeableConcept | Technique for administering medication Binding: SNOMEDCTAdministrationMethodCodes (example): A coded concept describing the technique by which the medicine is administered.
doseAndRate | Σ | 0..* | Element | Amount of medication administered
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url Constraints: ext-1
type | Σ | 0..1 | CodeableConcept | The kind of dose or rate specified Binding: DoseAndRateType (example): The kind of dose or rate specified.
dose[x] | Σ | 0..1 |  | Amount of medication per dose
doseRange |  |  | Range |
doseQuantity |  |  | Quantity(SimpleQuantity) |
rate[x] | Σ | 0..1 |  | Amount of medication per unit of time
rateRatio |  |  | Ratio |
rateRange |  |  | Range |
rateQuantity |  |  | Quantity(SimpleQuantity) |
maxDosePerPeriod | Σ | 0..1 | Ratio | Upper limit on medication per unit of time
maxDosePerAdministration | Σ | 0..1 | SimpleQuantity(4.0.1) | Upper limit on medication per administration
maxDosePerLifetime | Σ | 0..1 | SimpleQuantity(4.0.1) | Upper limit on medication per lifetime of the patient
substitution | S | 0..1 | BackboneElement | Acte de substitution
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations Constraints: ext-1
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized Constraints: ext-1
wasSubstituted |  | 1..1 | boolean | Whether a substitution was or was not performed on the dispense
type | S | 1..1 | CodeableConcept | Code signifying whether a different drug was dispensed from what was prescribed Binding: ActSubstanceAdminSubstitutionCode (3.0.0) (example): A coded concept describing whether a different medicinal product may be dispensed other than the product as specified exactly in the prescription. Required Pattern: At least the following
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations
coding |  | 1..* | Coding | Code defined by a terminology system Fixed Value: (Complex)
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations
system |  | 0..1 | uri | Identity of the terminology system
version |  | 0..1 | string | Version of the system - if relevant
code |  | 1..1 | code | Symbol in syntax defined by the system Fixed Value: G
display |  | 1..1 | string | Representation defined by the system Fixed Value: Substitution autorisée par un produit générique
userSelected |  | 0..1 | boolean | If this coding was chosen directly by the user
text |  | 0..1 | string | Plain text representation of the concept
reason |  | 0..* | CodeableConcept | Why was substitution made Binding: SubstanceAdminSubstitutionReason (3.0.0) (example): A coded concept describing the reason that a different medication should (or should not) be substituted from what was prescribed.
responsibleParty |  | 0..* | Reference(Practitioner | PractitionerRole) | Who is responsible for the substitution
detectedIssue |  | 0..* | Reference(DetectedIssue) | Clinical issue with action
eventHistory |  | 0..* | Reference(Provenance) | A list of relevant lifecycle events
Documentation for this format

#### Terminology Bindings

Path | Status | Usage | ValueSet | Version | Source
MedicationDispense.language | Base | preferred | Common Languages | 📍4.0.1 | FHIR Std.
MedicationDispense.status | Base | required | Medication dispense status codes | 📍4.0.1 | FHIR Std.
MedicationDispense.statusReason[x] | Base | example | Medication dispense status reason codes | 📍4.0.1 | FHIR Std.
MedicationDispense.category | Base | preferred | Medication dispense category codes | 📍4.0.1 | FHIR Std.
MedicationDispense.medication[x] | Base | example | SNOMED CT Medication Codes | 📍4.0.1 | FHIR Std.
MedicationDispense.performer.​function | Base | example | Medication dispense performer function codes | 📍4.0.1 | FHIR Std.
MedicationDispense.type | Base | example | ActPharmacySupplyType | 📍3.0.0 | THO v7.3
MedicationDispense.type.​coding | Base | required | JDV Completude Dispensation CISIS | 📍20260619134041 | Terminologies de Santé v1.11
MedicationDispense.quantity.​unit | Base | required | ValueSet - FR ValueSet EDQM Document | 📍0.1.0 | This IG
MedicationDispense.dosageInstruction.​additionalInstruction | Base | example | SNOMED CT Additional Dosage Instructions | 📍4.0.1 | FHIR Std.
MedicationDispense.dosageInstruction.​asNeeded[x] | Base | example | SNOMED CT Medication As Needed Reason Codes | 📍4.0.1 | FHIR Std.
MedicationDispense.dosageInstruction.​site | Base | example | SNOMED CT Anatomical Structure for Administration Site Codes | 📍4.0.1 | FHIR Std.
MedicationDispense.dosageInstruction.​route | Base | example | SNOMED CT Route Codes | 📍4.0.1 | FHIR Std.
MedicationDispense.dosageInstruction.​method | Base | example | SNOMED CT Administration Method Codes | 📍4.0.1 | FHIR Std.
MedicationDispense.dosageInstruction.​doseAndRate.type | Base | example | DoseAndRateType | 📍4.0.1 | FHIR Std.
MedicationDispense.substitution.​type | Base | example | ActSubstanceAdminSubstitutionCode | 📍3.0.0 | THO v7.3
MedicationDispense.substitution.​reason | Base | example | SubstanceAdminSubstitutionReason | 📍3.0.0 | THO v7.3

#### Constraints

Id | Grade | Path(s) | Description | Expression
dom-2 | error | MedicationDispense | If the resource is contained in another resource, it SHALL NOT contain nested Resources | `contained.contained.empty()`
dom-3 | error | MedicationDispense | 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 | `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-4 | error | MedicationDispense | If 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-5 | error | MedicationDispense | If a resource is contained in another resource, it SHALL NOT have a security label | `contained.meta.security.empty()`
dom-6 | best practice | MedicationDispense | A resource should have narrative for robust management | `text.`div`.exists()`
ele-1 | error | MedicationDispense.meta, MedicationDispense.implicitRules, MedicationDispense.language, MedicationDispense.text, MedicationDispense.extension, MedicationDispense.modifierExtension, MedicationDispense.identifier, MedicationDispense.partOf, MedicationDispense.status, MedicationDispense.statusReason[x], MedicationDispense.category, MedicationDispense.medication[x], MedicationDispense.subject, MedicationDispense.context, MedicationDispense.supportingInformation, MedicationDispense.performer, MedicationDispense.performer.extension, MedicationDispense.performer.modifierExtension, MedicationDispense.performer.function, MedicationDispense.performer.actor, MedicationDispense.location, MedicationDispense.authorizingPrescription, MedicationDispense.type, MedicationDispense.type.extension, MedicationDispense.type.coding, MedicationDispense.type.text, MedicationDispense.quantity, MedicationDispense.quantity.extension, MedicationDispense.quantity.value, MedicationDispense.quantity.unit, MedicationDispense.quantity.system, MedicationDispense.quantity.code, MedicationDispense.daysSupply, MedicationDispense.whenPrepared, MedicationDispense.whenHandedOver, MedicationDispense.destination, MedicationDispense.receiver, MedicationDispense.note, MedicationDispense.dosageInstruction, MedicationDispense.dosageInstruction.extension, MedicationDispense.dosageInstruction.modifierExtension, MedicationDispense.dosageInstruction.sequence, MedicationDispense.dosageInstruction.text, MedicationDispense.dosageInstruction.additionalInstruction, MedicationDispense.dosageInstruction.patientInstruction, MedicationDispense.dosageInstruction.timing, MedicationDispense.dosageInstruction.asNeeded[x], MedicationDispense.dosageInstruction.site, MedicationDispense.dosageInstruction.route, MedicationDispense.dosageInstruction.method, MedicationDispense.dosageInstruction.doseAndRate, MedicationDispense.dosageInstruction.doseAndRate.extension, MedicationDispense.dosageInstruction.doseAndRate.type, MedicationDispense.dosageInstruction.doseAndRate.dose[x], MedicationDispense.dosageInstruction.doseAndRate.rate[x], MedicationDispense.dosageInstruction.maxDosePerPeriod, MedicationDispense.dosageInstruction.maxDosePerAdministration, MedicationDispense.dosageInstruction.maxDosePerLifetime, MedicationDispense.substitution, MedicationDispense.substitution.extension, MedicationDispense.substitution.modifierExtension, MedicationDispense.substitution.wasSubstituted, MedicationDispense.substitution.type, MedicationDispense.substitution.reason, MedicationDispense.substitution.responsibleParty, MedicationDispense.detectedIssue, MedicationDispense.eventHistory | All FHIR elements must have a @value or children | `hasValue() or (children().count() > id.count())`
ext-1 | error | MedicationDispense.extension, MedicationDispense.modifierExtension, MedicationDispense.performer.extension, MedicationDispense.performer.modifierExtension, MedicationDispense.type.extension, MedicationDispense.quantity.extension, MedicationDispense.dosageInstruction.extension, MedicationDispense.dosageInstruction.modifierExtension, MedicationDispense.dosageInstruction.doseAndRate.extension, MedicationDispense.substitution.extension, MedicationDispense.substitution.modifierExtension | Must have either extensions or value[x], not both | `extension.exists() != value.exists()`
mdd-1 | error | MedicationDispense | whenHandedOver cannot be before whenPrepared | `whenHandedOver.empty() or whenPrepared.empty() or whenHandedOver >= whenPrepared`

Summary

Mandatory: 2 elements(1 nested mandatory element)
Must-Support: 10 elements

Structures

This structure refers to these other structures:

- Medication - FR Medication Document (https://interop.esante.gouv.fr/ig/fhir/document-core/StructureDefinition/fr-medication-document|0.1.0)
- MedicationAdministration - FR Medication Administration Document (https://interop.esante.gouv.fr/ig/fhir/document-core/StructureDefinition/fr-medication-administration-document|0.1.0)
- MedicationRequest - FR Medication Request Document (https://interop.esante.gouv.fr/ig/fhir/document-core/StructureDefinition/fr-medication-request-document|0.1.0)

Key Elements View

Name | Flags | Card. | Type | Description & Constraints Filter: Bindings Constraints Obligations
--- | --- | --- | --- | ---
MedicationDispense | C | 0..* | MedicationDispense(4.0.1) | Dispensing a medication to a named patient Constraints: mdd-1
implicitRules | ?!Σ | 0..1 | uri | A set of rules under which this content was created
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored Constraints: ext-1
identifier |  | 0..* | Identifier | Identifiant
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.
medication[x] | S Σ | 1..1 |  | Médicament délivré Binding: SNOMEDCTMedicationCodes (example): A coded concept identifying which substance or product can be dispensed.
medicationCodeableConcept |  |  | CodeableConcept |
medicationReference |  |  | Reference(Medication - FR Medication Document(0.1.0)) |
supportingInformation | S | 0..1 | Reference(MedicationAdministration - FR Medication Administration Document(0.1.0)) | Posologie
authorizingPrescription | S | 0..1 | Reference(MedicationRequest - FR Medication Request Document(0.1.0)) | Référence de la prescription
type | S | 1..1 | CodeableConcept | Complétude de la dispensation Binding: ActPharmacySupplyType (3.0.0) (example): Indicates the type of dispensing event that is performed. For example, Trial Fill, Completion of Trial, Partial Fill, Emergency Fill, Samples, etc.
coding | Σ | 0..* | Coding | Code defined by a terminology system Binding: JdvCompletudeDispensationCisis (20260619134041) (required)
quantity | S | 1..1 | SimpleQuantity(4.0.1) | Quantité : Unité issue de EDQM Packaging / classe CON (Récipient)
unit | Σ | 0..1 | string | Unit representation Binding: FRValueSetEDQMDocument (0.1.0) (required)
dosageInstruction |  | 0..* | Dosage | How the medication is to be used by the patient or administered by the caregiver
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized Constraints: ext-1
text | S Σ | 0..1 | string | Instructions au dispensateur
additionalInstruction | S Σ | 0..* | CodeableConcept | Instruction au patient sous forme codée Binding: SNOMEDCTAdditionalDosageInstructions (example): A coded concept identifying additional instructions such as "take with water" or "avoid operating heavy machinery".
patientInstruction | S Σ | 0..1 | string | Instructions au patient
substitution | S | 0..1 | BackboneElement | Acte de substitution
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized Constraints: ext-1
wasSubstituted |  | 1..1 | boolean | Whether a substitution was or was not performed on the dispense
type | S | 1..1 | CodeableConcept | Code signifying whether a different drug was dispensed from what was prescribed Binding: ActSubstanceAdminSubstitutionCode (3.0.0) (example): A coded concept describing whether a different medicinal product may be dispensed other than the product as specified exactly in the prescription. Required Pattern: At least the following
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations
coding |  | 1..* | Coding | Code defined by a terminology system Fixed Value: (Complex)
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations
system |  | 0..1 | uri | Identity of the terminology system
version |  | 0..1 | string | Version of the system - if relevant
code |  | 1..1 | code | Symbol in syntax defined by the system Fixed Value: G
display |  | 1..1 | string | Representation defined by the system Fixed Value: Substitution autorisée par un produit générique
userSelected |  | 0..1 | boolean | If this coding was chosen directly by the user
text |  | 0..1 | string | Plain text representation of the concept
Documentation for this format

#### Terminology Bindings

Path | Status | Usage | ValueSet | Version | Source
MedicationDispense.status | Base | required | Medication dispense status codes | 📍4.0.1 | FHIR Std.
MedicationDispense.medication[x] | Base | example | SNOMED CT Medication Codes | 📍4.0.1 | FHIR Std.
MedicationDispense.type | Base | example | ActPharmacySupplyType | 📍3.0.0 | THO v7.3
MedicationDispense.type.​coding | Base | required | JDV Completude Dispensation CISIS | 📍20260619134041 | Terminologies de Santé v1.11
MedicationDispense.quantity.​unit | Base | required | ValueSet - FR ValueSet EDQM Document | 📍0.1.0 | This IG
MedicationDispense.dosageInstruction.​additionalInstruction | Base | example | SNOMED CT Additional Dosage Instructions | 📍4.0.1 | FHIR Std.
MedicationDispense.substitution.​type | Base | example | ActSubstanceAdminSubstitutionCode | 📍3.0.0 | THO v7.3

#### Constraints

Id | Grade | Path(s) | Description | Expression
dom-2 | error | MedicationDispense | If the resource is contained in another resource, it SHALL NOT contain nested Resources | `contained.contained.empty()`
dom-3 | error | MedicationDispense | 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 | `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-4 | error | MedicationDispense | If 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-5 | error | MedicationDispense | If a resource is contained in another resource, it SHALL NOT have a security label | `contained.meta.security.empty()`
dom-6 | best practice | MedicationDispense | A resource should have narrative for robust management | `text.`div`.exists()`
ele-1 | error | MedicationDispense.implicitRules, MedicationDispense.modifierExtension, MedicationDispense.identifier, MedicationDispense.status, MedicationDispense.medication[x], MedicationDispense.supportingInformation, MedicationDispense.authorizingPrescription, MedicationDispense.type, MedicationDispense.type.coding, MedicationDispense.quantity, MedicationDispense.quantity.unit, MedicationDispense.dosageInstruction, MedicationDispense.dosageInstruction.modifierExtension, MedicationDispense.dosageInstruction.text, MedicationDispense.dosageInstruction.additionalInstruction, MedicationDispense.dosageInstruction.patientInstruction, MedicationDispense.substitution, MedicationDispense.substitution.modifierExtension, MedicationDispense.substitution.wasSubstituted, MedicationDispense.substitution.type | All FHIR elements must have a @value or children | `hasValue() or (children().count() > id.count())`
ext-1 | error | MedicationDispense.modifierExtension, MedicationDispense.dosageInstruction.modifierExtension, MedicationDispense.substitution.modifierExtension | Must have either extensions or value[x], not both | `extension.exists() != value.exists()`
mdd-1 | error | MedicationDispense | whenHandedOver cannot be before whenPrepared | `whenHandedOver.empty() or whenPrepared.empty() or whenHandedOver >= whenPrepared`

Differential View

Name | Flags | Card. | Type | Description & Constraints Filter: Bindings Constraints Obligations
--- | --- | --- | --- | ---
MedicationDispense |  | 0..* | MedicationDispense(4.0.1) | Dispensing a medication to a named patient
identifier |  | 0..* | Identifier | Identifiant
medication[x] | S | 1..1 |  | Médicament délivré
medicationCodeableConcept |  |  | CodeableConcept |
medicationReference |  |  | Reference(Medication - FR Medication Document(0.1.0)) |
supportingInformation | S | 0..1 | Reference(MedicationAdministration - FR Medication Administration Document(0.1.0)) | Posologie
authorizingPrescription | S | 0..1 | Reference(MedicationRequest - FR Medication Request Document(0.1.0)) | Référence de la prescription
type | S | 1..1 | CodeableConcept | Complétude de la dispensation
coding |  | 0..* | Coding | Code defined by a terminology system Binding: JdvCompletudeDispensationCisis (20260619134041) (required)
quantity | S | 1..1 | SimpleQuantity(4.0.1) | Quantité : Unité issue de EDQM Packaging / classe CON (Récipient)
unit |  | 0..1 | string | Unit representation Binding: FRValueSetEDQMDocument (0.1.0) (required)
dosageInstruction |  |  |  |
text | S | 0..1 | string | Instructions au dispensateur
additionalInstruction | S | 0..* | CodeableConcept | Instruction au patient sous forme codée
patientInstruction | S | 0..1 | string | Instructions au patient
substitution | S | 0..1 | BackboneElement | Acte de substitution
type | S | 1..1 | CodeableConcept | Code signifying whether a different drug was dispensed from what was prescribed Required Pattern: At least the following
coding |  | 1..* | Coding | Code defined by a terminology system Fixed Value: (Complex)
code |  | 1..1 | code | Symbol in syntax defined by the system Fixed Value: G
display |  | 1..1 | string | Representation defined by the system Fixed Value: Substitution autorisée par un produit générique
Documentation for this format

#### Terminology Bindings (Differential)

Path | Status | Usage | ValueSet | Version | Source
MedicationDispense.type.​coding | Base | required | JDV Completude Dispensation CISIS | 📍20260619134041 | Terminologies de Santé v1.11
MedicationDispense.quantity.​unit | Base | required | ValueSet - FR ValueSet EDQM Document | 📍0.1.0 | This IG

Snapshot ViewView

Name | Flags | Card. | Type | Description & Constraints Filter: Bindings Constraints Obligations
--- | --- | --- | --- | ---
MedicationDispense | C | 0..* | MedicationDispense(4.0.1) | Dispensing a medication to a named patient Constraints: mdd-1
id | Σ | 0..1 | id | Logical id of this artifact
meta | Σ | 0..1 | Meta | Metadata about the resource
implicitRules | ?!Σ | 0..1 | uri | A set of rules under which this content was created
language |  | 0..1 | code | Language of the resource content Binding: CommonLanguages (preferred): A human language.
Additional Bindings | Purpose
AllLanguages | Max Binding
text |  | 0..1 | Narrative | Text summary of the resource, for human interpretation This profile does not constrain the narrative in regard to content, language, or traceability to data elements
contained |  | 0..* | Resource | Contained, inline Resources
extension |  | 0..* | Extension | Additional content defined by implementations Constraints: ext-1
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored Constraints: ext-1
identifier |  | 0..* | Identifier | Identifiant
partOf |  | 0..* | Reference(Procedure) | Event that dispense is part of
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.
statusReason[x] |  | 0..1 |  | Why a 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 |  | 0..1 | CodeableConcept | Type of medication dispense Binding: MedicationDispense Category Codes (preferred): A code describing where the dispensed medication is expected to be consumed or administered.
medication[x] | S Σ | 1..1 |  | Médicament délivré Binding: SNOMEDCTMedicationCodes (example): A coded concept identifying which substance or product can be dispensed.
medicationCodeableConcept |  |  | CodeableConcept |
medicationReference |  |  | Reference(Medication - FR Medication Document(0.1.0)) |
subject | Σ | 0..1 | Reference(Patient | Group) | Who the dispense is for
context |  | 0..1 | Reference(Encounter | EpisodeOfCare) | Encounter / Episode associated with event
supportingInformation | S | 0..1 | Reference(MedicationAdministration - FR Medication Administration Document(0.1.0)) | Posologie
performer |  | 0..* | BackboneElement | Who performed event
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations Constraints: ext-1
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized Constraints: ext-1
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(Practitioner | PractitionerRole | Organization | Patient | Device | RelatedPerson) | Individual who was performing
location |  | 0..1 | Reference(Location) | Where the dispense occurred
authorizingPrescription | S | 0..1 | Reference(MedicationRequest - FR Medication Request Document(0.1.0)) | Référence de la prescription
type | S | 1..1 | CodeableConcept | Complétude de la dispensation Binding: ActPharmacySupplyType (3.0.0) (example): Indicates the type of dispensing event that is performed. For example, Trial Fill, Completion of Trial, Partial Fill, Emergency Fill, Samples, etc.
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url Constraints: ext-1
coding | Σ | 0..* | Coding | Code defined by a terminology system Binding: JdvCompletudeDispensationCisis (20260619134041) (required)
text | Σ | 0..1 | string | Plain text representation of the concept
quantity | S | 1..1 | SimpleQuantity(4.0.1) | Quantité : Unité issue de EDQM Packaging / classe CON (Récipient)
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url Constraints: ext-1
value | Σ | 0..1 | decimal | Numerical value (with implicit precision)
unit | Σ | 0..1 | string | Unit representation Binding: FRValueSetEDQMDocument (0.1.0) (required)
system | Σ C | 0..1 | uri | System that defines coded unit form
code | Σ | 0..1 | code | Coded form of the unit
daysSupply |  | 0..1 | SimpleQuantity(4.0.1) | Amount of medication expressed as a timing amount
whenPrepared | Σ | 0..1 | dateTime | When product was packaged and reviewed
whenHandedOver |  | 0..1 | dateTime | When product was given out
destination |  | 0..1 | Reference(Location) | Where the medication was sent
receiver |  | 0..* | Reference(Patient | Practitioner) | Who collected the medication
note |  | 0..* | Annotation | Information about the dispense
dosageInstruction |  | 0..* | Dosage | How the medication is to be used by the patient or administered by the caregiver
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url Constraints: ext-1
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized Constraints: ext-1
sequence | Σ | 0..1 | integer | The order of the dosage instructions
text | S Σ | 0..1 | string | Instructions au dispensateur
additionalInstruction | S Σ | 0..* | CodeableConcept | Instruction au patient sous forme codée Binding: SNOMEDCTAdditionalDosageInstructions (example): A coded concept identifying additional instructions such as "take with water" or "avoid operating heavy machinery".
patientInstruction | S Σ | 0..1 | string | Instructions au patient
timing | Σ | 0..1 | Timing | When medication should be administered
asNeeded[x] | Σ | 0..1 |  | Take "as needed" (for x) Binding: SNOMEDCTMedicationAsNeededReasonCodes (example): A coded concept identifying the precondition that should be met or evaluated prior to consuming or administering a medication dose. For example "pain", "30 minutes prior to sexual intercourse", "on flare-up" etc.
asNeededBoolean |  |  | boolean |
asNeededCodeableConcept |  |  | CodeableConcept |
site | Σ | 0..1 | CodeableConcept | Body site to administer to Binding: SNOMEDCTAnatomicalStructureForAdministrationSiteCodes (example): A coded concept describing the site location the medicine enters into or onto the body.
route | Σ | 0..1 | CodeableConcept | How drug should enter body Binding: SNOMEDCTRouteCodes (example): A coded concept describing the route or physiological path of administration of a therapeutic agent into or onto the body of a subject.
method | Σ | 0..1 | CodeableConcept | Technique for administering medication Binding: SNOMEDCTAdministrationMethodCodes (example): A coded concept describing the technique by which the medicine is administered.
doseAndRate | Σ | 0..* | Element | Amount of medication administered
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url Constraints: ext-1
type | Σ | 0..1 | CodeableConcept | The kind of dose or rate specified Binding: DoseAndRateType (example): The kind of dose or rate specified.
dose[x] | Σ | 0..1 |  | Amount of medication per dose
doseRange |  |  | Range |
doseQuantity |  |  | Quantity(SimpleQuantity) |
rate[x] | Σ | 0..1 |  | Amount of medication per unit of time
rateRatio |  |  | Ratio |
rateRange |  |  | Range |
rateQuantity |  |  | Quantity(SimpleQuantity) |
maxDosePerPeriod | Σ | 0..1 | Ratio | Upper limit on medication per unit of time
maxDosePerAdministration | Σ | 0..1 | SimpleQuantity(4.0.1) | Upper limit on medication per administration
maxDosePerLifetime | Σ | 0..1 | SimpleQuantity(4.0.1) | Upper limit on medication per lifetime of the patient
substitution | S | 0..1 | BackboneElement | Acte de substitution
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations Constraints: ext-1
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized Constraints: ext-1
wasSubstituted |  | 1..1 | boolean | Whether a substitution was or was not performed on the dispense
type | S | 1..1 | CodeableConcept | Code signifying whether a different drug was dispensed from what was prescribed Binding: ActSubstanceAdminSubstitutionCode (3.0.0) (example): A coded concept describing whether a different medicinal product may be dispensed other than the product as specified exactly in the prescription. Required Pattern: At least the following
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations
coding |  | 1..* | Coding | Code defined by a terminology system Fixed Value: (Complex)
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations
system |  | 0..1 | uri | Identity of the terminology system
version |  | 0..1 | string | Version of the system - if relevant
code |  | 1..1 | code | Symbol in syntax defined by the system Fixed Value: G
display |  | 1..1 | string | Representation defined by the system Fixed Value: Substitution autorisée par un produit générique
userSelected |  | 0..1 | boolean | If this coding was chosen directly by the user
text |  | 0..1 | string | Plain text representation of the concept
reason |  | 0..* | CodeableConcept | Why was substitution made Binding: SubstanceAdminSubstitutionReason (3.0.0) (example): A coded concept describing the reason that a different medication should (or should not) be substituted from what was prescribed.
responsibleParty |  | 0..* | Reference(Practitioner | PractitionerRole) | Who is responsible for the substitution
detectedIssue |  | 0..* | Reference(DetectedIssue) | Clinical issue with action
eventHistory |  | 0..* | Reference(Provenance) | A list of relevant lifecycle events
Documentation for this format

#### Terminology Bindings

Path | Status | Usage | ValueSet | Version | Source
MedicationDispense.language | Base | preferred | Common Languages | 📍4.0.1 | FHIR Std.
MedicationDispense.status | Base | required | Medication dispense status codes | 📍4.0.1 | FHIR Std.
MedicationDispense.statusReason[x] | Base | example | Medication dispense status reason codes | 📍4.0.1 | FHIR Std.
MedicationDispense.category | Base | preferred | Medication dispense category codes | 📍4.0.1 | FHIR Std.
MedicationDispense.medication[x] | Base | example | SNOMED CT Medication Codes | 📍4.0.1 | FHIR Std.
MedicationDispense.performer.​function | Base | example | Medication dispense performer function codes | 📍4.0.1 | FHIR Std.
MedicationDispense.type | Base | example | ActPharmacySupplyType | 📍3.0.0 | THO v7.3
MedicationDispense.type.​coding | Base | required | JDV Completude Dispensation CISIS | 📍20260619134041 | Terminologies de Santé v1.11
MedicationDispense.quantity.​unit | Base | required | ValueSet - FR ValueSet EDQM Document | 📍0.1.0 | This IG
MedicationDispense.dosageInstruction.​additionalInstruction | Base | example | SNOMED CT Additional Dosage Instructions | 📍4.0.1 | FHIR Std.
MedicationDispense.dosageInstruction.​asNeeded[x] | Base | example | SNOMED CT Medication As Needed Reason Codes | 📍4.0.1 | FHIR Std.
MedicationDispense.dosageInstruction.​site | Base | example | SNOMED CT Anatomical Structure for Administration Site Codes | 📍4.0.1 | FHIR Std.
MedicationDispense.dosageInstruction.​route | Base | example | SNOMED CT Route Codes | 📍4.0.1 | FHIR Std.
MedicationDispense.dosageInstruction.​method | Base | example | SNOMED CT Administration Method Codes | 📍4.0.1 | FHIR Std.
MedicationDispense.dosageInstruction.​doseAndRate.type | Base | example | DoseAndRateType | 📍4.0.1 | FHIR Std.
MedicationDispense.substitution.​type | Base | example | ActSubstanceAdminSubstitutionCode | 📍3.0.0 | THO v7.3
MedicationDispense.substitution.​reason | Base | example | SubstanceAdminSubstitutionReason | 📍3.0.0 | THO v7.3

#### Constraints

Id | Grade | Path(s) | Description | Expression
dom-2 | error | MedicationDispense | If the resource is contained in another resource, it SHALL NOT contain nested Resources | `contained.contained.empty()`
dom-3 | error | MedicationDispense | 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 | `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-4 | error | MedicationDispense | If 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-5 | error | MedicationDispense | If a resource is contained in another resource, it SHALL NOT have a security label | `contained.meta.security.empty()`
dom-6 | best practice | MedicationDispense | A resource should have narrative for robust management | `text.`div`.exists()`
ele-1 | error | MedicationDispense.meta, MedicationDispense.implicitRules, MedicationDispense.language, MedicationDispense.text, MedicationDispense.extension, MedicationDispense.modifierExtension, MedicationDispense.identifier, MedicationDispense.partOf, MedicationDispense.status, MedicationDispense.statusReason[x], MedicationDispense.category, MedicationDispense.medication[x], MedicationDispense.subject, MedicationDispense.context, MedicationDispense.supportingInformation, MedicationDispense.performer, MedicationDispense.performer.extension, MedicationDispense.performer.modifierExtension, MedicationDispense.performer.function, MedicationDispense.performer.actor, MedicationDispense.location, MedicationDispense.authorizingPrescription, MedicationDispense.type, MedicationDispense.type.extension, MedicationDispense.type.coding, MedicationDispense.type.text, MedicationDispense.quantity, MedicationDispense.quantity.extension, MedicationDispense.quantity.value, MedicationDispense.quantity.unit, MedicationDispense.quantity.system, MedicationDispense.quantity.code, MedicationDispense.daysSupply, MedicationDispense.whenPrepared, MedicationDispense.whenHandedOver, MedicationDispense.destination, MedicationDispense.receiver, MedicationDispense.note, MedicationDispense.dosageInstruction, MedicationDispense.dosageInstruction.extension, MedicationDispense.dosageInstruction.modifierExtension, MedicationDispense.dosageInstruction.sequence, MedicationDispense.dosageInstruction.text, MedicationDispense.dosageInstruction.additionalInstruction, MedicationDispense.dosageInstruction.patientInstruction, MedicationDispense.dosageInstruction.timing, MedicationDispense.dosageInstruction.asNeeded[x], MedicationDispense.dosageInstruction.site, MedicationDispense.dosageInstruction.route, MedicationDispense.dosageInstruction.method, MedicationDispense.dosageInstruction.doseAndRate, MedicationDispense.dosageInstruction.doseAndRate.extension, MedicationDispense.dosageInstruction.doseAndRate.type, MedicationDispense.dosageInstruction.doseAndRate.dose[x], MedicationDispense.dosageInstruction.doseAndRate.rate[x], MedicationDispense.dosageInstruction.maxDosePerPeriod, MedicationDispense.dosageInstruction.maxDosePerAdministration, MedicationDispense.dosageInstruction.maxDosePerLifetime, MedicationDispense.substitution, MedicationDispense.substitution.extension, MedicationDispense.substitution.modifierExtension, MedicationDispense.substitution.wasSubstituted, MedicationDispense.substitution.type, MedicationDispense.substitution.reason, MedicationDispense.substitution.responsibleParty, MedicationDispense.detectedIssue, MedicationDispense.eventHistory | All FHIR elements must have a @value or children | `hasValue() or (children().count() > id.count())`
ext-1 | error | MedicationDispense.extension, MedicationDispense.modifierExtension, MedicationDispense.performer.extension, MedicationDispense.performer.modifierExtension, MedicationDispense.type.extension, MedicationDispense.quantity.extension, MedicationDispense.dosageInstruction.extension, MedicationDispense.dosageInstruction.modifierExtension, MedicationDispense.dosageInstruction.doseAndRate.extension, MedicationDispense.substitution.extension, MedicationDispense.substitution.modifierExtension | Must have either extensions or value[x], not both | `extension.exists() != value.exists()`
mdd-1 | error | MedicationDispense | whenHandedOver cannot be before whenPrepared | `whenHandedOver.empty() or whenPrepared.empty() or whenHandedOver >= whenPrepared`

Summary

Mandatory: 2 elements(1 nested mandatory element)
Must-Support: 10 elements

Structures

This structure refers to these other structures:

- Medication - FR Medication Document (https://interop.esante.gouv.fr/ig/fhir/document-core/StructureDefinition/fr-medication-document|0.1.0)
- MedicationAdministration - FR Medication Administration Document (https://interop.esante.gouv.fr/ig/fhir/document-core/StructureDefinition/fr-medication-administration-document|0.1.0)
- MedicationRequest - FR Medication Request Document (https://interop.esante.gouv.fr/ig/fhir/document-core/StructureDefinition/fr-medication-request-document|0.1.0)

Other representations of profile: CSV, Excel, Schematron