Fujitsu Healthy Living Implementation Guide
1.1.28 - release

Publication Build: This will be filled in by the publication tooling

Guidance

プロファイル定義について

本実装ガイドはデータ利活用を目的に、富士通 Healthy Living として取り扱う医療情報についてプロファイルを作成しています。
プロファイルは、以下の考え方を元に作成しています。

  • JP Core 実装ガイド Ver.1.1.1、HL7 FHIR v4.0.1 に基づきます。
  • 令和2年度厚生労働科学特別研究事業「診療情報提供書, 電子処方箋等の電子化医療文書の相互運用性確保のための標準規格の開発研究」研究班が作成したFHIR記述仕様書を参考にします。
  • 富士通 Healthy Living 内のFHIRデータを用いた新規サービスでのデータ取り扱い観点より一部のデータ項目で富士通 Healthy Living 固有の規則(カーディナリティ、Bindingなど)を定義しています。
  • 富士通 Healthy Living 固有の規則を定義しないデータ項目については、JP Core 実装ガイド Ver.1.1.1、及び HL7 FHIR v4.0.1 の定義に従っています。

プロファイルは、「Artifacts」ページの「Structures: Resource Profiles」から参照できます。

構造定義

本実装ガイドは、親プロファイルに HL7 FHIR v4.0.1 で定義されたプロファイルを指定しています。 指定した親プロファイルの構造定義をベースにして、各プロファイルで富士通 Healthy Living として拡張定義しています(例:スライスの定義、カーディナリティ・Binding等の規則など)。

各プロファイルの「Snapshot Table」タブページでは、データの構造定義が参照できます。 富士通 Healthy Living では、このページで表示されるデータ項目を使用します。

スライスの定義

スライスは、リストを一連のサブリストに分割する定義であり、それぞれがサブリスト内の要素に異なる制限を持ち、追加の意味が関連付けられています。 本実装ガイドでは、スライスを用いて複数のコード体系サブリストを作成しています。

富士通 Healthy Living 固有規則

各プロファイルは HL7 FHIR v4.0.1 に準拠しており、その中の一部の項目では富士通 Healthy Living 固有の規則を設定しています。 規則については、カーディナリティ、MustSupport、Binding、FixedValue、Constraint があります。 これらの規則の詳細は、以下の節で説明します。

カーディナリティ

固有のカーディナリティの規則については以下の表にまとめます。

データ項目 カーディナリティ 規則の説明
coding.system 1..1 coding.system はコード体系を定義する。コード体系は必ず定義されるべきものであるため、必須項目とする。
coding.code 1..1 coding.codeはデータカテゴリやデータ種別等を表すコード値。コード値は必ず定義されるべきものであるため、必須項目とする。
coding.display 1..1 coding.displayはコード名称を表す。coding.code が必須項目であるため、コード名称もまた必須項目とする。
subject 1..1 subject は患者を表す。患者情報は必ず定義されるべきものであるため、必須項目とする。
subject.reference 1..1 subject.reference は参照する患者情報を表す。参照する患者情報は必ず定義されるべきものであるため、必須項目とする。
encounter 1..1 encounter は測定が作成されたタイミングの外来または入院を表す。
encounter.reference 1..1 effective.reference は参照する外来または入院の情報を表す。参照する外来または入院の情報は、encounter 情報が存在する場合には必ず定義されるべきものであるため、必須項目とする。
effective[x] 1..1 effective[x] は測定日時等を表す。本実装ガイドは電子カルテデータを対象としており、電子カルテデータでは必ず測定日時情報が存在するため、必須項目とする。
Observationの value[x]とcomponent 一方が 1..1 、もう一方が 0..0 value[x] は測定値を表し、component は複数の測定値(例:血圧の収縮期/拡張期など)をまとめたものである。測定値は一ヵ所のみに定義するため、value[x]と component は排他関係としている
Quantity型配下のvalue 1..1 valueQuantity.value は測定値の数値を表す。測定値の数値は必ず定義されるべきものであるため、必須項目とする。
Quantity型配下のunit 1..1 valueQuantity.unit は測定値の単位を表す。測定値の単位は必ず定義されるべきものであるため、必須項目とする。
Quantity型配下のsystem 1..1 valueQuantity.system は測定値の単位形式を定義するコード体系を表す。測定値の単位形式を定義するコード体系は必ず定義されるべきものであるため、必須項目とする。
Quantity型配下のcode 1..1 valueQuantity.code は測定値の単位を表すコード値を表す。測定値の単位を表すコード値は必ず定義されるべきものであるため、必須項目とする。
CodeableConcept型配下のtext※1 1..1 コードが欠損する可能性があるため、textにデータ取得元のデータ名称を入れる。(※1 CodeableConcept型のBindingの強さがrequired以外の場合は1..1とする。requiredの場合はコードが欠損する可能性はないため、0..0とする。)

また、富士通 Healthy Living で使用しないデータ項目については、カーディナリティ 0..0 と設定します。

MustSupport

JP Core 実装ガイドでは MustSupport は使用されていないため、本実装ガイドでも同様に MustSupport は使用しません。

Binding

本実装ガイドでは、使用するコード体系を統一するために Binding を設定しています。

Binding とは、コード化された値を持つ項目で使用され、その項目の列挙値のセット(Value Set)を指定することができます。
Binding では、binding の強さを設定することができ、強さの種類は以下の通りです。

  • required : 指定された ValueSet 内から選択しなければいけません。
  • extensible : ValueSet 内のコードのいずれかに適用できる場合、指定されたValueSet 内から選択すべきですが、ValueSetが(人間のレビューに基づいて)意味合いをカバーしていない場合は、代わりに代替コード(または、データ型が許可するテキスト)も選択可能です。
  • preferred : 指定された ValueSet 内からの選択が推奨されます(ValueSet 内のコード値以外も選択可能)。
  • example : 指定された ValueSet は例を示しています。

本実装ガイドでは基本的にbindingの強さは required を設定しています。 実装時には、指定されたValuesetで定義されたコード体系のみが使用可能となります。

FixedValue

コードや測定値の単位などの値が固定できるものは FixedValue と設定しています。 FixedValue の設定されている項目は、その固定値のみを指定できます。 FixedValue に設定されている項目とその固定値は、各プロファイルの「Snapshot Table」タブページ内の「Description & Constraints」欄で確認できます。

Constraint

実装させるデータが欠損している場合があります。 この場合に対応するため、データ欠損が起こりうる項目については、DataAbsentReasonというコード体系を設定できるように定義しています。 DataAbsentReasonとは、データ欠損の理由を定義するための拡張定義です。 日本の標準コード体系またはDataAbsentReasonのどちらかが必ず入るように制約を付けています。

Alternate Names

FHIRデータ利活用したアプリ上で項目名を表示させたい場合などに使用することを目的として、項目ごとに項目名を設定しています。 設定した項目名は、各プロファイルの「Dtailed Descriptions」タブページの”Alternate Names”欄で確認できます。

コード体系

本実装ガイドでは、JP Core 実装ガイドで定義されているコード体系に従っています。
JP Core 実装ガイドで未定義のコード体系については、日本国内で一般的に使われているコード体系を使用します。 また、米国でよく使われているコード体系にも対応可能とするため、検査コード(身体測定、バイタルサイン)においてはLoincコードにも従っています。

コード体系一覧は以下の通りです。

コード Healthy Living 実装ガイド JPCore
検査コード(身体計測) Loincコード、MEDISの看護実践用語標準マスター<看護観察編> MEDISの看護実践用語標準マスター<看護観察編>
検査コード(バイタルサイン) Loincコード、MEDISの看護実践用語標準マスター<看護観察編> MEDISの看護実践用語標準マスター<看護観察編>
検査コード(検体検査) JLAC10 JLAC10
単位コード Unified Code for Units of Measure (UCUM) Unified Code for Units of Measure (UCUM)
検体材料コード JLAC10材料コード 未定義
医薬品コード HOT9、YJコード HOT7、HOT9、HOT13、YJコード、⼀般処⽅名マスター
医薬品単位 MERIT-9(単位) MERIT-9(単位)
医薬品用法 JAMI標準用法コード JAMI標準用法コード
手術コード 医科診療行為マスタ手術 医科診療行為マスタ手術
手術コード 外保連手術基幹コード(STEM7) 外保連手術基幹コード(STEM7)
放射線治療コード 医科診療行為マスタ 放射線治療 医科診療行為マスタ 放射線治療
部位コード MEDIS標準病名マスタ 修飾語テーブル MEDIS標準病名マスタ 修飾語テーブル
病名コード ICD-10 ICD-10, ICD-11

CodeSystem, ValueSet は、「Artifacts」ページの「Terminology: Code Systems」、「Terminology: Value Sets」からそれぞれ参照できます。

CodeSystemの定義内容について

JP Core 実装ガイドでは、上記のように使用するコード体系は決まっていますが、CodeSystem, ValueSet は未作成のものがあります。 実装ガイドを用いて実装する際にデータ値の validation を行うためには、CodeSystem, ValueSet が作成されている必要があります。 そのため、本実装ガイドでは JP Core 実装ガイドで未作成の CodeSystem, ValueSet を上記のコード体系に従って作成しています。本実装ガイドで作成しているCodeSystem, ValueSetのURLは、JP Core 実装ガイドで作成されているはずのCodeSystem, ValueSet のURLを定義しています。そのため、JP Core 実装ガイドで作成され次第、JP Core 実装ガイドのCodeSystem, ValueSet に切り替わります。

また、Loincコードについても validation を行うため、本実装ガイドで CodeSystem, ValueSet を作成しています。

分類 コード 定義方法
医薬品コード YJコード MEDISで公開されている医薬品HOTコードマスターを元に作成しています。経過措置品・中止品も含みます。
検査コード(検体検査) JLAC10 MEDISで公開されている臨床検査マスターと、日本臨床検査医学会で公開されているJLAC11コード一覧(検査試薬_JLAC10コード付帯)を元に作成し、医療機関で使用されているコードを追加しています。

CodeSystemに定義できないコードの扱いについて

本実装ガイドでは、使用するコード体系について、コードとその名称の一覧をCodeSystemで作成しています。 しかし、コード体系によってはコードとその名称の一覧を作成するのが困難なものもあります。 例えば、この作成が困難なコード体系の例として医薬品の用法コードがあります。 医薬品の用法は、服用するタイミングに関連する情報が詳細化されており、そのタイミングの違いで用法コードも変わります(例えば、服用するタイミングには一日内の服用時刻の指定もあり、その時刻によって用法コードが変わります)。 そのため、用法コードは複雑でコード総数は膨大となります。 このようなコードは、コードとその名称の一覧を作成できないため、CodeSystemでは例外的にコードとその名称の一覧は作成していません。その代わりに、CodeSystem からそのコード体系を管理している公式サイトのURLを参照できるようにして対応しています。 データをFHIRサーバに格納する際には、そのコード体系を管理している公式サイトを参考にして適切なコードを入れてください。

CodeSystemのライセンス

本実装ガイドには利用にライセンスが必要なものや、SNOMED CTなど日本国内でのライセンス利用が認められていないものが含まれています。 Healthy Living Platformに入れるデータは医療機関や健康サービスを源泉とするものであり、それぞれのデータの源泉の組織において使用できるライセンスの元でCodeSystemを使用してください。

Example

Example では、プロファイルの入力データの例を説明しています。
Example は、各プロファイルの「Examples」タブページまたは、「Artifacts」ページの「Example: Example Instances」から参照できます。