Hướng dẫn triển khai FHIR cốt lõi Việt Nam — VN Core FHIR Implementation Guide
0.9.0 - Draft for Community Review
Hướng dẫn triển khai FHIR cốt lõi Việt Nam — VN Core FHIR Implementation Guide - Draft for Community Review (v0.9.0) built by the FHIR (HL7® FHIR® Standard) Build Tools. See the Directory of published versions
Trang này quy định cách vận hành định danh người bệnh trong VN Core: hệ thống định danh, ba luồng định danh, xử lý người bệnh chưa định danh trong cấp cứu và liên kết/hợp nhất hồ sơ khi xác minh được CCCD hoặc danh tính qua kênh VNeID.
Nguyên tắc tham chiếu ổn định: mọi resource lâm sàng tham chiếu
VNCorePatientqua FHIRReference; không lặp CCCD trong từng resource. CCCD là định danh công dân dùng để đối chiếu, còn VNeID là kênh xác thực/tích hợp và không phải một slice định danh người bệnh song song. Cách tiếp cận này giảm lộ định danh, giữ liên kết ổn định khi giấy tờ thay đổi và hỗ trợ khử trùng lặp.
| Định danh | NamingSystem | Vai trò | Trạng thái |
|---|---|---|---|
| CCCD / Số định danh cá nhân (12 số) | vn-cccd-ns |
Định danh chính | Hiện hành |
| VNeID | vn-vneid-ns |
Tích hợp ứng dụng công dân | Integration-only |
| Mã số BHXH (10 số) | vn-bhxh-ns |
Liên thông BHXH/BHYT | Hiện hành |
| Mã số/thẻ BHYT | vn-bhyt-ns |
Thanh toán BHYT (10 số hiện hành hoặc 15 ký tự legacy) | Hiện hành |
| Giấy khai sinh (GKS) | vn-gks-ns |
Trẻ em/luồng chưa có CCCD | Hiện hành |
| Hộ chiếu | vn-passport-ns |
Người nước ngoài/định danh thay thế | Hiện hành |
| CMND (9 số) | vn-cmnd-ns |
Dữ liệu lịch sử | Lịch sử / ngừng dùng |
| MRN | vn-mrn-ns |
Mã nội bộ từng cơ sở | Hiện hành |
| Định danh tạm (cấp cứu chưa định danh) | vn-mrn-ns (use = temp) |
Xử trí trước, định danh sau | Tạm thời |
Chi tiết URI/cơ quan quản lý: xem Danh mục định danh.
Namespace http://fhir.hl7.org.vn/core/sid/bhyt chỉ nhận 2 format: mã số BHYT hiện hành gồm 10 chữ số (trùng giá trị mã số BHXH của cùng bệnh nhân), hoặc số thẻ legacy gồm 2 chữ hoa + 13 chữ số. CCCD 12 chữ số chỉ là khóa tra cứu/xuất trình và không thuộc namespace sid/bhyt.
| Luồng | Định danh nhập | Xử lý | Ví dụ |
|---|---|---|---|
| (a) Có CCCD hoặc xác minh qua VNeID | CCCD 12 số | Tra cứu CCCD → nếu chưa có hồ sơ thì tạo VNCorePatient theo khả năng máy chủ; VNeID chỉ hỗ trợ bước xác minh/tích hợp |
Nguyễn Văn An |
| (b) Chưa định danh | định danh tạm | Máy chủ có hỗ trợ create SHOULD cho phép tạo Patient với định danh tạm; liên kết/hợp nhất khi xác minh được CCCD (xem §3–4) |
Người bệnh chưa định danh |
| (c) Trẻ sơ sinh / phụ thuộc | CCCD/GKS mẹ + RelatedPerson |
Liên kết mẹ–con; dùng GKS hoặc CCCD người giám hộ | Trẻ phụ thuộc + Mẹ |
| Người nước ngoài | Hộ chiếu | VNCorePatient với identifier hộ chiếu |
Hộ chiếu |
Trong cấp cứu, người bệnh có thể chưa rõ danh tính lúc tiếp nhận. Máy chủ công bố hỗ trợ thao tác create SHOULD cho phép tạo hồ sơ bằng định danh tạm để luồng dữ liệu không chặn xử trí cấp cứu:
VNCorePatient với identifier tạm (identifier.use = temp, system vn-mrn-ns), không yêu cầu CCCD tại thời điểm tiếp nhận (VN-RULE-PAT-004); endpoint và thao tác cụ thể phải phù hợp CapabilityStatement của máy chủ.unknown), đặc điểm nhận dạng trong Patient.text.SO_CCCD → phải kèm mã lý do bất khả kháng (VN-RULE-BHYT-001, xem Kiểm tra hợp lệ).Khác SATUSEHAT (Indonesia): mô hình tham chiếu này cho phép máy chủ VN Core hỗ trợ tạo Patient tạm nếu
CapabilityStatementcông bố thao tác đó. Đây là yêu cầu triển khai có điều kiện, không phải hành vi mặc định mà mọi FHIR server đều phải cung cấp.
Khi người bệnh chưa định danh sau đó được xác minh CCCD, kể cả qua kênh VNeID, hoặc khi phát hiện hai hồ sơ cùng một người, thực hiện liên kết/hợp nhất bằng Patient.link — không xóa cứng và không tạo định danh y tế trùng (VN-RULE-PAT-005):
Hồ sơ tạm (temp) Hồ sơ chính thức (CCCD)
Patient/temp-123 ──link──▶ Patient/cccd-001085012345
link.type = replaced-by link.type = replaces
(hồ sơ tạm trỏ tới hồ sơ chính) (hồ sơ chính trỏ ngược)
Patient.link.type = replaced-by trên hồ sơ tạm → trỏ tới hồ sơ chính thức.Patient.link.type = replaces trên hồ sơ chính → trỏ về hồ sơ tạm (truy vết).active = false sau merge (không xóa — phục vụ audit).Một số hệ thống quốc gia dùng số định danh y tế làm khóa nghiệp vụ ổn định. VN Core chỉ ghi nhận VHN như một phương án thiết kế tương lai; hiện chưa có NamingSystem hay yêu cầu tuân thủ cho một số định danh y tế quốc gia như vậy. Ở phiên bản hiện hành, hệ thống dùng CCCD theo ngữ cảnh công dân và MRN theo phạm vi từng cơ sở, đồng thời giữ FHIR resource id tách khỏi các định danh nghiệp vụ.
| Mã rule | Quy tắc |
|---|---|
| VN-RULE-PAT-004 | Cấp cứu: cho phép Patient chỉ có identifier tạm — KHÔNG chặn vì thiếu CCCD |
| VN-RULE-PAT-005 | Hợp nhất hồ sơ phải dùng Patient.link (replaced-by/replaces); không tạo định danh y tế trùng, không xóa cứng |
| VN-RULE-BHYT-001 | Thiếu SO_CCCD khi xuất BHYT phải kèm mã lý do bất khả kháng |
Tra cứu đầy đủ: OperationOutcome & Registry quy tắc.
| Nếu cần | Đọc tiếp |
|---|---|
| Danh mục NamingSystem định danh | Danh mục định danh |
| Luồng cấp cứu chưa định danh | Playbook Cấp cứu |
| Quy tắc kiểm tra hợp lệ | Hướng dẫn kiểm tra hợp lệ |
| Quy ước OperationOutcome | OperationOutcome & Registry quy tắc |
This page defines VN Core's patient identity and Master Patient Index operating rules. CCCD is the core citizen identifier; VNeID is an integration and authentication channel, not a parallel identifier on Patient. Context-specific identifiers include BHXH, BHYT, birth certificate, passport, legacy CMND, facility-scoped MRN and temporary identifiers. A server that advertises create support SHOULD accept an emergency Patient with a temporary identifier (VN-RULE-PAT-004), followed by auditable linking through Patient.link (replaced-by/replaces) rather than hard deletion or duplicate health numbers (VN-RULE-PAT-005). VHN remains a future design option, not a published national identifier or a current conformance requirement.