blog

@chinlinblog

chin lin blog backup

Public team

Community (0)
No community contribution yet

Joined on Jan 21, 2022

  • 前言 今天同事說到,hapi fhir 在驗大資料 (json 超過 3000 行, Bundle entry 超過20 筆)時,hapi fhir 會出現驗證不過的情況,但其實資料都對,出現的錯誤也不是 terminology code 的問題,而是資料不見了!並且,發生率還蠻高的,不得不把 HAPI FHIR 驗證給替換掉 資料正確卻找不到的範例 過程中,我們拿出官方的 Validator 去驗,竟然卻成功了!只不過會有 code 驗不到的問題,於是我們打算用官方 Validator 接 HAPI FHIR 當作 TX server 作為臨時解決方案,過程依然碰壁 這篇將會針對「讓 HAPI FHIR 作為 Official Validator 的 tx server」 :::warning 後續的 HAPI FHIR 都是使用 Docker 建立
     Like  Bookmark
  • 前言 因為在實務上使用 HAPI FHIR 的 $validate API 時,遇到眾多問題,而使用原生官方的 validator 時,卻又無錯誤,所以決定將 HAPI FHIR 的 $validate 更改成呼叫遠端的驗證服務,並回傳 OperationOutcome 架構圖 :::danger 實作前,請先準備好使用 docker compose 架設的 HAPI FHIR,且套用 tx server 能力: 讓 HAPI FHIR 作為 Official Validator 的 tx server ::: Validator 服務選擇
     Like  Bookmark
  • 以下是筆者當時遇到的情境,在 ValueSet 當中的 Code 都是擁有括號的 QW 數值 QW(x),但在進行 Expansion 之後,會變成只有一個 QW 的結果 Magic ValueSet Expansion Result 問題的主要原因 HAPI FHIR 的 free text index 使用 simple query string 進行搜尋,若是文字使用以下符號,將有可能導致 query 不到所想要的結果 Elastic Search query string syntax +, |, -, ", *, (, ), ~ Elastic Search Simple query string syntax
     Like  Bookmark
  • 前言 某天同事收到了別人發過來的 issue,問題大致為 HAPI FHIR 已上傳 Snomed CT 的 Code 以及 IG Package,但是上傳範例上去時,ValueSet 會報找不到 Code 的錯誤 在經過一小番研究後,終於大致譜出 HAPI FHIR 的 ValueSet 尋找 Code 的方式,筆者認為這機制挺有意思的,必須記錄一下錯誤重現 (Error Reproduction) 以及目前找到的解決方法 錯誤重現 首先,準備一台完全乾淨的 HAPI FHIR Server (這裡使用的是 v7.2.0 版本,記憶體建議 16 gb 以上) 請記得在 application.yaml 先設定 hibernate.search.enabled: true 上傳 Terminology Code 以下的 Code 都是使用 HAPI FHIR 官方的 CLI 工具上傳
     Like  Bookmark
  • 所需知識 FHIR Resource文件查看以及組成能力 基本的程式能力 JSON資料格式 使用工具 Weasis或RadiAnt DICOM Viewer (查看DICOM用) Visual Studio Code (撰寫程式用)
     Like 1 Bookmark
  • 此篇將帶大家了解基本的FHIR Resource content、Data Types並組出第一個Patient JSON。 必備知識 JSON FHIR Data Types Primite Types 是最基本的(而且只有 Primive Type 是首字小寫),以程式來看就是常見的string、int、float這種型態 其餘Types,都是以所有Types複合組成的Type,以程式來看就像是Class、Interface、Object
     Like  Bookmark
  • 每次在使用burni FHIR Server時,都會跳出以下Warnings。 原本都不以為意,因為程式都可以正常運作,不過每次跳這些 warnings 心都很躁,所以這次來正視此問題。 Circular Dependency 會出現 Circular Dependency 的問題,是因為 module 之間互相 require。 這裡舉一項例子: //Identifier.js const mongoose = require('mongoose');
     Like  Bookmark
  • 所需知識 MongoDB Sharding基本知識,可以參考此篇MongoDB Sharding with Docker docker-compose.yaml撰寫 撰寫環境 OS Windows 10
     Like  Bookmark
  • 如果不太了解HAPI-FHIR的資料庫結構的朋友可以看看上一篇HAPI-FHIR Database 轉置資料 (一) - Database結構。 此篇將用Typescript實作從HAPI FHIR資料庫轉置資料到另一個FHIR Server。 使用語言 Typescript 使用到的套件 axios (用於API操作)
     Like 2 Bookmark
  • :::danger 注意此篇只研究Postgres,且只跟轉資料有關 ::: 由於出現了必須從HAPI-FHIR轉到另一個FHIR Server,且是完全不相同的結構。 小弟認為直接讀取HAPI-FHIR的Database應該會比FHIR WEB API還來得快,所以研究了一下HAPI-FHIR轉置資料所需要使用到的Data Tables。 環境配置 docker hapi-fhir-jpaserver-starter
     Like 2 Bookmark