Healthcare Financial Services IG Edition 1
0.3.0 - ci-build Saudi Arabia flag

Healthcare Financial Services IG Edition 1 - Local Development build (v0.3.0) built by the FHIR (HL7® FHIR® Standard) Build Tools. See the Directory of published versions

Data Type Profile: DP_Dosage

Official URL: http://nphies.sa/fhir/ksa/nphies-fs/StructureDefinition/DP-Dosage Version: 0.3.0
Draft as of 2025-06-23 Computable Name: DP_Dosage

Dosage datatype with timing, route and doseAndRate required.

Usage:

Formal Views of Profile Content

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

This structure is derived from Dosage

NameFlagsCard.TypeDescription & Constraintsdoco
.. Dosage 0..* Dosage How the medication is/was taken or should be taken
... sequence S 0..1 DP_integer The order of the dosage instructions
... text S 0..1 string Free text dosage instructions e.g. SIG
Max Length:4000
... patientInstruction S 0..1 string Patient or consumer oriented instructions
Max Length:4000
... route 1..1 DP_CodeableConcept How drug should enter body
Binding: Route of Admin (required)
... doseAndRate 1..1 Element Amount of medication administered
.... Slices for dose[x] S 0..1 Range, SimpleQuantity Amount of medication per dose
Slice: Unordered, Open by type:$this
..... dose[x]:doseRange S 0..1 DP_Range Amount of medication per dose
..... dose[x]:doseQuantity S 0..1 DP_SimpleQuantity_1 Amount of medication per dose
.... Slices for rate[x] S 0..1 Ratio, Range, SimpleQuantity Amount of medication per unit of time
Slice: Unordered, Open by type:$this
..... rate[x]:rateRatio S 0..1 DP_Ratio Amount of medication per unit of time
..... rate[x]:rateRange S 0..1 DP_Range Amount of medication per unit of time
..... rate[x]:rateQuantity S 0..1 DP_SimpleQuantity_1 Amount of medication per unit of time

doco Documentation for this format

Terminology Bindings (Differential)

PathConformanceValueSetURI
Dosage.routerequiredRouteOfAdmin (a valid code from Route of Administration)
http://nphies.sa/terminology/ValueSet/route-of-admin
from this IG
NameFlagsCard.TypeDescription & Constraintsdoco
.. Dosage 0..* Dosage How the medication is/was taken or should be taken
ele-1: All FHIR elements must have a @value or children
... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
ele-1: All FHIR elements must have a @value or children
ext-1: Must have either extensions or value[x], not both
... sequence SΣ 0..1 DP_integer The order of the dosage instructions
ele-1: All FHIR elements must have a @value or children
... text SΣ 0..1 string Free text dosage instructions e.g. SIG
ele-1: All FHIR elements must have a @value or children
Max Length:4000
... timing Σ 1..1 DP_Timing When medication should be administered
ele-1: All FHIR elements must have a @value or children
... route Σ 1..1 DP_CodeableConcept How drug should enter body
Binding: Route of Admin (required)
ele-1: All FHIR elements must have a @value or children
... doseAndRate Σ 1..1 Element Amount of medication administered
ele-1: All FHIR elements must have a @value or children
.... Slices for dose[x] SΣ 0..1 Amount of medication per dose
Slice: Unordered, Closed by type:$this
ele-1: All FHIR elements must have a @value or children
..... doseRange Range
..... doseQuantity Quantity(SimpleQuantity)
..... dose[x]:doseRange SΣ 0..1 DP_Range Amount of medication per dose
ele-1: All FHIR elements must have a @value or children
..... dose[x]:doseQuantity SΣ 0..1 DP_SimpleQuantity_1 Amount of medication per dose
ele-1: All FHIR elements must have a @value or children
.... Slices for rate[x] SΣ 0..1 Amount of medication per unit of time
Slice: Unordered, Closed by type:$this
ele-1: All FHIR elements must have a @value or children
..... rateRatio Ratio
..... rateRange Range
..... rateQuantity Quantity(SimpleQuantity)
..... rate[x]:rateRatio SΣ 0..1 DP_Ratio Amount of medication per unit of time
ele-1: All FHIR elements must have a @value or children
..... rate[x]:rateRange SΣ 0..1 DP_Range Amount of medication per unit of time
ele-1: All FHIR elements must have a @value or children
..... rate[x]:rateQuantity SΣ 0..1 DP_SimpleQuantity_1 Amount of medication per unit of time
ele-1: All FHIR elements must have a @value or children

doco Documentation for this format

Terminology Bindings

PathConformanceValueSetURI
Dosage.routerequiredRouteOfAdmin (a valid code from Route of Administration)
http://nphies.sa/terminology/ValueSet/route-of-admin
from this IG

Constraints

IdGradePath(s)DetailsRequirements
ele-1error**ALL** elementsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1error**ALL** extensionsMust have either extensions or value[x], not both
: extension.exists() != value.exists()
NameFlagsCard.TypeDescription & Constraintsdoco
.. Dosage 0..* Dosage How the medication is/was taken or should be taken
... id 0..1 string Unique id for inter-element referencing
... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
... text SΣ 0..1 string Free text dosage instructions e.g. SIG
Max Length:4000
... additionalInstruction Σ 0..* CodeableConcept Supplemental instruction or warnings to the patient - e.g. "with meals", "may cause drowsiness"
Binding: SNOMEDCTAdditionalDosageInstructions (example): A coded concept identifying additional instructions such as "take with water" or "avoid operating heavy machinery".


... patientInstruction SΣ 0..1 string Patient or consumer oriented instructions
Max Length:4000
... timing Σ 1..1 DP_Timing When medication should be administered
... asNeeded[x] Σ 0..1 Take "as needed" (for x)
Binding: SNOMEDCTMedicationAsNeededReasonCodes (example): 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.

.... asNeededBoolean boolean
.... asNeededCodeableConcept CodeableConcept
... site Σ 0..1 CodeableConcept Body site to administer to
Binding: SNOMEDCTAnatomicalStructureForAdministrationSiteCodes (example): A coded concept describing the site location the medicine enters into or onto the body.

... route Σ 1..1 DP_CodeableConcept How drug should enter body
Binding: Route of Admin (required)
... method Σ 0..1 CodeableConcept Technique for administering medication
Binding: SNOMEDCTAdministrationMethodCodes (example): A coded concept describing the technique by which the medicine is administered.

... doseAndRate Σ 1..1 Element Amount of medication administered
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
.... type Σ 0..1 CodeableConcept The kind of dose or rate specified
Binding: DoseAndRateType (example): The kind of dose or rate specified.

.... Slices for dose[x] SΣ 0..1 Amount of medication per dose
Slice: Unordered, Closed by type:$this
..... doseRange Range
..... doseQuantity Quantity(SimpleQuantity)
..... dose[x]:doseRange SΣ 0..1 DP_Range Amount of medication per dose
..... dose[x]:doseQuantity SΣ 0..1 DP_SimpleQuantity_1 Amount of medication per dose
.... Slices for rate[x] SΣ 0..1 Amount of medication per unit of time
Slice: Unordered, Closed by type:$this
..... rateRatio Ratio
..... rateRange Range
..... rateQuantity Quantity(SimpleQuantity)
..... rate[x]:rateRatio SΣ 0..1 DP_Ratio Amount of medication per unit of time
..... rate[x]:rateRange SΣ 0..1 DP_Range Amount of medication per unit of time
..... rate[x]:rateQuantity SΣ 0..1 DP_SimpleQuantity_1 Amount of medication per unit of time
... maxDosePerPeriod Σ 0..1 Ratio Upper limit on medication per unit of time
... maxDosePerAdministration Σ 0..1 SimpleQuantity Upper limit on medication per administration
... maxDosePerLifetime Σ 0..1 SimpleQuantity Upper limit on medication per lifetime of the patient

doco Documentation for this format

Terminology Bindings

PathConformanceValueSetURI
Dosage.additionalInstructionexampleSNOMEDCTAdditionalDosageInstructions
http://hl7.org/fhir/ValueSet/additional-instruction-codes
from the FHIR Standard
Dosage.asNeeded[x]exampleSNOMEDCTMedicationAsNeededReasonCodes
http://hl7.org/fhir/ValueSet/medication-as-needed-reason
from the FHIR Standard
Dosage.siteexampleSNOMEDCTAnatomicalStructureForAdministrationSiteCodes
http://hl7.org/fhir/ValueSet/approach-site-codes
from the FHIR Standard
Dosage.routerequiredRouteOfAdmin (a valid code from Route of Administration)
http://nphies.sa/terminology/ValueSet/route-of-admin
from this IG
Dosage.methodexampleSNOMEDCTAdministrationMethodCodes
http://hl7.org/fhir/ValueSet/administration-method-codes
from the FHIR Standard
Dosage.doseAndRate.typeexampleDoseAndRateType
http://hl7.org/fhir/ValueSet/dose-rate-type
from the FHIR Standard

Constraints

IdGradePath(s)DetailsRequirements
ele-1error**ALL** elementsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1error**ALL** extensionsMust have either extensions or value[x], not both
: extension.exists() != value.exists()

This structure is derived from Dosage

Differential View

This structure is derived from Dosage

NameFlagsCard.TypeDescription & Constraintsdoco
.. Dosage 0..* Dosage How the medication is/was taken or should be taken
... sequence S 0..1 DP_integer The order of the dosage instructions
... text S 0..1 string Free text dosage instructions e.g. SIG
Max Length:4000
... patientInstruction S 0..1 string Patient or consumer oriented instructions
Max Length:4000
... route 1..1 DP_CodeableConcept How drug should enter body
Binding: Route of Admin (required)
... doseAndRate 1..1 Element Amount of medication administered
.... Slices for dose[x] S 0..1 Range, SimpleQuantity Amount of medication per dose
Slice: Unordered, Open by type:$this
..... dose[x]:doseRange S 0..1 DP_Range Amount of medication per dose
..... dose[x]:doseQuantity S 0..1 DP_SimpleQuantity_1 Amount of medication per dose
.... Slices for rate[x] S 0..1 Ratio, Range, SimpleQuantity Amount of medication per unit of time
Slice: Unordered, Open by type:$this
..... rate[x]:rateRatio S 0..1 DP_Ratio Amount of medication per unit of time
..... rate[x]:rateRange S 0..1 DP_Range Amount of medication per unit of time
..... rate[x]:rateQuantity S 0..1 DP_SimpleQuantity_1 Amount of medication per unit of time

doco Documentation for this format

Terminology Bindings (Differential)

PathConformanceValueSetURI
Dosage.routerequiredRouteOfAdmin (a valid code from Route of Administration)
http://nphies.sa/terminology/ValueSet/route-of-admin
from this IG

Key Elements View

NameFlagsCard.TypeDescription & Constraintsdoco
.. Dosage 0..* Dosage How the medication is/was taken or should be taken
ele-1: All FHIR elements must have a @value or children
... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
ele-1: All FHIR elements must have a @value or children
ext-1: Must have either extensions or value[x], not both
... sequence SΣ 0..1 DP_integer The order of the dosage instructions
ele-1: All FHIR elements must have a @value or children
... text SΣ 0..1 string Free text dosage instructions e.g. SIG
ele-1: All FHIR elements must have a @value or children
Max Length:4000
... timing Σ 1..1 DP_Timing When medication should be administered
ele-1: All FHIR elements must have a @value or children
... route Σ 1..1 DP_CodeableConcept How drug should enter body
Binding: Route of Admin (required)
ele-1: All FHIR elements must have a @value or children
... doseAndRate Σ 1..1 Element Amount of medication administered
ele-1: All FHIR elements must have a @value or children
.... Slices for dose[x] SΣ 0..1 Amount of medication per dose
Slice: Unordered, Closed by type:$this
ele-1: All FHIR elements must have a @value or children
..... doseRange Range
..... doseQuantity Quantity(SimpleQuantity)
..... dose[x]:doseRange SΣ 0..1 DP_Range Amount of medication per dose
ele-1: All FHIR elements must have a @value or children
..... dose[x]:doseQuantity SΣ 0..1 DP_SimpleQuantity_1 Amount of medication per dose
ele-1: All FHIR elements must have a @value or children
.... Slices for rate[x] SΣ 0..1 Amount of medication per unit of time
Slice: Unordered, Closed by type:$this
ele-1: All FHIR elements must have a @value or children
..... rateRatio Ratio
..... rateRange Range
..... rateQuantity Quantity(SimpleQuantity)
..... rate[x]:rateRatio SΣ 0..1 DP_Ratio Amount of medication per unit of time
ele-1: All FHIR elements must have a @value or children
..... rate[x]:rateRange SΣ 0..1 DP_Range Amount of medication per unit of time
ele-1: All FHIR elements must have a @value or children
..... rate[x]:rateQuantity SΣ 0..1 DP_SimpleQuantity_1 Amount of medication per unit of time
ele-1: All FHIR elements must have a @value or children

doco Documentation for this format

Terminology Bindings

PathConformanceValueSetURI
Dosage.routerequiredRouteOfAdmin (a valid code from Route of Administration)
http://nphies.sa/terminology/ValueSet/route-of-admin
from this IG

Constraints

IdGradePath(s)DetailsRequirements
ele-1error**ALL** elementsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1error**ALL** extensionsMust have either extensions or value[x], not both
: extension.exists() != value.exists()

Snapshot View

NameFlagsCard.TypeDescription & Constraintsdoco
.. Dosage 0..* Dosage How the medication is/was taken or should be taken
... id 0..1 string Unique id for inter-element referencing
... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
... text SΣ 0..1 string Free text dosage instructions e.g. SIG
Max Length:4000
... additionalInstruction Σ 0..* CodeableConcept Supplemental instruction or warnings to the patient - e.g. "with meals", "may cause drowsiness"
Binding: SNOMEDCTAdditionalDosageInstructions (example): A coded concept identifying additional instructions such as "take with water" or "avoid operating heavy machinery".


... patientInstruction SΣ 0..1 string Patient or consumer oriented instructions
Max Length:4000
... timing Σ 1..1 DP_Timing When medication should be administered
... asNeeded[x] Σ 0..1 Take "as needed" (for x)
Binding: SNOMEDCTMedicationAsNeededReasonCodes (example): 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.

.... asNeededBoolean boolean
.... asNeededCodeableConcept CodeableConcept
... site Σ 0..1 CodeableConcept Body site to administer to
Binding: SNOMEDCTAnatomicalStructureForAdministrationSiteCodes (example): A coded concept describing the site location the medicine enters into or onto the body.

... route Σ 1..1 DP_CodeableConcept How drug should enter body
Binding: Route of Admin (required)
... method Σ 0..1 CodeableConcept Technique for administering medication
Binding: SNOMEDCTAdministrationMethodCodes (example): A coded concept describing the technique by which the medicine is administered.

... doseAndRate Σ 1..1 Element Amount of medication administered
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
.... type Σ 0..1 CodeableConcept The kind of dose or rate specified
Binding: DoseAndRateType (example): The kind of dose or rate specified.

.... Slices for dose[x] SΣ 0..1 Amount of medication per dose
Slice: Unordered, Closed by type:$this
..... doseRange Range
..... doseQuantity Quantity(SimpleQuantity)
..... dose[x]:doseRange SΣ 0..1 DP_Range Amount of medication per dose
..... dose[x]:doseQuantity SΣ 0..1 DP_SimpleQuantity_1 Amount of medication per dose
.... Slices for rate[x] SΣ 0..1 Amount of medication per unit of time
Slice: Unordered, Closed by type:$this
..... rateRatio Ratio
..... rateRange Range
..... rateQuantity Quantity(SimpleQuantity)
..... rate[x]:rateRatio SΣ 0..1 DP_Ratio Amount of medication per unit of time
..... rate[x]:rateRange SΣ 0..1 DP_Range Amount of medication per unit of time
..... rate[x]:rateQuantity SΣ 0..1 DP_SimpleQuantity_1 Amount of medication per unit of time
... maxDosePerPeriod Σ 0..1 Ratio Upper limit on medication per unit of time
... maxDosePerAdministration Σ 0..1 SimpleQuantity Upper limit on medication per administration
... maxDosePerLifetime Σ 0..1 SimpleQuantity Upper limit on medication per lifetime of the patient

doco Documentation for this format

Terminology Bindings

PathConformanceValueSetURI
Dosage.additionalInstructionexampleSNOMEDCTAdditionalDosageInstructions
http://hl7.org/fhir/ValueSet/additional-instruction-codes
from the FHIR Standard
Dosage.asNeeded[x]exampleSNOMEDCTMedicationAsNeededReasonCodes
http://hl7.org/fhir/ValueSet/medication-as-needed-reason
from the FHIR Standard
Dosage.siteexampleSNOMEDCTAnatomicalStructureForAdministrationSiteCodes
http://hl7.org/fhir/ValueSet/approach-site-codes
from the FHIR Standard
Dosage.routerequiredRouteOfAdmin (a valid code from Route of Administration)
http://nphies.sa/terminology/ValueSet/route-of-admin
from this IG
Dosage.methodexampleSNOMEDCTAdministrationMethodCodes
http://hl7.org/fhir/ValueSet/administration-method-codes
from the FHIR Standard
Dosage.doseAndRate.typeexampleDoseAndRateType
http://hl7.org/fhir/ValueSet/dose-rate-type
from the FHIR Standard

Constraints

IdGradePath(s)DetailsRequirements
ele-1error**ALL** elementsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1error**ALL** extensionsMust have either extensions or value[x], not both
: extension.exists() != value.exists()

This structure is derived from Dosage

 

Other representations of profile: CSV, Excel, Schematron