1. 病患資源-醫療資料中心
病人 是 FHIR 中最重要的資源——幾乎所有臨床數據都與患者相關。這也是第一個升級的資源 規範性 (穩定,向後相容)。
病患資源結構
| 元素 | 類型 | 基數 | 描述 |
|---|---|---|---|
| 識別符 | 標識符[] | 0..* | 識別碼(CCCD、健康保險、MRN...) |
| 活躍的 | 布林值 | 0..1 | 錄音是否處於活動狀態? |
| 姓名 | 人名[] | 0..* | 患者的全名 |
| 電信 | 聯絡點[] | 0..* | 電話號碼、電子郵件 |
| 性別 | 程式碼 | 0..1 | 男 |女 |其他|未知。未知 |
| 出生日期 | 日期。日期 | 0..1 | 出生日期 |
| 已故[x] | 布林值/日期時間 | 0..1 | 迷路了? |
| 地址 | 地址[] | 0..* | 地址 |
| 婚姻狀況 | 可編碼概念 | 0..1 | 婚姻狀況 |
| 多胞胎[x] | 布林/整數 | 0..1 | 雙胞胎/三胞胎? |
| 照片。照片 | 附件[] | 0..* | 代表照片 |
| 聯繫。聯絡方式 | 骨幹元素[] | 0..* | 聯絡人 |
| 溝通。溝通 | 骨幹元素[] | 0..* | 溝通語言 |
| 全科醫生 | 參考文獻[] | 0..* | 初級保健醫生 |
| 管理組織 | 參考 | 0..1 | 組織記錄管理 |
| 鏈接。連結 | 骨幹元素[] | 0..* | 連結到另一筆記錄(合併) |
越南病患的病患資源 — 完整範例
{
"resourceType": "Patient",
"id": "vn-patient-001",
"meta": {
"profile": ["http://fhir.vn/StructureDefinition/vn-core-patient"]
},
"identifier": [
{
"use": "official",
"type": {
"coding": [{
"system": "http://terminology.hl7.org/CodeSystem/v2-0203",
"code": "NI",
"display": "National unique individual identifier"
}]
},
"system": "http://fhir.vn/sid/cccd",
"value": "001085012345"
},
{
"use": "secondary",
"type": {
"coding": [{
"system": "http://terminology.hl7.org/CodeSystem/v2-0203",
"code": "SB",
"display": "Social Beneficiary Identifier"
}]
},
"system": "http://fhir.vn/sid/bhyt",
"value": "DN4850112340001"
},
{
"use": "usual",
"type": {
"coding": [{
"system": "http://terminology.hl7.org/CodeSystem/v2-0203",
"code": "MR",
"display": "Medical record number"
}]
},
"system": "http://benhvien-a.vn/sid/mrn",
"value": "BN-2026-00123"
}
],
"active": true,
"name": [
{
"use": "official",
"text": "Nguyễn Văn An",
"family": "Nguyễn",
"given": ["Văn", "An"]
}
],
"telecom": [
{
"system": "phone",
"value": "+84901234567",
"use": "mobile",
"rank": 1
},
{
"system": "email",
"value": "[email protected]",
"use": "home"
}
],
"gender": "male",
"birthDate": "1985-03-15",
"address": [
{
"use": "home",
"type": "physical",
"text": "123 Lê Lợi, Phường Bến Nghé, Quận 1, TP.HCM",
"line": ["123 Lê Lợi"],
"city": "Thành phố Hồ Chí Minh",
"district": "Quận 1",
"state": "Thành phố Hồ Chí Minh",
"postalCode": "700000",
"country": "VN"
}
],
"maritalStatus": {
"coding": [{
"system": "http://terminology.hl7.org/CodeSystem/v3-MaritalStatus",
"code": "M",
"display": "Married"
}],
"text": "Đã kết hôn"
},
"contact": [
{
"relationship": [{
"coding": [{
"system": "http://terminology.hl7.org/CodeSystem/v2-0131",
"code": "N",
"display": "Next-of-Kin"
}]
}],
"name": {
"text": "Trần Thị Bình",
"family": "Trần",
"given": ["Thị", "Bình"]
},
"telecom": [{
"system": "phone",
"value": "+84907654321"
}]
}
],
"communication": [{
"language": {
"coding": [{
"system": "urn:ietf:bcp:47",
"code": "vi",
"display": "Vietnamese"
}]
},
"preferred": true
}],
"managingOrganization": {
"reference": "Organization/benhvien-a",
"display": "Bệnh viện Đại học Y Dược TP.HCM"
}
}
越南的識別模式
| 身分證類型 | 系統(網址) | 值範例 |
|---|---|---|
| 公民身分證(CCCD) | http://fhir.vn/sid/cccd | 001085012345 |
| 健康保險卡 | http://fhir.vn/sid/bhyt | DN4850112340001 |
| 病患代碼 (MRN) | http://benhvien.vn/sid/mrn | BN-2026-00123 |
| 護照 | http://fhir.vn/sid/passport | C1234567 |
2.從業人員資源-醫務人員
從業者 代表參與醫療保健的任何個人:醫生、護士、藥劑師、技術人員......
{
"resourceType": "Practitioner",
"id": "dr-tran-001",
"identifier": [{
"system": "http://fhir.vn/sid/physician-license",
"value": "BS-TPHCM-2010-00456"
}],
"active": true,
"name": [{
"use": "official",
"text": "TS.BS Trần Minh Đức",
"family": "Trần",
"given": ["Minh", "Đức"],
"prefix": ["TS.BS"]
}],
"telecom": [{
"system": "phone",
"value": "+84909876543",
"use": "work"
}],
"gender": "male",
"birthDate": "1978-05-20",
"qualification": [
{
"identifier": [{
"system": "http://fhir.vn/sid/medical-degree",
"value": "BSCK2-NKH-2010"
}],
"code": {
"coding": [{
"system": "http://fhir.vn/CodeSystem/qualification",
"code": "BSCK2",
"display": "Bác sĩ Chuyên khoa II"
}]
},
"issuer": {
"display": "Đại học Y Dược TP.HCM"
}
}
],
"communication": [{
"coding": [{
"system": "urn:ietf:bcp:47",
"code": "vi"
}]
}]
}
PractitionerRole — 特定角色
從業者角色 描述特定組織中從業者的角色。一名醫生可以擁有多個從業者角色(在多個地方工作)。
{
"resourceType": "PractitionerRole",
"id": "dr-tran-role-bva",
"active": true,
"practitioner": {
"reference": "Practitioner/dr-tran-001",
"display": "TS.BS Trần Minh Đức"
},
"organization": {
"reference": "Organization/benhvien-a",
"display": "Bệnh viện A"
},
"code": [{
"coding": [{
"system": "http://terminology.hl7.org/CodeSystem/practitioner-role",
"code": "doctor",
"display": "Doctor"
}]
}],
"specialty": [{
"coding": [{
"system": "http://snomed.info/sct",
"code": "394579002",
"display": "Cardiology"
}],
"text": "Tim mạch"
}],
"location": [{
"reference": "Location/phong-kham-tim-mach"
}],
"availableTime": [{
"daysOfWeek": ["mon", "tue", "wed", "thu", "fri"],
"availableStartTime": "07:30:00",
"availableEndTime": "16:30:00"
}]
}
3. 組織資源-醫療設施
{
"resourceType": "Organization",
"id": "benhvien-a",
"identifier": [
{
"system": "http://fhir.vn/sid/facility-code",
"value": "79001"
},
{
"system": "http://fhir.vn/sid/bhxh-facility",
"value": "79-001"
}
],
"active": true,
"type": [{
"coding": [{
"system": "http://terminology.hl7.org/CodeSystem/organization-type",
"code": "prov",
"display": "Healthcare Provider"
}]
}],
"name": "Bệnh viện Đại học Y Dược TP.HCM",
"alias": ["BV ĐHYD"],
"telecom": [
{
"system": "phone",
"value": "+842838554269",
"use": "work"
},
{
"system": "url",
"value": "https://www.bvdhydtphcm.vn"
}
],
"address": [{
"use": "work",
"line": ["215 Hồng Bàng"],
"city": "Thành phố Hồ Chí Minh",
"district": "Quận 5",
"country": "VN"
}]
}
4.位置資源-位置
地點 描述實體位置:診所、科室、病床、手術室…
{
"resourceType": "Location",
"id": "phong-kham-tim-mach",
"status": "active",
"name": "Phòng khám Tim mạch - Tầng 3",
"description": "Phòng khám chuyên khoa Tim mạch, tầng 3 tòa nhà B",
"mode": "instance",
"type": [{
"coding": [{
"system": "http://terminology.hl7.org/CodeSystem/v3-RoleCode",
"code": "CARD",
"display": "Ambulatory Health Care Facilities; Clinic/Center; Rehabilitation: Cardiac Facilities"
}]
}],
"telecom": [{
"system": "phone",
"value": "+842838554269-303"
}],
"address": {
"line": ["Tầng 3, Tòa B, 215 Hồng Bàng"],
"city": "TP.HCM",
"country": "VN"
},
"physicalType": {
"coding": [{
"system": "http://terminology.hl7.org/CodeSystem/location-physical-type",
"code": "ro",
"display": "Room"
}]
},
"managingOrganization": {
"reference": "Organization/benhvien-a"
}
}
5. 行政資源之間的關係
┌──────────────────┐
│ Organization │ ← Bệnh viện/Phòng khám
│ (benhvien-a) │
└───────┬──────────┘
│ managingOrganization
▼
┌──────────────────┐ ┌──────────────────────┐
│ Location │◄───────│ PractitionerRole │
│ (phong-kham-tm) │ │ (dr-tran-role-bva) │
└──────────────────┘ └───────┬──────────────┘
│ practitioner
▼
┌──────────────────┐
│ Practitioner │
│ (dr-tran-001) │
└──────────────────┘
▲ generalPractitioner
│
┌──────────────────┐
│ Patient │
│ (vn-patient-001) │
└──────────────────┘
6.實踐:創造完整的資源系統
讓我們建立一個實用的工作流程:在醫院進行病患登記。
第 1 步:建立組織
curl -X POST http://localhost:8080/fhir/Organization \
-H "Content-Type: application/fhir+json" \
-d '{"resourceType":"Organization","name":"Bệnh viện Đa khoa A","active":true}'
# Ghi lại id trả về → {org-id}
第2步:創建從業者
curl -X POST http://localhost:8080/fhir/Practitioner \
-H "Content-Type: application/fhir+json" \
-d '{"resourceType":"Practitioner","name":[{"family":"Trần","given":["Minh","Đức"],"prefix":["BS"]}],"active":true}'
# Ghi lại id trả về → {prac-id}
步驟 3:創建與組織和從業者關聯的患者
curl -X POST http://localhost:8080/fhir/Patient \
-H "Content-Type: application/fhir+json" \
-d '{
"resourceType": "Patient",
"name": [{"family":"Nguyễn","given":["Thị","Mai"]}],
"gender": "female",
"birthDate": "1992-08-10",
"generalPractitioner": [{"reference":"Practitioner/{prac-id}"}],
"managingOrganization": {"reference":"Organization/{org-id}"}
}'
步驟 4: 驗證 — 搜尋帶有 _include 的患者
# Tìm patient kèm thông tin Practitioner
curl -s "http://localhost:8080/fhir/Patient?_include=Patient:general-practitioner" | jq '.entry[].resource.resourceType'
# Kết quả: "Patient", "Practitioner"
七、總結
病人:資料中心,包含識別碼、人口統計資料、聯絡人
從業者:醫務人員個人資料、學位、證書
從業者角色:特定組織中的特定角色(1 人擔任多種角色)
組織機構:醫院、診所、科室、科室
地點:物理位置(房間、樓層、床)
資源連結在一起 參考文獻
使用 識別符 適合越南情況(CCCD、健康保險、MRN)