2.1.2.8 JP Core Immunization(予防接種)プロファイル
2.1.2.8.1 概略
項目 | 内容 |
---|---|
定義URL | http://jpfhir.jp/fhir/core/StructureDefinition/JP_Immunization |
バージョン | 1.0.0 |
名前 | JPCoreImmunizationProfile |
タイトル | JP Core Immunization Profile |
ステータス | アクティブ(2022-03-31) |
定義 | このプロファイルはImmunizationリソースに対して、予防接種のデータを送受信するための基礎となる制約と拡張を定めたものである。 |
公開者 | FHIR® Japanese implementation research working group in Japan Association of Medical Informatics (JAMI) |
Copyright | FHIR® Japanese implementation research working group in Japan Association of Medical Informatics (JAMI) |
ソースリソース | https://simplifier.net/fhirjpigwg/jpImmunization |
このプロファイルは予防接種情報をImmunizationリソースを使用して表現する。 以下、このプロファイルのImmunizationリソースを「JP Core Immunizationリソース」と呼ぶ。
予防接種のFHIR仕様に関しては、先行事例としてはデジタル庁が公開している新型コロナワクチン接種証明書アプリがあるが、スマートフォンでQRコードとして表示できるデータサイズに納めるため、記述されている情報は極めて限定的である。そこで、国内で利用されているそれ以外の予防接種関係の文書やAPIなども参考にして記述すべき項目の洗い出しや記述方法の検討を行った。具体的には、母子手帳、Yellow Card、 市町村長が有する接種記録(予防接種台帳)、ワクチン接種記録システム(VRS)、マイナポータル自己情報取得APIを参考にした。既存のImmunizationの要素で記述できない項目については、新たに拡張を定義した。
背景および想定シナリオ
本プロファイルは、以下のようなユースケースを想定している。
- 新型コロナワクチン接種の記録を各自治体から政府に報告する
- マイナポータルから自分自身のワクチン接種の記録を取得する
- 個人の各種ワクチン接種の記録をPHRに記録する
スコープ
対象
このプロファイルの対象は各種ワクチンの接種情報を電子的に連携するためのメッセージを記述することである。
対象としないこと
このプロファイルはワクチン以外の一般的な注射薬剤については対象としない。一般的な注射薬剤は、JP Core MedicationRequest Injectionプロファイルで記述することとする。
2.1.2.8.2 関連するプロファイル
JP Core Immunizationリソースは、以下のリソースから直接参照される。
- 特になし
JP Core Immunizationリソースは、以下のリソースを直接参照する。
- JP Core Patientリソース
- JP Core Encounterリソース
- JP Core Practitionerリソース
- JP Core PractitionerRoleリソース
- JP Core Organizationリソース
- JP Core Locationリソース
- JP Core Conditionリソース
2.1.2.8.3 リソース定義
Immunization | Immunization | ||
id | |||
status | Binding | ||
statusReason | |||
vaccineCode | |||
patient | |||
encounter | |||
occurrence[x] | |||
recorded | |||
reportOrigin | |||
location | |||
manufacturer | |||
lotNumber | |||
expirationDate | |||
site | |||
route | |||
doseQuantity | |||
performer | |||
note | |||
reasonCode | |||
reasonReference | |||
isSubpotent | |||
subpotentReason | |||
education | |||
programEligibility | |||
fundingSource | |||
reaction | |||
protocolApplied |
必須要素
次のデータ項目は必須(データが存在しなければならない)、あるいは、データが送信システムに存在する場合はサポートされなければならないことを意味する。(Must Support)。
JP Core Immunization リソースは、次の要素を持たなければならない。
- status
- vaccineCode
- patient
- occurrence
JP Core Immunizationリソースは、次の要素をサポートしなければならない。
Extensions定義
JP Core Immunization リソースで使用される拡張は次の通りである。
JP Core Immunization独自で追加されたExtension
拡張 | 説明 | URL | 値の型 |
---|---|---|---|
DueDateOfNextDose | 次回接種予定日 | http://jpfhir.jp/fhir/core/StructureDefinition/JP_Immunization_DueDateOfNextDose|dateTime| | |
ManufacturedDate | 製造年月日 | http://jpfhir.jp/fhir/core/StructureDefinition/JP_Immunization_ManufacturedDate|dateTime | |
CertificatedDate | 検定年月日 | http://jpfhir.jp/fhir/core/StructureDefinition/JP_Immunization_CertificatedDate|dateTime |
既存のExtensionの利用
既存のExtensionの利用は特にない。
用語定義
HL7 FHIRの基底規格では、ワクチンコードとして CVX コードが使われているが、日本ではHOTコードやYJコードで一通り使用されているワクチンが定義されているため、国内で利用する際の用語集としては HOTコードとYJコードを採用した。それ以外の用語集の利用を妨げるものではない。
分類 | 名称 | URI |
---|---|---|
ワクチン | HOT9 | urn:oid:1.2.392.200119.4.403.1 |
ワクチン | HOT13 | urn:oid:1.2.392.100495.20.2.75 |
ワクチン | YJコード | urn:oid:1.2.392.100495.20.1.73 |
対象疾患 | MEDIS標準病名マスター病名交換用コード | urn:oid:1.2.392.200119.4.101.6 |
JP Core Immunizationリソースの各要素のバインディングは以下の通りである。
Path | 定義 | バインディング強度 | バリューセット |
---|---|---|---|
Immunization.status | オーダーの現在の状態を示すコード | required | http://hl7.org/fhir/ValueSet/immunization-status |
Immunization.vaccineCode | ワクチンの識別情報 | prefered | HOT9,HOT13,YJコード |
Immunization.site | 接種部位 | prefered | JAMI処方・注射オーダ標準用法規格(外用部位コード) |
Immunization.route | 接種経路 | prefered | HL7 V2(使用者定義表0162) |
Immunization.doseQuantity.code | 接種量単位 | prefered | UCUM |
Immunization.protocolApplied.targetDisease | ワクチン対象疾患 | prefered | MEDIS標準病名マスター病名交換用コード |
制約一覧
JP Core Immunization リソースは、以下の制約を満たさなければならない。
項目の追加
参考にしたワクチン関係の文書やAPIで扱われている項目に合わせ、以下の項目を追加した。
- 次回接種予定日(拡張「JP_Immunization_ExpectedNextDoseDate」を使用)
- 製造年月日(拡張「JP_Immunization_ManufacturedDate」を使用)
- 検定年月日(拡張「JP_Immunization_TestDate」を使用)
2.1.2.8.4 利用方法
Interaction一覧
コンフォーマンス | インタラクション |
---|---|
SHALL(必須) | search-type、read |
SHOULD(推奨) | vread、history-instance |
MAY(利用可能) | create、update、patch、delete、history-type |
Search Parameter一覧
コンフォーマンス | パラメータ | 型 | 例 |
---|---|---|---|
SHALL | identifier | token | GET [base]/Immunization?identifier=http://myhospital.com/fhir/immunization|1234567890 |
SHOULD | patient | reference | GET [base]/Immunization?patient=123456 |
SHOULD | patient,date | referenece,date | GET [base]/Immunization?patient=123456&date=eq2013-01-14 |
MAY | date,lot-number | date,string | GET [base]/Immunization?date=eq2013-01-14 |
必須検索パラメータ
次の検索パラメータは必須でサポートされなければならない。
identifier 検索パラメータを使用して、オーダーIDなどの識別子によるMedicationReuqestの検索をサポートしなければならない(SHALL)。
GET [base]/Immunization?identifier={system|}[code]例:
GET [base]/Immunization?identifier=http://myhospital.com/fhir/medication\|1234567890指定された識別子に一致するImmunizationリソースを含むBundleを検索する。
推奨検索パラメータ
次の検索パラメータをサポートすることが望ましい。
- patient 検索パラメータを使用して、患者のリファレンス情報によるImmunizationの検索をサポートすることが望ましい(SHOULD)。
例:
リソースIDが123456の患者のImmunizationリソースを含むBundleを検索する。
patient,date 検索パラメータを使用して、患者のリファレンス情報と接種日によるImmunizationの検索をサポートすることが望ましい(SHOULD)。
GET [base]/Immunization?patient=[id]&date=[date] GET [base]/Immunization?patient=[url]&date=[date]例:
GET [base]/Immunization?patient=123456&date=eq2013-01-14リソースIDが123456の患者の2013-01-14に服用するImmunizationリソースを含むBundleを検索する。
Operation一覧
JP Immunization リソースに対して使用される操作は次の通りである。
$everything:[base]/Immunization/[id]/$everything
- この操作が呼び出された特定のImmunizationに関連する全ての情報を返す。
Operation 詳細
$everything 操作
この操作は、この操作が呼び出された特定のImmunizationリソースに関連する全ての情報を返す。応答は "searchset" タイプのBundleリソースである。サーバは、少なくとも、識別されたImmunizationコンパートメントに含まれる全てのリソースと、それらから参照されるすべてのリソースを返すことが望ましい。
この操作の公式なURLは以下である。
URL: [base]/Immunization/[id]/$everything
本操作は、べき等な操作である。
入力パラメータ
名前 | 多重度 | 型 | バインディング | プロファイル | 説明 |
---|---|---|---|---|---|
start | 0..1 | date | 特定の日付範囲で提供されたケアに関連する全ての記録を意味する。開始日が指定されていない場合、終了日以前のすべてのレコードが対象に含まれる。 | ||
end | 0..1 | date | 特定の日付範囲で提供されたケアに関連する全ての記録を意味する。終了日が指定されていない場合、開始日以降のすべてのレコードが対象に含まれる。 | ||
_since | 0..1 | instant | 指定された日時以降に更新されたリソースのみが応答に含まれる。 | ||
_type | 0..* | code | 応答に含むFHIRリソース型を、カンマ区切りで指定する。指定されない場合は、サーバは全てのリソース型を対象とする。 | ||
_count | 0..1 | integer | Bundleの1ページに含まれるリソース件数を指定。 |
出力パラメータ
名前 | 多重度 | 型 | バインディング | プロファイル | 説明 |
---|---|---|---|---|---|
return | 1..1 | Bundle | バンドルのタイプは"searchset"である。この操作の結果は、リソースとして直接返される。 |
例
リクエスト:単一のImmunizationに関連する全てのリソースを取得する。
レスポンス:指定されたImmunizationに関連する全てのリソースを返す。
サンプル
.ワクチン接種例1
ワクチン接種メッセージ作成例
具体的な内服処方箋の作成例について、上記のサンプルのそれぞれについて解説する。
ワクチン接種例1
このワクチン接種例では下記の内容をFHIRで表現する場合について解説する。
ワクチン接種の上記部分をFHIR R4で記述する場合以下のようになる。
<details> <summary><b>FHIRでのワクチン接種例一部抜粋(クリックで展開)</b></summary> <div> </div> </details>
サンプル
2.1.2.8.5 注意事項
記述の単位について
Immunizationはワクチンを vaccineCodeとして1つまでしか持つことしかできないので、ワクチン単位でImmunizationリソースを作成する。
ワクチンの種類や製剤名の記述方法について
ワクチンの種類や製剤名は Immunization.vaccineCode要素にCodeableConcept型で記述する。ワクチンを識別するコードは、HOTコード(HOT13を推奨)ないしYJコードを使用する。
"vaccineCode": { "coding": [ { "system": "urn:oid:1.2.392.100495.20.2.75", "code": "1820201040101", "display": "インフルエンザHAワクチン「第一三共」1mL" } ] },
接種年月日の記述方法について
ワクチンを接種した日は Immunization.occurrenceDateTime要素にdateTime型で記述する。日付での記述が難しい場合は、Immunization.occurrenceString要素にテキストで記述してもよい。
Immunization.occurrenceDateTime要素を使用した例:
"occurrenceDateTime": "2022-03-02",
Immunization.occurrenceString要素を使用した例:
"occurrenceString": "6才頃",
記録日時の記述方法について
ワクチン接種の情報を記録した日時は Immunization.recorded要素にdateTime型で記述する。
"recorded": "2022-03-02T10:45:23+09:00",
接種場所の記述方法について
ワクチンの接種場所は Immunization.location要素にReference型でLocationリソースの参照情報を記述する。
"location" : { "reference" : "Location/1234" }
製造会社の記述方法について
ワクチンの製造会社は Immunization.manufacturer要素にReference型でOrganizationリソースの参照情報を記述する。
"manufacturer" : { "reference" : "Organization/1234" }
ワクチンのロット番号の記述方法について
ワクチンのロット番号は Immunization.lotNumber要素にstring型で記述する。
"lotNumber" : "FF3620",
接種部位の記述方法について
ワクチンの接種部位は Immunization.site要素に CodeableConcept型で記述する。部位を識別するコードにはJAMI処方・注射オーダ標準用法規格(外用部位コード) を推奨する
"site": { "coding": [ { "system": "urn:oid:1.2.392.200250.2.2.20.32", "code": "74L", "display": "左上腕" } ] },
摂取量の記述方法について
ワクチンの接種量は Immunization.doseQuantity要素にSimpleQuantity型で記述する。全体の容量をUCUM("http://unitsofmeasure.org")を使用してmL単位で指定する。
"doseQuantity": { "value": 1, "unit": "mL", "system": "http://unitsofmeasure.org", "code": "mL" },
接種実施者の記述方法について
ワクチンの接種実施者 Immunization.performer.actor要素にReference型でPractitionerリソースの参照情報を記述する。Immunization.performer.functionにはValueSet "http://hl7.org/fhir/ValueSet/immunization-function"から"AP" (Administering Provider)を指定する。
"performer": [ { "function": { "coding": [ { "system": "http://terminology.hl7.org/CodeSystem/v2-0443", "code": "AP", "display": "Administering Provider" } ] }, "actor": { "reference": "Practitioner/1234" } } ],
接種を行わなかった理由の記述方法について
ワクチン接種を行わなかった理由を記述したい場合は、Immunization.reasonCode要素にCodeableConcept型で記述する。適当な標準コードが整備されていないため、ローカルコードを定義するか、CodeableConcept.text要素にテキストとして記述する。
"reasonCode": [ { "text": "37.5℃以上の発熱があったため。" } ],