SGHI FHIR Profile Implementation Guide
0.1.0 - ci-build
SGHI FHIR Profile Implementation Guide, published by Kathurima Kimathi. 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/savannahghi/sil_fhir_profile_ig/ and changes regularly. See the Directory of published versions
| Official URL: https://fhir.slade360.co.ke/fhir/StructureDefinition/medicationadministration | Version: 0.1.0 | |||
| Draft as of 2026-09-24 | Computable Name: SGHIMedicationAdministration | |||
A dose of a medication actually given to, or deliberately not given to, a patient: the drug-round record, a drug pushed in theatre, a vasopressor running in critical care, a vitamin A supplement at an immunisation visit. It is the consumption end of the chain that SGHIMedicationRequest orders and SGHIMedicationDispense supplies, so every administration names who gave it and in which encounter. A dose that was not given is still an administration, with status not-done and the reason in statusReason; those reasons are drawn from the SGHI drug-round value sets rather than SNOMED.
Usages:
You can also check for usages in the FHIR IG Statistics
Description of Profiles, Differentials, Snapshots and how the different presentations work.
| Name | Flags | Card. | Type | Description & Constraints Filter: ![]() ![]() |
|---|---|---|---|---|
![]() |
C | 0..* | MedicationAdministration | Administration of medication to a patient Constraints: sghi-mad-completed-has-dosage, sghi-mad-not-done-has-reason |
![]() ![]() |
?!Σ | 0..1 | uri | A set of rules under which this content was created |
![]() ![]() |
0..* | Resource | Contained, inline Resources | |
![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored |
![]() ![]() |
1..* | Identifier | External identifier | |
![]() ![]() ![]() |
?!Σ | 0..1 | code | usual | official | temp | secondary | old (If known) Binding: IdentifierUse (required) |
![]() ![]() ![]() |
Σ | 0..1 | SGHICodeableConcept | Description of identifier Binding: SGHI Default Identifier Types (required) |
![]() ![]() ![]() |
Σ | 1..1 | uri | The namespace for the identifier value Example General: http://www.acme.com/identifiers/patient |
![]() ![]() ![]() |
ΣC | 1..1 | string | The value that is unique Example General: 123456 |
![]() ![]() ![]() |
Σ | 1..1 | SGHIReference(SGHI Organization) | Organization that issued id (may be just text) |
![]() ![]() |
0..* | SGHIReference(SGHI Care Plan) | Plan this is fulfilled by this administration | |
![]() ![]() |
Σ | 0..* | SGHIReference(SGHI Medication Administration | SGHI Medication Dispense | Procedure) | Part of referenced event |
![]() ![]() |
?!Σ | 1..1 | code | in-progress | not-done | on-hold | completed | entered-in-error | stopped | unknown Binding: MedicationAdministrationStatusCodes (required): A set of codes indicating the current status of a MedicationAdministration. |
![]() ![]() |
0..* | SGHICodeableConcept | Reason administration not performed Binding: SGHI Medication Not Given Reason (extensible) | |
![]() ![]() |
0..* | SGHICodeableConcept | Type of medication administration Binding: MedicationAdministrationLocationCodes (example): A coded concept describing where the medication administered is expected to occur. | |
![]() ![]() |
Σ | 1..1 | SGHICodeableReference(SGHI Medication) | What was administered Binding: SGHI Medication Codes (extensible) |
![]() ![]() |
Σ | 1..1 | SGHIReference(SGHI Patient) | Who received medication |
![]() ![]() |
1..1 | SGHIReference(SGHI Encounter) | Encounter administered as part of | |
![]() ![]() |
0..* | SGHIReference(Resource) | Additional information to support administration | |
![]() ![]() |
Σ | 1..1 | Specific date/time or interval of time during which the administration took place (or did not take place) | |
![]() ![]() ![]() |
dateTime | |||
![]() ![]() ![]() |
Period | |||
![]() ![]() ![]() |
Timing | |||
![]() ![]() |
Σ | 1..* | BackboneElement | Who or what performed the medication administration and what type of performance they did |
![]() ![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized |
![]() ![]() ![]() |
0..1 | SGHICodeableConcept | Type of performance Binding: MedicationAdministrationPerformerFunctionCodes (example): A code describing the role an individual played in administering the medication. | |
![]() ![]() ![]() |
Σ | 1..1 | SGHICodeableReference(SGHI Practitioner | SGHI PractitionerRole | SGHI Patient | RelatedPerson | Device) | Who or what performed the medication administration |
![]() ![]() ![]() ![]() |
Σ | 1..1 | SGHIReference() | Reference to a resource (by instance) |
![]() ![]() |
0..* | SGHICodeableReference(SGHI Condition | SGHI Observation | SGHI DiagnosticReport) | Concept, condition or observation that supports why the medication was administered Binding: ReasonMedicationGivenCodes (example): A set of codes indicating the reason why the MedicationAdministration was made. | |
![]() ![]() |
0..1 | SGHIReference(SGHI MedicationRequest) | Request administration performed against | |
![]() ![]() |
0..* | SGHICodeableReference(Device) | Device used to administer | |
![]() ![]() |
0..* | SGHIAnnotation | Information about the administration | |
Documentation for this format | ||||
| Path | Status | Usage | ValueSet | Version | Source |
| MedicationAdministration.identifier.use | Base | required | IdentifierUse | 📦5.0.0 | FHIR Std. |
| MedicationAdministration.identifier.type | Base | required | SGHI Default Identifier Types | 📦0.1.0 | This IG |
| MedicationAdministration.status | Base | required | MedicationAdministration Status Codes | 📍5.0.0 | FHIR Std. |
| MedicationAdministration.statusReason | Base | extensible | SGHI Medication Not Given Reason | 📦0.1.0 | This IG |
| MedicationAdministration.category | Base | example | MedicationAdministration Location Codes | 📍5.0.0 | FHIR Std. |
| MedicationAdministration.medication | Base | extensible | SGHI Medication Codes | 📦0.1.0 | This IG |
| MedicationAdministration.performer.function | Base | example | MedicationAdministration Performer Function Codes | 📍5.0.0 | FHIR Std. |
| MedicationAdministration.reason | Base | example | Reason Medication Given Codes | 📍5.0.0 | FHIR Std. |
| Id | Grade | Path(s) | Description | Expression |
| dom-2 | error | MedicationAdministration | If the resource is contained in another resource, it SHALL NOT contain nested Resources |
contained.contained.empty()
|
| dom-3 | error | MedicationAdministration | 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().ofType(canonical) | %resource.descendants().ofType(uri) | %resource.descendants().ofType(url))) or descendants().where(reference = '#').exists() or descendants().where(ofType(canonical) = '#').exists() or descendants().where(ofType(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
|
| dom-4 | error | MedicationAdministration | 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 | MedicationAdministration | If a resource is contained in another resource, it SHALL NOT have a security label |
contained.meta.security.empty()
|
| dom-6 | best practice | MedicationAdministration | 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()
|
| sghi-mad-completed-has-dosage | error | MedicationAdministration | A completed administration records what was given: dosage is present when status is completed. |
status = 'completed' implies dosage.exists()
|
| sghi-mad-not-done-has-reason | error | MedicationAdministration | A dose that was not given says why: statusReason is present when status is not-done. |
status = 'not-done' implies statusReason.exists()
|
This structure is derived from MedicationAdministration
| Name | Flags | Card. | Type | Description & Constraints Filter: ![]() ![]() |
|---|---|---|---|---|
![]() |
C | 0..* | MedicationAdministration | Administration of medication to a patient Constraints: sghi-mad-completed-has-dosage, sghi-mad-not-done-has-reason |
![]() ![]() |
1..* | Identifier | External identifier | |
![]() ![]() ![]() |
0..1 | code | usual | official | temp | secondary | old (If known) Binding: IdentifierUse (required) | |
![]() ![]() ![]() |
0..1 | SGHICodeableConcept | Description of identifier Binding: SGHI Default Identifier Types (required) | |
![]() ![]() ![]() |
1..1 | uri | The namespace for the identifier value | |
![]() ![]() ![]() |
1..1 | string | The value that is unique | |
![]() ![]() ![]() |
1..1 | SGHIReference(SGHI Organization) | Organization that issued id (may be just text) | |
![]() ![]() |
0..* | SGHIReference(SGHI Care Plan) | Plan this is fulfilled by this administration | |
![]() ![]() |
0..* | SGHIReference(SGHI Medication Administration | SGHI Medication Dispense | Procedure) | Part of referenced event | |
![]() ![]() |
0..* | SGHICodeableConcept | Reason administration not performed Binding: SGHI Medication Not Given Reason (extensible) | |
![]() ![]() |
0..* | SGHICodeableConcept | Type of medication administration | |
![]() ![]() |
1..1 | SGHICodeableReference(SGHI Medication) | What was administered Binding: SGHI Medication Codes (extensible) | |
![]() ![]() |
1..1 | SGHIReference(SGHI Patient) | Who received medication | |
![]() ![]() |
1..1 | SGHIReference(SGHI Encounter) | Encounter administered as part of | |
![]() ![]() |
0..* | SGHIReference(Resource) | Additional information to support administration | |
![]() ![]() |
1..* | BackboneElement | Who or what performed the medication administration and what type of performance they did | |
![]() ![]() ![]() |
0..1 | SGHICodeableConcept | Type of performance | |
![]() ![]() ![]() |
1..1 | SGHICodeableReference(SGHI Practitioner | SGHI PractitionerRole | SGHI Patient | RelatedPerson | Device) | Who or what performed the medication administration | |
![]() ![]() ![]() ![]() |
1..1 | SGHIReference() | Reference to a resource (by instance) | |
![]() ![]() |
0..* | SGHICodeableReference(SGHI Condition | SGHI Observation | SGHI DiagnosticReport) | Concept, condition or observation that supports why the medication was administered | |
![]() ![]() |
0..1 | SGHIReference(SGHI MedicationRequest) | Request administration performed against | |
![]() ![]() |
0..* | SGHICodeableReference(Device) | Device used to administer | |
![]() ![]() |
0..* | SGHIAnnotation | Information about the administration | |
![]() ![]() |
||||
![]() ![]() ![]() |
0..1 | SGHICodeableConcept | Body site administered to Binding: SGHI Body Site Value Set (extensible) | |
![]() ![]() ![]() |
1..1 | SGHICodeableConcept | Path of substance into body Binding: Route Of Administration (required) | |
![]() ![]() ![]() |
0..1 | SGHICodeableConcept | How drug was administered Binding: SGHI Method Of Medication Administration (extensible) | |
![]() ![]() ![]() |
0..1 | SimpleQuantity(5.0.0) | Amount of medication per dose Binding: SGHI Dosage Units (required) | |
Documentation for this format | ||||
| Path | Status | Usage | ValueSet | Version | Source |
| MedicationAdministration.identifier.use | Base | required | IdentifierUse | 📦5.0.0 | FHIR Std. |
| MedicationAdministration.identifier.type | Base | required | SGHI Default Identifier Types | 📦0.1.0 | This IG |
| MedicationAdministration.statusReason | Base | extensible | SGHI Medication Not Given Reason | 📦0.1.0 | This IG |
| MedicationAdministration.medication | Base | extensible | SGHI Medication Codes | 📦0.1.0 | This IG |
| MedicationAdministration.dosage.site | Base | extensible | SGHI Body Site Value Set | 📦0.1.0 | This IG |
| MedicationAdministration.dosage.route | Base | required | Route Of Administration | 📦0.1.0 | This IG |
| MedicationAdministration.dosage.method | Base | extensible | SGHI Method Of Medication Administration | 📦0.1.0 | This IG |
| MedicationAdministration.dosage.dose | Base | required | SGHI Dosage Units | 📦0.1.0 | This IG |
| Id | Grade | Path(s) | Description | Expression |
| sghi-mad-completed-has-dosage | error | MedicationAdministration | A completed administration records what was given: dosage is present when status is completed. |
status = 'completed' implies dosage.exists()
|
| sghi-mad-not-done-has-reason | error | MedicationAdministration | A dose that was not given says why: statusReason is present when status is not-done. |
status = 'not-done' implies statusReason.exists()
|
| Name | Flags | Card. | Type | Description & Constraints Filter: ![]() ![]() | ||||
|---|---|---|---|---|---|---|---|---|
![]() |
C | 0..* | MedicationAdministration | Administration of medication to a patient Constraints: sghi-mad-completed-has-dosage, sghi-mad-not-done-has-reason | ||||
![]() ![]() |
Σ | 0..1 | id | Logical id of this artifact | ||||
![]() ![]() |
Σ | 0..1 | Meta | Metadata about the resource | ||||
![]() ![]() |
?!Σ | 0..1 | uri | A set of rules under which this content was created | ||||
![]() ![]() |
0..1 | code | Language of the resource content Binding: AllLanguages (required): IETF language tag for a human language
| |||||
![]() ![]() |
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 | |||||
![]() ![]() |
0..* | Resource | Contained, inline Resources | |||||
![]() ![]() |
0..* | Extension | Additional content defined by implementations | |||||
![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored | ||||
![]() ![]() |
1..* | Identifier | External identifier | |||||
![]() ![]() ![]() |
0..1 | id | Unique id for inter-element referencing | |||||
![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |||||
![]() ![]() ![]() |
?!Σ | 0..1 | code | usual | official | temp | secondary | old (If known) Binding: IdentifierUse (required) | ||||
![]() ![]() ![]() |
Σ | 0..1 | SGHICodeableConcept | Description of identifier Binding: SGHI Default Identifier Types (required) | ||||
![]() ![]() ![]() |
Σ | 1..1 | uri | The namespace for the identifier value Example General: http://www.acme.com/identifiers/patient | ||||
![]() ![]() ![]() |
ΣC | 1..1 | string | The value that is unique Example General: 123456 | ||||
![]() ![]() ![]() |
Σ | 0..1 | Period | Time period when id is/was valid for use | ||||
![]() ![]() ![]() |
Σ | 1..1 | SGHIReference(SGHI Organization) | Organization that issued id (may be just text) | ||||
![]() ![]() |
0..* | SGHIReference(SGHI Care Plan) | Plan this is fulfilled by this administration | |||||
![]() ![]() |
Σ | 0..* | SGHIReference(SGHI Medication Administration | SGHI Medication Dispense | Procedure) | Part of referenced event | ||||
![]() ![]() |
?!Σ | 1..1 | code | in-progress | not-done | on-hold | completed | entered-in-error | stopped | unknown Binding: MedicationAdministrationStatusCodes (required): A set of codes indicating the current status of a MedicationAdministration. | ||||
![]() ![]() |
0..* | SGHICodeableConcept | Reason administration not performed Binding: SGHI Medication Not Given Reason (extensible) | |||||
![]() ![]() |
0..* | SGHICodeableConcept | Type of medication administration Binding: MedicationAdministrationLocationCodes (example): A coded concept describing where the medication administered is expected to occur. | |||||
![]() ![]() |
Σ | 1..1 | SGHICodeableReference(SGHI Medication) | What was administered Binding: SGHI Medication Codes (extensible) | ||||
![]() ![]() |
Σ | 1..1 | SGHIReference(SGHI Patient) | Who received medication | ||||
![]() ![]() |
1..1 | SGHIReference(SGHI Encounter) | Encounter administered as part of | |||||
![]() ![]() |
0..* | SGHIReference(Resource) | Additional information to support administration | |||||
![]() ![]() |
Σ | 1..1 | Specific date/time or interval of time during which the administration took place (or did not take place) | |||||
![]() ![]() ![]() |
dateTime | |||||||
![]() ![]() ![]() |
Period | |||||||
![]() ![]() ![]() |
Timing | |||||||
![]() ![]() |
Σ | 0..1 | dateTime | When the MedicationAdministration was first captured in the subject's record | ||||
![]() ![]() |
0..1 | boolean | Full dose was not administered | |||||
![]() ![]() |
0..* | CodeableConcept | Reason full dose was not administered Binding: MedicationAdministrationSubpotentReason (example) | |||||
![]() ![]() |
Σ | 1..* | BackboneElement | Who or what performed the medication administration and what type of performance they did | ||||
![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations | |||||
![]() ![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
![]() ![]() ![]() |
0..1 | SGHICodeableConcept | Type of performance Binding: MedicationAdministrationPerformerFunctionCodes (example): A code describing the role an individual played in administering the medication. | |||||
![]() ![]() ![]() |
Σ | 1..1 | SGHICodeableReference(SGHI Practitioner | SGHI PractitionerRole | SGHI Patient | RelatedPerson | Device) | Who or what performed the medication administration | ||||
![]() ![]() ![]() ![]() |
0..1 | id | Unique id for inter-element referencing | |||||
![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |||||
![]() ![]() ![]() ![]() |
Σ | 0..1 | SGHICodeableConcept | Reference to a concept (by class) | ||||
![]() ![]() ![]() ![]() |
Σ | 1..1 | SGHIReference() | Reference to a resource (by instance) | ||||
![]() ![]() |
0..* | SGHICodeableReference(SGHI Condition | SGHI Observation | SGHI DiagnosticReport) | Concept, condition or observation that supports why the medication was administered Binding: ReasonMedicationGivenCodes (example): A set of codes indicating the reason why the MedicationAdministration was made. | |||||
![]() ![]() |
0..1 | SGHIReference(SGHI MedicationRequest) | Request administration performed against | |||||
![]() ![]() |
0..* | SGHICodeableReference(Device) | Device used to administer | |||||
![]() ![]() |
0..* | SGHIAnnotation | Information about the administration | |||||
![]() ![]() |
C | 0..1 | BackboneElement | Details of how medication was taken Constraints: mad-1 | ||||
![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations | |||||
![]() ![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
![]() ![]() ![]() |
C | 0..1 | string | Free text dosage instructions e.g. SIG | ||||
![]() ![]() ![]() |
0..1 | SGHICodeableConcept | Body site administered to Binding: SGHI Body Site Value Set (extensible) | |||||
![]() ![]() ![]() |
1..1 | SGHICodeableConcept | Path of substance into body Binding: Route Of Administration (required) | |||||
![]() ![]() ![]() |
0..1 | SGHICodeableConcept | How drug was administered Binding: SGHI Method Of Medication Administration (extensible) | |||||
![]() ![]() ![]() |
C | 0..1 | SimpleQuantity(5.0.0) | Amount of medication per dose Binding: SGHI Dosage Units (required) | ||||
![]() ![]() ![]() |
C | 0..1 | Dose quantity per unit of time | |||||
![]() ![]() ![]() ![]() |
Ratio | |||||||
![]() ![]() ![]() ![]() |
Quantity(SimpleQuantity) | |||||||
![]() ![]() |
0..* | Reference(Provenance) | A list of events of interest in the lifecycle | |||||
Documentation for this format | ||||||||
| Path | Status | Usage | ValueSet | Version | Source |
| MedicationAdministration.language | Base | required | All Languages | 📍5.0.0 | FHIR Std. |
| MedicationAdministration.identifier.use | Base | required | IdentifierUse | 📦5.0.0 | FHIR Std. |
| MedicationAdministration.identifier.type | Base | required | SGHI Default Identifier Types | 📦0.1.0 | This IG |
| MedicationAdministration.status | Base | required | MedicationAdministration Status Codes | 📍5.0.0 | FHIR Std. |
| MedicationAdministration.statusReason | Base | extensible | SGHI Medication Not Given Reason | 📦0.1.0 | This IG |
| MedicationAdministration.category | Base | example | MedicationAdministration Location Codes | 📍5.0.0 | FHIR Std. |
| MedicationAdministration.medication | Base | extensible | SGHI Medication Codes | 📦0.1.0 | This IG |
| MedicationAdministration.subPotentReason | Base | example | MedicationAdministration Subpotent Reason | 📍5.0.0 | FHIR Std. |
| MedicationAdministration.performer.function | Base | example | MedicationAdministration Performer Function Codes | 📍5.0.0 | FHIR Std. |
| MedicationAdministration.reason | Base | example | Reason Medication Given Codes | 📍5.0.0 | FHIR Std. |
| MedicationAdministration.dosage.site | Base | extensible | SGHI Body Site Value Set | 📦0.1.0 | This IG |
| MedicationAdministration.dosage.route | Base | required | Route Of Administration | 📦0.1.0 | This IG |
| MedicationAdministration.dosage.method | Base | extensible | SGHI Method Of Medication Administration | 📦0.1.0 | This IG |
| MedicationAdministration.dosage.dose | Base | required | SGHI Dosage Units | 📦0.1.0 | This IG |
| Id | Grade | Path(s) | Description | Expression |
| dom-2 | error | MedicationAdministration | If the resource is contained in another resource, it SHALL NOT contain nested Resources |
contained.contained.empty()
|
| dom-3 | error | MedicationAdministration | 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().ofType(canonical) | %resource.descendants().ofType(uri) | %resource.descendants().ofType(url))) or descendants().where(reference = '#').exists() or descendants().where(ofType(canonical) = '#').exists() or descendants().where(ofType(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
|
| dom-4 | error | MedicationAdministration | 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 | MedicationAdministration | If a resource is contained in another resource, it SHALL NOT have a security label |
contained.meta.security.empty()
|
| dom-6 | best practice | MedicationAdministration | 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()
|
| mad-1 | error | MedicationAdministration.dosage | If dosage attribute is present then SHALL have at least one of dosage.text or dosage.dose or dosage.rate[x] |
(dose.exists() or rate.exists() or text.exists())
|
| sghi-mad-completed-has-dosage | error | MedicationAdministration | A completed administration records what was given: dosage is present when status is completed. |
status = 'completed' implies dosage.exists()
|
| sghi-mad-not-done-has-reason | error | MedicationAdministration | A dose that was not given says why: statusReason is present when status is not-done. |
status = 'not-done' implies statusReason.exists()
|
This structure is derived from MedicationAdministration
Summary
Mandatory: 7 elements(1 nested mandatory element)
Structures
This structure refers to these other structures:
Key Elements View
| Name | Flags | Card. | Type | Description & Constraints Filter: ![]() ![]() |
|---|---|---|---|---|
![]() |
C | 0..* | MedicationAdministration | Administration of medication to a patient Constraints: sghi-mad-completed-has-dosage, sghi-mad-not-done-has-reason |
![]() ![]() |
?!Σ | 0..1 | uri | A set of rules under which this content was created |
![]() ![]() |
0..* | Resource | Contained, inline Resources | |
![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored |
![]() ![]() |
1..* | Identifier | External identifier | |
![]() ![]() ![]() |
?!Σ | 0..1 | code | usual | official | temp | secondary | old (If known) Binding: IdentifierUse (required) |
![]() ![]() ![]() |
Σ | 0..1 | SGHICodeableConcept | Description of identifier Binding: SGHI Default Identifier Types (required) |
![]() ![]() ![]() |
Σ | 1..1 | uri | The namespace for the identifier value Example General: http://www.acme.com/identifiers/patient |
![]() ![]() ![]() |
ΣC | 1..1 | string | The value that is unique Example General: 123456 |
![]() ![]() ![]() |
Σ | 1..1 | SGHIReference(SGHI Organization) | Organization that issued id (may be just text) |
![]() ![]() |
0..* | SGHIReference(SGHI Care Plan) | Plan this is fulfilled by this administration | |
![]() ![]() |
Σ | 0..* | SGHIReference(SGHI Medication Administration | SGHI Medication Dispense | Procedure) | Part of referenced event |
![]() ![]() |
?!Σ | 1..1 | code | in-progress | not-done | on-hold | completed | entered-in-error | stopped | unknown Binding: MedicationAdministrationStatusCodes (required): A set of codes indicating the current status of a MedicationAdministration. |
![]() ![]() |
0..* | SGHICodeableConcept | Reason administration not performed Binding: SGHI Medication Not Given Reason (extensible) | |
![]() ![]() |
0..* | SGHICodeableConcept | Type of medication administration Binding: MedicationAdministrationLocationCodes (example): A coded concept describing where the medication administered is expected to occur. | |
![]() ![]() |
Σ | 1..1 | SGHICodeableReference(SGHI Medication) | What was administered Binding: SGHI Medication Codes (extensible) |
![]() ![]() |
Σ | 1..1 | SGHIReference(SGHI Patient) | Who received medication |
![]() ![]() |
1..1 | SGHIReference(SGHI Encounter) | Encounter administered as part of | |
![]() ![]() |
0..* | SGHIReference(Resource) | Additional information to support administration | |
![]() ![]() |
Σ | 1..1 | Specific date/time or interval of time during which the administration took place (or did not take place) | |
![]() ![]() ![]() |
dateTime | |||
![]() ![]() ![]() |
Period | |||
![]() ![]() ![]() |
Timing | |||
![]() ![]() |
Σ | 1..* | BackboneElement | Who or what performed the medication administration and what type of performance they did |
![]() ![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized |
![]() ![]() ![]() |
0..1 | SGHICodeableConcept | Type of performance Binding: MedicationAdministrationPerformerFunctionCodes (example): A code describing the role an individual played in administering the medication. | |
![]() ![]() ![]() |
Σ | 1..1 | SGHICodeableReference(SGHI Practitioner | SGHI PractitionerRole | SGHI Patient | RelatedPerson | Device) | Who or what performed the medication administration |
![]() ![]() ![]() ![]() |
Σ | 1..1 | SGHIReference() | Reference to a resource (by instance) |
![]() ![]() |
0..* | SGHICodeableReference(SGHI Condition | SGHI Observation | SGHI DiagnosticReport) | Concept, condition or observation that supports why the medication was administered Binding: ReasonMedicationGivenCodes (example): A set of codes indicating the reason why the MedicationAdministration was made. | |
![]() ![]() |
0..1 | SGHIReference(SGHI MedicationRequest) | Request administration performed against | |
![]() ![]() |
0..* | SGHICodeableReference(Device) | Device used to administer | |
![]() ![]() |
0..* | SGHIAnnotation | Information about the administration | |
Documentation for this format | ||||
| Path | Status | Usage | ValueSet | Version | Source |
| MedicationAdministration.identifier.use | Base | required | IdentifierUse | 📦5.0.0 | FHIR Std. |
| MedicationAdministration.identifier.type | Base | required | SGHI Default Identifier Types | 📦0.1.0 | This IG |
| MedicationAdministration.status | Base | required | MedicationAdministration Status Codes | 📍5.0.0 | FHIR Std. |
| MedicationAdministration.statusReason | Base | extensible | SGHI Medication Not Given Reason | 📦0.1.0 | This IG |
| MedicationAdministration.category | Base | example | MedicationAdministration Location Codes | 📍5.0.0 | FHIR Std. |
| MedicationAdministration.medication | Base | extensible | SGHI Medication Codes | 📦0.1.0 | This IG |
| MedicationAdministration.performer.function | Base | example | MedicationAdministration Performer Function Codes | 📍5.0.0 | FHIR Std. |
| MedicationAdministration.reason | Base | example | Reason Medication Given Codes | 📍5.0.0 | FHIR Std. |
| Id | Grade | Path(s) | Description | Expression |
| dom-2 | error | MedicationAdministration | If the resource is contained in another resource, it SHALL NOT contain nested Resources |
contained.contained.empty()
|
| dom-3 | error | MedicationAdministration | 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().ofType(canonical) | %resource.descendants().ofType(uri) | %resource.descendants().ofType(url))) or descendants().where(reference = '#').exists() or descendants().where(ofType(canonical) = '#').exists() or descendants().where(ofType(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
|
| dom-4 | error | MedicationAdministration | 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 | MedicationAdministration | If a resource is contained in another resource, it SHALL NOT have a security label |
contained.meta.security.empty()
|
| dom-6 | best practice | MedicationAdministration | 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()
|
| sghi-mad-completed-has-dosage | error | MedicationAdministration | A completed administration records what was given: dosage is present when status is completed. |
status = 'completed' implies dosage.exists()
|
| sghi-mad-not-done-has-reason | error | MedicationAdministration | A dose that was not given says why: statusReason is present when status is not-done. |
status = 'not-done' implies statusReason.exists()
|
Differential View
This structure is derived from MedicationAdministration
| Name | Flags | Card. | Type | Description & Constraints Filter: ![]() ![]() |
|---|---|---|---|---|
![]() |
C | 0..* | MedicationAdministration | Administration of medication to a patient Constraints: sghi-mad-completed-has-dosage, sghi-mad-not-done-has-reason |
![]() ![]() |
1..* | Identifier | External identifier | |
![]() ![]() ![]() |
0..1 | code | usual | official | temp | secondary | old (If known) Binding: IdentifierUse (required) | |
![]() ![]() ![]() |
0..1 | SGHICodeableConcept | Description of identifier Binding: SGHI Default Identifier Types (required) | |
![]() ![]() ![]() |
1..1 | uri | The namespace for the identifier value | |
![]() ![]() ![]() |
1..1 | string | The value that is unique | |
![]() ![]() ![]() |
1..1 | SGHIReference(SGHI Organization) | Organization that issued id (may be just text) | |
![]() ![]() |
0..* | SGHIReference(SGHI Care Plan) | Plan this is fulfilled by this administration | |
![]() ![]() |
0..* | SGHIReference(SGHI Medication Administration | SGHI Medication Dispense | Procedure) | Part of referenced event | |
![]() ![]() |
0..* | SGHICodeableConcept | Reason administration not performed Binding: SGHI Medication Not Given Reason (extensible) | |
![]() ![]() |
0..* | SGHICodeableConcept | Type of medication administration | |
![]() ![]() |
1..1 | SGHICodeableReference(SGHI Medication) | What was administered Binding: SGHI Medication Codes (extensible) | |
![]() ![]() |
1..1 | SGHIReference(SGHI Patient) | Who received medication | |
![]() ![]() |
1..1 | SGHIReference(SGHI Encounter) | Encounter administered as part of | |
![]() ![]() |
0..* | SGHIReference(Resource) | Additional information to support administration | |
![]() ![]() |
1..* | BackboneElement | Who or what performed the medication administration and what type of performance they did | |
![]() ![]() ![]() |
0..1 | SGHICodeableConcept | Type of performance | |
![]() ![]() ![]() |
1..1 | SGHICodeableReference(SGHI Practitioner | SGHI PractitionerRole | SGHI Patient | RelatedPerson | Device) | Who or what performed the medication administration | |
![]() ![]() ![]() ![]() |
1..1 | SGHIReference() | Reference to a resource (by instance) | |
![]() ![]() |
0..* | SGHICodeableReference(SGHI Condition | SGHI Observation | SGHI DiagnosticReport) | Concept, condition or observation that supports why the medication was administered | |
![]() ![]() |
0..1 | SGHIReference(SGHI MedicationRequest) | Request administration performed against | |
![]() ![]() |
0..* | SGHICodeableReference(Device) | Device used to administer | |
![]() ![]() |
0..* | SGHIAnnotation | Information about the administration | |
![]() ![]() |
||||
![]() ![]() ![]() |
0..1 | SGHICodeableConcept | Body site administered to Binding: SGHI Body Site Value Set (extensible) | |
![]() ![]() ![]() |
1..1 | SGHICodeableConcept | Path of substance into body Binding: Route Of Administration (required) | |
![]() ![]() ![]() |
0..1 | SGHICodeableConcept | How drug was administered Binding: SGHI Method Of Medication Administration (extensible) | |
![]() ![]() ![]() |
0..1 | SimpleQuantity(5.0.0) | Amount of medication per dose Binding: SGHI Dosage Units (required) | |
Documentation for this format | ||||
| Path | Status | Usage | ValueSet | Version | Source |
| MedicationAdministration.identifier.use | Base | required | IdentifierUse | 📦5.0.0 | FHIR Std. |
| MedicationAdministration.identifier.type | Base | required | SGHI Default Identifier Types | 📦0.1.0 | This IG |
| MedicationAdministration.statusReason | Base | extensible | SGHI Medication Not Given Reason | 📦0.1.0 | This IG |
| MedicationAdministration.medication | Base | extensible | SGHI Medication Codes | 📦0.1.0 | This IG |
| MedicationAdministration.dosage.site | Base | extensible | SGHI Body Site Value Set | 📦0.1.0 | This IG |
| MedicationAdministration.dosage.route | Base | required | Route Of Administration | 📦0.1.0 | This IG |
| MedicationAdministration.dosage.method | Base | extensible | SGHI Method Of Medication Administration | 📦0.1.0 | This IG |
| MedicationAdministration.dosage.dose | Base | required | SGHI Dosage Units | 📦0.1.0 | This IG |
| Id | Grade | Path(s) | Description | Expression |
| sghi-mad-completed-has-dosage | error | MedicationAdministration | A completed administration records what was given: dosage is present when status is completed. |
status = 'completed' implies dosage.exists()
|
| sghi-mad-not-done-has-reason | error | MedicationAdministration | A dose that was not given says why: statusReason is present when status is not-done. |
status = 'not-done' implies statusReason.exists()
|
Snapshot View
| Name | Flags | Card. | Type | Description & Constraints Filter: ![]() ![]() | ||||
|---|---|---|---|---|---|---|---|---|
![]() |
C | 0..* | MedicationAdministration | Administration of medication to a patient Constraints: sghi-mad-completed-has-dosage, sghi-mad-not-done-has-reason | ||||
![]() ![]() |
Σ | 0..1 | id | Logical id of this artifact | ||||
![]() ![]() |
Σ | 0..1 | Meta | Metadata about the resource | ||||
![]() ![]() |
?!Σ | 0..1 | uri | A set of rules under which this content was created | ||||
![]() ![]() |
0..1 | code | Language of the resource content Binding: AllLanguages (required): IETF language tag for a human language
| |||||
![]() ![]() |
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 | |||||
![]() ![]() |
0..* | Resource | Contained, inline Resources | |||||
![]() ![]() |
0..* | Extension | Additional content defined by implementations | |||||
![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored | ||||
![]() ![]() |
1..* | Identifier | External identifier | |||||
![]() ![]() ![]() |
0..1 | id | Unique id for inter-element referencing | |||||
![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |||||
![]() ![]() ![]() |
?!Σ | 0..1 | code | usual | official | temp | secondary | old (If known) Binding: IdentifierUse (required) | ||||
![]() ![]() ![]() |
Σ | 0..1 | SGHICodeableConcept | Description of identifier Binding: SGHI Default Identifier Types (required) | ||||
![]() ![]() ![]() |
Σ | 1..1 | uri | The namespace for the identifier value Example General: http://www.acme.com/identifiers/patient | ||||
![]() ![]() ![]() |
ΣC | 1..1 | string | The value that is unique Example General: 123456 | ||||
![]() ![]() ![]() |
Σ | 0..1 | Period | Time period when id is/was valid for use | ||||
![]() ![]() ![]() |
Σ | 1..1 | SGHIReference(SGHI Organization) | Organization that issued id (may be just text) | ||||
![]() ![]() |
0..* | SGHIReference(SGHI Care Plan) | Plan this is fulfilled by this administration | |||||
![]() ![]() |
Σ | 0..* | SGHIReference(SGHI Medication Administration | SGHI Medication Dispense | Procedure) | Part of referenced event | ||||
![]() ![]() |
?!Σ | 1..1 | code | in-progress | not-done | on-hold | completed | entered-in-error | stopped | unknown Binding: MedicationAdministrationStatusCodes (required): A set of codes indicating the current status of a MedicationAdministration. | ||||
![]() ![]() |
0..* | SGHICodeableConcept | Reason administration not performed Binding: SGHI Medication Not Given Reason (extensible) | |||||
![]() ![]() |
0..* | SGHICodeableConcept | Type of medication administration Binding: MedicationAdministrationLocationCodes (example): A coded concept describing where the medication administered is expected to occur. | |||||
![]() ![]() |
Σ | 1..1 | SGHICodeableReference(SGHI Medication) | What was administered Binding: SGHI Medication Codes (extensible) | ||||
![]() ![]() |
Σ | 1..1 | SGHIReference(SGHI Patient) | Who received medication | ||||
![]() ![]() |
1..1 | SGHIReference(SGHI Encounter) | Encounter administered as part of | |||||
![]() ![]() |
0..* | SGHIReference(Resource) | Additional information to support administration | |||||
![]() ![]() |
Σ | 1..1 | Specific date/time or interval of time during which the administration took place (or did not take place) | |||||
![]() ![]() ![]() |
dateTime | |||||||
![]() ![]() ![]() |
Period | |||||||
![]() ![]() ![]() |
Timing | |||||||
![]() ![]() |
Σ | 0..1 | dateTime | When the MedicationAdministration was first captured in the subject's record | ||||
![]() ![]() |
0..1 | boolean | Full dose was not administered | |||||
![]() ![]() |
0..* | CodeableConcept | Reason full dose was not administered Binding: MedicationAdministrationSubpotentReason (example) | |||||
![]() ![]() |
Σ | 1..* | BackboneElement | Who or what performed the medication administration and what type of performance they did | ||||
![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations | |||||
![]() ![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
![]() ![]() ![]() |
0..1 | SGHICodeableConcept | Type of performance Binding: MedicationAdministrationPerformerFunctionCodes (example): A code describing the role an individual played in administering the medication. | |||||
![]() ![]() ![]() |
Σ | 1..1 | SGHICodeableReference(SGHI Practitioner | SGHI PractitionerRole | SGHI Patient | RelatedPerson | Device) | Who or what performed the medication administration | ||||
![]() ![]() ![]() ![]() |
0..1 | id | Unique id for inter-element referencing | |||||
![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |||||
![]() ![]() ![]() ![]() |
Σ | 0..1 | SGHICodeableConcept | Reference to a concept (by class) | ||||
![]() ![]() ![]() ![]() |
Σ | 1..1 | SGHIReference() | Reference to a resource (by instance) | ||||
![]() ![]() |
0..* | SGHICodeableReference(SGHI Condition | SGHI Observation | SGHI DiagnosticReport) | Concept, condition or observation that supports why the medication was administered Binding: ReasonMedicationGivenCodes (example): A set of codes indicating the reason why the MedicationAdministration was made. | |||||
![]() ![]() |
0..1 | SGHIReference(SGHI MedicationRequest) | Request administration performed against | |||||
![]() ![]() |
0..* | SGHICodeableReference(Device) | Device used to administer | |||||
![]() ![]() |
0..* | SGHIAnnotation | Information about the administration | |||||
![]() ![]() |
C | 0..1 | BackboneElement | Details of how medication was taken Constraints: mad-1 | ||||
![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations | |||||
![]() ![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
![]() ![]() ![]() |
C | 0..1 | string | Free text dosage instructions e.g. SIG | ||||
![]() ![]() ![]() |
0..1 | SGHICodeableConcept | Body site administered to Binding: SGHI Body Site Value Set (extensible) | |||||
![]() ![]() ![]() |
1..1 | SGHICodeableConcept | Path of substance into body Binding: Route Of Administration (required) | |||||
![]() ![]() ![]() |
0..1 | SGHICodeableConcept | How drug was administered Binding: SGHI Method Of Medication Administration (extensible) | |||||
![]() ![]() ![]() |
C | 0..1 | SimpleQuantity(5.0.0) | Amount of medication per dose Binding: SGHI Dosage Units (required) | ||||
![]() ![]() ![]() |
C | 0..1 | Dose quantity per unit of time | |||||
![]() ![]() ![]() ![]() |
Ratio | |||||||
![]() ![]() ![]() ![]() |
Quantity(SimpleQuantity) | |||||||
![]() ![]() |
0..* | Reference(Provenance) | A list of events of interest in the lifecycle | |||||
Documentation for this format | ||||||||
| Path | Status | Usage | ValueSet | Version | Source |
| MedicationAdministration.language | Base | required | All Languages | 📍5.0.0 | FHIR Std. |
| MedicationAdministration.identifier.use | Base | required | IdentifierUse | 📦5.0.0 | FHIR Std. |
| MedicationAdministration.identifier.type | Base | required | SGHI Default Identifier Types | 📦0.1.0 | This IG |
| MedicationAdministration.status | Base | required | MedicationAdministration Status Codes | 📍5.0.0 | FHIR Std. |
| MedicationAdministration.statusReason | Base | extensible | SGHI Medication Not Given Reason | 📦0.1.0 | This IG |
| MedicationAdministration.category | Base | example | MedicationAdministration Location Codes | 📍5.0.0 | FHIR Std. |
| MedicationAdministration.medication | Base | extensible | SGHI Medication Codes | 📦0.1.0 | This IG |
| MedicationAdministration.subPotentReason | Base | example | MedicationAdministration Subpotent Reason | 📍5.0.0 | FHIR Std. |
| MedicationAdministration.performer.function | Base | example | MedicationAdministration Performer Function Codes | 📍5.0.0 | FHIR Std. |
| MedicationAdministration.reason | Base | example | Reason Medication Given Codes | 📍5.0.0 | FHIR Std. |
| MedicationAdministration.dosage.site | Base | extensible | SGHI Body Site Value Set | 📦0.1.0 | This IG |
| MedicationAdministration.dosage.route | Base | required | Route Of Administration | 📦0.1.0 | This IG |
| MedicationAdministration.dosage.method | Base | extensible | SGHI Method Of Medication Administration | 📦0.1.0 | This IG |
| MedicationAdministration.dosage.dose | Base | required | SGHI Dosage Units | 📦0.1.0 | This IG |
| Id | Grade | Path(s) | Description | Expression |
| dom-2 | error | MedicationAdministration | If the resource is contained in another resource, it SHALL NOT contain nested Resources |
contained.contained.empty()
|
| dom-3 | error | MedicationAdministration | 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().ofType(canonical) | %resource.descendants().ofType(uri) | %resource.descendants().ofType(url))) or descendants().where(reference = '#').exists() or descendants().where(ofType(canonical) = '#').exists() or descendants().where(ofType(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
|
| dom-4 | error | MedicationAdministration | 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 | MedicationAdministration | If a resource is contained in another resource, it SHALL NOT have a security label |
contained.meta.security.empty()
|
| dom-6 | best practice | MedicationAdministration | 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()
|
| mad-1 | error | MedicationAdministration.dosage | If dosage attribute is present then SHALL have at least one of dosage.text or dosage.dose or dosage.rate[x] |
(dose.exists() or rate.exists() or text.exists())
|
| sghi-mad-completed-has-dosage | error | MedicationAdministration | A completed administration records what was given: dosage is present when status is completed. |
status = 'completed' implies dosage.exists()
|
| sghi-mad-not-done-has-reason | error | MedicationAdministration | A dose that was not given says why: statusReason is present when status is not-done. |
status = 'not-done' implies statusReason.exists()
|
This structure is derived from MedicationAdministration
Summary
Mandatory: 7 elements(1 nested mandatory element)
Structures
This structure refers to these other structures:
Other representations of profile: CSV, Excel, Schematron