Ethiopia FHIR Implementation Guide - HIV Treatment & Care Services
1.0.0 - STU1 Ethiopia flag

Ethiopia FHIR Implementation Guide - HIV Treatment & Care Services, published by Jembi Health Systems. This guide is not an authorized publication; it is the continuous build for version 1.0.0 built by the FHIR (HL7® FHIR® Standard) CI Build. This version is based on the current content of https://github.com/jembi/ethiopia-hiv/ and changes regularly. See the Directory of published versions

Resource Profile: Medication Dispense - ARV

Official URL: http://moh.gov.et/fhir/hiv/StructureDefinition/arv-medication-dispense Version: 1.0.0
Active as of 2024-09-10 Computable Name: ARVDrugDispensation

Used to represent dispensed ARV medication prescribed to a patient.

Usage:

Formal Views of Profile Content

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

This structure is derived from GenericDrugDispensation

NameFlagsCard.TypeDescription & Constraintsdoco
.. MedicationDispense 0..* GenericDrugDispensation Dispensing a medication to a named patient
... medication[x] 1..1 Reference(Medication) What medication was supplied
... Slices for medication[x] Content/Rules for all slices
.... medication[x]:medicationReference 1..1 Reference(Medication - Represents an ARV Regimen) What medication was supplied
... authorizingPrescription 1..1 Reference(Medication Request - ARV) Medication order that authorizes the dispense
.... system 1..1 uri System that defines coded unit form
Fixed Value: http://terminology.hl7.org/CodeSystem/v3-orderableDrugForm
.... code 1..1 code Coded form of the unit
Fixed Value: TAB
.... unit 1..1 string Unit representation
Required Pattern: TAB
... daysSupply 1..1 SimpleQuantity Amount of medication expressed as a timing amount
Required Pattern: At least the following
.... system 1..1 uri System that defines coded unit form
Fixed Value: http://unitsofmeasure.org
.... code 1..1 code Coded form of the unit
Fixed Value: d
.... unit 1..1 string Unit representation
Required Pattern: Days

doco Documentation for this format
NameFlagsCard.TypeDescription & Constraintsdoco
.. MedicationDispense C 0..* GenericDrugDispensation Dispensing a medication to a named patient
mdd-1: whenHandedOver cannot be before whenPrepared
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
... modifierExtension ?! 0..* Extension Extensions that cannot be ignored
... 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]:medicationReference Σ 1..1 Reference(Medication - Represents an ARV Regimen) What medication was supplied
.... medication[x]:medicationCodeableConcept Σ 0..1 CodeableConcept What medication was supplied
Binding: SNOMEDCTMedicationCodes (example): A coded concept identifying which substance or product can be dispensed.

..... text Σ 1..1 string Plain text representation of the concept
... subject Σ 1..1 Reference(Patient) Who the dispense is for
... context 1..1 Reference(Encounter - Initiated By The Facility Providing the Service) Encounter / Episode associated with event
... authorizingPrescription 1..1 Reference(Medication Request - ARV) Medication order that authorizes the dispense
... quantity 1..1 SimpleQuantity Amount dispensed
Required Pattern: At least the following
.... system 1..1 uri System that defines coded unit form
Fixed Value: http://terminology.hl7.org/CodeSystem/v3-orderableDrugForm
.... code 1..1 code Coded form of the unit
Fixed Value: TAB
.... value Σ 1..1 decimal Numerical value (with implicit precision)
.... unit Σ 1..1 string Unit representation
Required Pattern: TAB
.... system ΣC 1..1 uri System that defines coded unit form
.... code Σ 1..1 code Coded form of the unit
... daysSupply 1..1 SimpleQuantity Amount of medication expressed as a timing amount
Required Pattern: At least the following
.... system 1..1 uri System that defines coded unit form
Fixed Value: http://unitsofmeasure.org
.... code 1..1 code Coded form of the unit
Fixed Value: d
.... value Σ 1..1 decimal Numerical value (with implicit precision)
.... unit Σ 1..1 string Unit representation
Required Pattern: Days
.... system ΣC 1..1 uri System that defines coded unit form
.... code Σ 1..1 code Coded form of the unit

doco Documentation for this format

Terminology Bindings

PathConformanceValueSetURI
MedicationDispense.statusrequiredMedicationDispense Status Codes
http://hl7.org/fhir/ValueSet/medicationdispense-status|4.0.1
from the FHIR Standard
MedicationDispense.medication[x]:medicationCodeableConceptexampleSNOMEDCTMedicationCodes
http://hl7.org/fhir/ValueSet/medication-codes
from the FHIR Standard

Constraints

IdGradePath(s)DetailsRequirements
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
NameFlagsCard.TypeDescription & Constraintsdoco
.. MedicationDispense C 0..* GenericDrugDispensation Dispensing a medication to a named patient
mdd-1: whenHandedOver cannot be before whenPrepared
... 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 BindingsPurpose
AllLanguages Max Binding
... text 0..1 Narrative Text summary of the resource, for human interpretation
... contained 0..* Resource Contained, inline Resources
... extension 0..* Extension Additional content defined by implementations
... modifierExtension ?! 0..* Extension Extensions that cannot be ignored
... identifier 0..* Identifier External identifier
... 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.

... Slices for medication[x] Σ 1..1 Reference(Medication) What medication was supplied
Slice: Unordered, Closed by type:$this
.... medication[x]:medicationReference Σ 1..1 Reference(Medication - Represents an ARV Regimen) What medication was supplied
.... medication[x]:medicationCodeableConcept Σ 0..1 CodeableConcept What medication was supplied
Binding: SNOMEDCTMedicationCodes (example): A coded concept identifying which substance or product can be dispensed.

..... 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..* StrictCoding A reference to a code defined by a terminology system
..... text Σ 1..1 string Plain text representation of the concept
... subject Σ 1..1 Reference(Patient) Who the dispense is for
... context 1..1 Reference(Encounter - Initiated By The Facility Providing the Service) Encounter / Episode associated with event
... supportingInformation 0..* Reference(Resource) Information that supports the dispensing of the medication
... performer 0..* BackboneElement Who performed event
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... 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 1..1 Reference(Medication Request - ARV) Medication order that authorizes the dispense
... type 0..1 CodeableConcept Trial fill, partial fill, emergency fill, etc.
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 SimpleQuantity Amount dispensed
Required Pattern: At least the following
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
.... value 0..1 decimal Numerical value (with implicit precision)
.... comparator 0..1 code < | <= | >= | > - how to understand the value
.... unit 0..1 string Unit representation
.... system 1..1 uri System that defines coded unit form
Fixed Value: http://terminology.hl7.org/CodeSystem/v3-orderableDrugForm
.... code 1..1 code Coded form of the unit
Fixed Value: TAB
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
.... value Σ 1..1 decimal Numerical value (with implicit precision)
.... unit Σ 1..1 string Unit representation
Required Pattern: TAB
.... system ΣC 1..1 uri System that defines coded unit form
.... code Σ 1..1 code Coded form of the unit
... daysSupply 1..1 SimpleQuantity Amount of medication expressed as a timing amount
Required Pattern: At least the following
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
.... value 0..1 decimal Numerical value (with implicit precision)
.... comparator 0..1 code < | <= | >= | > - how to understand the value
.... unit 0..1 string Unit representation
.... system 1..1 uri System that defines coded unit form
Fixed Value: http://unitsofmeasure.org
.... code 1..1 code Coded form of the unit
Fixed Value: d
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
.... value Σ 1..1 decimal Numerical value (with implicit precision)
.... unit Σ 1..1 string Unit representation
Required Pattern: Days
.... system ΣC 1..1 uri System that defines coded unit form
.... code Σ 1..1 code Coded form of the unit
... 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
... substitution 0..1 BackboneElement Whether a substitution was performed on the dispense
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... wasSubstituted 1..1 boolean Whether a substitution was or was not performed on the dispense
.... type 0..1 CodeableConcept Code signifying whether a different drug was dispensed from what was prescribed
Binding: ActSubstanceAdminSubstitutionCode (example): A coded concept describing whether a different medicinal product may be dispensed other than the product as specified exactly in the prescription.

.... reason 0..* CodeableConcept Why was substitution made
Binding: SubstanceAdminSubstitutionReason (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

doco Documentation for this format

Terminology Bindings

PathConformanceValueSetURI
MedicationDispense.languagepreferredCommonLanguages
Additional Bindings Purpose
AllLanguages Max Binding
http://hl7.org/fhir/ValueSet/languages
from the FHIR Standard
MedicationDispense.statusrequiredMedicationDispense Status Codes
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.medication[x]:medicationCodeableConceptexampleSNOMEDCTMedicationCodes
http://hl7.org/fhir/ValueSet/medication-codes
from the FHIR Standard
MedicationDispense.performer.functionexampleMedicationDispense Performer Function Codes
http://hl7.org/fhir/ValueSet/medicationdispense-performer-function
from the FHIR Standard
MedicationDispense.typeexampleActPharmacySupplyType
http://terminology.hl7.org/ValueSet/v3-ActPharmacySupplyType
MedicationDispense.substitution.typeexampleActSubstanceAdminSubstitutionCode
http://terminology.hl7.org/ValueSet/v3-ActSubstanceAdminSubstitutionCode
MedicationDispense.substitution.reasonexampleSubstanceAdminSubstitutionReason
http://terminology.hl7.org/ValueSet/v3-SubstanceAdminSubstitutionReason

Constraints

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

Differential View

This structure is derived from GenericDrugDispensation

NameFlagsCard.TypeDescription & Constraintsdoco
.. MedicationDispense 0..* GenericDrugDispensation Dispensing a medication to a named patient
... medication[x] 1..1 Reference(Medication) What medication was supplied
... Slices for medication[x] Content/Rules for all slices
.... medication[x]:medicationReference 1..1 Reference(Medication - Represents an ARV Regimen) What medication was supplied
... authorizingPrescription 1..1 Reference(Medication Request - ARV) Medication order that authorizes the dispense
.... system 1..1 uri System that defines coded unit form
Fixed Value: http://terminology.hl7.org/CodeSystem/v3-orderableDrugForm
.... code 1..1 code Coded form of the unit
Fixed Value: TAB
.... unit 1..1 string Unit representation
Required Pattern: TAB
... daysSupply 1..1 SimpleQuantity Amount of medication expressed as a timing amount
Required Pattern: At least the following
.... system 1..1 uri System that defines coded unit form
Fixed Value: http://unitsofmeasure.org
.... code 1..1 code Coded form of the unit
Fixed Value: d
.... unit 1..1 string Unit representation
Required Pattern: Days

doco Documentation for this format

Key Elements View

NameFlagsCard.TypeDescription & Constraintsdoco
.. MedicationDispense C 0..* GenericDrugDispensation Dispensing a medication to a named patient
mdd-1: whenHandedOver cannot be before whenPrepared
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
... modifierExtension ?! 0..* Extension Extensions that cannot be ignored
... 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]:medicationReference Σ 1..1 Reference(Medication - Represents an ARV Regimen) What medication was supplied
.... medication[x]:medicationCodeableConcept Σ 0..1 CodeableConcept What medication was supplied
Binding: SNOMEDCTMedicationCodes (example): A coded concept identifying which substance or product can be dispensed.

..... text Σ 1..1 string Plain text representation of the concept
... subject Σ 1..1 Reference(Patient) Who the dispense is for
... context 1..1 Reference(Encounter - Initiated By The Facility Providing the Service) Encounter / Episode associated with event
... authorizingPrescription 1..1 Reference(Medication Request - ARV) Medication order that authorizes the dispense
... quantity 1..1 SimpleQuantity Amount dispensed
Required Pattern: At least the following
.... system 1..1 uri System that defines coded unit form
Fixed Value: http://terminology.hl7.org/CodeSystem/v3-orderableDrugForm
.... code 1..1 code Coded form of the unit
Fixed Value: TAB
.... value Σ 1..1 decimal Numerical value (with implicit precision)
.... unit Σ 1..1 string Unit representation
Required Pattern: TAB
.... system ΣC 1..1 uri System that defines coded unit form
.... code Σ 1..1 code Coded form of the unit
... daysSupply 1..1 SimpleQuantity Amount of medication expressed as a timing amount
Required Pattern: At least the following
.... system 1..1 uri System that defines coded unit form
Fixed Value: http://unitsofmeasure.org
.... code 1..1 code Coded form of the unit
Fixed Value: d
.... value Σ 1..1 decimal Numerical value (with implicit precision)
.... unit Σ 1..1 string Unit representation
Required Pattern: Days
.... system ΣC 1..1 uri System that defines coded unit form
.... code Σ 1..1 code Coded form of the unit

doco Documentation for this format

Terminology Bindings

PathConformanceValueSetURI
MedicationDispense.statusrequiredMedicationDispense Status Codes
http://hl7.org/fhir/ValueSet/medicationdispense-status|4.0.1
from the FHIR Standard
MedicationDispense.medication[x]:medicationCodeableConceptexampleSNOMEDCTMedicationCodes
http://hl7.org/fhir/ValueSet/medication-codes
from the FHIR Standard

Constraints

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

Snapshot View

NameFlagsCard.TypeDescription & Constraintsdoco
.. MedicationDispense C 0..* GenericDrugDispensation Dispensing a medication to a named patient
mdd-1: whenHandedOver cannot be before whenPrepared
... 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 BindingsPurpose
AllLanguages Max Binding
... text 0..1 Narrative Text summary of the resource, for human interpretation
... contained 0..* Resource Contained, inline Resources
... extension 0..* Extension Additional content defined by implementations
... modifierExtension ?! 0..* Extension Extensions that cannot be ignored
... identifier 0..* Identifier External identifier
... 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.

... Slices for medication[x] Σ 1..1 Reference(Medication) What medication was supplied
Slice: Unordered, Closed by type:$this
.... medication[x]:medicationReference Σ 1..1 Reference(Medication - Represents an ARV Regimen) What medication was supplied
.... medication[x]:medicationCodeableConcept Σ 0..1 CodeableConcept What medication was supplied
Binding: SNOMEDCTMedicationCodes (example): A coded concept identifying which substance or product can be dispensed.

..... 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..* StrictCoding A reference to a code defined by a terminology system
..... text Σ 1..1 string Plain text representation of the concept
... subject Σ 1..1 Reference(Patient) Who the dispense is for
... context 1..1 Reference(Encounter - Initiated By The Facility Providing the Service) Encounter / Episode associated with event
... supportingInformation 0..* Reference(Resource) Information that supports the dispensing of the medication
... performer 0..* BackboneElement Who performed event
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... 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 1..1 Reference(Medication Request - ARV) Medication order that authorizes the dispense
... type 0..1 CodeableConcept Trial fill, partial fill, emergency fill, etc.
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 SimpleQuantity Amount dispensed
Required Pattern: At least the following
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
.... value 0..1 decimal Numerical value (with implicit precision)
.... comparator 0..1 code < | <= | >= | > - how to understand the value
.... unit 0..1 string Unit representation
.... system 1..1 uri System that defines coded unit form
Fixed Value: http://terminology.hl7.org/CodeSystem/v3-orderableDrugForm
.... code 1..1 code Coded form of the unit
Fixed Value: TAB
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
.... value Σ 1..1 decimal Numerical value (with implicit precision)
.... unit Σ 1..1 string Unit representation
Required Pattern: TAB
.... system ΣC 1..1 uri System that defines coded unit form
.... code Σ 1..1 code Coded form of the unit
... daysSupply 1..1 SimpleQuantity Amount of medication expressed as a timing amount
Required Pattern: At least the following
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
.... value 0..1 decimal Numerical value (with implicit precision)
.... comparator 0..1 code < | <= | >= | > - how to understand the value
.... unit 0..1 string Unit representation
.... system 1..1 uri System that defines coded unit form
Fixed Value: http://unitsofmeasure.org
.... code 1..1 code Coded form of the unit
Fixed Value: d
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
.... value Σ 1..1 decimal Numerical value (with implicit precision)
.... unit Σ 1..1 string Unit representation
Required Pattern: Days
.... system ΣC 1..1 uri System that defines coded unit form
.... code Σ 1..1 code Coded form of the unit
... 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
... substitution 0..1 BackboneElement Whether a substitution was performed on the dispense
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... wasSubstituted 1..1 boolean Whether a substitution was or was not performed on the dispense
.... type 0..1 CodeableConcept Code signifying whether a different drug was dispensed from what was prescribed
Binding: ActSubstanceAdminSubstitutionCode (example): A coded concept describing whether a different medicinal product may be dispensed other than the product as specified exactly in the prescription.

.... reason 0..* CodeableConcept Why was substitution made
Binding: SubstanceAdminSubstitutionReason (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

doco Documentation for this format

Terminology Bindings

PathConformanceValueSetURI
MedicationDispense.languagepreferredCommonLanguages
Additional Bindings Purpose
AllLanguages Max Binding
http://hl7.org/fhir/ValueSet/languages
from the FHIR Standard
MedicationDispense.statusrequiredMedicationDispense Status Codes
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.medication[x]:medicationCodeableConceptexampleSNOMEDCTMedicationCodes
http://hl7.org/fhir/ValueSet/medication-codes
from the FHIR Standard
MedicationDispense.performer.functionexampleMedicationDispense Performer Function Codes
http://hl7.org/fhir/ValueSet/medicationdispense-performer-function
from the FHIR Standard
MedicationDispense.typeexampleActPharmacySupplyType
http://terminology.hl7.org/ValueSet/v3-ActPharmacySupplyType
MedicationDispense.substitution.typeexampleActSubstanceAdminSubstitutionCode
http://terminology.hl7.org/ValueSet/v3-ActSubstanceAdminSubstitutionCode
MedicationDispense.substitution.reasonexampleSubstanceAdminSubstitutionReason
http://terminology.hl7.org/ValueSet/v3-SubstanceAdminSubstitutionReason

Constraints

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

 

Other representations of profile: CSV, Excel, Schematron