HL7 Vietnam VN Core FHIR Implementation Guide

Bộ Hướng dẫn Triển khai Core FHIR cho Việt Nam
0.6.0 - Draft for Community Review Viet Nam cờ

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

Định danh người bệnh & MPI

Định danh người bệnh & Master Patient Index — Patient Identity & MPI

Quy tắc 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ý bệnh nhân chưa định danh (cấp cứu) và hợp nhất hồ sơ (merge/link) khi sau đó có CCCD/VNeID.

Nguyên tắc xương sống (surrogate key): mọi resource lâm sàng tham chiếu VNCorePatient qua reference; CCCD/VNeID dùng để tra cứu/đăng ký, không lặp lại trong mỗi resource. Mô hình này (học từ IHS Number của SATUSEHAT) cho phép: bảo vệ dữ liệu (không gửi CCCD mỗi lần), ổn định hồ sơ (đổi giấy tờ không vỡ record), và khử trùng lặp (deduplication).

1. Hệ thống định danh người bệnh

Đị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
Số thẻ BHYT vn-bhyt-ns Thanh toán BHYT (3 format song song) 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.

2. Ba luồng định danh người bệnh

Luồng Định danh nhập Xử lý Ví dụ
(a) Có CCCD/VNeID CCCD 12 số Tra cứu → nếu chưa có hồ sơ thì tạo VNCorePatient; xác minh với CSDL dân cư/VNeID Nguyễn Văn An
(b) Chưa định danh định danh tạm POST được phép với identifier tạm; merge khi có CCCD (xem §3–4) Bệnh nhân 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

3. Bệnh nhân chưa định danh (cấp cứu) — "xử lý trước, định danh sau"

Trong cấp cứu, người bệnh có thể chưa rõ danh tính lúc tiếp nhận. VN Core BẮT BUỘC cho phép tạo hồ sơ để không chặn xử trí cấp cứu:

  • POST VNCorePatient với identifier tạm (identifier.use = temp, system vn-mrn-ns), không yêu cầu CCCD (VN-RULE-PAT-004).
  • Ghi nhận tối thiểu: giới tính ước lượng (hoặc unknown), đặc điểm nhận dạng trong Patient.text.
  • Khi xuất dữ liệu BHYT thiếu SO_CCCD → phải kèm mã lý do bất khả kháng (VN-RULE-BHYT-001, xem Validation).

Khác SATUSEHAT (Indonesia): nền tảng Indonesia chỉ cho GET (tra cứu fuzzy) với người không có NIK, không cho POST. VN Core đi hướng ngược lại để bảo đảm cấp cứu không bị chặn vì thiếu định danh — đây là quyết định conformance có chủ ý.

Khi người bệnh chưa định danh sau đó có CCCD/VNeID (hoặc phát hiện hai hồ sơ cùng một người), thực hiện hợp nhất bằng Patient.link — KHÔNG xóa cứng, KHÔNG tạo định danh y tế (VHN) 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).
  • Mọi resource lâm sàng đã gắn hồ sơ tạm vẫn giữ reference cũ; truy vấn theo link để gộp dòng thời gian.
  • Hồ sơ tạm chuyển active = false sau merge (không xóa — phục vụ audit).

5. Số định danh y tế (VHN) — surrogate key (định hướng)

Tương tự IHS Number của SATUSEHAT, VN Core khuyến nghị tiến tới một số định danh y tế VN (VHN) do hệ thống y tế cấp, làm khóa FHIR ổn định — CCCD/VNeID chỉ để tra cứu. Khi VHN chưa được ban hành chính thức, MRN + CCCD đóng vai trò định danh; thiết kế reference nên sẵn sàng thay khóa mà không vỡ dữ liệu lâm sàng. (Xem analysis/50-satusehat-architecture-and-vncore-mapping.md mục 1.8.)

6. Quy tắc kiểm tra liên quan

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.

Liên hệ với các trang khá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

English Summary

This page defines VN Core's patient identity and Master Patient Index operating rules: the identifier systems (CCCD/VNeID primary, BHXH, BHYT, birth certificate, passport, legacy CMND, MRN, temporary), the three identification flows (with CCCD, unidentified, newborn/dependent), and — critically — how to handle unidentified emergency patients and later merge their records. Unlike SATUSEHAT (which only allows GET for patients without a national ID), VN Core deliberately allows POST with a temporary identifier so emergency care is never blocked (VN-RULE-PAT-004), with subsequent record merging done via Patient.link (replaced-by/replaces) rather than hard deletion or duplicate health numbers (VN-RULE-PAT-005). It also frames the surrogate-key (VHN) direction modeled on SATUSEHAT's IHS Number.