NHDR Implementation Guide Release 1.0
0.1.0 - ci-build

NHDR Implementation Guide Release 1.0, published by NHDR. 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/UP-Manila-SILab/PhilHealth-NHDR-IG-Review/ and changes regularly. See the Directory of published versions

Resource Profile: PH MedicationDispense

Official URL: https://nhdr.gov.ph/fhir/StructureDefinition/PH-MedicationDispense Version: 0.1.0
Standards status: Draft Computable Name: PH_MedicationDispense

Copyright/Legal: Used by permission of HL7 International, all rights reserved Creative Commons License

Indicates that a medication product is to be or has been dispensed for a named person or patient.

Usages:

  • This Profile is not used by any profiles in this Implementation Guide

You can also check for usages in the FHIR IG Statistics

Formal Views of Profile Content

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

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. MedicationDispense C 0..* MedicationDispense Dispensing a medication to a named patient
Constraints: mdd-1
... 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] Σ 1..1 What medication was supplied
Binding: SNOMEDCTMedicationCodes (example): A coded concept identifying which substance or product can be dispensed.
.... medicationCodeableConcept CodeableConcept
.... medicationReference Reference(Medication)

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

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 **ALL** elements All FHIR elements must have a @value or children hasValue() or (children().count() > id.count())
ext-1 error **ALL** extensions 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

This structure is derived from MedicationDispense

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. MedicationDispense 0..* MedicationDispense Dispensing a medication to a named patient
... meta
.... Slices for extension Content/Rules for all slices
..... extension:hfRecordedDate 0..1 dateTime The recorded date indicating when the record was uploaded by the health facility.
URL: https://nhdr.gov.ph/fhir/StructureDefinition/HFRecordedDate
..... extension:hfLastUpdated 0..* dateTime The date indicating when the record was last updated by the health facility.
URL: https://nhdr.gov.ph/fhir/StructureDefinition/HFLastUpdated
.... lastUpdated 0..1 instant When the resource was uploaded to the NHDR.
... implicitRules 0..0 A set of rules under which this content was created
... language 0..0 Language of the resource content
... text 0..0 Text summary of the resource, for human interpretation
... contained 0..0 Contained, inline Resources
... extension 0..0 Extension
... modifierExtension 0..0 Extension
... identifier 0..0 External identifier
... partOf 0..0 Event that dispense is part of
... statusReason[x] 0..0 Why a dispense was not performed
... category 0..0 Type of medication dispense
... subject 0..0 Who the dispense is for
... context 0..0 Encounter / Episode associated with event
... supportingInformation 0..0 Information that supports the dispensing of the medication
... performer 0..0 Who performed event
... location 0..0 Where the dispense occurred
... authorizingPrescription 0..0 Medication order that authorizes the dispense
... type 0..0 Trial fill, partial fill, emergency fill, etc.
... daysSupply 0..0 Amount of medication expressed as a timing amount
... whenPrepared 0..0 When product was packaged and reviewed
... destination 0..0 Where the medication was sent
... receiver 0..0 Who collected the medication
... note 0..0 Information about the dispense
... dosageInstruction
.... extension 0..0 Extension
.... modifierExtension 0..0 Extension
.... sequence 0..0 The order of the dosage instructions
.... text 0..0 Free text dosage instructions e.g. SIG
.... additionalInstruction 0..0 Supplemental instruction or warnings to the patient - e.g. "with meals", "may cause drowsiness"
.... patientInstruction 0..0 Patient or consumer oriented instructions
.... timing
..... id 0..0 Unique id for inter-element referencing
..... extension 0..0 Extension
..... modifierExtension 0..0 Extension
..... event 0..0 When the event occurs
..... repeat
...... id 0..0 Unique id for inter-element referencing
...... extension 0..0 Extension
...... bounds[x] 0..0 Length/Range of lengths, or (Start and/or end) limits
...... count 0..0 Number of times to repeat
...... countMax 0..0 Maximum number of times to repeat
...... duration 0..0 How long when it happens
...... durationMax 0..0 How long when it happens (Max)
...... durationUnit 0..0 s | min | h | d | wk | mo | a - unit of time (UCUM)
...... frequencyMax 0..0 Event occurs up to frequencyMax times per period
...... period 0..0 Event occurs frequency times per period
...... periodMax 0..0 Upper limit of period (3-4 hours)
...... periodUnit 0..0 s | min | h | d | wk | mo | a - unit of time (UCUM)
...... dayOfWeek 0..0 mon | tue | wed | thu | fri | sat | sun
...... timeOfDay 0..0 Time of day for action
...... when 0..0 Code for time period of occurrence
...... offset 0..0 Minutes from event (before or after)
..... code 0..0 BID | TID | QID | AM | PM | QD | QOD | +
.... asNeeded[x] 0..0 Take "as needed" (for x)
.... site 0..0 Body site to administer to
.... method 0..0 Technique for administering medication
.... doseAndRate
..... id 0..0 Unique id for inter-element referencing
..... extension 0..0 Extension
..... type 0..0 The kind of dose or rate specified
..... rate[x] 0..0 Amount of medication per unit of time
.... maxDosePerPeriod 0..0 Upper limit on medication per unit of time
.... maxDosePerAdministration 0..0 Upper limit on medication per administration
.... maxDosePerLifetime 0..0 Upper limit on medication per lifetime of the patient
... substitution 0..0 Whether a substitution was performed on the dispense
... detectedIssue 0..0 Clinical issue with action
... eventHistory 0..0 A list of relevant lifecycle events

doco Documentation for this format
NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. MedicationDispense C 0..* MedicationDispense 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
.... 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
..... extension:hfRecordedDate 0..1 dateTime The recorded date indicating when the record was uploaded by the health facility.
URL: https://nhdr.gov.ph/fhir/StructureDefinition/HFRecordedDate
..... extension:hfLastUpdated 0..* dateTime The date indicating when the record was last updated by the health facility.
URL: https://nhdr.gov.ph/fhir/StructureDefinition/HFLastUpdated
.... versionId Σ 0..1 id Version specific identifier
.... lastUpdated Σ 0..1 instant When the resource was uploaded to the NHDR.
.... source Σ 0..1 uri Identifies where the resource comes from
.... profile Σ 0..* canonical(StructureDefinition) Profiles this resource claims to conform to
.... security Σ 0..* Coding Security Labels applied to this resource
Binding: All Security Labels (extensible): Security Labels from the Healthcare Privacy and Security Classification System.
.... tag Σ 0..* Coding Tags applied to this resource
Binding: CommonTags (example): Codes that represent various types of tags, commonly workflow-related; e.g. "Needs review by Dr. Jones".
... 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.
.... medicationCodeableConcept CodeableConcept
.... medicationReference Reference(Medication)
... quantity 0..1 SimpleQuantity(4.0.1) Amount dispensed
... whenHandedOver 0..1 dateTime When product was given out
... 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..0 Extension
Slice: Unordered, Open by value:url
.... timing Σ 0..1 Timing When medication should be administered
..... extension 0..0 Extension
Slice: Unordered, Open by value:url
..... repeat ΣC 0..1 Element When the event is to occur
Constraints: tim-1, tim-2, tim-4, tim-5, tim-6, tim-7, tim-8, tim-9, tim-10
...... extension 0..0 Extension
Slice: Unordered, Open by value:url
...... frequency Σ 0..1 positiveInt Event occurs frequency times per period
.... 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.
.... doseAndRate Σ 0..* Element Amount of medication administered
..... extension 0..0 Extension
Slice: Unordered, Open by value:url
..... dose[x] Σ 0..1 Amount of medication per dose
...... doseRange Range
...... doseQuantity Quantity(SimpleQuantity)

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
MedicationDispense.meta.​security Base extensible SecurityLabels 📍4.0.1 FHIR Std.
MedicationDispense.meta.​tag Base example Common Tags 📍4.0.1 FHIR Std.
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.performer.​function Base example Medication dispense performer function codes 📍4.0.1 FHIR Std.
MedicationDispense.dosageInstruction.​route Base example SNOMED CT Route Codes 📍4.0.1 FHIR Std.
MedicationDispense.substitution.​type Base example ActSubstanceAdminSubstitutionCode 📦3.0.0 THO v7.0
MedicationDispense.substitution.​reason Base example SubstanceAdminSubstitutionReason 📦3.0.0 THO v7.0

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 **ALL** elements All FHIR elements must have a @value or children hasValue() or (children().count() > id.count())
ext-1 error **ALL** extensions 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
tim-1 error MedicationDispense.dosageInstruction.timing.repeat if there's a duration, there needs to be duration units duration.empty() or durationUnit.exists()
tim-2 error MedicationDispense.dosageInstruction.timing.repeat if there's a period, there needs to be period units period.empty() or periodUnit.exists()
tim-4 error MedicationDispense.dosageInstruction.timing.repeat duration SHALL be a non-negative value duration.exists() implies duration >= 0
tim-5 error MedicationDispense.dosageInstruction.timing.repeat period SHALL be a non-negative value period.exists() implies period >= 0
tim-6 error MedicationDispense.dosageInstruction.timing.repeat If there's a periodMax, there must be a period periodMax.empty() or period.exists()
tim-7 error MedicationDispense.dosageInstruction.timing.repeat If there's a durationMax, there must be a duration durationMax.empty() or duration.exists()
tim-8 error MedicationDispense.dosageInstruction.timing.repeat If there's a countMax, there must be a count countMax.empty() or count.exists()
tim-9 error MedicationDispense.dosageInstruction.timing.repeat If there's an offset, there must be a when (and not C, CM, CD, CV) offset.empty() or (when.exists() and ((when in ('C' | 'CM' | 'CD' | 'CV')).not()))
tim-10 error MedicationDispense.dosageInstruction.timing.repeat If there's a timeOfDay, there cannot be a when, or vice versa timeOfDay.empty() or when.empty()

This structure is derived from MedicationDispense

Summary

Prohibited: 62 elements

Extensions

This structure refers to these extensions:

Key Elements View

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. MedicationDispense C 0..* MedicationDispense Dispensing a medication to a named patient
Constraints: mdd-1
... 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] Σ 1..1 What medication was supplied
Binding: SNOMEDCTMedicationCodes (example): A coded concept identifying which substance or product can be dispensed.
.... medicationCodeableConcept CodeableConcept
.... medicationReference Reference(Medication)

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

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 **ALL** elements All FHIR elements must have a @value or children hasValue() or (children().count() > id.count())
ext-1 error **ALL** extensions 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

This structure is derived from MedicationDispense

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. MedicationDispense 0..* MedicationDispense Dispensing a medication to a named patient
... meta
.... Slices for extension Content/Rules for all slices
..... extension:hfRecordedDate 0..1 dateTime The recorded date indicating when the record was uploaded by the health facility.
URL: https://nhdr.gov.ph/fhir/StructureDefinition/HFRecordedDate
..... extension:hfLastUpdated 0..* dateTime The date indicating when the record was last updated by the health facility.
URL: https://nhdr.gov.ph/fhir/StructureDefinition/HFLastUpdated
.... lastUpdated 0..1 instant When the resource was uploaded to the NHDR.
... implicitRules 0..0 A set of rules under which this content was created
... language 0..0 Language of the resource content
... text 0..0 Text summary of the resource, for human interpretation
... contained 0..0 Contained, inline Resources
... extension 0..0 Extension
... modifierExtension 0..0 Extension
... identifier 0..0 External identifier
... partOf 0..0 Event that dispense is part of
... statusReason[x] 0..0 Why a dispense was not performed
... category 0..0 Type of medication dispense
... subject 0..0 Who the dispense is for
... context 0..0 Encounter / Episode associated with event
... supportingInformation 0..0 Information that supports the dispensing of the medication
... performer 0..0 Who performed event
... location 0..0 Where the dispense occurred
... authorizingPrescription 0..0 Medication order that authorizes the dispense
... type 0..0 Trial fill, partial fill, emergency fill, etc.
... daysSupply 0..0 Amount of medication expressed as a timing amount
... whenPrepared 0..0 When product was packaged and reviewed
... destination 0..0 Where the medication was sent
... receiver 0..0 Who collected the medication
... note 0..0 Information about the dispense
... dosageInstruction
.... extension 0..0 Extension
.... modifierExtension 0..0 Extension
.... sequence 0..0 The order of the dosage instructions
.... text 0..0 Free text dosage instructions e.g. SIG
.... additionalInstruction 0..0 Supplemental instruction or warnings to the patient - e.g. "with meals", "may cause drowsiness"
.... patientInstruction 0..0 Patient or consumer oriented instructions
.... timing
..... id 0..0 Unique id for inter-element referencing
..... extension 0..0 Extension
..... modifierExtension 0..0 Extension
..... event 0..0 When the event occurs
..... repeat
...... id 0..0 Unique id for inter-element referencing
...... extension 0..0 Extension
...... bounds[x] 0..0 Length/Range of lengths, or (Start and/or end) limits
...... count 0..0 Number of times to repeat
...... countMax 0..0 Maximum number of times to repeat
...... duration 0..0 How long when it happens
...... durationMax 0..0 How long when it happens (Max)
...... durationUnit 0..0 s | min | h | d | wk | mo | a - unit of time (UCUM)
...... frequencyMax 0..0 Event occurs up to frequencyMax times per period
...... period 0..0 Event occurs frequency times per period
...... periodMax 0..0 Upper limit of period (3-4 hours)
...... periodUnit 0..0 s | min | h | d | wk | mo | a - unit of time (UCUM)
...... dayOfWeek 0..0 mon | tue | wed | thu | fri | sat | sun
...... timeOfDay 0..0 Time of day for action
...... when 0..0 Code for time period of occurrence
...... offset 0..0 Minutes from event (before or after)
..... code 0..0 BID | TID | QID | AM | PM | QD | QOD | +
.... asNeeded[x] 0..0 Take "as needed" (for x)
.... site 0..0 Body site to administer to
.... method 0..0 Technique for administering medication
.... doseAndRate
..... id 0..0 Unique id for inter-element referencing
..... extension 0..0 Extension
..... type 0..0 The kind of dose or rate specified
..... rate[x] 0..0 Amount of medication per unit of time
.... maxDosePerPeriod 0..0 Upper limit on medication per unit of time
.... maxDosePerAdministration 0..0 Upper limit on medication per administration
.... maxDosePerLifetime 0..0 Upper limit on medication per lifetime of the patient
... substitution 0..0 Whether a substitution was performed on the dispense
... detectedIssue 0..0 Clinical issue with action
... eventHistory 0..0 A list of relevant lifecycle events

doco Documentation for this format

Snapshot View

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. MedicationDispense C 0..* MedicationDispense 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
.... 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
..... extension:hfRecordedDate 0..1 dateTime The recorded date indicating when the record was uploaded by the health facility.
URL: https://nhdr.gov.ph/fhir/StructureDefinition/HFRecordedDate
..... extension:hfLastUpdated 0..* dateTime The date indicating when the record was last updated by the health facility.
URL: https://nhdr.gov.ph/fhir/StructureDefinition/HFLastUpdated
.... versionId Σ 0..1 id Version specific identifier
.... lastUpdated Σ 0..1 instant When the resource was uploaded to the NHDR.
.... source Σ 0..1 uri Identifies where the resource comes from
.... profile Σ 0..* canonical(StructureDefinition) Profiles this resource claims to conform to
.... security Σ 0..* Coding Security Labels applied to this resource
Binding: All Security Labels (extensible): Security Labels from the Healthcare Privacy and Security Classification System.
.... tag Σ 0..* Coding Tags applied to this resource
Binding: CommonTags (example): Codes that represent various types of tags, commonly workflow-related; e.g. "Needs review by Dr. Jones".
... 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.
.... medicationCodeableConcept CodeableConcept
.... medicationReference Reference(Medication)
... quantity 0..1 SimpleQuantity(4.0.1) Amount dispensed
... whenHandedOver 0..1 dateTime When product was given out
... 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..0 Extension
Slice: Unordered, Open by value:url
.... timing Σ 0..1 Timing When medication should be administered
..... extension 0..0 Extension
Slice: Unordered, Open by value:url
..... repeat ΣC 0..1 Element When the event is to occur
Constraints: tim-1, tim-2, tim-4, tim-5, tim-6, tim-7, tim-8, tim-9, tim-10
...... extension 0..0 Extension
Slice: Unordered, Open by value:url
...... frequency Σ 0..1 positiveInt Event occurs frequency times per period
.... 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.
.... doseAndRate Σ 0..* Element Amount of medication administered
..... extension 0..0 Extension
Slice: Unordered, Open by value:url
..... dose[x] Σ 0..1 Amount of medication per dose
...... doseRange Range
...... doseQuantity Quantity(SimpleQuantity)

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
MedicationDispense.meta.​security Base extensible SecurityLabels 📍4.0.1 FHIR Std.
MedicationDispense.meta.​tag Base example Common Tags 📍4.0.1 FHIR Std.
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.performer.​function Base example Medication dispense performer function codes 📍4.0.1 FHIR Std.
MedicationDispense.dosageInstruction.​route Base example SNOMED CT Route Codes 📍4.0.1 FHIR Std.
MedicationDispense.substitution.​type Base example ActSubstanceAdminSubstitutionCode 📦3.0.0 THO v7.0
MedicationDispense.substitution.​reason Base example SubstanceAdminSubstitutionReason 📦3.0.0 THO v7.0

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 **ALL** elements All FHIR elements must have a @value or children hasValue() or (children().count() > id.count())
ext-1 error **ALL** extensions 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
tim-1 error MedicationDispense.dosageInstruction.timing.repeat if there's a duration, there needs to be duration units duration.empty() or durationUnit.exists()
tim-2 error MedicationDispense.dosageInstruction.timing.repeat if there's a period, there needs to be period units period.empty() or periodUnit.exists()
tim-4 error MedicationDispense.dosageInstruction.timing.repeat duration SHALL be a non-negative value duration.exists() implies duration >= 0
tim-5 error MedicationDispense.dosageInstruction.timing.repeat period SHALL be a non-negative value period.exists() implies period >= 0
tim-6 error MedicationDispense.dosageInstruction.timing.repeat If there's a periodMax, there must be a period periodMax.empty() or period.exists()
tim-7 error MedicationDispense.dosageInstruction.timing.repeat If there's a durationMax, there must be a duration durationMax.empty() or duration.exists()
tim-8 error MedicationDispense.dosageInstruction.timing.repeat If there's a countMax, there must be a count countMax.empty() or count.exists()
tim-9 error MedicationDispense.dosageInstruction.timing.repeat If there's an offset, there must be a when (and not C, CM, CD, CV) offset.empty() or (when.exists() and ((when in ('C' | 'CM' | 'CD' | 'CV')).not()))
tim-10 error MedicationDispense.dosageInstruction.timing.repeat If there's a timeOfDay, there cannot be a when, or vice versa timeOfDay.empty() or when.empty()

This structure is derived from MedicationDispense

Summary

Prohibited: 62 elements

Extensions

This structure refers to these extensions:

 

Other representations of profile: CSV, Excel, Schematron