Bộ Hướng dẫn Triển khai Core FHIR cho Việt Nam
0.6.0 - Draft for Community Review
Bộ Hướng dẫn Triển khai Core FHIR cho Việt Nam - Draft for Community Review (v0.6.0) built by the FHIR (HL7® FHIR® Standard) Build Tools. See the Directory of published versions
| URL chính thức: http://fhir.hl7.org.vn/core/StructureDefinition/vn-core-medication-statement | Phiên bản: 0.6.0 | ||||
| Computable Name: VNCoreMedicationStatement | |||||
Bản quyền/Pháp lý: Căn cứ pháp lý Việt Nam: TT 13/2025/TT-BYT ngày 06/06/2025; Luật Dược 105/2016/QH13 Điều 74; Luật 44/2024/QH15. |
|||||
Profile MedicationStatement ghi nhận tiền sử/đang dùng thuốc của người bệnh (khai thác bệnh sử khi tiếp nhận ngoại trú/nội trú). Khác MedicationRequest (y lệnh mới) và MedicationDispense (cấp phát) — đây là ghi nhận thuốc người bệnh khai/đang dùng. Căn cứ pháp lý:
Usages:
You can also check for usages in the FHIR IG Statistics
Mô tả profile, differential, snapshot và các biểu diễn liên quan.
| Name | Flags | Card. | Type | Description & Constraints Filter: ![]() ![]() |
|---|---|---|---|---|
![]() |
0..* | MedicationStatement | Record of medication being taken by a patient | |
![]() ![]() |
?!Σ | 0..1 | uri | A set of rules under which this content was created |
![]() ![]() |
?! | 0..* | Extension | Extensions that cannot be ignored |
![]() ![]() |
?!SΣ | 1..1 | code | Trạng thái: active, completed, intended, stopped, on-hold... Binding: Medication Status Codes (required): A coded concept indicating the current status of a MedicationStatement. |
![]() ![]() |
SΣ | 1..1 | CodeableConcept | Thuốc người bệnh đang/đã dùng (ATC / mã thuốc / text) Binding: SNOMEDCTMedicationCodes (example): A coded concept identifying the substance or product being taken. |
![]() ![]() |
SΣ | 1..1 | Reference(Bệnh nhân VN Core — VN Core Patient Profile) | Người bệnh |
![]() ![]() |
SΣ | 0..1 | Reference(Lượt khám/nhập viện VN Core — VN Core Encounter Profile) | Lượt khai thác tiền sử |
![]() ![]() |
SΣ | 0..1 | Thời điểm/khoảng thời gian dùng thuốc | |
![]() ![]() ![]() |
dateTime | |||
![]() ![]() ![]() |
Period | |||
![]() ![]() |
S | 0..* | Dosage | Cách dùng theo lời khai |
Documentation for this format | ||||
| Path | Status | Usage | ValueSet | Version | Source |
| MedicationStatement.status | Base | required | Medication status codes | 📍4.0.1 | FHIR Std. |
| MedicationStatement.medication[x] | Base | example | SNOMED CT Medication Codes | 📍4.0.1 | FHIR Std. |
| Id | Grade | Path(s) | Description | Expression |
| dom-2 | error | MedicationStatement | If the resource is contained in another resource, it SHALL NOT contain nested Resources |
contained.contained.empty()
|
| dom-3 | error | MedicationStatement | 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().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
|
| dom-4 | error | MedicationStatement | 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 | MedicationStatement | If a resource is contained in another resource, it SHALL NOT have a security label |
contained.meta.security.empty()
|
| dom-6 | best practice | MedicationStatement | 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()
|
| Name | Flags | Card. | Type | Description & Constraints Filter: ![]() ![]() |
|---|---|---|---|---|
![]() |
0..* | MedicationStatement | Record of medication being taken by a patient | |
![]() ![]() |
S | 1..1 | code | Trạng thái: active, completed, intended, stopped, on-hold... |
![]() ![]() |
S | 1..1 | CodeableConcept | Thuốc người bệnh đang/đã dùng (ATC / mã thuốc / text) |
![]() ![]() |
S | 1..1 | Reference(Bệnh nhân VN Core — VN Core Patient Profile) | Người bệnh |
![]() ![]() |
S | 0..1 | Reference(Lượt khám/nhập viện VN Core — VN Core Encounter Profile) | Lượt khai thác tiền sử |
![]() ![]() |
S | 0..1 | dateTime, Period | Thời điểm/khoảng thời gian dùng thuốc |
![]() ![]() |
S | 0..* | Dosage | Cách dùng theo lời khai |
Documentation for this format | ||||
| Name | Flags | Card. | Type | Description & Constraints Filter: ![]() ![]() | ||||
|---|---|---|---|---|---|---|---|---|
![]() |
0..* | MedicationStatement | Record of medication being taken by a patient | |||||
![]() ![]() |
Σ | 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: CommonLanguages (preferred): 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 | ||||
![]() ![]() |
Σ | 0..* | Identifier | External identifier | ||||
![]() ![]() |
Σ | 0..* | Reference(MedicationRequest | CarePlan | ServiceRequest) | Fulfils plan, proposal or order | ||||
![]() ![]() |
Σ | 0..* | Reference(MedicationAdministration | MedicationDispense | MedicationStatement | Procedure | Observation) | Part of referenced event | ||||
![]() ![]() |
?!SΣ | 1..1 | code | Trạng thái: active, completed, intended, stopped, on-hold... Binding: Medication Status Codes (required): A coded concept indicating the current status of a MedicationStatement. | ||||
![]() ![]() |
0..* | CodeableConcept | Reason for current status Binding: SNOMEDCTDrugTherapyStatusCodes (example): A coded concept indicating the reason for the status of the statement. | |||||
![]() ![]() |
Σ | 0..1 | CodeableConcept | Type of medication usage Binding: Medication usage category codes (preferred): A coded concept identifying where the medication included in the MedicationStatement is expected to be consumed or administered. | ||||
![]() ![]() |
SΣ | 1..1 | CodeableConcept | Thuốc người bệnh đang/đã dùng (ATC / mã thuốc / text) Binding: SNOMEDCTMedicationCodes (example): A coded concept identifying the substance or product being taken. | ||||
![]() ![]() |
SΣ | 1..1 | Reference(Bệnh nhân VN Core — VN Core Patient Profile) | Người bệnh | ||||
![]() ![]() |
SΣ | 0..1 | Reference(Lượt khám/nhập viện VN Core — VN Core Encounter Profile) | Lượt khai thác tiền sử | ||||
![]() ![]() |
SΣ | 0..1 | Thời điểm/khoảng thời gian dùng thuốc | |||||
![]() ![]() ![]() |
dateTime | |||||||
![]() ![]() ![]() |
Period | |||||||
![]() ![]() |
Σ | 0..1 | dateTime | When the statement was asserted? | ||||
![]() ![]() |
0..1 | Reference(Patient | Practitioner | PractitionerRole | RelatedPerson | Organization) | Person or organization that provided the information about the taking of this medication | |||||
![]() ![]() |
0..* | Reference(Resource) | Additional supporting information | |||||
![]() ![]() |
0..* | CodeableConcept | Reason for why the medication is being/was taken Binding: Condition/Problem/DiagnosisCodes (example): A coded concept identifying why the medication is being taken. | |||||
![]() ![]() |
0..* | Reference(Condition | Observation | DiagnosticReport) | Condition or observation that supports why the medication is being/was taken | |||||
![]() ![]() |
0..* | Annotation | Further information about the statement | |||||
![]() ![]() |
S | 0..* | Dosage | Cách dùng theo lời khai | ||||
Documentation for this format | ||||||||
| Path | Status | Usage | ValueSet | Version | Source |
| MedicationStatement.language | Base | preferred | Common Languages | 📍4.0.1 | FHIR Std. |
| MedicationStatement.status | Base | required | Medication status codes | 📍4.0.1 | FHIR Std. |
| MedicationStatement.statusReason | Base | example | SNOMED CT Drug Therapy Status codes | 📍4.0.1 | FHIR Std. |
| MedicationStatement.category | Base | preferred | Medication usage category codes | 📍4.0.1 | FHIR Std. |
| MedicationStatement.medication[x] | Base | example | SNOMED CT Medication Codes | 📍4.0.1 | FHIR Std. |
| MedicationStatement.reasonCode | Base | example | Condition/Problem/Diagnosis Codes | 📍4.0.1 | FHIR Std. |
| Id | Grade | Path(s) | Description | Expression |
| dom-2 | error | MedicationStatement | If the resource is contained in another resource, it SHALL NOT contain nested Resources |
contained.contained.empty()
|
| dom-3 | error | MedicationStatement | 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().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
|
| dom-4 | error | MedicationStatement | 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 | MedicationStatement | If a resource is contained in another resource, it SHALL NOT have a security label |
contained.meta.security.empty()
|
| dom-6 | best practice | MedicationStatement | 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()
|
Dạng xem phần tử chính
| Name | Flags | Card. | Type | Description & Constraints Filter: ![]() ![]() |
|---|---|---|---|---|
![]() |
0..* | MedicationStatement | Record of medication being taken by a patient | |
![]() ![]() |
?!Σ | 0..1 | uri | A set of rules under which this content was created |
![]() ![]() |
?! | 0..* | Extension | Extensions that cannot be ignored |
![]() ![]() |
?!SΣ | 1..1 | code | Trạng thái: active, completed, intended, stopped, on-hold... Binding: Medication Status Codes (required): A coded concept indicating the current status of a MedicationStatement. |
![]() ![]() |
SΣ | 1..1 | CodeableConcept | Thuốc người bệnh đang/đã dùng (ATC / mã thuốc / text) Binding: SNOMEDCTMedicationCodes (example): A coded concept identifying the substance or product being taken. |
![]() ![]() |
SΣ | 1..1 | Reference(Bệnh nhân VN Core — VN Core Patient Profile) | Người bệnh |
![]() ![]() |
SΣ | 0..1 | Reference(Lượt khám/nhập viện VN Core — VN Core Encounter Profile) | Lượt khai thác tiền sử |
![]() ![]() |
SΣ | 0..1 | Thời điểm/khoảng thời gian dùng thuốc | |
![]() ![]() ![]() |
dateTime | |||
![]() ![]() ![]() |
Period | |||
![]() ![]() |
S | 0..* | Dosage | Cách dùng theo lời khai |
Documentation for this format | ||||
| Path | Status | Usage | ValueSet | Version | Source |
| MedicationStatement.status | Base | required | Medication status codes | 📍4.0.1 | FHIR Std. |
| MedicationStatement.medication[x] | Base | example | SNOMED CT Medication Codes | 📍4.0.1 | FHIR Std. |
| Id | Grade | Path(s) | Description | Expression |
| dom-2 | error | MedicationStatement | If the resource is contained in another resource, it SHALL NOT contain nested Resources |
contained.contained.empty()
|
| dom-3 | error | MedicationStatement | 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().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
|
| dom-4 | error | MedicationStatement | 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 | MedicationStatement | If a resource is contained in another resource, it SHALL NOT have a security label |
contained.meta.security.empty()
|
| dom-6 | best practice | MedicationStatement | 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()
|
Dạng xem Differential
| Name | Flags | Card. | Type | Description & Constraints Filter: ![]() ![]() |
|---|---|---|---|---|
![]() |
0..* | MedicationStatement | Record of medication being taken by a patient | |
![]() ![]() |
S | 1..1 | code | Trạng thái: active, completed, intended, stopped, on-hold... |
![]() ![]() |
S | 1..1 | CodeableConcept | Thuốc người bệnh đang/đã dùng (ATC / mã thuốc / text) |
![]() ![]() |
S | 1..1 | Reference(Bệnh nhân VN Core — VN Core Patient Profile) | Người bệnh |
![]() ![]() |
S | 0..1 | Reference(Lượt khám/nhập viện VN Core — VN Core Encounter Profile) | Lượt khai thác tiền sử |
![]() ![]() |
S | 0..1 | dateTime, Period | Thời điểm/khoảng thời gian dùng thuốc |
![]() ![]() |
S | 0..* | Dosage | Cách dùng theo lời khai |
Documentation for this format | ||||
Dạng xem SnapshotView
| Name | Flags | Card. | Type | Description & Constraints Filter: ![]() ![]() | ||||
|---|---|---|---|---|---|---|---|---|
![]() |
0..* | MedicationStatement | Record of medication being taken by a patient | |||||
![]() ![]() |
Σ | 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: CommonLanguages (preferred): 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 | ||||
![]() ![]() |
Σ | 0..* | Identifier | External identifier | ||||
![]() ![]() |
Σ | 0..* | Reference(MedicationRequest | CarePlan | ServiceRequest) | Fulfils plan, proposal or order | ||||
![]() ![]() |
Σ | 0..* | Reference(MedicationAdministration | MedicationDispense | MedicationStatement | Procedure | Observation) | Part of referenced event | ||||
![]() ![]() |
?!SΣ | 1..1 | code | Trạng thái: active, completed, intended, stopped, on-hold... Binding: Medication Status Codes (required): A coded concept indicating the current status of a MedicationStatement. | ||||
![]() ![]() |
0..* | CodeableConcept | Reason for current status Binding: SNOMEDCTDrugTherapyStatusCodes (example): A coded concept indicating the reason for the status of the statement. | |||||
![]() ![]() |
Σ | 0..1 | CodeableConcept | Type of medication usage Binding: Medication usage category codes (preferred): A coded concept identifying where the medication included in the MedicationStatement is expected to be consumed or administered. | ||||
![]() ![]() |
SΣ | 1..1 | CodeableConcept | Thuốc người bệnh đang/đã dùng (ATC / mã thuốc / text) Binding: SNOMEDCTMedicationCodes (example): A coded concept identifying the substance or product being taken. | ||||
![]() ![]() |
SΣ | 1..1 | Reference(Bệnh nhân VN Core — VN Core Patient Profile) | Người bệnh | ||||
![]() ![]() |
SΣ | 0..1 | Reference(Lượt khám/nhập viện VN Core — VN Core Encounter Profile) | Lượt khai thác tiền sử | ||||
![]() ![]() |
SΣ | 0..1 | Thời điểm/khoảng thời gian dùng thuốc | |||||
![]() ![]() ![]() |
dateTime | |||||||
![]() ![]() ![]() |
Period | |||||||
![]() ![]() |
Σ | 0..1 | dateTime | When the statement was asserted? | ||||
![]() ![]() |
0..1 | Reference(Patient | Practitioner | PractitionerRole | RelatedPerson | Organization) | Person or organization that provided the information about the taking of this medication | |||||
![]() ![]() |
0..* | Reference(Resource) | Additional supporting information | |||||
![]() ![]() |
0..* | CodeableConcept | Reason for why the medication is being/was taken Binding: Condition/Problem/DiagnosisCodes (example): A coded concept identifying why the medication is being taken. | |||||
![]() ![]() |
0..* | Reference(Condition | Observation | DiagnosticReport) | Condition or observation that supports why the medication is being/was taken | |||||
![]() ![]() |
0..* | Annotation | Further information about the statement | |||||
![]() ![]() |
S | 0..* | Dosage | Cách dùng theo lời khai | ||||
Documentation for this format | ||||||||
| Path | Status | Usage | ValueSet | Version | Source |
| MedicationStatement.language | Base | preferred | Common Languages | 📍4.0.1 | FHIR Std. |
| MedicationStatement.status | Base | required | Medication status codes | 📍4.0.1 | FHIR Std. |
| MedicationStatement.statusReason | Base | example | SNOMED CT Drug Therapy Status codes | 📍4.0.1 | FHIR Std. |
| MedicationStatement.category | Base | preferred | Medication usage category codes | 📍4.0.1 | FHIR Std. |
| MedicationStatement.medication[x] | Base | example | SNOMED CT Medication Codes | 📍4.0.1 | FHIR Std. |
| MedicationStatement.reasonCode | Base | example | Condition/Problem/Diagnosis Codes | 📍4.0.1 | FHIR Std. |
| Id | Grade | Path(s) | Description | Expression |
| dom-2 | error | MedicationStatement | If the resource is contained in another resource, it SHALL NOT contain nested Resources |
contained.contained.empty()
|
| dom-3 | error | MedicationStatement | 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().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
|
| dom-4 | error | MedicationStatement | 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 | MedicationStatement | If a resource is contained in another resource, it SHALL NOT have a security label |
contained.meta.security.empty()
|
| dom-6 | best practice | MedicationStatement | 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()
|
Biểu diễn khác của hồ sơ: CSV, Excel, Schematron