Release 5

This page is part of the FHIR Specification (v5.0.0: R5 - STU). This is the current published version. For a full list of available versions, see the Directory of published versions . Page versions: R5 R4B R4 R3

11.10.0 Dosage

Types Framework Cross Reference: Base Types | Datatypes | Resources | Patterns

The Dosage structure defines general dosage instruction information typically represented in medication requests, medication dispenses and medication statements.

Note: the Dosage structure allows modifier extensions.

11.10.0.1 Content

Structure

Name Flags Card. Type Description & Constraints doco
.. Dosage Σ TU Element How the medication is/was taken or should be taken
+ Rule: AsNeededFor can only be set if AsNeeded is empty or true

Elements defined in Ancestors: id, extension, modifierExtension
... sequence Σ 0..1integer The order of the dosage instructions
... text Σ 0..1string Free text dosage instructions e.g. SIG
... additionalInstruction Σ 0..*CodeableConcept Supplemental instruction or warnings to the patient - e.g. "with meals", "may cause drowsiness"
Binding: SNOMED CT Additional Dosage Instructions (Example)

... timing Σ 0..1Timing When medication should be administered
... asNeeded Σ C 0..1boolean Take "as needed"
... asNeededFor Σ C 0..*CodeableConcept Take "as needed" (for x)
Binding: SNOMED CT Medication As Needed Reason Codes (Example)

... site Σ 0..1CodeableConcept Body site to administer to
Binding: SNOMED CT Anatomical Structure for Administration Site Codes (Example)
... route Σ 0..1CodeableConcept How drug should enter body
Binding: SNOMED CT Route Codes (Example)
... method Σ 0..1CodeableConcept Technique for administering medication
Binding: SNOMED CT Administration Method Codes (Example)
... doseAndRate Σ 0..*Element Amount of medication administered, to be administered or typical amount to be administered

.... type Σ 0..1CodeableConcept The kind of dose or rate specified
Binding: DoseAndRateType icon (Example)
.... dose[x] Σ 0..1Amount of medication per dose
..... doseRangeRange
..... doseQuantitySimpleQuantity
.... rate[x] Σ 0..1Amount of medication per unit of time
..... rateRatioRatio
..... rateRangeRange
..... rateQuantitySimpleQuantity
... maxDosePerPeriod Σ 0..*Ratio Upper limit on medication per unit of time

... maxDosePerAdministration Σ 0..1SimpleQuantity Upper limit on medication per administration
... maxDosePerLifetime Σ 0..1SimpleQuantity Upper limit on medication per lifetime of the patient

doco Documentation for this format icon

Definition: XML | JSON

UML Diagram (Legend)

Dosage Indicates the order in which the dosage instructions should be applied or interpretedsequence : integer [0..1]Free text dosage instructions e.g. SIGtext : string [0..1]Supplemental instructions to the patient on how to take the medication (e.g. "with meals" or"take half to one hour before food") or warnings for the patient about the medication (e.g. "may cause drowsiness" or "avoid exposure of skin to direct sunlight or sunlamps")additionalInstruction : CodeableConcept [0..*] « A coded concept identifying additional instructions such as "take with water" or "avoid operating heavy machinery". (Strength=Example) SNOMEDCTAdditionalDosageInstr...?? »Instructions in terms that are understood by the patient or consumerpatientInstruction : string [0..1]When medication should be administeredtiming : Timing [0..1]Indicates whether the Medication is only taken when needed within a specific dosing schedule (Boolean option)asNeeded : boolean [0..1] « This element has or is affected by some invariantsC »Indicates whether the Medication is only taken based on a precondition for taking the Medication (CodeableConcept)asNeededFor : CodeableConcept [0..*] « A coded concept identifying the precondition that should be met or evaluated prior to consuming or administering a medication dose. For example "pain", "30 minutes prior to sexual intercourse", "on flare-up" etc. (Strength=Example) SNOMEDCTMedicationAsNeededRea...?? » « This element has or is affected by some invariantsC »Body site to administer tosite : CodeableConcept [0..1] « A coded concept describing the site location the medicine enters into or onto the body. (Strength=Example)SNOMEDCTAnatomicalStructureAd...?? »How drug should enter bodyroute : CodeableConcept [0..1] « A coded concept describing the route or physiological path of administration of a therapeutic agent into or onto the body of a subject. (Strength=Example)SNOMEDCTRouteCodes?? »Technique for administering medicationmethod : CodeableConcept [0..1] « A coded concept describing the technique by which the medicine is administered. (Strength=Example)SNOMEDCTAdministrationMethodC...?? »Upper limit on medication per unit of timemaxDosePerPeriod : Ratio [0..*]Upper limit on medication per administrationmaxDosePerAdministration : Quantity(SimpleQuantity) [0..1]Upper limit on medication per lifetime of the patientmaxDosePerLifetime : Quantity(SimpleQuantity) [0..1]DoseAndRateThe kind of dose or rate specified, for example, ordered or calculatedtype : CodeableConcept [0..1] « The kind of dose or rate specified. (Strength=Example)DoseAndRateType?? »Amount of medication per dosedose[x] : DataType [0..1] « Range|Quantity(SimpleQuantity) »Amount of medication per unit of timerate[x] : DataType [0..1] « Ratio|Range|Quantity(SimpleQuantity) »BackboneType May be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and managable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions. Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself) (this element modifies the meaning of other elements)modifierExtension : Extension [0..*]Depending on the resource,this is the amount of medication administered, to be administered or typical amount to be administereddoseAndRate [0..*]

XML Template

<Dosage xmlns="http://hl7.org/fhir">
 <!-- from Element: extension -->
 <sequence value="[integer ]"/><!-- 0..1 The order of the dosage instructions  -->
 <text value="[string ]"/><!-- 0..1 Free text dosage instructions e.g. SIG  -->
 <additionalInstruction><!-- 0..* CodeableConcept  Supplemental instruction or warnings to the patient - e.g. "with meals", "may cause drowsiness"  --></additionalInstruction>
 <patientInstruction value="[string ]"/><!-- 0..1 Patient or consumer oriented instructions  -->
 <timing><!-- 0..1 Timing  When medication should be administered  --></timing>
 <asNeeded value="[boolean ]"/><!-- I 0..1 Take "as needed"  -->
 <asNeededFor><!-- I 0..* CodeableConcept  Take "as needed" (for x)  --></asNeededFor>
 <site><!-- 0..1 CodeableConcept  Body site to administer to  --></site>
 <route><!-- 0..1 CodeableConcept  How drug should enter body  --></route>
 <method><!-- 0..1 CodeableConcept  Technique for administering medication  --></method>
 <doseAndRate> <!-- 0..* Amount of medication administered, to be administered or typical amount to be administered -->
 <type><!-- 0..1 CodeableConcept  The kind of dose or rate specified icon  --></type>
 <dose[x]><!-- 0..1 Range|Quantity(SimpleQuantity) Amount of medication per dose  --></dose[x]>
 <rate[x]><!-- 0..1 Ratio|Range|Quantity(SimpleQuantity) Amount of medication per unit of time  --></rate[x]>
 </doseAndRate>
 <maxDosePerPeriod><!-- 0..* Ratio  Upper limit on medication per unit of time  --></maxDosePerPeriod>
 <maxDosePerAdministration><!-- 0..1 Quantity(SimpleQuantity) Upper limit on medication per administration  --></maxDosePerAdministration>
 <maxDosePerLifetime><!-- 0..1 Quantity(SimpleQuantity) Upper limit on medication per lifetime of the patient  --></maxDosePerLifetime>
</Dosage>

JSON Template

{doco 
 // from Element: extension
 "sequence" : <integer >, // The order of the dosage instructions 
 "text" : "<string >", // Free text dosage instructions e.g. SIG 
 "additionalInstruction" : [{ CodeableConcept  }], // Supplemental instruction or warnings to the patient - e.g. "with meals", "may cause drowsiness" 
 "patientInstruction" : "<string >", // Patient or consumer oriented instructions 
 "timing" : { Timing  }, // When medication should be administered 
 "asNeeded" : <boolean >, // I  Take "as needed" 
 "asNeededFor" : [{ CodeableConcept  }], // I  Take "as needed" (for x) 
 "site" : { CodeableConcept  }, // Body site to administer to 
 "route" : { CodeableConcept  }, // How drug should enter body 
 "method" : { CodeableConcept  }, // Technique for administering medication 
 "doseAndRate" : [{ // Amount of medication administered, to be administered or typical amount to be administered 
 "type" : { CodeableConcept  }, // The kind of dose or rate specified icon 
 // dose[x]: Amount of medication per dose. One of these 2:
 "doseRange" : { Range  },
 "doseQuantity" : { Quantity(SimpleQuantity) },
 // rate[x]: Amount of medication per unit of time. One of these 3:
 "rateRatio" : { Ratio  },
 "rateRange" : { Range  },
 "rateQuantity" : { Quantity(SimpleQuantity) }
 }],
 "maxDosePerPeriod" : [{ Ratio  }], // Upper limit on medication per unit of time 
 "maxDosePerAdministration" : { Quantity(SimpleQuantity) }, // Upper limit on medication per administration 
 "maxDosePerLifetime" : { Quantity(SimpleQuantity) } // Upper limit on medication per lifetime of the patient 
}

Turtle Template

@prefix fhir: <http://hl7.org/fhir/> .
[
 # from Element: Element.extension
 fhir:sequence[ integer ] ; # 0..1 The order of the dosage instructions
 fhir:text[ string ] ; # 0..1 Free text dosage instructions e.g. SIG
 fhir:additionalInstruction ( [ CodeableConcept ] ... ) ; # 0..* Supplemental instruction or warnings to the patient - e.g. "with meals", "may cause drowsiness"
 fhir:patientInstruction[ string ] ; # 0..1 Patient or consumer oriented instructions
 fhir:timing[ Timing ] ; # 0..1 When medication should be administered
 fhir:asNeeded[ boolean ] ; # 0..1 I  Take "as needed"
 fhir:asNeededFor ( [ CodeableConcept ] ... ) ; # 0..* I  Take "as needed" (for x)
 fhir:site[ CodeableConcept ] ; # 0..1 Body site to administer to
 fhir:route[ CodeableConcept ] ; # 0..1 How drug should enter body
 fhir:method[ CodeableConcept ] ; # 0..1 Technique for administering medication
 fhir:doseAndRate( [ # 0..* Amount of medication administered, to be administered or typical amount to be administered
 fhir:type[ CodeableConcept ] ; # 0..1 The kind of dose or rate specified
 # dose[x]: 0..1 Amount of medication per dose. One of these 2
 fhir:dose[ a fhir:Range ; Range ]
 fhir:dose[ a fhir:SimpleQuantity ; Quantity(SimpleQuantity) ]
 # rate[x]: 0..1 Amount of medication per unit of time. One of these 3
 fhir:rate[ a fhir:Ratio ; Ratio ]
 fhir:rate[ a fhir:Range ; Range ]
 fhir:rate[ a fhir:SimpleQuantity ; Quantity(SimpleQuantity) ]
 ] ... ) ;
 fhir:maxDosePerPeriod ( [ Ratio ] ... ) ; # 0..* Upper limit on medication per unit of time
 fhir:maxDosePerAdministration[ Quantity(SimpleQuantity) ] ; # 0..1 Upper limit on medication per administration
 fhir:maxDosePerLifetime[ Quantity(SimpleQuantity) ] ; # 0..1 Upper limit on medication per lifetime of the patient
]

Changes since Release 3

Changes from both R4 and R4B

Dosage.asNeeded
  • Renamed from asNeeded[x] to asNeeded
  • Remove Type CodeableConcept
Dosage.asNeededFor
  • Added Element
Dosage.maxDosePerPeriod
  • Max Cardinality changed from 1 to *

See the Full Difference for further information

Structure

Name Flags Card. Type Description & Constraints doco
.. Dosage Σ TU Element How the medication is/was taken or should be taken
+ Rule: AsNeededFor can only be set if AsNeeded is empty or true

Elements defined in Ancestors: id, extension, modifierExtension
... sequence Σ 0..1integer The order of the dosage instructions
... text Σ 0..1string Free text dosage instructions e.g. SIG
... additionalInstruction Σ 0..*CodeableConcept Supplemental instruction or warnings to the patient - e.g. "with meals", "may cause drowsiness"
Binding: SNOMED CT Additional Dosage Instructions (Example)

... timing Σ 0..1Timing When medication should be administered
... asNeeded Σ C 0..1boolean Take "as needed"
... asNeededFor Σ C 0..*CodeableConcept Take "as needed" (for x)
Binding: SNOMED CT Medication As Needed Reason Codes (Example)

... site Σ 0..1CodeableConcept Body site to administer to
Binding: SNOMED CT Anatomical Structure for Administration Site Codes (Example)
... route Σ 0..1CodeableConcept How drug should enter body
Binding: SNOMED CT Route Codes (Example)
... method Σ 0..1CodeableConcept Technique for administering medication
Binding: SNOMED CT Administration Method Codes (Example)
... doseAndRate Σ 0..*Element Amount of medication administered, to be administered or typical amount to be administered

.... type Σ 0..1CodeableConcept The kind of dose or rate specified
Binding: DoseAndRateType icon (Example)
.... dose[x] Σ 0..1Amount of medication per dose
..... doseRangeRange
..... doseQuantitySimpleQuantity
.... rate[x] Σ 0..1Amount of medication per unit of time
..... rateRatioRatio
..... rateRangeRange
..... rateQuantitySimpleQuantity
... maxDosePerPeriod Σ 0..*Ratio Upper limit on medication per unit of time

... maxDosePerAdministration Σ 0..1SimpleQuantity Upper limit on medication per administration
... maxDosePerLifetime Σ 0..1SimpleQuantity Upper limit on medication per lifetime of the patient

doco Documentation for this format icon

UML Diagram (Legend)

Dosage Indicates the order in which the dosage instructions should be applied or interpretedsequence : integer [0..1]Free text dosage instructions e.g. SIGtext : string [0..1]Supplemental instructions to the patient on how to take the medication (e.g. "with meals" or"take half to one hour before food") or warnings for the patient about the medication (e.g. "may cause drowsiness" or "avoid exposure of skin to direct sunlight or sunlamps")additionalInstruction : CodeableConcept [0..*] « A coded concept identifying additional instructions such as "take with water" or "avoid operating heavy machinery". (Strength=Example) SNOMEDCTAdditionalDosageInstr...?? »Instructions in terms that are understood by the patient or consumerpatientInstruction : string [0..1]When medication should be administeredtiming : Timing [0..1]Indicates whether the Medication is only taken when needed within a specific dosing schedule (Boolean option)asNeeded : boolean [0..1] « This element has or is affected by some invariantsC »Indicates whether the Medication is only taken based on a precondition for taking the Medication (CodeableConcept)asNeededFor : CodeableConcept [0..*] « A coded concept identifying the precondition that should be met or evaluated prior to consuming or administering a medication dose. For example "pain", "30 minutes prior to sexual intercourse", "on flare-up" etc. (Strength=Example) SNOMEDCTMedicationAsNeededRea...?? » « This element has or is affected by some invariantsC »Body site to administer tosite : CodeableConcept [0..1] « A coded concept describing the site location the medicine enters into or onto the body. (Strength=Example)SNOMEDCTAnatomicalStructureAd...?? »How drug should enter bodyroute : CodeableConcept [0..1] « A coded concept describing the route or physiological path of administration of a therapeutic agent into or onto the body of a subject. (Strength=Example)SNOMEDCTRouteCodes?? »Technique for administering medicationmethod : CodeableConcept [0..1] « A coded concept describing the technique by which the medicine is administered. (Strength=Example)SNOMEDCTAdministrationMethodC...?? »Upper limit on medication per unit of timemaxDosePerPeriod : Ratio [0..*]Upper limit on medication per administrationmaxDosePerAdministration : Quantity(SimpleQuantity) [0..1]Upper limit on medication per lifetime of the patientmaxDosePerLifetime : Quantity(SimpleQuantity) [0..1]DoseAndRateThe kind of dose or rate specified, for example, ordered or calculatedtype : CodeableConcept [0..1] « The kind of dose or rate specified. (Strength=Example)DoseAndRateType?? »Amount of medication per dosedose[x] : DataType [0..1] « Range|Quantity(SimpleQuantity) »Amount of medication per unit of timerate[x] : DataType [0..1] « Ratio|Range|Quantity(SimpleQuantity) »BackboneType May be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and managable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions. Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself) (this element modifies the meaning of other elements)modifierExtension : Extension [0..*]Depending on the resource,this is the amount of medication administered, to be administered or typical amount to be administereddoseAndRate [0..*]

XML Template

<Dosage xmlns="http://hl7.org/fhir">
 <!-- from Element: extension -->
 <sequence value="[integer ]"/><!-- 0..1 The order of the dosage instructions  -->
 <text value="[string ]"/><!-- 0..1 Free text dosage instructions e.g. SIG  -->
 <additionalInstruction><!-- 0..* CodeableConcept  Supplemental instruction or warnings to the patient - e.g. "with meals", "may cause drowsiness"  --></additionalInstruction>
 <patientInstruction value="[string ]"/><!-- 0..1 Patient or consumer oriented instructions  -->
 <timing><!-- 0..1 Timing  When medication should be administered  --></timing>
 <asNeeded value="[boolean ]"/><!-- I 0..1 Take "as needed"  -->
 <asNeededFor><!-- I 0..* CodeableConcept  Take "as needed" (for x)  --></asNeededFor>
 <site><!-- 0..1 CodeableConcept  Body site to administer to  --></site>
 <route><!-- 0..1 CodeableConcept  How drug should enter body  --></route>
 <method><!-- 0..1 CodeableConcept  Technique for administering medication  --></method>
 <doseAndRate> <!-- 0..* Amount of medication administered, to be administered or typical amount to be administered -->
 <type><!-- 0..1 CodeableConcept  The kind of dose or rate specified icon  --></type>
 <dose[x]><!-- 0..1 Range|Quantity(SimpleQuantity) Amount of medication per dose  --></dose[x]>
 <rate[x]><!-- 0..1 Ratio|Range|Quantity(SimpleQuantity) Amount of medication per unit of time  --></rate[x]>
 </doseAndRate>
 <maxDosePerPeriod><!-- 0..* Ratio  Upper limit on medication per unit of time  --></maxDosePerPeriod>
 <maxDosePerAdministration><!-- 0..1 Quantity(SimpleQuantity) Upper limit on medication per administration  --></maxDosePerAdministration>
 <maxDosePerLifetime><!-- 0..1 Quantity(SimpleQuantity) Upper limit on medication per lifetime of the patient  --></maxDosePerLifetime>
</Dosage>

JSON Template

{doco 
 // from Element: extension
 "sequence" : <integer >, // The order of the dosage instructions 
 "text" : "<string >", // Free text dosage instructions e.g. SIG 
 "additionalInstruction" : [{ CodeableConcept  }], // Supplemental instruction or warnings to the patient - e.g. "with meals", "may cause drowsiness" 
 "patientInstruction" : "<string >", // Patient or consumer oriented instructions 
 "timing" : { Timing  }, // When medication should be administered 
 "asNeeded" : <boolean >, // I  Take "as needed" 
 "asNeededFor" : [{ CodeableConcept  }], // I  Take "as needed" (for x) 
 "site" : { CodeableConcept  }, // Body site to administer to 
 "route" : { CodeableConcept  }, // How drug should enter body 
 "method" : { CodeableConcept  }, // Technique for administering medication 
 "doseAndRate" : [{ // Amount of medication administered, to be administered or typical amount to be administered 
 "type" : { CodeableConcept  }, // The kind of dose or rate specified icon 
 // dose[x]: Amount of medication per dose. One of these 2:
 "doseRange" : { Range  },
 "doseQuantity" : { Quantity(SimpleQuantity) },
 // rate[x]: Amount of medication per unit of time. One of these 3:
 "rateRatio" : { Ratio  },
 "rateRange" : { Range  },
 "rateQuantity" : { Quantity(SimpleQuantity) }
 }],
 "maxDosePerPeriod" : [{ Ratio  }], // Upper limit on medication per unit of time 
 "maxDosePerAdministration" : { Quantity(SimpleQuantity) }, // Upper limit on medication per administration 
 "maxDosePerLifetime" : { Quantity(SimpleQuantity) } // Upper limit on medication per lifetime of the patient 
}

Turtle Template

@prefix fhir: <http://hl7.org/fhir/> .
[
 # from Element: Element.extension
 fhir:sequence[ integer ] ; # 0..1 The order of the dosage instructions
 fhir:text[ string ] ; # 0..1 Free text dosage instructions e.g. SIG
 fhir:additionalInstruction ( [ CodeableConcept ] ... ) ; # 0..* Supplemental instruction or warnings to the patient - e.g. "with meals", "may cause drowsiness"
 fhir:patientInstruction[ string ] ; # 0..1 Patient or consumer oriented instructions
 fhir:timing[ Timing ] ; # 0..1 When medication should be administered
 fhir:asNeeded[ boolean ] ; # 0..1 I  Take "as needed"
 fhir:asNeededFor ( [ CodeableConcept ] ... ) ; # 0..* I  Take "as needed" (for x)
 fhir:site[ CodeableConcept ] ; # 0..1 Body site to administer to
 fhir:route[ CodeableConcept ] ; # 0..1 How drug should enter body
 fhir:method[ CodeableConcept ] ; # 0..1 Technique for administering medication
 fhir:doseAndRate( [ # 0..* Amount of medication administered, to be administered or typical amount to be administered
 fhir:type[ CodeableConcept ] ; # 0..1 The kind of dose or rate specified
 # dose[x]: 0..1 Amount of medication per dose. One of these 2
 fhir:dose[ a fhir:Range ; Range ]
 fhir:dose[ a fhir:SimpleQuantity ; Quantity(SimpleQuantity) ]
 # rate[x]: 0..1 Amount of medication per unit of time. One of these 3
 fhir:rate[ a fhir:Ratio ; Ratio ]
 fhir:rate[ a fhir:Range ; Range ]
 fhir:rate[ a fhir:SimpleQuantity ; Quantity(SimpleQuantity) ]
 ] ... ) ;
 fhir:maxDosePerPeriod ( [ Ratio ] ... ) ; # 0..* Upper limit on medication per unit of time
 fhir:maxDosePerAdministration[ Quantity(SimpleQuantity) ] ; # 0..1 Upper limit on medication per administration
 fhir:maxDosePerLifetime[ Quantity(SimpleQuantity) ] ; # 0..1 Upper limit on medication per lifetime of the patient
]

Changes since Release 3

Changes from both R4 and R4B

Dosage.asNeeded
  • Renamed from asNeeded[x] to asNeeded
  • Remove Type CodeableConcept
Dosage.asNeededFor
  • Added Element
Dosage.maxDosePerPeriod
  • Max Cardinality changed from 1 to *

See the Full Difference for further information

Constraints

id Level Location Description Expression
img dos-1 Rule (base) AsNeededFor can only be set if AsNeeded is empty or true asNeededFor.empty() or asNeeded.empty() or asNeeded

Dosage is used in the following places: ActivityDefinition, MedicationDispense, MedicationKnowledge, MedicationRequest and MedicationStatement

AltStyle によって変換されたページ (->オリジナル) /