Bản hướng dẫn thực thi (IG) dành cho các hệ thống thông tin Y tế tại Việt Nam
1.0.0 - CI Build
Bản hướng dẫn thực thi (IG) dành cho các hệ thống thông tin Y tế tại Việt Nam, published by Cục Công nghệ thông tin - Bộ Y tế. This guide is not an authorized publication; it is the continuous build for version 1.0.0 built by the FHIR (HL7® FHIR® Standard) CI Build. This version is based on the current content of https://github.com/hl7vn/vn-core-ig/ and changes regularly. See the Directory of published versions
Definitions for the vn-core-dosage Profile.
Guidance on how to interpret the contents of this table can be found here
0. Dosage | |
Definition | Indicates how the medication is/was taken or should be taken by the patient. |
Short | How the medication is/was taken or should be taken |
Control | 0..* |
Is Modifier | false |
Invariants | ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()) ) |
2. Dosage.id | |
Definition | Unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces. |
Short | Unique id for inter-element referencing |
Control | 0..1 |
Type | string |
Is Modifier | false |
XML Format | In the XML format, this property is represented as an attribute. |
Summary | false |
4. Dosage.extension | |
Definition | May be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, 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. |
Short | Additional content defined by implementations |
Comments | There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone. |
Control | 0..* |
Type | Extension |
Is Modifier | false |
Summary | false |
Alternate Names | extensions, user content |
Invariants | ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()) )ext-1: Must have either extensions or value[x], not both ( extension.exists() != value.exists() ) |
Slicing | This element introduces a set of slices on Dosage.extension . The slices areUnordered and Open, and can be differentiated using the following discriminators: |
6. Dosage.modifierExtension | |
Definition | 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 manageable, 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). |
Short | Extensions that cannot be ignored even if unrecognized |
Comments | There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone. |
Control | 0..* |
Type | Extension |
Is Modifier | true because Modifier extensions are expected to modify the meaning or interpretation of the element that contains them |
Summary | true |
Requirements | Modifier extensions allow for extensions that cannot be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored. This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the definition of modifier extensions. |
Alternate Names | extensions, user content, modifiers |
Invariants | ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()) )ext-1: Must have either extensions or value[x], not both ( extension.exists() != value.exists() ) |
8. Dosage.sequence | |
Definition | Indicates the order in which the dosage instructions should be applied or interpreted. |
Short | The order of the dosage instructions |
Control | 0..1 |
Type | integer |
Is Modifier | false |
Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
Summary | true |
Requirements | If the sequence number of multiple Dosages is the same, then it is implied that the instructions are to be treated as concurrent. If the sequence number is different, then the Dosages are intended to be sequential. |
Invariants | ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()) ) |
10. Dosage.text | |
Definition | Free text dosage instructions e.g. SIG. |
Short | Free text dosage instructions e.g. SIG |
Control | 0..1 |
Type | string |
Is Modifier | false |
Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
Must Support | true |
Summary | true |
Requirements | Free text dosage instructions can be used for cases where the instructions are too complex to code. The content of this attribute does not include the name or description of the medication. When coded instructions are present, the free text instructions may still be present for display to humans taking or administering the medication. It is expected that the text instructions will always be populated. If the dosage.timing attribute is also populated, then the dosage.text should reflect the same information as the timing. Additional information about administration or preparation of the medication should be included as text. |
Invariants | ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()) ) |
12. Dosage.additionalInstruction | |
Definition | A concept that may be defined by a formal reference to a terminology or ontology or may be provided by text. |
Short | Concept - reference to a terminology or just text |
Comments | Not all terminology uses fit this general pattern. In some cases, models should not use CodeableConcept and use Coding directly and provide their own structure for managing text, codings, translations and the relationship between elements and pre- and post-coordination. |
Control | 0..* This element is affected by the following invariants: ele-1 |
Binding | The codes SHOULD be taken from ValueSet dành cho Các chỉ dẫn dùng thuốc (bổ sung) (SNOMED CT) (preferred to http://fhir.ehealth.gov.vn/core/ValueSet/snomedCT-additional-dosage-instruction ) |
Type | CodeableConcept(Codeable Concept profile - VN Core R4) |
Is Modifier | false |
Must Support | true |
Requirements | Additional instruction is intended to be coded, but where no code exists, the element could include text. For example, "Swallow with plenty of water" which might or might not be coded. |
Invariants | ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()) ) |
14. Dosage.patientInstruction | |
Definition | Instructions in terms that are understood by the patient or consumer. |
Short | Patient or consumer oriented instructions |
Control | 0..1 |
Type | string |
Is Modifier | false |
Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
Must Support | true |
Summary | true |
Invariants | ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()) ) |
16. Dosage.timing | |
Definition | When medication should be administered. |
Short | When medication should be administered |
Comments | This attribute might not always be populated while the Dosage.text is expected to be populated. If both are populated, then the Dosage.text should reflect the content of the Dosage.timing. |
Control | 0..1 |
Type | Timing |
Is Modifier | false |
Must Support | true |
Summary | true |
Requirements | The timing schedule for giving the medication to the patient. This data type allows many different expressions. For example: "Every 8 hours"; "Three times a day"; "1/2 an hour before breakfast for 10 days from 23-Dec 2011:"; "15 Oct 2013, 17 Oct 2013 and 1 Nov 2013". Sometimes, a rate can imply duration when expressed as total volume / duration (e.g. 500mL/2 hours implies a duration of 2 hours). However, when rate doesn't imply duration (e.g. 250mL/hour), then the timing.repeat.duration is needed to convey the infuse over time period. |
Invariants | ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()) ) |
18. Dosage.asNeeded[x] | |
Definition | Indicates whether the Medication is only taken when needed within a specific dosing schedule (Boolean option), or it indicates the precondition for taking the Medication (CodeableConcept). |
Short | Take "as needed" (for x) |
Comments | Can express "as needed" without a reason by setting the Boolean = True. In this case the CodeableConcept is not populated. Or you can express "as needed" with a reason by including the CodeableConcept. In this case the Boolean is assumed to be True. If you set the Boolean to False, then the dose is given according to the schedule and is not "prn" or "as needed". |
Control | 0..1 |
Binding | The codes SHOULD be taken from ValueSet dành cho Các thông tin thăm, khám lâm sàng (SNOMED CT) (preferred to http://fhir.ehealth.gov.vn/core/ValueSet/snomedCT-clinical-finding ) |
Type | Choice of: boolean, CodeableConcept(Codeable Concept profile - VN Core R4) |
[x] Note | SeeChoice of Data Typesfor further information about how to use [x] |
Is Modifier | false |
Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
Summary | true |
Invariants | ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()) ) |
20. Dosage.site | |
Definition | A concept that may be defined by a formal reference to a terminology or ontology or may be provided by text. |
Short | Concept - reference to a terminology or just text |
Comments | Not all terminology uses fit this general pattern. In some cases, models should not use CodeableConcept and use Coding directly and provide their own structure for managing text, codings, translations and the relationship between elements and pre- and post-coordination. |
Control | 0..1 This element is affected by the following invariants: ele-1 |
Binding | For example codes, see SNOMEDCTAnatomicalStructureForAdministrationSiteCodes (example to http://hl7.org/fhir/ValueSet/approach-site-codes )A coded concept describing the site location the medicine enters into or onto the body. |
Type | CodeableConcept(Codeable Concept profile - VN Core R4) |
Is Modifier | false |
Must Support | true |
Requirements | A coded specification of the anatomic site where the medication first enters the body. |
Invariants | ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()) ) |
22. Dosage.route | |
Definition | A concept that may be defined by a formal reference to a terminology or ontology or may be provided by text. |
Short | Concept - reference to a terminology or just text |
Comments | Not all terminology uses fit this general pattern. In some cases, models should not use CodeableConcept and use Coding directly and provide their own structure for managing text, codings, translations and the relationship between elements and pre- and post-coordination. |
Control | 0..1 This element is affected by the following invariants: ele-1 |
Binding | For example codes, see SNOMEDCTRouteCodes (example to http://hl7.org/fhir/ValueSet/route-codes )A coded concept describing the route or physiological path of administration of a therapeutic agent into or onto the body of a subject. |
Type | CodeableConcept(Codeable Concept profile - VN Core R4) |
Is Modifier | false |
Must Support | true |
Requirements | A code specifying the route or physiological path of administration of a therapeutic agent into or onto a patient's body. |
Invariants | ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()) ) |
24. Dosage.method | |
Definition | A concept that may be defined by a formal reference to a terminology or ontology or may be provided by text. |
Short | Concept - reference to a terminology or just text |
Comments | Not all terminology uses fit this general pattern. In some cases, models should not use CodeableConcept and use Coding directly and provide their own structure for managing text, codings, translations and the relationship between elements and pre- and post-coordination. |
Control | 0..1 This element is affected by the following invariants: ele-1 |
Binding | The codes SHOULD be taken from SNOMEDCTAdministrationMethodCodes (preferred to http://hl7.org/fhir/ValueSet/administration-method-codes ) |
Type | CodeableConcept(Codeable Concept profile - VN Core R4) |
Is Modifier | false |
Must Support | true |
Requirements | A coded value indicating the method by which the medication is introduced into or onto the body. Most commonly used for injections. For examples, Slow Push; Deep IV. |
Invariants | ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()) ) |
26. Dosage.doseAndRate | |
Definition | The amount of medication administered. |
Short | Amount of medication administered |
Control | 0..* |
Type | Element |
Is Modifier | false |
Must Support | true |
Summary | true |
Invariants | ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()) ) |
28. Dosage.doseAndRate.id | |
Definition | Unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces. |
Short | Unique id for inter-element referencing |
Control | 0..1 |
Type | string |
Is Modifier | false |
XML Format | In the XML format, this property is represented as an attribute. |
Summary | false |
30. Dosage.doseAndRate.extension | |
Definition | May be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, 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. |
Short | Additional content defined by implementations |
Comments | There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone. |
Control | 0..* |
Type | Extension |
Is Modifier | false |
Summary | false |
Alternate Names | extensions, user content |
Invariants | ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()) )ext-1: Must have either extensions or value[x], not both ( extension.exists() != value.exists() ) |
Slicing | This element introduces a set of slices on Dosage.doseAndRate.extension . The slices areUnordered and Open, and can be differentiated using the following discriminators: |
32. Dosage.doseAndRate.type | |
Definition | A concept that may be defined by a formal reference to a terminology or ontology or may be provided by text. |
Short | Concept - reference to a terminology or just text |
Comments | Not all terminology uses fit this general pattern. In some cases, models should not use CodeableConcept and use Coding directly and provide their own structure for managing text, codings, translations and the relationship between elements and pre- and post-coordination. |
Control | 0..1 This element is affected by the following invariants: ele-1 |
Binding | For example codes, see DoseAndRateType (example to http://hl7.org/fhir/ValueSet/dose-rate-type )The kind of dose or rate specified. |
Type | CodeableConcept(Codeable Concept profile - VN Core R4) |
Is Modifier | false |
Requirements | If the type is not populated, assume to be "ordered". |
Invariants | ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()) ) |
34. Dosage.doseAndRate.dose[x] | |
Definition | Amount of medication per dose. |
Short | Amount of medication per dose |
Comments | Note that this specifies the quantity of the specified medication, not the quantity for each active ingredient(s). Each ingredient amount can be communicated in the Medication resource. For example, if one wants to communicate that a tablet was 375 mg, where the dose was one tablet, you can use the Medication resource to document that the tablet was comprised of 375 mg of drug XYZ. Alternatively if the dose was 375 mg, then you may only need to use the Medication resource to indicate this was a tablet. If the example were an IV such as dopamine and you wanted to communicate that 400mg of dopamine was mixed in 500 ml of some IV solution, then this would all be communicated in the Medication resource. If the administration is not intended to be instantaneous (rate is present or timing has a duration), this can be specified to convey the total amount to be administered over the period of time as indicated by the schedule e.g. 500 ml in dose, with timing used to convey that this should be done over 4 hours. |
Control | 0..1 |
Type | Choice of: Range(Range (IPS)), Quantity(SimpleQuantity, SimpleQuantity (IPS)) |
[x] Note | SeeChoice of Data Typesfor further information about how to use [x] |
Is Modifier | false |
Summary | true |
Requirements | The amount of therapeutic or other substance given at one administration event. |
Invariants | ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()) ) |
36. Dosage.doseAndRate.rate[x] | |
Definition | Amount of medication per unit of time. |
Short | Amount of medication per unit of time |
Comments | It is possible to supply both a rate and a doseQuantity to provide full details about how the medication is to be administered and supplied. If the rate is intended to change over time, depending on local rules/regulations, each change should be captured as a new version of the MedicationRequest with an updated rate, or captured with a new MedicationRequest with the new rate. It is possible to specify a rate over time (for example, 100 ml/hour) using either the rateRatio and rateQuantity. The rateQuantity approach requires systems to have the capability to parse UCUM grammer where ml/hour is included rather than a specific ratio where the time is specified as the denominator. Where a rate such as 500ml over 2 hours is specified, the use of rateRatio may be more semantically correct than specifying using a rateQuantity of 250 mg/hour. |
Control | 0..1 |
Type | Choice of: Ratio(Ratio (IPS)), Range(Range (IPS)), Quantity(SimpleQuantity, SimpleQuantity (IPS)) |
[x] Note | SeeChoice of Data Typesfor further information about how to use [x] |
Is Modifier | false |
Summary | true |
Requirements | Identifies the speed with which the medication was or will be introduced into the patient. Typically the rate for an infusion e.g. 100 ml per 1 hour or 100 ml/hr. May also be expressed as a rate per unit of time e.g. 500 ml per 2 hours. Other examples: 200 mcg/min or 200 mcg/1 minute; 1 liter/8 hours. Sometimes, a rate can imply duration when expressed as total volume / duration (e.g. 500mL/2 hours implies a duration of 2 hours). However, when rate doesn't imply duration (e.g. 250mL/hour), then the timing.repeat.duration is needed to convey the infuse over time period. |
Invariants | ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()) ) |
38. Dosage.maxDosePerPeriod | |
Definition | A relationship of two Quantity values - expressed as a numerator and a denominator. |
Short | A ratio of two Quantity values - a numerator and a denominator |
Comments | The Ratio datatype should only be used to express a relationship of two numbers if the relationship cannot be suitably expressed using a Quantity and a common unit. Where the denominator value is known to be fixed to "1", Quantity should be used instead of Ratio. |
Control | 0..1 This element is affected by the following invariants: ele-1 |
Type | Ratio(Ratio (IPS)) |
Is Modifier | false |
Must Support | true |
Requirements | The maximum total quantity of a therapeutic substance that may be administered to a subject over the period of time. For example, 1000mg in 24 hours. |
Invariants | ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()) )rat-1: Numerator and denominator SHALL both be present, or both are absent. If both are absent, there SHALL be some extension present ( (numerator.empty() xor denominator.exists()) and (numerator.exists() or extension.exists()) ) |
40. Dosage.maxDosePerAdministration | |
Definition | Upper limit on medication per administration. |
Short | Upper limit on medication per administration |
Comments | This is intended for use as an adjunct to the dosage when there is an upper cap. For example, a body surface area related dose with a maximum amount, such as 1.5 mg/m2 (maximum 2 mg) IV over 5 – 10 minutes would have doseQuantity of 1.5 mg/m2 and maxDosePerAdministration of 2 mg. |
Control | 0..1 |
Type | Quantity(SimpleQuantity, SimpleQuantity (IPS)) |
Is Modifier | false |
Must Support | true |
Must Support Types | No must-support rules about the choice of types/profiles |
Summary | true |
Requirements | The maximum total quantity of a therapeutic substance that may be administered to a subject per administration. |
Invariants | ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()) ) |
42. Dosage.maxDosePerLifetime | |
Definition | Upper limit on medication per lifetime of the patient. |
Short | Upper limit on medication per lifetime of the patient |
Control | 0..1 |
Type | Quantity(SimpleQuantity, SimpleQuantity (IPS)) |
Is Modifier | false |
Summary | true |
Requirements | The maximum total quantity of a therapeutic substance that may be administered per lifetime of the subject. |
Invariants | ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()) ) |