LoginSignup
0
0

More than 3 years have passed since last update.

Exposure Notifications APIに関するメモ

Last updated at Posted at 2021-02-11

概要

  • Exposure Notifications APIのTransmission Risk Valueについて、AppleとGoogle間の相違点をドキュメントベースに確認したメモ

資料

用語

用語 説明
Transmission Risk 感染リスク

感染リスクは、感染したユーザーの感染状況や感染リスクへの影響を反映させることを目的としている。値は、感染したユーザーの症状、症状が最初に現れた時期、診断の確認レベル、またはアプリや保健所からのその他の判断に基づいている。1
transmissionRiskLevel 感染リスクレベル。

分類であり、計算に直接使用する数値ではない。

地域間で一貫性のある感染リスクレベルは巡回を容易にするため、感染リスクレベルには報告書の種類を記載することが推奨される。サポートされている報告書の種類は、各地域の公衆衛生当局によって決定される。アプリはレポートを送信する前に、報告書の種類を公衆衛生当局に確認する必要がある。
このリスクレベルに許される範囲はApple、Google間で異なる(Unused/customの定義箇所が異なる)。23
transmissionRiskScores (transmissionRiskLevelValues) 各感染リスクレベルに割り当てられる数値の配列。

係数であり、計算に直接使用する数値となる。

各アプリは、リスクレベルのそれぞれについて独自に定義する。各リスクレベルに割り当てられる値は、0~8の範囲内。

調査

transmissionRiskLevel、transmissionRiskScoresの相違点

  • 太字はAppleとGoogle間の相違点
  • transmissionRiskLevelは、AppleのドキュメントGoogleのドキュメントを確認し推奨される説明を転記
  • transmissionRiskScoresはアプリケーションの設定で定義する0-8の数値(係数)が格納された「配列」。Apple、Googleの内部実装で設定の何番目の数値が使用されるかということを示している
  • transmissionRiskLevelに対するtransmissionRiskScores配列は、Appleはドキュメント、Googleはソースコード1,2を参考に記載(ドキュメントでは記載を確認できず)
transmission
RiskLevel
の値
Apple Google transmission
RiskScores
Apple
transmission
RiskScores
Google
0 Unused /Custom Unused4 transmission
RiskScores[0]
数値の1を埋め込み(リテラル値)
1 Confirmed test : Low transmission risk level Confirmed test - Low transmission risk level transmission
RiskScores[1]
transmission
RiskScores[0]
2 Confirmed test : Standard transmission risk level Confirmed test - Standard transmission risk level transmission
RiskScores[2]
transmission
RiskScores[1]
3 Confirmed test : High transmission risk level Confirmed test - High transmission risk level transmission
RiskScores[3]
transmission
RiskScores[2]
4 Confirmed clinical diagnosis Confirmed clinical diagnosis transmission
RiskScores[4]
transmission
RiskScores[3]
5 Self report Self report transmission
RiskScores[5]
transmission
RiskScores[4]
6 Negative case Negative case transmission
RiskScores[6]
transmission
RiskScores[5]
7 Recursive case Recursive case transmission
RiskScores[7]
transmission
RiskScores[6]
8 - Unused/custom - transmission
RiskScores[7]

その他

transmissionRiskLevelの推奨される説明(reporttype)には各reporttypeの説明はない。

GoogleのExposure Notifications APIのv1.5以上で有効なTemporaryExposureKey(TEK)のreportTypeにはある程度説明が記載されていたのでreporttypeの意味を理解するために引用してメモ。

引用元:Googleのドキュメント

reportType
(v1.5 and higher only)
Type of diagnosis that this key was uploaded with. We recommend that the app set this value before uploading each key to the server. The values range from 0 to 5 and have the following definitions. The app must handle all of these values without crashing if received from the server.
0: UNKNOWN. Report type metadata is missing from the diagnosis key. In v1.7 and higher, keys with report type set to UNKNOWN do not contribute to the risk value.
1: CONFIRMED_TEST. A medical provider has confirmed the user had a positive diagnostic test for COVID-19.
2: CONFIRMED_CLINICAL_DIAGNOSIS. A medical provider has confirmed the user had symptoms consistent with a COVID-19 diagnosis.
3: SELF_REPORT. The user has self-reported symptoms consistent with COVID-19 without confirmation from a medical provider.
4: RECURSIVE. This value is reserved for future use.
5: REVOKED. In v1.5, REVOKED is not used. In v1.6 and higher, REVOKED eliminates exposures associated with that key from the detected exposures.

https://www.DeepL.com/Translator で翻訳:

reportType
(v1.5以上のみ)
このキーがアップロードされた診断の種類。各キーをサーバーにアップロードする前に、アプリでこの値を設定することをお勧めします。値の範囲は0~5で、以下の定義があります。アプリは、サーバーから受信した場合、これらの値をすべてクラッシュせずに処理する必要があります。
0:UNKNOWN。診断キーからレポートタイプのメタデータが欠落しています。v1.7以降では、レポートタイプがUNKNOWNに設定されているキーはリスク値に寄与しません。
1:CONFIRMED_TEST。医療提供者がユーザーのCOVID-19に対する診断テストが陽性であることを確認しました。
2:CONFIRMED_CLINICAL_DIAGNOSIS。医療提供者はユーザーがCOVID-19診断と一致する症状を持っていることを確認した。
3:SELF_REPORT。医療提供者からの確認なしに、ユーザーがCOVID-19と一致する症状を自己申告した。
4:RECURSIVE。この値は将来の使用のために予約されている。
5: REVOKED。v1.5では、REVOKEDは使用されません。v1.6以降では、REVOKEDにより、検出されたエクスポージャーからそのキーに関連付けられたエクスポージャーが削除されます。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0