HIS Parser Architecture

台灣醫療資訊系統資料轉換器

> PROJECT_INIT: 2025-12-04
## (go-tw-his-parser)

「資料不該是混亂的,它是被囚禁的秩序。」

面對數十家 HIS 廠商各自為政的封閉格式,我們選擇用 Go 語言的強型別與高併發,強行定義出統一的介面。

GitHub Repo Live Demo

00. 開發緣起 / ORIGIN

在開發 Saki Pharmacy OS 的過程中,我們發現最巨大的阻礙不是商業邏輯,而是與那些古老、封閉且缺乏標準的醫療軟體進行對接。

這部分的工作,純粹是格式轉換的苦工。我們決定將這個核心模組抽離並開源。既然我們已經為了生存而造了輪子,就沒理由讓其他開發者再受一次苦。

> TARGET: TAIWAN NHI VPN FORMAT
> STATUS: CHAOTIC
> ACTION: NORMALIZE (標準化)
> OUTPUT: JSON / CSV / GO STRUCT
> 結果: 秩序重構完成。

01. 功能特徵 / FEATURES

這不只是解析 XML 或 CSV,這是對台灣醫療資料生態的深度理解與重構。

核心能力

  • 自動編碼偵測 (Auto-Encoding):台灣 HIS 系統仍大量使用 Big5。我們不問來源,自動偵測並轉換為 UTF-8,徹底消滅亂碼。
  • 民國年自動轉換 (ROC Date):1140315 自動轉換為 2025-03-15。讓時間回歸標準。
  • 慢箋邏輯識別 (Refill Logic):這是一般 Parser 做不到的。我們根據就醫類別、IC 序號與給藥天數,自動判斷這是否為慢箋,以及是第幾次領藥。
  • 廠商特徵指紋 (Vendor Fingerprint):即使檔名模糊不清,我們能從檔案內容的特徵(Header, XML Structure)反向推導出是哪家 HIS 廠商(耀聖、展望、看診大師...)。

✦ 2. 支援廠商與格式

我們不挑食。只要是數據,我們就消化。

廠商支援格式說明
健保署標準XML, CSV每日上傳檔、月申報檔 (The Standard)
耀聖 HISXML, CSV, DAT, TXT完整支援各種匯出格式
展望 HISXML, CSV常見的診所系統
看診大師XML, CSV, TXT支援 pipe 分隔格式
通用格式CSV, TXT標準逗號分隔檔案

✦ 3. 如何使用

一鍵安裝 (對於非開發者)

我們為終端使用者(藥師、行政人員)準備了不需要寫 code 的解決方案。 前往 GitHub Releases 下載對應您系統的執行檔,雙擊即可啟動本機網頁介面。

  • Windows: his-parser-web-windows.exe
  • macOS: his-parser-web-darwin-arm64 (Apple Silicon)

Golang 開發者

go get github.com/Saki-tw/go-tw-his-parser
// 讓代碼說話
f, _ := os.Open("病患資料.xml")
// 自動偵測廠商與編碼,強型別回傳
result, _ := parser.ParseHISFileByVendor(f, "filename.xml", parser.VendorAuto)

✦ 隱私與安全宣言

Local First (本機優先)

醫療資料是隱私的絕對領域。此工具設計為完全離線運行。

  • 不儲存:解析後的資料僅存在於記憶體 (RAM) 中。
  • 不上傳:除非您自己寫 code 傳送,否則此 Parser 絕不主動對外連線。
  • 自動遮蔽:預設對身分證字號進行遮蔽處理 (Masking)。

✦ 供養 / Support

我們在開源的荒原中前行。

Touch me if you had desolation

如果這個工具幫到你,可以請我活下去。


© 2026 Saki Studio