This page is part of the FHIR Specification (v1.2.0: STU 3 Draft). The current version which supercedes this version is 5.0.0. For a full list of available versions, see the Directory of published versions . Page versions: R5 R4B R4 R3 R2
Detailed Descriptions for the elements in the MedicationAdministration resource.
MedicationAdministration | |
Definition | Describes the event of a patient consuming or otherwise being administered a medication. This may be as simple as swallowing a tablet or it may be a long running infusion. Related resources tie this event to the authorizing prescription, and the specific encounter between patient and health care practitioner. |
Control | 1..1 |
Summary | true |
Invariants | Defined on this element mad-2: Reason not given is only permitted if wasNotGiven is true (expression: reasonNotGiven.empty() or wasNotGiven = 'true', xpath: not(exists(f:reasonNotGiven) and f:wasNotGiven/@value=false())) mad-3: Reason given is only permitted if wasNotGiven is false (expression: reasonGiven.empty() or wasNotGiven = 'false', xpath: not(exists(f:reasonGiven) and f:wasNotGiven/@value=true())) |
MedicationAdministration.identifier | |
Definition | External identifier - FHIR will generate its own internal identifiers (probably URLs) which do not need to be explicitly managed by the resource. The identifier here is one that would be used by another non-FHIR system - for example an automated medication pump would provide a record each time it operated; an administration while the patient was off the ward might be made with a different system and entered after the event. Particularly important if these records have to be updated. |
Note | This is a business identifer, not a resource identifier (see discussion) |
Control | 0..* |
Type | Identifier |
Summary | true |
MedicationAdministration.status | |
Definition | Will generally be set to show that the administration has been completed. For some long running administrations such as infusions it is possible for an administration to be started but not completed or it may be paused while some other process is under way. |
Control | 1..1 |
Binding | MedicationAdministrationStatus: A set of codes indicating the current status of a MedicationAdministration. (Required) |
Type | code |
Is Modifier | true |
Summary | true |
MedicationAdministration.patient | |
Definition | The person or animal receiving the medication. |
Control | 1..1 |
Type | Reference(Patient) |
Summary | true |
MedicationAdministration.practitioner | |
Definition | The individual who was responsible for giving the medication to the patient. |
Control | 0..1 |
Type | Reference(Practitioner | Patient | RelatedPerson) |
Summary | true |
MedicationAdministration.encounter | |
Definition | The visit, admission or other contact between patient and health care provider the medication administration was performed as part of. |
Control | 0..1 |
Type | Reference(Encounter) |
Summary | true |
MedicationAdministration.prescription | |
Definition | The original request, instruction or authority to perform the administration. |
Control | 0..1 |
Type | Reference(MedicationOrder) |
Summary | true |
MedicationAdministration.wasNotGiven | |
Definition | Set this to true if the record is saying that the medication was NOT administered. |
Control | 0..1 |
Type | boolean |
Is Modifier | true |
Meaning if Missing | If this is missing, then the medication was administered |
Summary | true |
MedicationAdministration.reasonNotGiven | |
Definition | A code indicating why the administration was not performed. |
Control | 0..* |
Binding | Reason Medication Not Given Codes: A set of codes indicating the reason why the MedicationAdministration is negated. (Example) |
Type | CodeableConcept |
Summary | true |
Invariants | Affect this element mad-2: Reason not given is only permitted if wasNotGiven is true (expression: reasonNotGiven.empty() or wasNotGiven = 'true', xpath: not(exists(f:reasonNotGiven) and f:wasNotGiven/@value=false())) |
MedicationAdministration.reasonGiven | |
Definition | A code indicating why the medication was given. |
Control | 0..* |
Binding | Reason Medication Given Codes: A set of codes indicating the reason why the MedicationAdministration was made. (Example) |
Type | CodeableConcept |
Summary | true |
Invariants | Affect this element mad-3: Reason given is only permitted if wasNotGiven is false (expression: reasonGiven.empty() or wasNotGiven = 'false', xpath: not(exists(f:reasonGiven) and f:wasNotGiven/@value=true())) |
MedicationAdministration.effectiveTime[x] | |
Definition | A specific date/time or interval of time during which the administration took place (or did not take place, when the 'notGiven' attribute is true). For many administrations, such as swallowing a tablet the use of dateTime is more appropriate. |
Control | 1..1 |
Type | dateTime|Period |
[x] Note | See Choice of Data Types for further information about how to use [x] |
Summary | true |
MedicationAdministration.medication[x] | |
Definition | Identifies the medication that was administered. This is either a link to a resource representing the details of the medication or a simple attribute carrying a code that identifies the medication from a known list of medications. |
Control | 1..1 |
Type | CodeableConcept|Reference(Medication) |
[x] Note | See Choice of Data Types for further information about how to use [x] |
Summary | true |
Comments | If only a code is specified, then it needs to be a code for a specific product. If more information is required, then the use of the medication resource is recommended. Note: do not use Medication.name to describe the administered medication. When the only available information is a text description of the medication, Medication.code.text should be used. |
MedicationAdministration.device | |
Definition | The device used in administering the medication to the patient. For example, a particular infusion pump. |
Control | 0..* |
Type | Reference(Device) |
Summary | true |
MedicationAdministration.note | |
Definition | Extra information about the medication administration that is not conveyed by the other attributes. |
Control | 0..1 |
Type | string |
Summary | true |
MedicationAdministration.dosage | |
Definition | Describes the medication dosage information details e.g. dose, rate, site, route, etc. |
Control | 0..1 |
Summary | true |
Invariants | Defined on this element mad-1: SHALL have at least one of dosage.quantity and dosage.rate[x] (expression: quantity or rate[x], xpath: exists(f:quantity) or exists(f:rateRatio) or exists(f:rateRange)) |
To Do | The RMIM has priority code on the act relationship. How do we handle this? |
MedicationAdministration.dosage.text | |
Definition | Free text dosage instructions can be used for cases where the instructions are too complex to code. When coded instructions are present, the free text instructions may still be present for display to humans taking or administering the medication. |
Control | 0..1 |
Type | string |
Summary | true |
MedicationAdministration.dosage.site[x] | |
Definition | A coded specification of the anatomic site where the medication first entered the body. For example, "left arm". |
Control | 0..1 |
Binding | SNOMED CT Anatomical Structure for Administration Site Codes: A coded concept describing the site location the medicine enters into or onto the body. (Example) |
Type | CodeableConcept|Reference(BodySite) |
[x] Note | See Choice of Data Types for further information about how to use [x] |
Summary | true |
MedicationAdministration.dosage.route | |
Definition | A code specifying the route or physiological path of administration of a therapeutic agent into or onto the patient. For example, topical, intravenous, etc. |
Control | 0..1 |
Binding | SNOMED CT Route Codes: A coded concept describing the route or physiological path of administration of a therapeutic agent into or onto the body of a subject. (Example) |
Type | CodeableConcept |
Summary | true |
MedicationAdministration.dosage.method | |
Definition | A coded value indicating the method by which the medication is intended to be or was introduced into or on the body. This attribute will most often NOT be populated. It is most commonly used for injections. For example, Slow Push, Deep IV. |
Control | 0..1 |
Binding | MedicationAdministrationMethod: A coded concept describing the technique by which the medicine is administered. |
Type | CodeableConcept |
Summary | true |
Comments | One of the reasons this attribute is not used often, is that the method is often pre-coordinated with the route and/or form of administration. This means the codes used in route or form may pre-coordinate the method in the route code or the form code. The implementation decision about what coding system to use for route or form code will determine how frequently the method code will be populated e.g. if route or form code pre-coordinate method code, then this attribute will not be populated often; if there is no pre-coordination then method code may be used frequently. |
MedicationAdministration.dosage.quantity | |
Definition | The amount of the medication given at one administration event. Use this value when the administration is essentially an instantaneous event such as a swallowing a tablet or giving an injection. |
Control | 0..1 |
Type | SimpleQuantity |
Summary | true |
Comments | If the administration is not instantaneous (rate is present or timing has a duration), this can be specified to convey the total amount administered over period of time of a single administration (as indicated by schedule). |
MedicationAdministration.dosage.rate[x] | |
Definition | Identifies the speed with which the medication was or will be introduced into the patient. Typically the rate for an infusion e.g. 100 ml per 1 hour or 100 ml/hr. May also be expressed as a rate per unit of time e.g. 500 ml per 2 hours. Currently we do not specify a default of '1' in the denominator, but this is being discussed. Other examples: 200 mcg/min or 200 mcg/1 minute; 1 liter/8 hours. |
Control | 0..1 |
Type | Ratio|Range |
[x] Note | See Choice of Data Types for further information about how to use [x] |
Summary | true |
Comments | If the rate changes over time, and you want to capture this in MedicationAdministration, then each change should be captured as a distinct MedicationAdministration, with a specific MedicationAdministration.dosage.rate, and the date time when the rate change occurred. Typically, the MedicationAdministration.dosage.rate element is not used to convey an average rate. |