Standard Health Record FHIR Implementation Guide

SHR Dosage Profile

 

The official URL for this profile is:

http://standardhealthrecord.org/fhir/StructureDefinition/shr-medication-Dosage

The dosage of the medication, prescribed or taken.

This profile builds on Dosage.

This profile was published on Tue Feb 27 00:00:00 EST 2018 as a draft by The MITRE Corporation: Standard Health Record Collaborative.

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

Summary

Mandatory: 0 element (3 nested mandatory elements)

Structures

This structure refers to these other structures:

Slices

This structure defines the following Slices:

  • The element Dosage.asNeeded[x] is sliced based on the value of type:$this

SHR Mapping Source

This structure represents the following SHR mapping definition:

shr.medication.Dosage maps to Dosage:
  DoseAmount maps to dose[x]
  TimingOfDoses maps to timing
  AsNeededIndicator maps to asNeeded[x]
  DoseInstructionsText maps to text
  AdditionalDoseInstruction maps to additionalInstruction
  RouteIntoBody maps to route
  AdministrationMethod maps to method
  AdministrationBodySite maps to site
  MaximumDosePerTimePeriod maps to maxDosePerPeriod

NameFlagsCard.TypeDescription & Constraintsdoco
.. Dosage I0..*SHR Dosage Profile
... id 0..1stringxml:id (or equivalent in JSON)
... sequence Σ0..1integerThe order of the dosage instructions
... text Σ0..1stringFree text dosage instructions e.g. SIG
... additionalInstruction Σ0..*CodeableConceptSupplemental instruction - e.g. "with meals"
Binding: SNOMED CT Additional Dosage Instructions (required)
... patientInstruction Σ0..1stringPatient or consumer oriented instructions
... timing Σ1..1SHR Timing ProfileWhen medication should be administered
... asNeeded[x] Σboolean, CodeableConceptTake "as needed" (for x)
Slice: Unordered, Open by type:$this
Binding: SNOMED CT Medication As Needed Reason Codes (example)
... asNeededCodeableConcept Σ1..1CodeableConceptTake "as needed" (for x)
Binding: SNOMED CT Medication As Needed Reason Codes (example)
... site Σ0..1CodeableConceptBody site to administer to
Binding: SHR BodySiteVS ValueSet (required)
... route Σ0..1CodeableConceptHow drug should enter body
Binding: SNOMED CT Route Codes (required)
... method Σ0..1CodeableConceptTechnique for administering medication
Binding: SNOMED CT Administration Method Codes (required)
... dose[x] Σ1..1SHR Range Profile, SHR SimpleQuantity ProfileAmount of medication per dose
... maxDosePerPeriod Σ0..1SHR Ratio ProfileUpper limit on medication per unit of time
... maxDosePerAdministration Σ0..1SimpleQuantityUpper limit on medication per administration
... maxDosePerLifetime Σ0..1SimpleQuantityUpper limit on medication per lifetime of the patient
... rate[x] Σ0..1Ratio, Range, SimpleQuantityAmount of medication per unit of time

doco Documentation for this format

Summary

Mandatory: 0 element (3 nested mandatory elements)

Structures

This structure refers to these other structures:

Slices

This structure defines the following Slices:

  • The element Dosage.asNeeded[x] is sliced based on the value of type:$this

SHR Mapping Source

This structure represents the following SHR mapping definition:

shr.medication.Dosage maps to Dosage:
  DoseAmount maps to dose[x]
  TimingOfDoses maps to timing
  AsNeededIndicator maps to asNeeded[x]
  DoseInstructionsText maps to text
  AdditionalDoseInstruction maps to additionalInstruction
  RouteIntoBody maps to route
  AdministrationMethod maps to method
  AdministrationBodySite maps to site
  MaximumDosePerTimePeriod maps to maxDosePerPeriod

Differential View

Snapshot View

NameFlagsCard.TypeDescription & Constraintsdoco
.. Dosage I0..*SHR Dosage Profile
... id 0..1stringxml:id (or equivalent in JSON)
... sequence Σ0..1integerThe order of the dosage instructions
... text Σ0..1stringFree text dosage instructions e.g. SIG
... additionalInstruction Σ0..*CodeableConceptSupplemental instruction - e.g. "with meals"
Binding: SNOMED CT Additional Dosage Instructions (required)
... patientInstruction Σ0..1stringPatient or consumer oriented instructions
... timing Σ1..1SHR Timing ProfileWhen medication should be administered
... asNeeded[x] Σboolean, CodeableConceptTake "as needed" (for x)
Slice: Unordered, Open by type:$this
Binding: SNOMED CT Medication As Needed Reason Codes (example)
... asNeededCodeableConcept Σ1..1CodeableConceptTake "as needed" (for x)
Binding: SNOMED CT Medication As Needed Reason Codes (example)
... site Σ0..1CodeableConceptBody site to administer to
Binding: SHR BodySiteVS ValueSet (required)
... route Σ0..1CodeableConceptHow drug should enter body
Binding: SNOMED CT Route Codes (required)
... method Σ0..1CodeableConceptTechnique for administering medication
Binding: SNOMED CT Administration Method Codes (required)
... dose[x] Σ1..1SHR Range Profile, SHR SimpleQuantity ProfileAmount of medication per dose
... maxDosePerPeriod Σ0..1SHR Ratio ProfileUpper limit on medication per unit of time
... maxDosePerAdministration Σ0..1SimpleQuantityUpper limit on medication per administration
... maxDosePerLifetime Σ0..1SimpleQuantityUpper limit on medication per lifetime of the patient
... rate[x] Σ0..1Ratio, Range, SimpleQuantityAmount of medication per unit of time

doco Documentation for this format

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

 

Terminology Bindings

PathNameConformanceValueSet
Dosage.additionalInstructionSNOMED CT Additional Dosage InstructionsrequiredSNOMED CT Additional Dosage Instructions
Dosage.asNeeded[x]SNOMED CT Medication As Needed Reason CodesexampleSNOMED CT Medication As Needed Reason Codes
Dosage.asNeededCodeableConceptSNOMED CT Medication As Needed Reason CodesexampleSNOMED CT Medication As Needed Reason Codes
Dosage.siteSHR BodySiteVS ValueSetrequiredSHR BodySiteVS ValueSet
Dosage.routeSNOMED CT Route CodesrequiredSNOMED CT Route Codes
Dosage.methodSNOMED CT Administration Method CodesrequiredSNOMED CT Administration Method Codes

 

Constraints

IdPathDetailsRequirements
ele-1DosageAll FHIR elements must have a @value or children
: hasValue() | (children().count() > id.count())