openEHR Template入門

# はじめに

今回はopenEHRのTemplate/archetypeを設計して利用するところを解説します。

以下の内容は下記の資料をある程度理解しているものとして進めます。
[openEHR/ISO13606 入門](https://www2.slideshare.net/openEHR-Japan/openehr-iso-13606/openEHR-Japan/openehr-iso-13606)

---

# Archetype, templateとは

Archetype, templateは臨床で使われる論理データモデルです。Templateは臨床で使われる電子カルテの画面や帳票を表すためものです。問診票，経過記録，検査レポートなどを表現します。Archetypeはそうした臨床データで繰り返し出現する、臨床所見や検査、病名、処方薬剤や治療を表すデータモデルを概念ごとにまとめたものです。

* Template: 画面、帳票など。臨床で使われる用途に応じて設計可能。
* Archetype: 画面や帳票に繰り返し出てくる情報単位。血圧、脈拍、病歴、体温。

---

# よく使われるarchetype

Archetypeは[openEHR Clinical Knowledge Manager](https://ckm.openehr.org/ckm/)で国際的に開発が進められています。必要なarchetypeをダウンロードして、組み合わせて使いましょう。一括ダウンロードも可能です。左上のArchetypeメニューからBulk exportを選択してください。

次によく使われるArchetypeを紹介します。

![Clinical Knowledge Manager.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/18960/868d8157-6fdc-48a7-01d0-f89c87b99f4b.png)


---

## Composition型

Composition型のarchetypeは、他のarchetypeを収容する入れ物として機能します。下記のようなarchetypeがよく使われます。

* 外来診察 [Encounter](https://ckm.openehr.org/ckm/archetypes/1013.1.120)
* 報告書 [Report](https://ckm.openehr.org/ckm/archetypes/1013.1.677)
 * 処置報告書 [Procedure report](https://ckm.openehr.org/ckm/archetypes/1013.1.1322)
 * 結果報告書 [Result report](https://ckm.openehr.org/ckm/archetypes/1013.1.1324)
* 経過記録 [Progress note](https://ckm.openehr.org/ckm/archetypes/1013.1.1640)
* サマリー [Health summary](https://ckm.openehr.org/ckm/archetypes/1013.1.1968)

---

## Section型

Section型のarchetypeは「見出し」として使われます。

* SOAP形式 [SOAP Headings](https://ckm.openehr.org/ckm/archetypes/1013.1.339)
* プロブレムリスト [Problem list](https://ckm.openehr.org/ckm/archetypes/1013.1.610)
* なにか適当な見出しを追加したいとき[Ad hoc heading](https://ckm.openehr.org/ckm/archetypes/1013.1.631)

---

## Observation型

Observation型は診察所見や検査結果など、患者から直接得られた情報を記録するために使われます。病歴も含みます

* 診察所見(部位ごとの詳細を示すClusterと併用されることが多い） [Physical examination findings](https://ckm.openehr.org/ckm/archetypes/1013.1.271)
* 病歴(症状を表すclusterと併用されることも多い)[Story/History](https://ckm.openehr.org/ckm/archetypes/1013.1.68)
* 経過記録 [Progress note](https://ckm.openehr.org/ckm/archetypes/1013.1.1647)
* 検査結果 [Laboratory test result](https://ckm.openehr.org/ckm/archetypes/1013.1.2191)
* 血圧 [Blood Pressure](https://ckm.openehr.org/ckm/archetypes/1013.1.3574)
* 脈拍 [Pulse/Heart beat](https://ckm.openehr.org/ckm/archetypes/1013.1.4295)
* 身長 [Height/Length](https://ckm.openehr.org/ckm/archetypes/1013.1.3210)
* 体重 [Body weight](https://ckm.openehr.org/ckm/archetypes/1013.1.2960)
* 体温 [Body temperature](https://ckm.openehr.org/ckm/archetypes/1013.1.2796)

---
# Evaluation型

Evaluation型はその時点までの経過に対する評価です。経過のまとめが多い。

* 問題点・病名 [Problem/Diagnosis](https://ckm.openehr.org/ckm/archetypes/1013.1.169)
* 主訴（来院理由）[Reason for encounter](https://ckm.openehr.org/ckm/archetypes/1013.1.290)
* 飲酒歴 [Alcohol consumption summary](https://ckm.openehr.org/ckm/archetypes/1013.1.1521)
* 家族歴 [Family history](https://ckm.openehr.org/ckm/archetypes/1013.1.2469)
* 喫煙歴 [Tobacco smoking summary](https://ckm.openehr.org/ckm/archetypes/1013.1.2466)
* 危険因子（検診でよく使われる）[Health risk assessment](https://ckm.openehr.org/ckm/archetypes/1013.1.176)

---

# Instruction型

Instruction型は指示の記録です。

* 指示（処置から検査までの幅広い指示に応用が効くので便利） [Service request](https://ckm.openehr.org/ckm/archetypes/1013.1.614)
* 処方 [Medication order](https://ckm.openehr.org/ckm/archetypes/1013.1.3124)

# Action型

Action型は実施された医療行為の記録です。

* 処置・検査 [Procedure](https://ckm.openehr.org/ckm/archetypes/1013.1.204)
* 薬剤投与・管理 [Medication management](https://ckm.openehr.org/ckm/archetypes/1013.1.123)


# Administration Entry型

Administration Entry型は患者管理で使われます。

* 入院 [Patient admission](https://ckm.openehr.org/ckm/archetypes/1013.1.79)
* 転院 [Transfer of care](https://ckm.openehr.org/ckm/archetypes/1013.1.4438)

---
# Cluster型

さまざまなarchetypeと組み合わせて使われます。Cluster型のarchetypeは色んな場面で重宝します。

* 解剖学的部位（身体の場所を示すのに使います)[Anatomical location](https://ckm.openehr.org/ckm/archetypes/1013.1.587)
* 診察所見（診察部位に特化した所見記載もあるので必要に応じて利用してください。) [Examination findings](https://ckm.openehr.org/ckm/archetypes/1013.1.218)
* 医療機器 [Medical device](https://ckm.openehr.org/ckm/archetypes/1013.1.17)
* 薬剤(Medication order, Medication Managementと組み合わせて用います) [Medication](https://ckm.openehr.org/ckm/archetypes/1013.1.2368)
* 用法(Medication orderとともに複雑な用法指示を記録します) [Dosage](https://ckm.openehr.org/ckm/archetypes/1013.1.2751)
* 服用タイミング [Timing - daily](https://ckm.openehr.org/ckm/archetypes/1013.1.2245)
* 症状・徴候(Story/Historyに組み込まれて使われることが多いです） [Symptom/Sign](https://ckm.openehr.org/ckm/archetypes/1013.1.195)


---

# Better tool

Archetype, templateの設計・編集には[Ocean archetype editor](https://oceanhealthsystems.com/applications/archetype-editor/), [Template designer](http://downloads.oceaninformatics.com/downloads/TemplateDesigner/)がWindows環境で動作するツールとしてよく使われていました。その他，[LinkEHR](https://linkehr.veratech.es/)もさまざまな参照モデルに対応しています。

現在はBetter社により開発されたWeb上で動作する[Archetype Designer](https://tools.openehr.org/designer/#/)がopenEHR公式にも採用され，人気を集めています。今回は[Archetype Designer](https://tools.openehr.org/designer/#/)を利用してTemplateを作成します。


![Screenshot_2021-02-26 Archetype Designer.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/18960/13c1140f-bca4-a8b4-08f8-326cde82d5df.png)

---

# 準備

以下のような問診票を例にテンプレートの作成を行います。


![anamnese.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/18960/fd09e040-f4dc-c12d-06b4-073a83483aa2.png)

---

# マインドマップ（分析）

　問診票などの帳票の項目について分析するためにはマインドマップで整理していくのが一般的です。MS-Excelなどでもできなくはないですが、構造を変更することも多いのでマインドマップを利用しましょう。openEHRコミュニティでは[X-Mind](https://jp.xmind.net/download/)がよく使われています。

　以下が問診票のマインドマップです。シンプルですね。

![マップショット 1.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/18960/3da4c1d7-fd3d-b9dd-a7d3-6ab03e6027fa.png)

---

# マインドマップ（archetype)

　各項目に相当するarchetypeを[openEHR clinical knowledge](https://ckm.openehr.org/ckm/)でさがして当てはめましょう。この図を元に、テンプレートを作成します。

![マップショット 3.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/18960/5fbe06dc-dc63-04e3-55ab-737521b63891.png)

---

# Archetypeのダウンロード

CKMから赤く囲んだところをクリックして必要となるarchetypeをダウンロードしましょう。
Bulk exportで一括ダウンロードしてもかまいません

必要となるArchtypeは以下のものです。
* 外来診察 [Encounter](https://ckm.openehr.org/ckm/archetypes/1013.1.120)
* 身長 [Height/Length](https://ckm.openehr.org/ckm/archetypes/1013.1.3210)
* 体重 [Body weight](https://ckm.openehr.org/ckm/archetypes/1013.1.2960)
* 体温 [Body temperature](https://ckm.openehr.org/ckm/archetypes/1013.1.2796)
* 病歴 [Story/History](https://ckm.openehr.org/ckm/archetypes/1013.1.68)
* 症状・徴候 [Symptom/Sign](https://ckm.openehr.org/ckm/archetypes/1013.1.195)

![Screenshot_2021-02-26 Clinical Knowledge Manager.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/18960/b6ace792-c9f9-1a6c-1c5e-24f8af0adb58.png)

---

# Archetype designer

[Archetype designer](https://tools.openehr.org/designer/)に登録し、ログインするとリポジトリ選択画面が出てきます。プロジェクトや用途ごとにtemplateやarchetypeをまとめておくことができます。New repositoryをクリックして新しいrepositoryを作りましょう。


![Screenshot_2021-02-26 Archetype Designer.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/18960/060dad67-802b-5f17-999d-892d67fc0efc.png)

---

# Repositoryの作成

RepositoryはLocal folder(手元のPCではなくクラウド側）やGoogle Drive, Bitbucket, Dropbox, GitHubなどにも作成できます。ここでは openEHR lesson というRepository nameをつけてcreateボタンを押します。

![Screenshot_2021-02-27 Archetype Designer.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/18960/fbfa3a56-5b6f-2424-da52-d5ac2223d7bb.png)

---

# Repositoryの選択

先ほど作成したRepositoryを選択します。

![Screenshot_2021-02-27 Archetype Designer(1).png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/18960/c5dc08c0-b36d-ee2e-4e9a-2050b267ae54.png)

---

# ArchetypeのImport(1)

先ほどダウンロードしておいたarchetypeをimportします。画面左上の Import ボタンを押しましょう。

![Screenshot_2021-02-27 Archetype Designer(2).png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/18960/a3a675b3-4390-cf6f-2f18-e00dbf46cc16.png)

---

# ArchetypeのImport(2)

先ほどダウンロードしたarchetypeファイルを画面の上の方のDrop hereと書かれたところにドラッグアンドドロップしてください。下のQueueにアップロードするファイルが出てきます。一通り準備が整ったら、左下の赤いupload allを押しましょう。

![Screenshot_2021-02-27 Archetype Designer(3).png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/18960/b912ba62-7c60-613f-4907-2049aab07cf2.png)

---

# Templateの作成(1)

左下に登録したarchetypeが見えていると思います。ここで +New ボタンを押しましょう。

![Screenshot_2021-02-27 Archetype Designer(4).png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/18960/77563627-2918-ccf4-3889-b6d51fd339e3.png)


----

# Templateの作成(2)

Archetype DesignerはさまざまなArchetypeを作成できます。ここではTemplateを選択します。

![Screenshot_2021-02-27 Archetype Designer(5).png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/18960/5ef521ef-05b5-4f73-cc8a-ad3fe8be0a37.png)

---

# Compositionの選択

TemplateはCompositionをベースに作ります。ここではEncounterを選択します。

![Screenshot_2021-02-27 Archetype Designer(7).png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/18960/4e2c10e1-6a78-5cf6-2cc4-f3884d023aea.png)

---

# Template Id

Template Idにはそのテンプレート固有の名称をつけます。日本語でもできなくはないですが、英数字のみのほうが無難です。バージョン番号(v.a.b.c)もつけておくことをおすすめします。Createボタンを押して先に進みます。

![Screenshot_2021-02-27 Archetype Designer(9).png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/18960/e8a5f1da-d156-e9da-5c17-42e2206da703.png)

---

# Archetypeの組み込み

CompositionにTemplateを組み込んで構成していきます。Compositionのcontentをクリックして、右側のarchetypeをダブルクリックしてください。問診票のとおりにBody Height, Body weight, Body temperature, Request for Encounter, Story/historyを組み込んでみましょう。

![Screenshot_2021-02-27 Archetype Designer(10).png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/18960/28b98b52-237e-e02a-7d7b-35e629995923.png)

---

# Clusterの組み込み

ClusterはCompositionには直接組み込めません。Observation/Evaluation/Instruction/Actionの一部として組み込みます。Symptom/Sign clusterをStory/Historyに組み込みます。左側の+ボタンをおして項目を展開してください。Structured detailをクリックすると右側にSymptom/sign clusterが出てきますのでクリックして組み込みます。

![Screenshot_2021-02-27 Archetype Designer(11).png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/18960/41222e9b-1d17-2903-ed05-2379afc22639.png)

---

# Cardinalityの設定

Archetypeは汎用性を重視して、最大限のデータセットが組み込まれています。使わない項目は使わないように設定しましょう。黄色の[0..0]をクリックするとテンプレートでは扱われないデータとなります。一通り終了したら、左上のSaveボタンを押してください。これでTemplateの完成です。

![Screenshot_2021-02-27 Archetype Designer(12).png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/18960/66b524a7-94cb-8018-489a-56a32da98465.png)

---

# Templateの利用

TemplateはopenEHRを採用しているプラットフォームでは共通して使うことができます。Exportからさまざまな形式のファイルが出力されるので解説します。

* Native: Archetype Designerの専用形式です。
* OET: Ocean Template Designerで使われる形式です。Archtypeそのものの定義は省略されています。
* OPT: Ocean Template Designerで使われる形式です。Archetypeを組み込んでいますので、外部プログラミング用途で使われます。
* xmind: XmindというMindmapツールで使います。
* Fileset: 組み込まれたarchetypeのファイルがすべてダウンロードできます。
* Excel: 項目などがExcel形式の表になって出てきます。
* Web template: Web形式のインターフェースを作るテンプレートが出力されます。

![Screenshot_2021-02-27 Archetype Designer(13).png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/18960/8ee513f8-d902-19d9-ed7f-d027853ab05a.png)