
FHIR resources & extensions
FHIR R5 cung cấp một bộ resources được chuẩn hóa để mô tả dữ liệu y tế. Mỗi resource là một đơn vị thông tin có thể được trao đổi độc lập. Các resources này được tổ chức thành các nhóm chính:
- Nhóm hành chính (dữ liệu về con người và tổ chức):
- Patient: Thông tin người bệnh
- Practitioner: Thông tin nhân viên y tế
- Organization: Thông tin về bệnh viện, phòng khám
- Location: Địa điểm cung cấp dịch vụ y tế
- Nhóm lâm sàng (dữ liệu y tế):
- Observation: Kết quả xét nghiệm, sinh hiệu
- Condition: Bệnh, chẩn đoán
- Procedure: Thủ thuật, phẫu thuật
- MedicationRequest: Đơn thuốc
- AllergyIntolerance: Thông tin về dị ứng
- Nhóm quy trình (luồng công việc):
- Encounter: Lần khám bệnh
- Appointment: Lịch hẹn
- ServiceRequest: Yêu cầu dịch vụ
- CarePlan: Kế hoạch chăm sóc
Cách resources liên kết với nhau
Resources trong FHIR liên kết với nhau tạo thành một mạng lưới thông tin:
Patient ←→ Encounter ←→ Observation
↑ ↑ ↑
| | |
↓ ↓ ↓
Practitioner ←→ ServiceRequest ←→ DiagnosticReport
Ví dụ: Khi bệnh nhân (Patient) đến khám (Encounter), bác sĩ (Practitioner) yêu cầu xét nghiệm máu (ServiceRequest), kết quả được lưu thành Observation và tổng hợp trong DiagnosticReport.
Extensions - Cách sử dụng chi tiết
Extensions có hai loại:
- Simple Extensions: Chỉ chứa một giá trị đơn
- Complex Extensions: Chứa nhiều giá trị con (nested extensions)
Ví dụ về Complex Extension - thông tin về người giám hộ bệnh nhân:
{
"resourceType": "Patient",
"extension": [
{
"url": "http://hospital.vn/fhir/nguoi-giam-ho",
"extension": [
{
"url": "ho-ten",
"valueString": "Nguyễn Văn B"
},
{
"url": "moi-quan-he",
"valueString": "Cha"
},
{
"url": "so-dien-thoai",
"valueString": "0901234567"
}
]
}
],
"name": [
{
"family": "Nguyễn",
"given": ["Văn A"]
}
]
}
Profiles - Tùy chỉnh resources theo nhu cầu
Profiles là cách để điều chỉnh resources theo nhu cầu cụ thể của bệnh viện:
- Giới hạn các trường: Quy định trường nào bắt buộc
- Thêm extensions: Đưa các extensions thành phần chuẩn
- Giới hạn giá trị: Quy định danh sách giá trị được phép
Ví dụ: Profile "BenhNhanNoiTru" có thể quy định:
- Bắt buộc phải có số CMND/CCCD
- Phải có thông tin bảo hiểm y tế
- Cần có thông tin người thân
Ví dụ thực tế: Hồ sơ sức khỏe điện tử
Một hồ sơ bệnh án trong FHIR có thể gồm:
- Patient: Thông tin cá nhân bệnh nhân
- Encounter: Thông tin về đợt điều trị
- Observation: Các kết quả xét nghiệm
- Condition: Các chẩn đoán
- MedicationRequest: Đơn thuốc
- Procedure: Các thủ thuật đã thực hiện
- CarePlan: Kế hoạch điều trị
Cách triển khai FHIR trong dự án
- Phân tích nghiệp vụ: Xác định quy trình làm việc của bệnh viện
- Chọn resources phù hợp: Xác định các resources cần dùng
- Tạo profiles: Điều chỉnh resources theo nhu cầu
- Tạo extensions: Thêm các thông tin đặc thù
- Xây dựng API: Triển khai server FHIR
- Kết nối với HIS: Tích hợp với hệ thống thông tin bệnh viện
Ưu điểm của FHIR R5 so với các phiên bản trước
- Resources mới: Nhiều resources đã được bổ sung
- Cải thiện workfow: Quản lý quy trình tốt hơn
- Chuẩn hóa extensions: Nhiều extensions phổ biến đã trở thành chuẩn
- Hỗ trợ AI/ML: Tích hợp tốt hơn với các hệ thống trí tuệ nhân tạo