法的療癒 專案工作手冊

出自DILA Wiki

相關網址

佛醫相關「經文」

工作人員建檔在 bookmarks.xlsx,再匯入網站資料庫 bookmarks. (匯入命令:rake import:bookmarks)

以下是各欄位說明:

批次

這個欄位如果不是空白的,表示這筆資料經工作人員「選錄」。

這個欄位如果標示了 x 或 X 或 z,那麼這筆資料會被忽略,不匯入資料庫。



法的療癒後分類搜尋網頁開發說明

簡介及目的

  • 法的療癒專案依循持續地推動佛醫相關文獻研究、教學以及資料庫的建置工作為目的,在完成第一階段佛醫文獻主題分類與資料庫檢索的系統建置後,為了協助研究人員進行佛醫相關文獻的研究,利用Elasticsearch的技術打造進階的主題式後分類搜尋系統。目前已經完成“佛醫主題文獻”、“禁咒治療” 的後分類搜尋系統,後續將以目前開發的經驗進行其他的主題項目後分類搜尋工具的建置,提供佛醫相關研究人員針對欲研究的主題快速、簡單地透過後分類搜尋界面進行文獻的探索,並利用有結構性、清楚地閱讀界面更方便地進行文獻的研究。
  1. “法的療癒資料庫”的後分類搜尋系統 網址為https://dhd.dila.edu.tw/pcl/pcldhd.php
  2. “禁咒治療專題資料庫”的後分類搜尋系統網址為https://dhd.dila.edu.tw/pcl/pclmantra.php。

處理範圍

禁咒治療文獻

  1. 《陀羅尼雜集》:共103則咒語,梁‧作譯者不詳(T21, no. 1336)。
  2. 《陀羅尼集經》:共92則咒語,唐‧阿地瞿多譯(T18, no. 901)。
  3. 《龍樹五明論》:共12則咒語,年代不詳‧作譯者不詳(T21, no. 1420)。
  4. 《雜寶藏經》,共1則咒語,元魏‧吉迦夜共曇曜譯(T04, no. 203)。
  5. 《佛說八陽神呪經》:共1則咒語,西晉‧竺法護譯(T14, no. 428)。
  6. 《千手千眼觀世音菩薩治病合藥經》:共1則咒語,唐‧伽梵達摩譯(T20, no. 1059)。
  7. 《除一切疾病陀羅尼經》:共1則咒語,唐‧不空譯(T21, no. 1323)。
  8. 《佛說呪時氣病經》:共1則咒語,東晉‧曇無蘭譯(T21, no. 1326)。
  9. 《佛說呪齒經》,共1則咒語,東晉‧曇無蘭譯(T21, no. 1327)。
  10. 《佛說呪目經》:共1則咒語,東晉‧曇無蘭譯(T21, no. 1328)。

佛醫主題文獻

  1. 參考中國醫藥百科目錄中收錄大藏經中佛醫相關文獻

作業環境準備

程式開發環境

  • python3 (軟體開發程式)
  • html, javascript, php (網頁開發程式)
  • Visual Studio Code (程式編輯軟體)

資料儲存環境

  • ElasticSearch (資料搜尋引擎)

標記處理環境

  • OXygen (XML 編輯器)

執行作業

程式開發作業

  • 以HTML、PHP與Javascript開發後分類搜尋網頁

禁咒治療文獻

  • 以python將禁咒治療文獻編號與CBETA經號對應表轉成CSV檔
  • 以python將已經標記完成的xml檔分別轉成文獻閱讀頁面(html檔)
  • 以python將已經標記完成的xml檔分別轉成載入ES使用的JSON檔,JSON格式如下
 "經號":"sutra_id",
 "部類":"category",
 "經典":"sutra_title",
 "卷":"juan",
 "作譯者":"creators",
 "年代":"dynasty",
 "閱讀網頁":"url",
 "全文":"context",
 "咒名":"mantra_name",
 "咒語":"mantra_text",
 "method_name(方法名稱)":[
   {
     "項目":"method_name_item"
   }
 ],
 "disciple(聽咒者)":[
   {
     "項目":"disciple_item"
   }
 ],
 "teacher(說咒者)":[
   {
     "項目":"teacher_item"
   }
 ],
 "cast_process(施咒法)":[
   {
     "項目":"cast_process_item"
   }
 ],
 "time_f(時間_頻率)":[
   {
     "項目":"time_f_item"
   }
 ],
 "time_pt(時間_特定時間)":[
   {
     "項目":"time_pt_item"
   }
 ],
 "mudra(手印)":[
   {
     "項目":"mudra _item"
   }
 ],
 "mudra_name(印名)":[
   {
     "項目":"mudra_name_item"
   }
 ],
 "thing(物品)":[
   {
     "項目":"thing_item"
   }
 ],
 "effect(功效)":[
   {
     "項目":"effect_item"
   }
 ],
 "symptom(症狀)":[
   {
     "項目":"symptom_item"
   }
 ],
 "disease(病症)":[
   {
     "項目":"disease_item"
   }
 ],
 "benefit(益處)":[
   {
     "項目":"benefit_item"
   }
 ],
 "bftype(益處類別)":[
   {
     "項目":"bftype_item"
   }
 ]
  • 以python建立禁咒治療的Elasticsearch並將文獻資料json檔逐一加入ES資料庫中

佛醫主題文獻

  • 以python將佛醫主題目錄架構表轉成CSV檔
  • 以python將bookmarks.xls裡的佛醫文獻資訊分別轉成載入ES使用的JSON檔,JSON格式如下
 "經號":"sutra_id",
 "部類":"category",
 "經典":"sutra_title",
 "卷":"juan",
 "作譯者":"creators",
 "年代":"dynasty",
 "閱讀網頁":"url",
 "全文":"context",
 "經文前100字":"shortText",
 "目錄層級":"ctreeLevel",
 "項目編號":"ctreeId",
 "項目名稱":"ctreeName",
 "ancestorPath(父層項目)":[
   {
     "目錄層級":"ctreeLevel",
     "項目編號":"ctreeId",
     "項目名稱":"ctreeName"
   }
 ],
 "relatedTopic(相關主題項目)":[
   {
     "目錄層級":"ctreeLevel",
     "項目編號":"ctreeId",
     "項目名稱":"ctreeName"
   }
 ]
  • 以python建立禁咒治療的Elasticsearch並將文獻資料json檔逐一加入ES資料庫中

程式碼說明

  • 文獻資料更新程式碼路徑:dhd/pcl/data
  1. updateDHD.sh: 更新禁咒治療與佛醫主題目錄文獻資料shell檔,定時每週日晚上11:30更新github資料夾上的資料並執行資料庫資料的上傳更新

禁咒治療文獻

  • 網頁程式碼路徑在dhd/pcl
  1. pclmantra.php: 禁咒治療後分類搜尋網站
  • 檔案處理程式碼路徑:dhd/pcl/data/mantra
  1. DHDMaterial: github上的檔案資料,包括以下資料
   1. XML裡存放禁咒治療相關的xml標記檔
   2. MantraSutraInfo.xls禁咒治療經文段落與其經號對應表
   3. error.log記錄禁咒治療相關資料更新錯誤回報
   4. README.md說明檔
  1. mInfo_xlsTOcsv.py: 將禁咒治療文獻編號與CBETA經號對應表(MantraSutraInfo.xls)轉成MantraSutraInfo.csv
  2. htmlReader.py: 利用XML資料夾的xml檔案將文獻轉成文獻閱讀頁面,轉成html的程式放置在reader資料夾裡。
  3. XMLtoJSON.py: 利用XML資料夾的xml檔案將文獻依ES Document的mapping架構轉成JSON檔,轉成後的檔案放置在JSON資料夾裡。
  4. es_setIndex_mantra.py: 禁咒治療文獻Document的Index建立與設定程式。
  5. es_setDoc_mantra.py: 禁咒治療文獻Document的新增、更新、刪除功能程式。
  6. updateDocMantra.py: 整合mInfo_xlsTOcsv.py ,htmlReader.py,XMLtoJSON.py,es_setDoc_mantra.py四支程式的功能。先將將禁咒治療文獻編號與CBETA經號對應表(MantraSutraInfo.xls)轉成MantraSutraInfo.csv,再將xml檔案轉成html檔放置在reader資料夾裡。再將xml檔案轉成JSON檔放置在JSON資料夾裡。最後將JSON檔新增至ElasticSearch資料庫裡。

佛醫主題文獻

  • 網頁程式碼路徑在dhd/pcl
  1. pcldhd.php: 佛醫主題目錄後分類搜尋網站
  2. pcldhdreader.php: 佛醫主題文獻閱讀網站
  • 檔案處理程式碼路徑:dhd/pcl/data/topic
  1. DHDTopic: github上的檔案資料,包括以下資料
   1. bookmarks.xls佛醫主題經文資訊整理表
   2. trdirTopic.xls佛醫主題詞目錄架構表
   3. error.log記錄佛醫主題相關資料更新錯誤回報
   4. README.md說明檔
  1. dirTopic_xlsTOcsv.py: 將trdirTopic.xls表單轉換成trdirTopic.csv檔
  2. jsonTopic.py: 將bookmarks.xls所提供的佛醫經文資訊依ES Document的mapping架構轉成JSON檔,轉成後的檔案放置在JSONtopic資料夾裡。
  3. es_setIndex_catalog.py: 佛醫主題文獻Document的Index建立與設定程式。
  4. es_setDoc_catalog .py: 佛醫主題文獻Document的新增、更新、刪除功能程式。
  5. updateDocCatalog.py: 整合dirTopic_xlsTOcsv.py, jsonTopic.py, es_setDoc_catalog .py三支程式的功能。先將trdirTopic Excel表單轉換成CSV檔。再將bookmarks Excel表單所提供的佛醫經文資訊轉成JSON檔放置在JSONtopic資料夾裡。最後將JSON檔新增至ElasticSearch資料庫裡。

文獻標記作業

禁咒治療文獻

  • 以 OXygen軟體進行標記作業,並驗證通過,標記規則入下說明
 < text id="咒語編號">
   <咒名>…</咒名>
   <咒語>…</咒語>
   <聽咒者>…</聽咒者>
   <說咒者>…</說咒者>
   <施咒法>
     <時間 t=["f"/"pt"]>…</時間>
     <手印 t="印名">…</手印>
     <物品>…</物品>
   </施咒法>
   <使用方法>
   <方法名稱>…</方法名稱>
     <聽咒者>…</聽咒者>
     <說咒者>…</說咒者>
     <施咒法>
       <時間>…</時間>
       <手印 t="印名">…</手印>
       <物品>…</物品>
     </施咒法>
     <功效>
       <症狀 t="病症類別">…</症狀>
       <益處 t="益處類別">…</益處>
     </功效>
   </使用方法>
 < /text>

上傳更新ES資料庫步驟

步驟一:登入jiva伺服器
步驟二:將完成標記的xml檔案上傳到/var/www/dhd/pcl/data/mantra/XML檔案夾裡
      (建議下載傳檔軟體像是FileZilla上傳資料到server端)
步驟三:在/var/www/dhd/pcl/data/mantra路徑下執行python updateDocMantra.py



資料P槽備份路徑

  • 程式碼備份路經: /projects2/2021-法的療癒/2021-web-php/程式碼_20210903
  • 行政文件備份路徑: /projects2/2021-法的療癒/2021-行政資料文件