コアデータ定義
コアデータ定義(CDD)は、完全なスタディデザインのサブセットです。具体的には、Vault EDCから生成され、スタディデータの分析に使用される重要なデータエクスポートに影響を与えるフィールドについて説明することを目的としています。
CDDを利用するかどうかにかかわらず、組織は上流システム(MDRなど)からスタディデザインの開始の自動化を選択できます。そのモデルでは、以下のEDC APIが使用されます。
- スタディマスター(Study Master)を作成する
- イベントグループの作成
- イベントを作成する
- ライブラリやその他のスタディから(多数の)フォーム(Forms)をコピーする
- イベントグループ/イベント/フォームを順序付けする
この自動化を補完するために、ソースデザインシステムでは、新たに作成されたスタディ/ケースブックバージョン1にCDDをアップロードすることもできます。CDDは、通常のスタディデザインライフサイクルを経て進行するにつれて、スタディの目的(CDD)と実際のスタディデザインの比較を実行するために配置されます。CDDとスタディデザインの比較は、スタジオ検証(Studio Validations)ジョブが実行されるたびに実行されます。
この定義はJSON形式で、スタディデザインのケースブックバージョンにファイルとして添付されます。CDDはケースブックデザインのエクスポート(Casebook Design Export)(CDE)のサブセットであり、JSON形式です。サブセットは、さまざまなEDCデザイン構造(イベントグループ、イベント、フォーム、アイテムグループ(Item Groups)、アイテム(Items)、コードリスト(Codelists)、単位(Units))の重要なプロパティであり、順序付けられたスタディスケジュールのコンテキストでのみ有効です。完全な構造の詳細については、EDC APIリファレンスをご覧ください。
CDDはバージョン管理済み:コアデータ定義ファイルは、必要に応じて各ケースブックバージョンに添付されます。新しいケースブックバージョンを作成しても、ファイルは引き継がれません。比較を後続のバージョンで継続するためには、適切な変更を加えた更新済みCDDを新しいケースブックバージョンにアップロードする必要があります。
前提条件
CDMS Study Designerおよび"CDMS Librarian標準スタディロールの権限を持つユーザは、以下で説明されているアクションをデフォルトで実行できます。組織がカスタム治験の役割を使用する場合、ロールには以下の権限が付与されている必要があります:
| タイプ | 権限ラベル | 制御 |
|---|---|---|
| 標準タブ | Studio タブ | Studio タブへのアクセス権限 |
| 標準タブ | ライブラリタブ | ライブラリタブへのアクセス権限 |
| 機能権限 | 治験デザインの表示 | 治験デザインへの閲覧のみのアクセス |
| 機能権限 | 治験のデザイン | Studio から治験デザイン定義と治験スケジュールを作成する権限 |
| 機能権限 | ライブラリの表示 | Studio>ライブラリからライブラリコレクションとそのデザインを表示する権限 |
| 機能権限 | ライブラリの設計 | Studio>ライブラリからコレクションの治験デザイン定義と治験スケジュールを作成する権限 |
| 機能権限 | API アクセス | Vault EDC API にアクセスし使用する権限(この許可は CDB 使用時にも必要です)。 |
試験の役割について詳しくご確認ください。
コアデータ定義の管理(スタジオ)
CDDの管理は、組織によってEDC APIを使用して自動化される可能性が高いものの、スタジオのユーザインターフェース、スタディ、またはライブラリコレクション内からファイルを管理することもできます。
コアデータ定義へのアクセス
ケースブックバージョンのコアデータ定義にアクセスするには:
- スタジオの試験に移動します。
- 必要に応じて、デザインの適切なケースブックバージョン(最新バージョンでない場合)に移動します。
- アクション(Actions)メニュー()からコアデータ定義の管理(JSON)(Manage Core Data Definition (JSON))を選択します。
- 2つの選択肢が含まれるモーダルダイアログが表示されます。
- 既存のケースブックバージョンにCDDファイルが関連付けられている場合、ファイル名(Filename)をクリックしてダウンロードします。
コアデータ定義ファイルのアップロード(スタジオ)
ケースブックバージョンのCDDファイルを追加するには:
- スタジオの試験に移動します。CDDの追加または削除は、最新のケースブックバージョンでのみ許可されています。
- アクション(Actions)メニュー()からコアデータ定義の管理(JSON)(Manage Core Data Definition (JSON))を選択します。
- すでにケースブックバージョンに関連付けられたファイルが存在する場合は、まずそれを削除する必要があります。次のセクション「コアデータ定義ファイルの削除」を参照してから、この手順に戻ります。
- CDDファイルが関連付けられていない場合、ダイアログが表示されます。
- ファイルの選択(Select File)をクリックし、ファイルをブラウズして選択します。選択したファイルが表示されます。選択したファイルが意図したものでない場合は、ファイル名の横にあるXをクリックして、別のファイルを選択します。ファイルがJSON形式でない場合、ダイアログにエラーが表示され、保存できなくなります。
- 保存をクリックすると、そのファイルがケースブックバージョンに関連付けられます。
コアデータ定義ファイルの削除(スタジオ)
- スタジオの試験に移動します。CDDの追加または削除は、最新のケースブックバージョンでのみ許可されています。
- アクション(Actions)メニュー()からコアデータ定義の管理(JSON)(Manage Core Data Definition (JSON))を選択します。
- 既存のCDDはファイル名として表示されます。ファイル名の横にあるゴミ箱オプションをクリックします。
- そのアクションはファイルが削除されることを示していますが、保存をクリックしたときにのみ完全に削除されます。保存をクリックします。
- この時点で、コアデータ定義の管理オプションに再度アクセスして、更新されたバージョンをアップロードします。
コアデータ定義ファイルは、必要に応じて各ケースブックバージョンに添付されます。Veeva EDCでは、このファイルの以前のバージョンが保存されず、最後にアップロードされたファイルのみが関連付けられます。
コアデータ定義の検証の実行
CDDとシステム内のスタディデザインとの比較は、スタジオ検証ジョブの一部として実行されます。
スタジオから検証(Validations)ジョブを実行するには:
- スタジオの試験に移動します。
- アクションメニュー()から、検証(Validate)を選択します。最近すでにスタディに対して検証ジョブが実行されており、変更がない場合、このオプションは表示されません。
- ケースブックバージョンに関連付けられたCDDがあると、ジョブを実行するオプションが表示されます。CDDが関連付けられていない場合、これらのオプションは表示されません。
- デフォルトでは、さらにコアデータ定義をスタディデザインに対して追加で比較する(Additionally Compare Core Data Definitions to Study Design)でCDDをスタディと比較します。いいえ(No)を選択した場合、2番目のオプションは適用されません。
- コアデータ定義エラーが見つかった場合、検証済みステータスにしない(Prevent Validated Status when Core Data Definition Errors are Found)オプションを使用して、CDDとスタディを比較して重大な差異が見つかった場合に、ケースブックバージョンの検証済みステータスへの移動をブロックするかどうかを指定します。
通常、比較を実行し、検証ステータスへの移行をブロックするためのデフォルト設定を実行する必要があります。組織内でこれらの迂回オプションをいつ、誰が使用できるべきかを考慮します。選択した内容は保存され、EDCツール(EDC Tools) > ジョブ履歴(Job History)エリアに表示されます。
実際の比較や、警告とエラータイプの違いについては、以下のコアデータ定義の検証セクションをご覧ください。
このジョブの実行結果は、2つのCSVファイルを含むZIPファイルです。1つはCDD比較に特有のエラー/警告に関するファイルで、もう1つはスタジオの残りの検証チェックに関するファイルです。
関連するEDC APIエンドポイント
前のセクションで説明したアクションを実行するためのEDC APIは以下のとおりです。
| EDC API/アクション | スタジオ相当の手順 | メモ |
|---|---|---|
| コアデータ定義ファイルのアップロード | コアデータ定義のアップロードの検証(スタジオ) | このAPIのパラメータを使用すると、置換(つまり、1回のAPIコールでファイルを削除して新しいファイルをアップロードする)できます。 |
| コアデータ定義ファイルの削除 | コアデータ定義ファイルの削除(スタジオ) | |
| コアデータ定義ファイルの取得 | コアデータ定義へのアクセス | このAPIでは、添付されたJSONファイルをAPIを通じてストリーミングします。現在、このエンドポイントは「ケースブックバージョンに関連付けられたCDDがあるか」を検出する唯一の方法です。 |
| ジョブの開始(スタジオ検証) | コアデータ定義の検証の実行 | ジョブを開始するための適用可能なタイプはdesign_validations__vです。ジョブから結果を取得する方法は、他のジョブタイプと同じです。 |
例を含む各エンドポイントの詳細については、EDC APIリファレンスをご覧ください。
コアデータ定義の検証
方法
Veeva EDCスタディで、ケースブックバージョンに添付されたCDDと実際のスタディデザインを比較する際の重要なポイントは以下のとおりです。
- CDDには存在するがスタジオのスタディデザインには存在しない主要コンポーネント(イベントグループ、フォーム、コードリストの選択肢(Codelist Choices)など)→ エラー
- スタジオのスタディデザインには存在するがCDDには存在しない主要コンポーネント(イベントグループ、フォーム、コードリストの選択肢など)→ 警告
- プロパティによって異なる
- デザインレベルのいずれにおいても、一致はデザインの名前によるものです(例:「AE」は有害事象(Adverse Event)フォームの略語)。一般的に、フォームデザイン名はエクスポートテーブル/ファイルの名前になりますが、アイテム名はエクスポートテーブル/ファイルの列の名前になります。
- 他のすべてのスタジオ検証チェックと同様に当てはまります。
- 警告(Warnings)によって検証済みケースブックバージョンステータスへの移動はブロックされません。
- エラー(Errors)によって検証済みケースブックバージョンステータスへの移動はブロックされます。
- CDDの一般的な構造は、完全なスタディデザイン(CDE)のサブセットです。比較のために完全なCDEをアップロードすることはできますが、比較対象となるのは以下のフィールドのみです。
CDD構造の概要
CDDの構造は、高度なスタディプロパティと4つの主要セクションから構成されます。
eventgroup_defは、スタディの順序付きスケジュールです。つまり、イベントグループ、各イベントグループに含まれるイベント、およびそれらのイベントに含まれるフォームです。form_defには、スタディスケジュール(eventgroup_defセクション)内のどこかで使用される各フォームのエントリが含まれます。フォーム上のアイテムグループ、それらのアイテムグループ内のアイテム、およびアイテムでコードリストまたは単位定義を使用する場合に割り当てられる場所。unit_defには、スタディデザインのどこかで少なくとも1つのアイテムによって使用される各単位定義のエントリが含まれます。エントリでは、単位の選択肢がさらに詳しく定義されます。codelist_defには、スタディデザインのどこかで少なくとも1つのアイテムによって使用される各コードリストのエントリが含まれます。エントリでは、コードリストの選択肢がさらに詳しく定義されます。
フィールドごと
CDD全体にわたる比較は、スタジオ検証ジョブの実行中に行われます。これらの比較は、エラーまたは警告に分類されます(下の表を参照)。また、Vaultには提起済み問題ID(Issue ID Raised)値内にタイプも表示されます(「E」はエラー、「W」は警告)。
| JSONの場所 | メモ |
|---|---|
study_name_production |
本番環境のスタディの現在の(または予想される)ラベル |
version |
スタディデザインで比較されるケースブックバージョンと一致するように意図されています。これらが異なる場合は警告が表示されますが、比較は続行されます。 |
| (スタディの順序付きスケジュール:含まれるイベントグループ) | |
eventgroup_def/name |
一致するもの、つまり「双方が持っている」もの。 |
eventgroup_def/label |
異なる場合警告。 |
eventgroup_def/repeat_maximum |
異なる場合エラー。イベントグループが繰り返されない場合、これは「1」になります。 |
eventgroup_def/external_id |
異なる場合警告。 |
eventgroup_def/event_def |
このイベントグループに含まれているイベント。 |
| (スタディの順序付きスケジュール:各イベントグループのイベント) | |
eventgroup_def/event_def/name |
一致するもの、つまり「双方が持っている」もの。 |
eventgroup_def/event_def/label |
異なる場合警告。 |
eventgroup_def/event_def/external_id |
異なる場合警告。 |
eventgroup_def/event_def/ |
このイベントに含まれているフォーム。 |
| (スタディの順序付きスケジュール:各イベント内のフォーム) | |
eventgroup_def/event_def/form_def/name |
一致するもの、つまり「双方が持っている」もの。 |
eventgroup_def/event_def/form_def/label |
異なる場合警告。 |
eventgroup_def/event_def/form_def/repeat_maximum |
異なる場合エラー。フォームが繰り返されない場合、これは「1」になります。 |
eventgroup_def/event_def/form_def/external_id |
異なる場合警告。 |
| (フォーム定義:主なプロパティ) | |
form_def/name |
一致するもの、つまり「双方が持っている」もの。 |
form_def/label |
異なる場合警告。 |
form_def/repeat_maximum |
異なる場合エラー。フォームが繰り返されない場合、これは「1」になります。 |
form_def/external_id |
異なる場合警告。 |
form_def/itemgroup_def/ |
このフォームに含まれているアイテムグループ。 |
| (フォーム定義:フォーム内のアイテムグループ、順序付け済み) | |
form_def/itemgroup_def/name |
一致するもの、つまり「双方が持っている」もの。 |
form_def/itemgroup_def/label |
異なる場合警告。 |
form_def/itemgroup_def/repeat_maximum |
異なる場合エラー。フォームが繰り返されない場合、これは「1」になります。 |
form_def/itemgroup_def/external_id |
異なる場合警告。 |
form_def/itemgroup_def/item_def/ |
このアイテムグループに含まれているアイテム。 |
| (フォーム定義:フォームのアイテムグループ内のアイテム、順序付け済み) | |
form_def/itemgroup_def/item_def/name |
一致するもの、つまり「双方が持っている」もの。 |
form_def/itemgroup_def/item_def/external_id |
異なる場合警告。 |
form_def/itemgroup_def/item_def/label |
異なる場合警告。 |
form_def/itemgroup_def/item_def/data_type |
異なる場合エラー。例:text__v、integer__v、float__vなど。 |
form_def/itemgroup_def/item_def/precision |
異なる場合エラー。浮動小数点(Float)と定義されているアイテムの場合、許可されている「小数点以下」の桁数。 |
form_def/itemgroup_def/item_def/length |
異なる場合エラー。 |
form_def/itemgroup_def/item_def/codelist_def |
異なる場合エラー。アイテムがコードリストタイプの場合にそのアイテムで使用されるコードリスト定義(選択肢は後のセクションで定義)。 |
form_def/itemgroup_def/item_def/unit_def |
異なる場合エラー。アイテムが単位タイプの場合にそのアイテムで使用される単位定義(単位の選択肢は後のセクションで定義)。 |
form_def/itemgroup_def/item_def/allow_unknown_day |
異なる場合エラー。 |
form_def/itemgroup_def/item_def/allow_unknown_month |
異なる場合エラー。 |
form_def/itemgroup_def/item_def/allow_unknown_time |
異なる場合エラー。 |
| (単位定義) | |
unit_def/name |
一致するもの、つまり「双方が持っている」もの。 |
unit_def/external_id |
異なる場合警告。 |
unit_def/choice/ |
この単位定義で許可される単位の選択肢。 |
unit_def/choice/name |
(選択肢で)一致するもの、つまり「双方が持っている」もの。 |
unit_def/choice/label |
異なる場合警告。 |
unit_def/choice/external_id |
異なる場合警告。 |
| (コードリスト定義) | |
codelist_def/name |
一致するもの、つまり「双方が持っている」もの。 |
codelist_def/external_id |
異なる場合警告。 |
codelist_def/choice/ |
この単位定義で許可される単位の選択肢。 |
codelist_def/choice/code |
(選択肢で)一致するもの、つまり「双方が持っている」もの。 |
codelist_def/choice/label |
異なる場合警告。 |
codelist_def/choice/external_id |
異なる場合警告。 |
問題ID
発生する可能性のある問題IDとそれぞれが発生するタイミングは以下のとおりです。出力の概要(Summary)および説明(Description)列では、問題の詳細をさらに説明し、どのデザインエンティティ/プロパティが関係しているかを示します。
| 提起済み問題ID | タイミング/メモ |
|---|---|
| DDE-001 | ファイル構造が無効であり、前のセクションで説明したエリアに準拠していません。 |
| DDW-002 | CDDにスタディスケジュールがなく、比較対象がフォーム、コードリスト、および単位の定義のみです。 |
| DDE-003 | 本番環境の予想されるスタディ名。 |
| DDW-004 | スタディデザインに関連付けられたファイルには、比較対象となっているもの(スタディデザイン)とは異なるケースブックバージョン(埋め込み済み)が含まれているようです。他の比較はすべて継続され、これは単なる警告として記載されています。 |
| DDE-099 | これらの検証を実行しようとした際に発生する一般的なエラー。さらなる調査のため、サポート担当者に問い合わせる必要があります。 |
| DDE-101 | エンティティ(イベントグループ、イベント、フォームなど)はCDDには存在するものの、スタディデザインには存在しません。 |
| DDW-102 | エンティティ(イベントグループ、イベント、フォームなど)はスタディデザインには存在するものの、CDDには存在しません。 |
| DDE-103 | エンティティ(イベントグループ、イベント、フォーム、など)は双方に存在するものの、重要なプロパティは異なります。 |
| DDW-104 | エンティティ(イベントグループ、イベント、フォーム、など)は双方に存在するものの、重要性の低いプロパティは異なります。 |