US Meds Implementation Guide (Release 1.2.0)

This page is part of the US-Medication FHIR IG (v1.2.0: STU 2) based on FHIR R3. This is the current published version in it's permanent home (it will always be available at this URL). For a full list of available versions, see the Directory of published versions

StructureDefinition-medicationadministration

The MedicationAdministration resource is used to record a patient consuming or otherwise being administered a medication. For more information about the context and usage, refer to the resource page in the FHIR specification. This profile sets minimum expectations for recording, searching and fetching a patient’s MedicationAdministration resource. It identifies which core elements, extensions, vocabularies and value sets SHALL be present in the resource when using this profile.

Example Usage Scenarios:

The following are example usage scenarios:

  • Query for medications that have been administered to a particular patient
  • Query for all medications administered during an encounter
  • Query for all medications which were not administered during an encounter
Mandatory Data Elements and Terminology

The following data-elements are mandatory (i.e data MUST be present). These are presented below in a simple human-readable explanation. Profile specific guidance and examples are provided as well. The Formal Profile Definition below provides the formal summary, definitions, and terminology requirements.

Each MedicationAdministration must have:

  1. a status
  2. a medication
  3. a patient
  4. a date or date range

In addition, a system Must Support.

  1. who administered the medication
  2. dosage information

Profile specific implementation guidance:

  • None
Examples

Formal Views of Profile Content

Description of Profiles, Differentials, and Snapshots.

The official URL for this profile is: http://hl7.org/fhir/us/meds/StructureDefinition/medicationadministration

Published on Tue Nov 08 00:00:00 EST 2016 as a active by Health Level Seven International (FHIR-Infrastructure).

This profile builds on MedicationAdministration


NameFlagsCard.TypeDescription & Constraintsdoco
.. MedicationAdministration I0..*Administration of medication to a patient
... id Σ0..1idLogical id of this artifact
... meta Σ0..1MetaMetadata about the resource
... implicitRules ?!Σ0..1uriA set of rules under which this content was created
... language 0..1codeLanguage of the resource content
Binding: Common Languages (extensible)
Max Binding: All Languages
... text I0..1NarrativeText summary of the resource, for human interpretation
... contained 0..*ResourceContained, inline Resources
... extension 0..*ExtensionAdditional Content defined by implementations
... modifierExtension ?!0..*ExtensionExtensions that cannot be ignored
... identifier 0..*IdentifierExternal identifier
... definition Σ0..*Reference(PlanDefinition | ActivityDefinition)Instantiates protocol or definition
... partOf Σ0..*Reference(MedicationAdministration | Procedure)Part of referenced event
... status ?!SΣ1..1codein-progress | on-hold | completed | entered-in-error | stopped | unknown
Binding: MedicationAdministrationStatus (required)
... category 0..1CodeableConceptType of medication usage
Binding: MedicationAdministrationCategory (preferred)
... medication[x] SΣ1..1CodeableConcept, Reference(US Core Medication Profile)What was administered
Binding: Medication Clinical Drug (RxNorm) (extensible)
... subject SΣ1..1Reference(US Core Patient Profile)Who received medication
... context S0..1Reference(US Core Encounter Profile)Encounter or Episode of Care administered as part of
... supportingInformation 0..*Reference(Resource)Additional information to support administration
... effective[x] SΣ1..1dateTime, PeriodStart and end time of administration
... performer SΣI0..*BackboneElementWho administered substance
.... id 0..1stringxml:id (or equivalent in JSON)
.... extension 0..*ExtensionAdditional Content defined by implementations
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored
.... actor SΣ1..1Reference(US Core Practitioner | US Core Patient Profile | RelatedPerson)Individual who was performing
.... onBehalfOf 0..1Reference(Organization)Organization organization was acting for
... notGiven ?!Σ0..1booleanTrue if medication not administered
... reasonNotGiven I0..*CodeableConceptReason administration not performed
Binding: SNOMED CT Reason Medication Not Given Codes (example)
... reasonCode I0..*CodeableConceptReason administration performed
Binding: Reason Medication Given Codes (example)
... reasonReference 0..*Reference(Condition | Observation)Condition or Observation that supports why the medication was administered
... prescription 0..1Reference(MedicationRequest)Request administration performed against
... device 0..*Reference(Device)Device used to administer
... note 0..*AnnotationInformation about the administration
... dosage SI0..1BackboneElementDetails of how medication was taken
.... id 0..1stringxml:id (or equivalent in JSON)
.... extension 0..*ExtensionAdditional Content defined by implementations
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored
.... text 0..1stringFree text dosage instructions e.g. SIG
.... site 0..1CodeableConceptBody site administered to
Binding: SNOMED CT Anatomical Structure for Administration Site Codes (example)
.... route 0..1CodeableConceptPath of substance into body
Binding: SNOMED CT Route Codes (example)
.... method 0..1CodeableConceptHow drug was administered
Binding: SNOMED CT Administration Method Codes (example)
.... dose 0..1SimpleQuantityAmount of medication per dose
.... rate[x] 0..1Ratio, SimpleQuantityDose quantity per unit of time
... eventHistory 0..*Reference(Provenance)A list of events of interest in the lifecycle

doco Documentation for this format

Snapshot View

NameFlagsCard.TypeDescription & Constraintsdoco
.. MedicationAdministration I0..*Administration of medication to a patient
... id Σ0..1idLogical id of this artifact
... meta Σ0..1MetaMetadata about the resource
... implicitRules ?!Σ0..1uriA set of rules under which this content was created
... language 0..1codeLanguage of the resource content
Binding: Common Languages (extensible)
Max Binding: All Languages
... text I0..1NarrativeText summary of the resource, for human interpretation
... contained 0..*ResourceContained, inline Resources
... extension 0..*ExtensionAdditional Content defined by implementations
... modifierExtension ?!0..*ExtensionExtensions that cannot be ignored
... identifier 0..*IdentifierExternal identifier
... definition Σ0..*Reference(PlanDefinition | ActivityDefinition)Instantiates protocol or definition
... partOf Σ0..*Reference(MedicationAdministration | Procedure)Part of referenced event
... status ?!SΣ1..1codein-progress | on-hold | completed | entered-in-error | stopped | unknown
Binding: MedicationAdministrationStatus (required)
... category 0..1CodeableConceptType of medication usage
Binding: MedicationAdministrationCategory (preferred)
... medication[x] SΣ1..1CodeableConcept, Reference(US Core Medication Profile)What was administered
Binding: Medication Clinical Drug (RxNorm) (extensible)
... subject SΣ1..1Reference(US Core Patient Profile)Who received medication
... context S0..1Reference(US Core Encounter Profile)Encounter or Episode of Care administered as part of
... supportingInformation 0..*Reference(Resource)Additional information to support administration
... effective[x] SΣ1..1dateTime, PeriodStart and end time of administration
... performer SΣI0..*BackboneElementWho administered substance
.... id 0..1stringxml:id (or equivalent in JSON)
.... extension 0..*ExtensionAdditional Content defined by implementations
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored
.... actor SΣ1..1Reference(US Core Practitioner | US Core Patient Profile | RelatedPerson)Individual who was performing
.... onBehalfOf 0..1Reference(Organization)Organization organization was acting for
... notGiven ?!Σ0..1booleanTrue if medication not administered
... reasonNotGiven I0..*CodeableConceptReason administration not performed
Binding: SNOMED CT Reason Medication Not Given Codes (example)
... reasonCode I0..*CodeableConceptReason administration performed
Binding: Reason Medication Given Codes (example)
... reasonReference 0..*Reference(Condition | Observation)Condition or Observation that supports why the medication was administered
... prescription 0..1Reference(MedicationRequest)Request administration performed against
... device 0..*Reference(Device)Device used to administer
... note 0..*AnnotationInformation about the administration
... dosage SI0..1BackboneElementDetails of how medication was taken
.... id 0..1stringxml:id (or equivalent in JSON)
.... extension 0..*ExtensionAdditional Content defined by implementations
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored
.... text 0..1stringFree text dosage instructions e.g. SIG
.... site 0..1CodeableConceptBody site administered to
Binding: SNOMED CT Anatomical Structure for Administration Site Codes (example)
.... route 0..1CodeableConceptPath of substance into body
Binding: SNOMED CT Route Codes (example)
.... method 0..1CodeableConceptHow drug was administered
Binding: SNOMED CT Administration Method Codes (example)
.... dose 0..1SimpleQuantityAmount of medication per dose
.... rate[x] 0..1Ratio, SimpleQuantityDose quantity per unit of time
... eventHistory 0..*Reference(Provenance)A list of events of interest in the lifecycle

doco Documentation for this format

Downloads: StructureDefinition: (XML, JSON), Schema: XML Schematron


Quick Start

Below is an overview of the required set of RESTful FHIR interactions - for example, search and read operations - for this profile. See the Conformance requirements for a complete list of supported RESTful interactions for this IG.

GET /MedicationAdministration?patient=[id]{&_include=MedicationAdministration:medication}

Example:

  • GET /MedicationAdministration?patient=14676
  • GET /MedicationAdministration?patient=14676&_include=MedicationAdministration:medication

Support: Mandatory for server and client to support search by patient. Mandatory for client to support the _include parameter. Optional for server to support the _include parameter.

Implementation Notes: This query searches for all MedicationAdministration resources for a patient and returns a Bundle of all MedicationAdministration and resources for the specified patient. The server application represents the medication using either an inline code or a contained or external reference to the Medication resource. (how to search by reference), and (how to search by _include).