1. 原始類型
原始類型是 FHIR 中簡單的“原子”值。
| 類型 | 描述 | 例如 |
|---|---|---|
| 布林值 | 真/假 | 真實 |
| 整數 | 32 位元整數 | 42 |
| 整數64 | 64 位元整數(新 R5) | 9223372036854775807 |
| 字串.字串 | Unicode 字串(≤ 1MB) | “阮文A” |
| 小數 | 實數(任意精度) | 3.14159 |
| 烏裡 | URI(RFC 3986) | 」http://loinc.org」 |
| 網址 | 網址 | 」https://fhir.example.com」 |
| 規範的 | 一致性資源的 URL | 」http://hl7.org/fhir/StructureDefinition/Patient」 |
| uuid | UUID(RFC 4122) | “甕:uuid:c757873d-ec9a-4326-a141-556f43239520” |
| 編號 | 資源 ID(1-64 個字符,[A-Za-z0-9\-.]) | “病人-001” |
| 日期。日期 | 日期(年、年-月、年-月-日) | “2025-01-15” |
| 日期時間 | 帶時區的日期和時間 | “2025-01-15T10:30:00+07:00” |
| 瞬間。即時 | 確切時間 (xs:日期時間) | “2025-01-15T10:30:00.000Z” |
| 時間。時間 | 一天中的幾個小時 | “10:30:00” |
| 程式碼 | 來自 ValueSet 的值 | “男” |
| 奧德 | 組織識別碼(ISO) | “甕:oid:2.16.840.1.113883.6.1” |
| 降價 | 降價文本 | “**粗體**和*斜體*” |
| base64二進位 | Base64 編碼 | 二進位數據 |
| 正整數 | 整數 > 0 | 1 |
| 無符號整數 | 整數≥0 | 0 |
原語的擴展
甚至原語也可以攜帶延伸(使用底線約定):
{
"birthDate": "1990-05-15",
"_birthDate": {
"extension": [
{
"url": "http://hl7.org/fhir/StructureDefinition/patient-birthTime",
"valueDateTime": "1990-05-15T14:30:00+07:00"
}
]
}
}
2. 複雜型別-通用
識別符
{
"use": "official",
"type": {
"coding": [
{
"system": "http://terminology.hl7.org/CodeSystem/v2-0203",
"code": "NI",
"display": "National unique individual identifier"
}
],
"text": "CCCD"
},
"system": "http://cccd.gov.vn",
"value": "012345678901",
"period": {
"start": "2021-01-01",
"end": "2036-01-01"
},
"assigner": {
"display": "Bộ Công an"
}
}
人名
{
"use": "official",
"text": "Nguyễn Văn A",
"family": "Nguyễn",
"given": ["Văn", "A"],
"prefix": ["BS."],
"suffix": ["ThS."],
"period": {
"start": "1990-05-15"
}
}
地址
{
"use": "home",
"type": "physical",
"text": "123 Đường Lê Lợi, Phường Bến Nghé, Quận 1, TP.HCM",
"line": ["123 Đường Lê Lợi"],
"city": "Hồ Chí Minh",
"district": "Quận 1",
"state": "TP.HCM",
"postalCode": "700000",
"country": "VN"
}
聯絡點
[
{
"system": "phone",
"value": "+84901234567",
"use": "mobile",
"rank": 1
},
{
"system": "email",
"value": "[email protected]",
"use": "home"
}
]
編碼與可編碼概念
// Coding — một mã duy nhất
{
"system": "http://loinc.org",
"version": "2.77",
"code": "8480-6",
"display": "Systolic blood pressure"
}
// CodeableConcept — nhiều Codings + text
{
"coding": [
{
"system": "http://hl7.org/fhir/sid/icd-10",
"code": "I10",
"display": "Essential (primary) hypertension"
},
{
"system": "http://snomed.info/sct",
"code": "38341003",
"display": "Hypertensive disorder"
}
],
"text": "Tăng huyết áp nguyên phát"
}
可編碼概念 允許在不同的程式碼系統中表示相同的概念—支援互通性。
數量
{
"value": 145,
"comparator": ">=",
"unit": "mmHg",
"system": "http://unitsofmeasure.org",
"code": "mm[Hg]"
}
期間和時間
// Period
{
"start": "2025-01-15T08:00:00+07:00",
"end": "2025-01-15T08:45:00+07:00"
}
// Timing (cho medication dosage)
{
"repeat": {
"frequency": 2,
"period": 1,
"periodUnit": "d",
"when": ["ACM", "ACV"],
"boundsPeriod": {
"start": "2025-01-15",
"end": "2025-02-15"
}
},
"code": {
"text": "Ngày 2 lần, sáng và tối sau ăn"
}
}
參考
{
"reference": "Patient/patient-001",
"type": "Patient",
"identifier": {
"system": "http://hospital.vn/mrn",
"value": "MRN12345"
},
"display": "Nguyễn Văn A"
}
參考資料可能包含 參考。參考 (文字 URL), 識別符 (邏輯參考),或兩者兼具。
3. 敘述(人類可讀)
{
"text": {
"status": "generated",
"div": "<div xmlns=\"http://www.w3.org/1999/xhtml\"><p>Bệnh nhân: Nguyễn Văn A, Nam, sinh ngày 15/05/1990</p></div>"
}
}
| 狀態 | 描述 |
|---|---|
| 產生的 | 根據結構化資料自動創建 |
| 擴充 | 來自擴展的資訊不在結構化資料中 |
| 額外的。額外的 | 還有一些未包含在結構化資料中的附加信息 |
| 空的 | 沒有文字(空洞的敘述) |
4. 骨幹元素
BackboneElement 是一個複雜類型 只存在於資源內部 父親,不能在其他地方重複使用。例如: 患者聯絡方式, 遭遇參與者, 遭遇診斷。
{
"resourceType": "Patient",
"contact": [
{
"relationship": [
{
"coding": [
{
"system": "http://terminology.hl7.org/CodeSystem/v2-0131",
"code": "N",
"display": "Next-of-Kin"
}
]
}
],
"name": {
"text": "Nguyễn Thị B (vợ)"
},
"telecom": [
{
"system": "phone",
"value": "+84907654321"
}
]
}
]
}
5. 選擇類型 [x]
有些元素允許多種資料類型—等於符號 [x]:
| 元素定義 | 實際使用 |
|---|---|
| 值[x] | valueQuantity、valueString、valueCodeableConcept、valueBoolean、... |
| 開始[x] | onsetDateTime、onsetAge、onsetPeriod、onsetRange、onsetString |
| 有效[x] | effectiveDateTime、 effectivePeriod、 effectiveInstant、 effectiveTiming |
| 已故[x] | 已故布林值、已故日期時間 |
| 多胞胎[x] | multipleBirth布林值,multipleBirth整數 |
// Observation value dạng Quantity
{"valueQuantity": {"value": 37.2, "unit": "°C"}}
// Observation value dạng CodeableConcept
{"valueCodeableConcept": {"coding": [{"code": "positive"}]}}
// Observation value dạng string
{"valueString": "Bình thường"}
六、總結
原始型 — 20 多種基本類型(字串、日期、代碼、uri...),支援擴展
複雜類型 — 人名、地址、識別碼、CodeableConcept、數量、參考...
可編碼概念 — 最重要的是,允許多重編碼以實現互通性
敘事 — 所有領域資源中人類可讀的 XHTML
骨幹元素 — 複雜型內部資源
選擇類型 [x] — 靈活選擇合適的資料類型