Bộ Hướng dẫn Triển khai Core FHIR cho Việt Nam
0.5.0 - Draft for Community Review
Bộ Hướng dẫn Triển khai Core FHIR cho Việt Nam - Draft for Community Review (v0.5.0) built by the FHIR (HL7® FHIR® Standard) Build Tools. See the Directory of published versions
Cách dùng terminology trong VN Core FHIR IG, gồm CodeSystem, ValueSet, provenance pháp lý, package boundary và nguyên tắc phối hợp giữa mã quốc gia với mã quốc tế.
VN Core hiện tại đi theo mô hình kết hợp thuật ngữ quốc tế với danh mục Việt Nam, thay vì chọn một phía và loại bỏ phía còn lại. Hướng này được giữ lại nhưng governance được siết chặt hơn:
LOINC, SNOMED CT, ICD và các bộ mã quốc tế khi chúng đã đáp ứng đúng bài toán;CodeSystem và ValueSet là danh mục tách rời implementation guidance, search, validation và package governance.| Khái niệm | Vai trò | Ví dụ |
|---|---|---|
| CodeSystem | Định nghĩa bộ mã (codes + display) | VNEthnicityCS — định nghĩa 54 mã dân tộc |
| ValueSet | Tập hợp con các mã cho một ngữ cảnh cụ thể | VNEthnicityVS — include toàn bộ VNEthnicityCS |
Tất cả CodeSystem trong VN Core IG đều hỗ trợ song ngữ Việt-Anh:
display = Tiếng Việt (ngôn ngữ chính)designation[en] = Tiếng Anh (khi có){
"code": "01",
"display": "Kinh",
"designation": [{
"language": "en",
"value": "Kinh (Vietnamese)"
}]
}
VN Core hiện dùng hai cách biên soạn thuật ngữ song song:
Các bộ mã đang đi theo hướng tài nguyên JSON sinh sẵn gồm:
VNCLSCSVNWardCSVNOCCSCodeSystem Y học cổ truyền (VNYHCTDiseaseCS, VNYHCTDiagnosisCS, VNYHCTAcupointCS, VNYHCTTechniqueCS, VNYHCTSymptomCS, VNYHCTTongueCS, VNYHCTPulseCS, VNYHCTTreatmentMethodCS, VNYHCTHerbCS, VNYHCTPrescriptionCS)VNMedicalDeviceNomenclatureCS trong package hl7.fhir.vn.deviceCách làm này giúp:
Các CodeSystem đặc thù Việt Nam, không có tương đương quốc tế:
| CodeSystem | Nguồn | Số mã | Mô tả |
|---|---|---|---|
VNEthnicityCS |
121/TCTK-PPCĐ | 54 | 54 dân tộc Việt Nam |
VNReligionCS |
CV 6955/BNV-TGCP | 16 | 16 tôn giáo được công nhận |
VNProvinceCS |
NQ 202/2025 | 34 | 34 tỉnh/TP sau sắp xếp |
VNDistrictCS |
Legacy | ~700 | Huyện/quận (deprecated, hỗ trợ dữ liệu cũ) |
VNWardCS |
NQ 202/2025 | ~3.321 | Xã/phường/thị trấn |
VNIdentifierTypeCS |
VN Core | 11 | Loại định danh VN |
VNBHYTCardTypeCS |
BHXH VN | 53 | Loại đối tượng thẻ BHYT |
VNHealthcareLevelCS |
NQ 202/2025, Luật TCCQĐP 2025 | 3 | Cấp quản lý hành chính y tế (TW, Tỉnh, Xã) |
VNLegacyTechnicalLineCS |
TT 43/2013, TT 23/2024 | 4 | Tuyến chuyên môn kỹ thuật lịch sử (legacy only) |
VNHospitalRankCS |
TT 06/2024 | 4 | Hạng pháp lý của cơ sở KCB |
VNHealthUnitRankCS |
TT 06/2024 | 4 | Hạng pháp lý của đơn vị y tế không phải cơ sở KCB |
VNOrganizationRankStatusCS |
VN Core | 3 | Tình trạng xếp hạng |
VNOrganizationTypeCS |
Luật KCB 2023, TT 06/2024 | 10 | Loại hình cơ sở y tế |
VNInsuranceVisitTypeCS |
QĐ 3176 | 5 | Loại KCB BHYT (trường MALYDO) |
VNDischargeDispositionCS |
QĐ 3176 | 5 | Tình trạng ra viện |
VNTreatmentOutcomeCS |
QĐ 3176 | 8 | Kết quả điều trị |
VNCostCategoryCS |
QĐ 697/2026 | 14 | Danh mục chi phí KCB |
VNQualificationCS |
Luật KCB 2023, NĐ 96/2023 | 14 | Trình độ chuyên môn y tế |
| CodeSystem | Nguồn gốc | Bản VN | Số mã (VN subset) |
|---|---|---|---|
VNICD10CS |
WHO ICD-10 | QĐ 4469/2020 + QĐ 98/2022 | 15.026 (metadata-only trên IG + full JSON qua downloads) |
VNICD9CMCS |
CMS ICD-9-CM V32 | QĐ 387/QĐ-BYT (02/2026) | 3.882 |
VNSNOMEDSubsetCS |
SNOMED International | QĐ 2427, 2493, 2805/2025 | 77.393 |
VNLOINCCS |
Regenstrief LOINC | QĐ 1227/2025 | 66.077 (metadata-only, deduplicated) |
| CodeSystem | QĐ nguồn | Đợt | Mô tả |
|---|---|---|---|
VNYHCTDiseaseCS |
QĐ 2552/2025 | 1 | Thể lâm sàng YHCT |
VNYHCTDiagnosisCS |
QĐ 2552/2025 | 1 | Chẩn đoán YHCT |
VNYHCTAcupointCS |
QĐ 2552/2025 | 1 | Huyệt châm cứu |
VNYHCTTechniqueCS |
QĐ 2552/2025 | 1 | Kỹ thuật YHCT |
VNYHCTSymptomCS |
QĐ 3080/2025 | 2 | Triệu chứng YHCT |
VNYHCTTongueCS |
QĐ 3080/2025 | 2 | Chẩn đoán lưỡi |
VNYHCTPulseCS |
QĐ 3080/2025 | 2 | Chẩn đoán mạch |
VNYHCTTreatmentMethodCS |
QĐ 3080/2025 | 2 | Pháp điều trị |
VNYHCTHerbCS |
QĐ 3080/2025 | 2 | Dược liệu |
VNYHCTPrescriptionCS |
QĐ 3080/2025 | 2 | Bài thuốc cổ phương |
Bộ Y tế ban hành bộ mã CLS quốc gia (QĐ 1227/QĐ-BYT, 11/04/2025) gồm 2.964 chỉ số, ánh xạ 100% sang LOINC.
Artifact VNCLSCS hiện được sinh thành tài nguyên JSON từ dữ liệu nguồn máy đọc được của QĐ 1227/QĐ-BYT trước khi gọi SUSHI. Đây là lựa chọn kiến trúc có chủ đích để vừa bảo toàn mã pháp lý, vừa giữ lượt build ổn định.
Binding strength:
VNCoreObservationLab.codesử dụng binding extensible đếnobservation-codes(LOINC). Điều này có nghĩa hệ thống NÊN (SHOULD) gửi LOINC code khi có mã phù hợp, nhưng KHÔNG bắt buộc — có thể dùng mã CLS VN hoặc mã nội bộ khi LOINC không đáp ứng. Profile hiện tại chưa bắt buộc (required) LOINC coding.
Nguyên tắc coding trong FHIR Observation:
{
"code": {
"coding": [
{
"system": "http://loinc.org",
"code": "718-7",
"display": "Hemoglobin [Mass/volume] in Blood"
},
{
"system": "http://fhir.hl7.org.vn/core/CodeSystem/vn-cls-cs",
"code": "1000001",
"display": "Định lượng Hemoglobin (Hb)"
}
]
}
}
| Trường hợp | Dùng system nào? |
|---|---|
| Interoperability quốc tế | http://loinc.org (ưu tiên) |
| Trao đổi nội bộ VN / BHXH | vn-cls-cs (mã CLS VN) |
| Cả hai | Ghi 2 coding — LOINC trước, CLS sau |
5 nhóm CLS:
| Nhóm | Mã | Số chỉ số |
|---|---|---|
| Huyết học — Truyền máu | 1000001–1001022 | 1.022 |
| Sinh hóa | 1010001–1010447 | 447 |
| Vi sinh | 1020001–1020174 | 174 |
| Giải phẫu bệnh | 1060001–1060081 | 81 |
| Chẩn đoán hình ảnh | 1070001–1071240 | 1.240 |
Danh mục nghề nghiệp Việt Nam (QĐ 34/2020/QĐ-TTg) gồm 1.516 mã, 5 cấp phân loại. Tương thích ISCO-08 ở Cấp 1-4, Cấp 5 là chi tiết riêng Việt Nam.
Dùng cho Patient.extension hoặc các tài nguyên liên quan nghề nghiệp bệnh nhân.
Danh pháp thiết bị y tế được tách khỏi Core vào package hl7.fhir.vn.device để không hard-bind VNCoreDevice.type khi phạm vi catalog/regulatory còn tiếp tục mở rộng.
| Artifact | Nguồn | Phạm vi |
|---|---|---|
VNMedicalDeviceNomenclatureCS |
QĐ-3107/QĐ-BYT-2024 + QĐ-847/QĐ-BYT-2025 | 956 concept, display/definition tiếng Việt, tên tiếng Anh trong designation, định nghĩa tiếng Anh trong property definitionEn |
VNMedicalDeviceNomenclatureVS |
Include toàn bộ VNMedicalDeviceNomenclatureCS |
Tập đầy đủ để tra cứu và kiểm tra coverage |
VNDeviceTypeVS |
Include toàn bộ VNMedicalDeviceNomenclatureCS |
Dùng làm binding preferred cho Device.type/DeviceDefinition.type trong package .device, không dùng required trong Core |
Các concept có provenance ở mức từng mã qua sourceDecision, nomenclatureYear, section, sourceRow, sourceStt và status. Khi bổ sung SNOMED CT, GMDN hoặc EMDN, dùng ConceptMap riêng theo license thực tế, không gộp trực tiếp vào CodeSystem Việt Nam.
{
"code": {
"coding": [{
"system": "http://fhir.hl7.org.vn/core/CodeSystem/vn-icd10-cs",
"code": "J18.9",
"display": "Viêm phổi, không xác định"
}]
}
}
Nếu cần mã không có trong ValueSet có binding extensible:
coding từ CodeSystem khác (ví dụ: SNOMED CT quốc tế)text mô tả bằng tiếng Việt{
"code": {
"coding": [{
"system": "http://snomed.info/sct",
"code": "123456789",
"display": "Some concept"
}],
"text": "Mô tả bằng tiếng Việt"
}
}
YYYY.N (ví dụ: 2025.1)version của CodeSystem đã sử dụng| Nếu cần | Nên đọc tiếp |
|---|---|
| Danh mục CodeSystem/ValueSet | Terminology |
| Hướng dẫn kiểm tra hợp lệ binding | Validation Guidance |
| Cơ sở pháp lý các bộ mã | Legal Basis |
| Đính chính SNOMED CT VN | SNOMED CT VN Errata |
This page defines VN Core terminology governance. It explains how Vietnam-specific CodeSystems, localized international terminologies, traditional-medicine terminology, and CLS indicators are published and used, and how CodeSystem, ValueSet, binding strength, and package boundary should be handled consistently.