會研究這個題目主要是因為臺灣重大傷病實作指引,如同其他IG一樣,這個IG也定義了一個主要的Bundle和構成這個Bundle所需要的profile。然而,除了構成Bundle所需的profile之外,同時也定義了Questionnaire這個profile。有別於其他profile,Questionnaire並非為資料集,而比較像是蒐集資料的工具。
官網的說明如下:
A Questionnaire is an organized collection of questions intended to solicit information from patients, providers or other individuals involved in the healthcare domain.
透過Google搜尋,找到一個資源相當完整的網站:LHC FHIR Tool在這個網站提供一個Questionnaire Viewer顯示如下:
在Local端以Docker方式建置FHIR Server,並匯入[臺灣重大傷病實作指引]與[臺灣核心實作指引]所對應之Package後,下載臺灣重大傷病實作指引所提供的範例(Questionnaire),就可以和LHC Questionnaire Viewer結合,產生畫面如下:
Fhirpath Lab提供了一個更完整的Demo工具,可以從地端FHIR伺服器上傳Questionnaire:
可以從FHIR Server取得Patient與Practitioner所需要的Resource Reference。
對於輸入欄位為type=choice以及answerValueSet有指定ValueSet,可提供下拉式選項供使用者選擇。以主診斷代碼為例,Questionnaire定義如下:
可看到使用者介面提供正確的選項如下:
如果我們將臺灣重大傷病實作指引所提供的範例資料輸入如下:
就可以使用Fhirpath Lab產生QuestionnaireResponse如下圖所示。
也就是說,可以使用工具快速產生相關使用介面,讓使用者透過Questionnaire Viewer輸入相關資料即可產生Bundle所需要的QuestionnaireResponse profile,結合其他相關profile(Task、Patient、Condition)就可以產生[臺灣重大傷病實作指引]所需要的Bundle。
相關流程與執行步驟整理如下: