醫療記錄資料會以 HL7 FHIR 格式儲存。
「病歷」支援下列快速醫療照護互通資源 (FHIR) 版本:
醫療資源類型
FHIR 由一組稱為「資源」的模組化元件組成。支援的 FHIR 資源和對應類別大致以國際病患摘要部分為依據。
這些資源會對應至「健康資料同步」中的資料類別,在 API 中稱為「醫療資源類型」。系統會根據內容 (例如邏輯觀察識別碼名稱和代碼 (LOINC) 代碼,以及 FHIR 類別) 對應觀察資源。
如果觀察結果不屬於上述任何類別,系統就不會將其寫入「健康資料同步」。
| 健康資料同步醫療資源類型 | FHIR 資源 | 健康資料同步權限聲明 |
|---|---|---|
| 過敏 | AllergyIntolerance |
android.permission.health.READ_MEDICAL_DATA_ALLERGIES_INTOLERANCES
|
| 健康狀況 | Condition |
android.permission.health.READ_MEDICAL_DATA_CONDITIONS
|
| 實驗室 |
觀察事項
|
android.permission.health.READ_MEDICAL_DATA_LABORATORY_RESULTS
|
| 藥物 | Medication、 MedicationRequest、 MedicationStatement |
android.permission.health.READ_MEDICAL_DATA_MEDICATIONS
|
| 個人資訊 | 病患 |
android.permission.health.READ_MEDICAL_DATA_PERSONAL_DETAILS
|
| 醫事人員詳細資料 | 醫事人員、 醫事人員角色 |
android.permission.health.READ_MEDICAL_DATA_PRACTITIONER_DETAILS
|
| 懷孕 |
觀察事項
|
android.permission.health.READ_MEDICAL_DATA_PREGNANCY
|
| 醫療程序 | 程序 |
android.permission.health.READ_MEDICAL_DATA_PROCEDURES
|
| 個人社會史 |
觀察事項
|
android.permission.health.READ_MEDICAL_DATA_SOCIAL_HISTORY
|
| 疫苗 | 免疫接種 |
android.permission.health.READ_MEDICAL_DATA_VACCINES
|
| 就醫記錄 | 就診、 地點、 機構 |
android.permission.health.READ_MEDICAL_DATA_VISITS
|
| 生命徵象 |
觀察事項
|
android.permission.health.READ_MEDICAL_DATA_VITAL_SIGNS
|
病患資源
目前「健康資料同步」僅支援儲存單一使用者的病歷資料。因此,所有寫入的 FHIR 資源都應屬於同一人。
系統中存在多個 FHIR 病患資源,但對象是同一人,這種情況並不罕見。建議應用程式先比對資料,再將單一病患資源寫入「健康資料同步」。不過,為配合可能存在的不同機構單位結構,這項設定並非強制執行。
資料驗證
醫療記錄 API 會接受支援版本中的有效 FHIR 資源,而「健康資料同步」會執行部分驗證,確認遵循各支援版本的 FHIR 規格。
標示為「即將推出」的驗證檢查項目目前尚未強制執行,但會在日後版本中實施。建議您根據所有列出的驗證檢查項目進行開發,確保與日後發布的版本相容。
| 等級 | 驗證檢查 | ||||||||
|---|---|---|---|---|---|---|---|---|---|
| 有效的 JSON | 資料符合 JSON 格式。 | ||||||||
| 支援的 FHIR | 支援撰寫應用程式宣告的 FHIR 版本。健康資料同步支援下列 FHIR 版本:
|
||||||||
| 支援的 FHIR | 支援資源執行個體中記錄的 FHIR 資源類型。 健康資料同步支援下列 FHIR 資源類型:
|
||||||||
| 專屬資源 ID | 資源的 ID 欄位值符合規則運算式規定。 | ||||||||
| 專屬資源 ID | 資源不會與來自相同 MedicalDataSource 的其他相同資源類型 FHIR 資源共用 ID。 |
||||||||
| 業務規則 | 不包含所含的 FHIR 資源。所含資源是巢狀 FHIR 資源,位於「父項」資源中。當父項資源需要參照其他資源,但系統沒有足夠資訊可將此資源建立為獨立資源時,就會使用這些資源。 | ||||||||
| 有效的 Base FHIR | FHIR JSON 中的頂層欄位存在於指定資源類型的 FHIR 規格中。 | ||||||||
| 有效的 Base FHIR | 頂層欄位沒有 JSON 空值。 | ||||||||
| 有效的 Base FHIR | 所有頂層必填欄位都存在。 | ||||||||
| 有效的 Base FHIR | 定義為 FHIR 中重複元素的頂層欄位,具有 JSON array 資料型別。 |
||||||||
| 有效的 Base FHIR | 頂層欄位 (包括 JSON array 中的元素) 在 FHIR 中定義為「複雜型別」,具有 JSON object 資料型別。 |
||||||||
| 有效的 Base FHIR | 頂層欄位 (包括 JSON array 中的元素) 定義為 FHIR 中的原始型別,具有正確的 JSON 資料型別。
|
||||||||
| 有效的 Base FHIR | 在 FHIR 中定義為原始型別的頂層欄位符合規則運算式需求。即將推出 | ||||||||
| 有效的 Base FHIR | 原始型別的擴充功能存在於 FHIR 規格中,且具有 JSON object 資料型別。 |
||||||||
| 有效的 Base FHIR | 選擇欄位 (fieldname[x]) 最多只能記錄一個欄位。舉例來說,effectiveDateTime 和 effectivePeriod 不能同時出現在同一個資源例項中。 |
||||||||
| 有效的 Base FHIR | 複雜資料類型包含符合 FHIR 規格的欄位和資料類型。即將推出 | ||||||||
| 有效的 Base FHIR | 主幹元素 (以及複雜類型中的元素) 包含符合 FHIR 規格的欄位和資料類型。即將推出 | ||||||||
| 有效的 Base FHIR | 擴充功能元素
value[x] 欄位是有效類型,且包含符合該資料類型的內容。
擴充功能元素可納入任何資源,代表不屬於基本規格的其他資訊。這類元素包含 url 欄位 (連結至擴充功能的定義) 和 value[x] 欄位 (包含擴充功能值)。value[x] 必須來自一組可接受的資料類型。
即將推出 |
轉換後的 FHIR 資料
部分應用程式會轉換 FHIR 資料,以符合自身需求。例如:
- 合併來自不同來源的資料 (通常是 FHIR API)。
- 將代碼對應至全球術語 (例如 SNOMED、LOINC、ICD),並將單位標準化。
- 整合及刪除重複資料。
- 修正格式或其他資料品質問題。
- 根據應用程式專屬的業務規則篩選記錄。
只要符合 FHIR R4 規格,未轉換和已轉換的 FHIR 資料都可以寫入健康資料同步。建議您盡可能寫入轉換後的資料。但請注意下列事項:
- 如果應用程式的用途有限,可能會篩除大量記錄,但這些記錄或許能為生態系統中的其他應用程式創造使用者價值。在這種情況下,撰寫更完整的未轉換 FHIR 可能會有所助益。但請務必告知使用者,您要分享的資料集範圍較廣。
- 如果合併來自不同來源的資料,您可以將資料寫入「健康資料同步」中的單一
MedicalDataSource。您也必須為每個資源指派新的 ID,以免發生衝突,並更新資源參照,指向新的 ID。 - 將多個來源的資料合併到單一
MedicalDataSource中,可能會導致資料來源不明。資料消費者通常需要瞭解資料的來源,因此建議您為每個資源填入meta.source欄位,並提供記錄的原始來源 (通常是 FHIR 基礎網址)。