VN Core FHIR Implementation Guide — Bộ Hướng dẫn Triển khai FHIR Cốt lõi cho Việt Nam
0.1.0 - STU1 Draft Viet Nam flag

VN Core FHIR Implementation Guide — Bộ Hướng dẫn Triển khai FHIR Cốt lõi cho Việt Nam - Local Development build (v0.1.0) built by the FHIR (HL7® FHIR® Standard) Build Tools. See the Directory of published versions

Resource Profile: Ghi nhan su dung VTYT VN Core — VN Core DeviceUseStatement Profile

Official URL: http://fhir.hl7.org.vn/core/StructureDefinition/vn-core-device-use-statement Version: 0.1.0
Draft as of 2026-03-21 Computable Name: VNCoreDeviceUseStatement

Profile DeviceUseStatement cho Viet Nam. Ghi nhan viec su dung vat tu y te (VTYT) cho benh nhan. Lien ket voi VNCoreDevice (thong tin VTYT) va VNCoreEncounter (luot kham). Dung cho theo doi VTYT tieu hao (catheter, kim, bang…) va VTYT lau ben (implant, stent…). Can cu: QD 3176/QD-BYT (truong MA_VAT_TU trong chuan du lieu BHXH).

Usages:

You can also check for usages in the FHIR IG Statistics

Formal Views of Profile Content

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

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. DeviceUseStatement 0..* DeviceUseStatement Record of use of a device
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
... Slices for extension 0..* Extension Extension
Slice: Unordered, Open by value:url
.... extension:insuranceCostInfo 0..1 (Complex) Thong tin BHYT: pham vi, ty le TT, muc huong
URL: http://fhir.hl7.org.vn/core/StructureDefinition/vn-ext-insurance-cost-info
.... extension:orderDate 0..1 dateTime Ngay y lenh su dung VTYT
URL: http://fhir.hl7.org.vn/core/StructureDefinition/vn-ext-order-date
... modifierExtension ?! 0..* Extension Extensions that cannot be ignored
... subject SΣ 1..1 Reference(Bệnh nhân VN Core — VN Core Patient Profile) Benh nhan
... timing[x] SΣ 0..1 Thoi diem su dung VTYT
.... timingTiming Timing
.... timingPeriod Period
.... timingDateTime dateTime
... device SΣ 1..1 Reference(Vật tư y tế VN Core — VN Core Device Profile) VTYT duoc su dung
... reasonCode Σ 0..* CodeableConcept Ly do su dung VTYT (ma ICD-10)
Binding: Mã chẩn đoán — VN Core Condition Code ValueSet (extensible)
... reasonReference Σ 0..* Reference(Chẩn đoán VN Core — VN Core Condition Profile | Xét nghiệm VN Core — VN Core Observation Laboratory Profile | Sinh hiệu VN Core — VN Core Observation Vital Signs Profile | Báo cáo cận lâm sàng VN Core — VN Core DiagnosticReport Profile) Tham chieu chan doan/ket qua lien quan
... bodySite Σ 0..1 CodeableConcept Vi tri dat VTYT
Binding: Vị trí giải phẫu — VN Core Body Site ValueSet (preferred)
... note 0..* Annotation Ghi chu bo sung

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
DeviceUseStatement.status Base required DeviceUseStatementStatus 📍4.0.1 FHIR Std.
DeviceUseStatement.reasonCode Base extensible Mã chẩn đoán — VN Core Condition Code ValueSet 📦0.1.0 This IG
DeviceUseStatement.bodySite Base preferred Vị trí giải phẫu — VN Core Body Site ValueSet 📦0.1.0 This IG

Constraints

Id Grade Path(s) Description Expression
dom-2 error DeviceUseStatement If the resource is contained in another resource, it SHALL NOT contain nested Resources contained.contained.empty()
dom-3 error DeviceUseStatement 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 DeviceUseStatement 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 DeviceUseStatement If a resource is contained in another resource, it SHALL NOT have a security label contained.meta.security.empty()
dom-6 best practice DeviceUseStatement 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()

This structure is derived from DeviceUseStatement

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. DeviceUseStatement 0..* DeviceUseStatement Record of use of a device
... Slices for extension 0..* Extension Extension
Slice: Unordered, Open by value:url
.... extension:insuranceCostInfo 0..1 (Complex) Thong tin BHYT: pham vi, ty le TT, muc huong
URL: http://fhir.hl7.org.vn/core/StructureDefinition/vn-ext-insurance-cost-info
.... extension:orderDate 0..1 dateTime Ngay y lenh su dung VTYT
URL: http://fhir.hl7.org.vn/core/StructureDefinition/vn-ext-order-date
... status S 1..1 code Trang thai: active | completed | on-hold | stopped
... subject S 1..1 Reference(Bệnh nhân VN Core — VN Core Patient Profile) Benh nhan
... device S 1..1 Reference(Vật tư y tế VN Core — VN Core Device Profile) VTYT duoc su dung
... reasonCode 0..* CodeableConcept Ly do su dung VTYT (ma ICD-10)
Binding: Mã chẩn đoán — VN Core Condition Code ValueSet (extensible)
... reasonReference 0..* Reference(Chẩn đoán VN Core — VN Core Condition Profile | Xét nghiệm VN Core — VN Core Observation Laboratory Profile | Sinh hiệu VN Core — VN Core Observation Vital Signs Profile | Báo cáo cận lâm sàng VN Core — VN Core DiagnosticReport Profile) Tham chieu chan doan/ket qua lien quan
... bodySite 0..1 CodeableConcept Vi tri dat VTYT
Binding: Vị trí giải phẫu — VN Core Body Site ValueSet (preferred)
... note 0..* Annotation Ghi chu bo sung

doco Documentation for this format

Terminology Bindings (Differential)

Path Status Usage ValueSet Version Source
DeviceUseStatement.reasonCode Base extensible Mã chẩn đoán — VN Core Condition Code ValueSet 📦0.1.0 This IG
DeviceUseStatement.bodySite Base preferred Vị trí giải phẫu — VN Core Body Site ValueSet 📦0.1.0 This IG
NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. DeviceUseStatement 0..* DeviceUseStatement Record of use of a device
... id Σ 0..1 id Logical id of this artifact
... meta Σ 0..1 Meta Metadata about the resource
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
... text 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
... contained 0..* Resource Contained, inline Resources
... Slices for extension 0..* Extension Extension
Slice: Unordered, Open by value:url
.... extension:insuranceCostInfo 0..1 (Complex) Thong tin BHYT: pham vi, ty le TT, muc huong
URL: http://fhir.hl7.org.vn/core/StructureDefinition/vn-ext-insurance-cost-info
.... extension:orderDate 0..1 dateTime Ngay y lenh su dung VTYT
URL: http://fhir.hl7.org.vn/core/StructureDefinition/vn-ext-order-date
... modifierExtension ?! 0..* Extension Extensions that cannot be ignored
... identifier Σ 0..* Identifier External identifier for this record
... basedOn Σ 0..* Reference(ServiceRequest) Fulfills plan, proposal or order
... status ?!SΣ 1..1 code Trang thai: active | completed | on-hold | stopped
Binding: DeviceUseStatementStatus (required): A coded concept indicating the current status of the Device Usage.
... subject SΣ 1..1 Reference(Bệnh nhân VN Core — VN Core Patient Profile) Benh nhan
... derivedFrom Σ 0..* Reference(ServiceRequest | Procedure | Claim | Observation | QuestionnaireResponse | DocumentReference) Supporting information
... timing[x] SΣ 0..1 Thoi diem su dung VTYT
.... timingTiming Timing
.... timingPeriod Period
.... timingDateTime dateTime
... recordedOn Σ 0..1 dateTime When statement was recorded
... source Σ 0..1 Reference(Patient | Practitioner | PractitionerRole | RelatedPerson) Who made the statement
... device SΣ 1..1 Reference(Vật tư y tế VN Core — VN Core Device Profile) VTYT duoc su dung
... reasonCode Σ 0..* CodeableConcept Ly do su dung VTYT (ma ICD-10)
Binding: Mã chẩn đoán — VN Core Condition Code ValueSet (extensible)
... reasonReference Σ 0..* Reference(Chẩn đoán VN Core — VN Core Condition Profile | Xét nghiệm VN Core — VN Core Observation Laboratory Profile | Sinh hiệu VN Core — VN Core Observation Vital Signs Profile | Báo cáo cận lâm sàng VN Core — VN Core DiagnosticReport Profile) Tham chieu chan doan/ket qua lien quan
... bodySite Σ 0..1 CodeableConcept Vi tri dat VTYT
Binding: Vị trí giải phẫu — VN Core Body Site ValueSet (preferred)
... note 0..* Annotation Ghi chu bo sung

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
DeviceUseStatement.language Base preferred Common Languages 📍4.0.1 FHIR Std.
DeviceUseStatement.status Base required DeviceUseStatementStatus 📍4.0.1 FHIR Std.
DeviceUseStatement.reasonCode Base extensible Mã chẩn đoán — VN Core Condition Code ValueSet 📦0.1.0 This IG
DeviceUseStatement.bodySite Base preferred Vị trí giải phẫu — VN Core Body Site ValueSet 📦0.1.0 This IG

Constraints

Id Grade Path(s) Description Expression
dom-2 error DeviceUseStatement If the resource is contained in another resource, it SHALL NOT contain nested Resources contained.contained.empty()
dom-3 error DeviceUseStatement 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 DeviceUseStatement 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 DeviceUseStatement If a resource is contained in another resource, it SHALL NOT have a security label contained.meta.security.empty()
dom-6 best practice DeviceUseStatement 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()

Key Elements View

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. DeviceUseStatement 0..* DeviceUseStatement Record of use of a device
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
... Slices for extension 0..* Extension Extension
Slice: Unordered, Open by value:url
.... extension:insuranceCostInfo 0..1 (Complex) Thong tin BHYT: pham vi, ty le TT, muc huong
URL: http://fhir.hl7.org.vn/core/StructureDefinition/vn-ext-insurance-cost-info
.... extension:orderDate 0..1 dateTime Ngay y lenh su dung VTYT
URL: http://fhir.hl7.org.vn/core/StructureDefinition/vn-ext-order-date
... modifierExtension ?! 0..* Extension Extensions that cannot be ignored
... subject SΣ 1..1 Reference(Bệnh nhân VN Core — VN Core Patient Profile) Benh nhan
... timing[x] SΣ 0..1 Thoi diem su dung VTYT
.... timingTiming Timing
.... timingPeriod Period
.... timingDateTime dateTime
... device SΣ 1..1 Reference(Vật tư y tế VN Core — VN Core Device Profile) VTYT duoc su dung
... reasonCode Σ 0..* CodeableConcept Ly do su dung VTYT (ma ICD-10)
Binding: Mã chẩn đoán — VN Core Condition Code ValueSet (extensible)
... reasonReference Σ 0..* Reference(Chẩn đoán VN Core — VN Core Condition Profile | Xét nghiệm VN Core — VN Core Observation Laboratory Profile | Sinh hiệu VN Core — VN Core Observation Vital Signs Profile | Báo cáo cận lâm sàng VN Core — VN Core DiagnosticReport Profile) Tham chieu chan doan/ket qua lien quan
... bodySite Σ 0..1 CodeableConcept Vi tri dat VTYT
Binding: Vị trí giải phẫu — VN Core Body Site ValueSet (preferred)
... note 0..* Annotation Ghi chu bo sung

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
DeviceUseStatement.status Base required DeviceUseStatementStatus 📍4.0.1 FHIR Std.
DeviceUseStatement.reasonCode Base extensible Mã chẩn đoán — VN Core Condition Code ValueSet 📦0.1.0 This IG
DeviceUseStatement.bodySite Base preferred Vị trí giải phẫu — VN Core Body Site ValueSet 📦0.1.0 This IG

Constraints

Id Grade Path(s) Description Expression
dom-2 error DeviceUseStatement If the resource is contained in another resource, it SHALL NOT contain nested Resources contained.contained.empty()
dom-3 error DeviceUseStatement 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 DeviceUseStatement 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 DeviceUseStatement If a resource is contained in another resource, it SHALL NOT have a security label contained.meta.security.empty()
dom-6 best practice DeviceUseStatement 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()

Differential View

This structure is derived from DeviceUseStatement

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. DeviceUseStatement 0..* DeviceUseStatement Record of use of a device
... Slices for extension 0..* Extension Extension
Slice: Unordered, Open by value:url
.... extension:insuranceCostInfo 0..1 (Complex) Thong tin BHYT: pham vi, ty le TT, muc huong
URL: http://fhir.hl7.org.vn/core/StructureDefinition/vn-ext-insurance-cost-info
.... extension:orderDate 0..1 dateTime Ngay y lenh su dung VTYT
URL: http://fhir.hl7.org.vn/core/StructureDefinition/vn-ext-order-date
... status S 1..1 code Trang thai: active | completed | on-hold | stopped
... subject S 1..1 Reference(Bệnh nhân VN Core — VN Core Patient Profile) Benh nhan
... device S 1..1 Reference(Vật tư y tế VN Core — VN Core Device Profile) VTYT duoc su dung
... reasonCode 0..* CodeableConcept Ly do su dung VTYT (ma ICD-10)
Binding: Mã chẩn đoán — VN Core Condition Code ValueSet (extensible)
... reasonReference 0..* Reference(Chẩn đoán VN Core — VN Core Condition Profile | Xét nghiệm VN Core — VN Core Observation Laboratory Profile | Sinh hiệu VN Core — VN Core Observation Vital Signs Profile | Báo cáo cận lâm sàng VN Core — VN Core DiagnosticReport Profile) Tham chieu chan doan/ket qua lien quan
... bodySite 0..1 CodeableConcept Vi tri dat VTYT
Binding: Vị trí giải phẫu — VN Core Body Site ValueSet (preferred)
... note 0..* Annotation Ghi chu bo sung

doco Documentation for this format

Terminology Bindings (Differential)

Path Status Usage ValueSet Version Source
DeviceUseStatement.reasonCode Base extensible Mã chẩn đoán — VN Core Condition Code ValueSet 📦0.1.0 This IG
DeviceUseStatement.bodySite Base preferred Vị trí giải phẫu — VN Core Body Site ValueSet 📦0.1.0 This IG

Snapshot View

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. DeviceUseStatement 0..* DeviceUseStatement Record of use of a device
... id Σ 0..1 id Logical id of this artifact
... meta Σ 0..1 Meta Metadata about the resource
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
... text 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
... contained 0..* Resource Contained, inline Resources
... Slices for extension 0..* Extension Extension
Slice: Unordered, Open by value:url
.... extension:insuranceCostInfo 0..1 (Complex) Thong tin BHYT: pham vi, ty le TT, muc huong
URL: http://fhir.hl7.org.vn/core/StructureDefinition/vn-ext-insurance-cost-info
.... extension:orderDate 0..1 dateTime Ngay y lenh su dung VTYT
URL: http://fhir.hl7.org.vn/core/StructureDefinition/vn-ext-order-date
... modifierExtension ?! 0..* Extension Extensions that cannot be ignored
... identifier Σ 0..* Identifier External identifier for this record
... basedOn Σ 0..* Reference(ServiceRequest) Fulfills plan, proposal or order
... status ?!SΣ 1..1 code Trang thai: active | completed | on-hold | stopped
Binding: DeviceUseStatementStatus (required): A coded concept indicating the current status of the Device Usage.
... subject SΣ 1..1 Reference(Bệnh nhân VN Core — VN Core Patient Profile) Benh nhan
... derivedFrom Σ 0..* Reference(ServiceRequest | Procedure | Claim | Observation | QuestionnaireResponse | DocumentReference) Supporting information
... timing[x] SΣ 0..1 Thoi diem su dung VTYT
.... timingTiming Timing
.... timingPeriod Period
.... timingDateTime dateTime
... recordedOn Σ 0..1 dateTime When statement was recorded
... source Σ 0..1 Reference(Patient | Practitioner | PractitionerRole | RelatedPerson) Who made the statement
... device SΣ 1..1 Reference(Vật tư y tế VN Core — VN Core Device Profile) VTYT duoc su dung
... reasonCode Σ 0..* CodeableConcept Ly do su dung VTYT (ma ICD-10)
Binding: Mã chẩn đoán — VN Core Condition Code ValueSet (extensible)
... reasonReference Σ 0..* Reference(Chẩn đoán VN Core — VN Core Condition Profile | Xét nghiệm VN Core — VN Core Observation Laboratory Profile | Sinh hiệu VN Core — VN Core Observation Vital Signs Profile | Báo cáo cận lâm sàng VN Core — VN Core DiagnosticReport Profile) Tham chieu chan doan/ket qua lien quan
... bodySite Σ 0..1 CodeableConcept Vi tri dat VTYT
Binding: Vị trí giải phẫu — VN Core Body Site ValueSet (preferred)
... note 0..* Annotation Ghi chu bo sung

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
DeviceUseStatement.language Base preferred Common Languages 📍4.0.1 FHIR Std.
DeviceUseStatement.status Base required DeviceUseStatementStatus 📍4.0.1 FHIR Std.
DeviceUseStatement.reasonCode Base extensible Mã chẩn đoán — VN Core Condition Code ValueSet 📦0.1.0 This IG
DeviceUseStatement.bodySite Base preferred Vị trí giải phẫu — VN Core Body Site ValueSet 📦0.1.0 This IG

Constraints

Id Grade Path(s) Description Expression
dom-2 error DeviceUseStatement If the resource is contained in another resource, it SHALL NOT contain nested Resources contained.contained.empty()
dom-3 error DeviceUseStatement 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 DeviceUseStatement 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 DeviceUseStatement If a resource is contained in another resource, it SHALL NOT have a security label contained.meta.security.empty()
dom-6 best practice DeviceUseStatement 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()

 

Other representations of profile: CSV, Excel, Schematron