Governance / Catalog
Every data product and governed metric on the platform, in one catalog: who owns it, who looks after it, how it is classified, whether it met its contract, how it scores on data quality, and what reads it. The business glossary holds the terms the metrics are defined in, the stewardship model says who decides what, and the policies set the rules, each one saying whether code or a person applies it. All of it is derived from the same definitions that build the dashboards and the explorer, so the catalog cannot drift from them.
Synthetic data for demonstration. Every study, site, subject and vendor is fictional. Designed to these controls. Not a validated system and not a compliance claim.
41 data products and 53 governed metrics. A product's quality score is the mean pass rate of the data quality rules that checked it, from the same assessment the quality tests run.
94 entries
silver.study
Studies in the portfolio, one row per protocol.
silver.planned_visit
Planned visit schedule of each study.
silver.site
Investigator sites, one row per site in one study.
silver.vendor
Fictional vendors the studies use.
silver.edc_subject
EDC subjects with their screening, enrollment and disposition dates.
silver.edc_visit
EDC visit records with their data entry times.
silver.edc_query
EDC data queries with their open, answer and close times.
silver.edc_adverse_event
EDC adverse events, each on the visit it was reported at (#2956).
silver.edc_vital_sign
EDC vital signs, one reading of each sign at each entered visit (#2957).
silver.ctms_milestone
CTMS study milestones, planned and actual.
silver.ctms_monitoring_plan
CTMS monitoring plans: the interim visit cadence and report deadline each study's plan sets.
silver.ctms_monitoring_visit
CTMS monitoring visits with source data verification counts.
silver.ctms_deviation
Protocol deviations logged in CTMS.
silver.ctms_site_staff
Principal investigator assignments per site, from the CTMS site staff feed.
silver.irt_randomization
IRT randomisations. The arm is restricted to unblinded roles.
silver.irt_kit
IRT investigational product kits.
silver.etmf_document
eTMF expected documents, filed against the TMF Reference Model.
silver.finance_line
Budget against actual per study, cost category and calendar quarter.
silver.finance_plan_line
The approved budget plan per study, cost category and calendar quarter, from the study's start to its planned final report.
silver.cec_adjudication
Clinical events committee adjudications of site-reported events.
gold.dim_study
Conformed study dimension.
gold.dim_site
Conformed site dimension, slowly changing type 2 on site status and principal investigator.
gold.dim_country
Conformed country dimension.
gold.dim_date
Conformed calendar dimension, whole years around every fact date.
gold.dim_vendor
Conformed vendor dimension, with key 0 for spend that has no vendor (investigator grants).
gold.dim_milestone
Conformed milestone dimension: the milestone kinds in lifecycle order.
gold.dim_monitoring_plan
Monitoring plan dimension: the cadence and report deadline each study's plan sets, which monitoring is measured against.
gold.fct_enrollment
Subject enrollment events: screened, enrolled, completed and discontinued.
gold.fct_visit
Subject visits against the schedule, with entry timeliness.
gold.fct_query
Data queries with their resolution times.
gold.fct_deviation
Protocol deviations with their time to identification.
gold.fct_cec_adjudication
Events sent to the clinical events committee, with when each was reported and adjudicated (#2881).
gold.fct_adverse_event
Adverse events with their onset, report and seriousness, for safety reporting and central monitoring (#2956).
gold.fct_vital_sign
Vital signs by visit, one column per sign, for central monitoring of how sites record them (#2957).
gold.fct_monitoring_visit
Monitoring visits with source data verification and report timeliness.
gold.fct_planned_monitoring_visit
Interim monitoring visits the monitoring plan schedules at each active site, each against the visit that met it.
gold.fct_milestone
Study milestones, planned against actual.
gold.fct_spend
Budget against actual spend, with each quarter spread evenly over its three months.
gold.fct_spend_forecast
Budget, actual spend and forecast at completion per study and vendor at the data cut. The forecast is the actual spend to date plus the planned budget still to come, scaled by the vendor's spend-to-budget ratio to date.
gold.fct_kri_snapshot
Month-end key risk indicator snapshots per site, cumulative from activation to the snapshot date.
study-data-pipeline
The Study Data Pipeline's SDTM and ADaM datasets for DEMO-301, published into the gold layer.
subjects_screened
Subjects who entered screening, counted on their screening date. Each counts once, whatever the screening outcome.
subjects_enrolled
Subjects enrolled into a study, counted on their enrollment date. Subjects who later completed or discontinued still count.
enrollment_vs_plan
Enrolled subjects as a share of the planned enrollment, the sum of the current site targets. The plan is the whole-study target, not a time-phased curve, so an enrolling study is expected to sit below 100%.
screen_failure_rate
Share of screened subjects whose screening ended in a screen failure, by screening date. Subjects still in screening at the data cut have no outcome yet and are left out of both counts.
screen_failures
Subjects whose screening ended in a screen failure, by screening date. It can be broken down by the reason screening failed; the screen failure rate cannot, because its denominator holds the subjects who passed, and they have no reason.
early_termination_rate
Subjects who discontinued before completing the study, as a share of subjects enrolled.
site_activation_cycle_time
Median days from the study's protocol finalisation to a site's activation, over activated sites. Protocol finalisation is gold.dim_study.start_on; the metric reads it as the first day of the site's first gold.dim_site version, which the gold build opens on that date.
sites_selected
Sites selected by the sponsor by the data cut, each counted once. A site reaches the start-up stages in order: selection, executed agreement, IRB or ethics approval, initiation visit, activation, first subject in.
sites_contracted
Sites with an executed clinical trial agreement by the data cut, each counted once. A site reaches the start-up stages in order: selection, executed agreement, IRB or ethics approval, initiation visit, activation, first subject in.
sites_irb_approved
Sites with the study approved by their IRB or ethics committee by the data cut, each counted once. A site reaches the start-up stages in order: selection, executed agreement, IRB or ethics approval, initiation visit, activation, first subject in.
sites_initiated
Sites with a site initiation visit by the data cut, each counted once. A site reaches the start-up stages in order: selection, executed agreement, IRB or ethics approval, initiation visit, activation, first subject in.
sites_activated
Sites activated by the data cut, each counted once. A site reaches the start-up stages in order: selection, executed agreement, IRB or ethics approval, initiation visit, activation, first subject in.
sites_with_first_subject_in
Sites that have enrolled a subject by the data cut, each counted once. A site reaches the start-up stages in order: selection, executed agreement, IRB or ethics approval, initiation visit, activation, first subject in.
selection_to_contract_days
Median days from a site's selection to its executed clinical trial agreement, over sites that reached both stages by the data cut.
contract_to_irb_approval_days
Median days from the executed agreement to the IRB or ethics committee's approval, over sites that reached both stages by the data cut.
irb_approval_to_initiation_days
Median days from IRB or ethics approval to the site initiation visit, over sites that reached both stages by the data cut.
initiation_to_activation_days
Median days from the site initiation visit to activation, over sites that reached both stages by the data cut.
activation_to_first_subject_in_days
Median days from activation to the first subject the site enrolled, over sites that reached both stages by the data cut.
data_entry_lag_median
Median days from a visit to the entry of its data in the EDC, over visits with data entered.
data_entry_lag_p90
90th percentile of days from a visit to the entry of its data in the EDC, interpolated linearly between ranked values. It shows the slow tail the median hides.
data_entry_lag_mean
Mean days from a visit to the entry of its data in the EDC, over visits with data entered. The key risk indicator for entry timeliness.
missed_visit_rate
Missed visits as a share of all visits due by the data cut, dated by the planned visit date.
out_of_window_visit_rate
Visits performed outside their protocol window, as a share of visits performed.
query_rate_per_100_visits
Data queries opened per 100 visits performed. The gold model holds no CRF page counts, so the rate is per visit rather than per 100 CRF pages.
open_query_count
Queries not closed at the data cut: still open, or answered by the site and awaiting review. Closed studies are left out by default, because their backlog is history.
query_aging_mean
Mean days from opening to the data cut of the queries not closed at the cut. Closed studies are left out by default, because their backlog is history.
query_resolution_time_median
Median calendar days from a query's opening to its closing, over closed queries. Days are counted between UTC dates.
open_queries_aged_0_7_days
Queries not closed at the data cut that opened 0 to 7 days before it, counted between UTC dates. With the other age bands it splits the open queries, so the four add up to them. Closed studies are left out by default, because their backlog is history.
open_queries_aged_8_30_days
Queries not closed at the data cut that opened 8 to 30 days before it, counted between UTC dates. With the other age bands it splits the open queries, so the four add up to them. Closed studies are left out by default, because their backlog is history.
open_queries_aged_31_60_days
Queries not closed at the data cut that opened 31 to 60 days before it, counted between UTC dates. With the other age bands it splits the open queries, so the four add up to them. Closed studies are left out by default, because their backlog is history.
open_queries_aged_over_60_days
Queries not closed at the data cut that opened more than 60 days before it, counted between UTC dates. With the other age bands it splits the open queries, so the four add up to them. Closed studies are left out by default, because their backlog is history.
sdv_completion
CRF pages source-verified at monitoring visits as a share of the pages due for source data verification at those visits.
monitoring_reports_overdue
Monitoring visits whose report was still not final after its due date, at the data cut. The due date is the visit date plus the report deadline in the study's monitoring plan.
monitoring_visits_overdue
Interim monitoring visits the monitoring plan scheduled whose visit window closed before the data cut with no visit made. Each site's next visit is planned the plan's interval after its previous visit and is on time until the plan's window closes.
monitoring_report_cycle_time_median
Median days from a monitoring visit to its final report, over visits whose report is final.
important_deviation_rate
Protocol deviations classed as important (after ICH E3) per 100 enrolled subjects.
non_important_deviation_rate
Protocol deviations not classed as important per 100 enrolled subjects.
subjects_with_important_deviation
Share of enrolled subjects with at least one important protocol deviation, a common study-level quality tolerance limit parameter.
protocol_deviation_count
Protocol deviations that occurred, important or not, counted on the date each occurred. It can be broken down by category and importance; the rates per 100 enrolled subjects cannot, because enrollment has neither.
cec_events_reported
Events sites reported to the clinical events committee by the data cut.
cec_events_adjudicated
Reported events the clinical events committee had adjudicated by the data cut.
cec_adjudication_backlog
Reported events the clinical events committee had not adjudicated by the data cut. Closed studies are counted too, because an event still waiting holds up database lock.
cec_adjudication_time_median
Median calendar days from the site's report of an event to its adjudication by the clinical events committee, over events adjudicated by the data cut.
protocol_final_to_fpi_days
Days from protocol finalisation to the first subject's enrollment in one study: study start-up, through regulatory approval and the first site's activation. A study that has not reached both milestones has no value.
fpi_to_lpi_days
Days from the first subject's enrollment to the last subject's in one study: the enrollment period. A study that has not reached both milestones has no value.
lplv_to_dbl_days
Days from the last subject's last visit to database lock in one study. A study that has not reached both milestones has no value.
budget_burn_vs_plan
Actual spend as a share of the budget for the same months, up to the data cut. Above 100% means spend runs ahead of budget.
cost_per_enrolled_subject
Actual spend up to the data cut divided by the number of subjects enrolled. The gold model holds no randomisation fact, so the denominator is enrolled rather than randomised subjects.
actual_spend
Actual spend booked up to the data cut, in US dollars, with each quarter spread evenly over its three months.
budget_at_completion
The budget booked up to the data cut plus the planned budget for every quarter after it, up to the planned final report. Once the final report is in, nothing remains and it is the budget booked.
forecast_at_completion
Actual spend up to the data cut plus the planned budget still to come, scaled by each vendor's actual spend over its budget to date. A vendor running 10% over budget is forecast to stay 10% over for the rest of the study. Each vendor is forecast on its own ratio, so the vendors add up to the study.
variance_at_completion
Forecast at completion minus budget at completion. Above 0 is a forecast overrun, below 0 an underrun, the same sign as spend variance.
forecast_vs_budget_at_completion
Forecast at completion as a share of the budget at completion. Above 100% means the study or vendor is forecast to overrun its budget.
141 rules check the platform's data products and the Study Data Pipeline, each under one DAMA dimension, with a severity, a threshold and the steward who owns it. The same assessment gives each catalog entry its quality score.
The six dimensions of DAMA-DMBOK. A dimension's score is the mean pass rate of its rules, so one rule far below its threshold shows even when the rest pass.
| Dimension | Rules | Passing | Score |
|---|---|---|---|
| Completeness | 22 | 22 | 100% |
| Validity | 29 | 29 | 100% |
| Uniqueness | 20 | 20 | 100% |
| Consistency | 52 | 52 | 100% |
| Timeliness | 6 | 4 | 83.5% |
| Accuracy | 12 | 12 | 97.3% |
| Data product | Rules | Passing | Score |
|---|---|---|---|
| Site dimension | 2 | 2 | 100% |
| Enrollment facts | 1 | 1 | 100% |
| KRI snapshots | 1 | 1 | 100% |
| Query facts | 1 | 1 | 100% |
| Spend facts | 2 | 2 | 100% |
| Visit facts | 1 | 1 | 100% |
| Event adjudications | 2 | 2 | 100% |
| Protocol deviations | 3 | 3 | 97.5% |
| Monitoring plans | 1 | 1 | 100% |
| Monitoring visits | 2 | 1 | 84.3% |
| Site staff assignments | 1 | 1 | 100% |
| EDC queries | 5 | 5 | 100% |
| EDC subjects | 4 | 4 | 100% |
| EDC visits | 7 | 7 | 99.5% |
| TMF documents | 2 | 1 | 71.5% |
| Finance lines | 1 | 1 | 100% |
| Drug kits | 3 | 3 | 100% |
| Randomisations | 2 | 2 | 100% |
| Sites | 4 | 4 | 100% |
| Studies | 3 | 3 | 100% |
| Study data: SDTM and ADaM | 93 | 93 | 99.6% |
The scorecard as it read at the end of each week, run again with the defects that were in the data that week, so a regression and its fix both show.
| Week ending | Score | Failing rules | Open issues |
|---|---|---|---|
| 2026-07-15 | 98.9% | 3DQ-T03, DQ-T04, DQ-A04 | DQI-001 |
| 2026-07-22 | 98.9% | 3DQ-T03, DQ-T04, DQ-A04 | DQI-001 |
| 2026-07-29 | 99.0% | 5DQ-C09, DQ-U01, DQ-U02, DQ-T03, DQ-T04 | DQI-002 |
| 2026-08-05 | 99.0% | 5DQ-C09, DQ-U01, DQ-U02, DQ-T03, DQ-T04 | DQI-002 |
| 2026-08-12 | 98.9% | 8DQ-C02, DQ-C09, DQ-U01, DQ-U02, DQ-K07, DQ-T03, DQ-T04, DQ-A03 | DQI-002, DQI-003 |
| 2026-08-19 | 98.9% | 5DQ-C02, DQ-K07, DQ-T03, DQ-T04, DQ-A03 | DQI-003 |
| 2026-08-26 | 98.9% | 6DQ-C02, DQ-K04, DQ-K07, DQ-T03, DQ-T04, DQ-A03 | DQI-003, DQI-004 |
| 2026-09-02 | 99.0% | 3DQ-K04, DQ-T03, DQ-T04 | DQI-004 |
| 2026-09-09 | 99.0% | 3DQ-K02, DQ-T03, DQ-T04 | DQI-005 |
| 2026-09-16 | 99.0% | 3DQ-K02, DQ-T03, DQ-T04 | DQI-005 |
| 2026-09-23 | 99.0% | 4DQ-K02, DQ-K08, DQ-T03, DQ-T04 | DQI-005, DQI-006 |
| 2026-09-30 | 99.0% | 4DQ-K02, DQ-K08, DQ-T03, DQ-T04 | DQI-005, DQI-006 |
Each issue is opened by the rules that caught it and closed only once a later run verifies the fix. The log is append-only: an entry is never edited or removed.
Verified Ā· detected 2026-07-15, fixed 2026-07-28
Caught by DQ-A04
2026-07-15 Ā· Detected Ā· Data quality rules
Spend reconciliation off for one study and quarter.
2026-07-16 Ā· Assigned Ā· Clinical data steward
Assigned to the finance data owner.
2026-07-20 Ā· Root cause found Ā· Finance data owner
Extract rerun appended instead of replacing.
2026-07-28 Ā· Fixed Ā· Finance data owner
Load made idempotent; quarter reloaded.
2026-08-05 Ā· Verified Ā· Clinical data steward
Reconciliation passes on the next weekly run.
Verified Ā· detected 2026-07-29, fixed 2026-08-19
Caught by DQ-C09, DQ-U01, DQ-U02
2026-07-29 Ā· Detected Ā· Data quality rules
Site number and name repeat within a study.
2026-07-30 Ā· Assigned Ā· Clinical data steward
Assigned to the CTMS owner.
2026-08-04 Ā· Root cause found Ā· CTMS owner
CRO instance feeding alongside the sponsor's.
2026-08-19 Ā· Fixed Ā· CTMS owner
CRO feed mapped onto sponsor site ids.
2026-08-26 Ā· Verified Ā· Clinical data steward
One site per study and number again.
Verified Ā· detected 2026-08-12, fixed 2026-09-02
Caught by DQ-C02, DQ-K07, DQ-A03
2026-08-12 Ā· Detected Ā· Data quality rules
Enrolled subject with no enrollment date; enrollment no longer reconciles.
2026-08-13 Ā· Assigned Ā· Clinical data steward
Assigned to the EDC owner.
2026-08-18 Ā· Root cause found Ā· EDC owner
Interface mapped a renamed field.
2026-09-02 Ā· Fixed Ā· EDC owner
Mapping corrected and the subject reloaded.
2026-09-09 Ā· Verified Ā· Clinical data steward
Enrollment reconciles with EDC again.
Verified Ā· detected 2026-08-26, fixed 2026-09-09
Caught by DQ-K04
2026-08-26 Ā· Detected Ā· Data quality rules
Query closed before it opened.
2026-08-27 Ā· Assigned Ā· Clinical data steward
Assigned to the EDC owner.
2026-09-01 Ā· Root cause found Ā· EDC owner
Upgrade wrote close times in local time.
2026-09-09 Ā· Fixed Ā· EDC owner
Timestamps normalised to UTC at extract.
2026-09-16 Ā· Verified Ā· Clinical data steward
Query timestamps in order again.
Root cause found Ā· detected 2026-09-09, still in the data
2026-09-09 Ā· Detected Ā· Data quality rules
Visit dated before screening consent.
2026-09-10 Ā· Assigned Ā· Clinical data steward
Assigned to the study's clinical data manager.
2026-09-16 Ā· Root cause found Ā· Clinical data manager
Wrong year keyed; query raised to the site.
Assigned Ā· detected 2026-09-23, still in the data
Caught by DQ-K08
2026-09-23 Ā· Detected Ā· Data quality rules
Kit dispensed after expiry.
2026-09-24 Ā· Assigned Ā· Clinical data steward
Assigned to the IRT owner and the study's supply lead.
Each defect below is one real source feeds deliver, applied to a copy of the warehouse. The table shows the failing rows of each rule it trips, before and with the defect. A rule can count more failing rows and still meet its threshold, as a late entry or two does.
From CTMS
A CRO migrates a study to its own CTMS and both instances feed the warehouse, so one site arrives under two site ids.
From EDC
A coordinator keys the visit date in the wrong year, which puts the visit before the subject signed consent.
From EDC
An EDC upgrade writes the close timestamp in local time and the open timestamp in UTC, so a query closes hours before it opens.
| Rule | Failing before | With the defect | Result |
|---|---|---|---|
| DQ-K04 | 0 | 1 | ā² Failed |
From IRT
The IRT accepts a dispensation the site keyed late from a kit that had already expired on the shelf.
| Rule | Failing before | With the defect | Result |
|---|---|---|---|
| DQ-K08 | 0 | 1 | ā² Failed |
From Finance
A rerun of the finance extract adds a quarter's actuals on top of the first load instead of replacing them, so the keys stay unique and the amounts double.
| Rule | Failing before | With the defect | Result |
|---|---|---|---|
| DQ-A04 | 0 | 1 | ā² Failed |
From EDC
An interface change maps the EDC's enrollment date from a renamed field, so a subject enrolled after the change arrives enrolled with no date.
From EDC
A site's coordinator leaves and the backlog of visit data is entered in one sitting six weeks later. The portfolio threshold absorbs one site's backlog, so the rule's failing count rises and its status holds; the site-level entry lag KRI is what flags the site.
| Rule | Failing before | With the defect | Result |
|---|---|---|---|
| DQ-T01 | 239 | 318 | ā Passed |
141 rules: 48 written for the platform's products, and 93 conformance rules of the Study Data Pipeline, taken in as they are rather than written twice. A rule passes when the share of rows it checks that pass is at or above its threshold.
| Rule | Result | Pass rate | Threshold | Severity | Data product |
|---|---|---|---|---|---|
DQ-C01 Entered visits have a visit date and an entry timevisit_status = 'entered' ā visit_date IS NOT NULL AND data_entered_at IS NOT NULL | ā Passed | 100% | 100% | Critical | EDC visits |
DQ-C02 Subjects past screening have an enrollment datesubject_status IN ('enrolled', 'completed', 'discontinued') ā enrolled_on IS NOT NULL | ā Passed | 100% | 100% | Critical | EDC subjects |
DQ-C03 Completed and discontinued subjects have their end date(subject_status = 'completed' ā completed_on IS NOT NULL) AND (subject_status = 'discontinued' ā discontinued_on IS NOT NULL) | ā Passed | 100% | 100% | Major | EDC subjects |
DQ-C04 Active sites name a principal investigatoris_current AND site_status = 'active' ā principal_investigator_id IS NOT NULL | ā Passed | 100% | 100% | Major | Site dimension |
DQ-C05 Dispensed kits name a subject and a dispensing datekit_status = 'dispensed' ā subject_id IS NOT NULL AND dispensed_on IS NOT NULL | ā Passed | 100% | 100% | Critical | Drug kits |
DQ-C06 Adjudicated events carry the committee's event type and relatednessadjudicated_on IS NOT NULL ā cec_event_type IS NOT NULL AND cec_device_related IS NOT NULL | ā Passed | 100% | 100% | Major | Event adjudications |
DQ-C07 Every study has all nine milestones in CTMSCOUNT(DISTINCT ctms_milestone.milestone_kind) = 9 for each study | ā Passed | 100% | 100% | Major | Studies |
DQ-C08 Every study has a monitoring planEXISTS ctms_monitoring_plan for each study | ā Passed | 100% | 100% | Critical | Studies |
DQ-C09 Activated sites have a site initiation visit on recordactivated_on IS NOT NULL ā EXISTS ctms_monitoring_visit WHERE visit_type = 'SIV' | ā Passed | 100% | 100% | Major | Sites |
SD-001 DM required variables are populatedStudy Data Pipeline conformance rule SD-001 (required) on SDTM DMAfter SDTMIG 3.4 / SDTM and SDTMIG Conformance Rules 2.0: https://www.cdisc.org/standards/foundational/sdtmig/sdtm-and-sdtmig-conformance-rules-v2-0 | ā Passed | 100% | 100% | Critical | Study data: SDTM and ADaMDM |
SD-002 SV required variables are populatedStudy Data Pipeline conformance rule SD-002 (required) on SDTM SVAfter SDTMIG 3.4 / SDTM and SDTMIG Conformance Rules 2.0: https://www.cdisc.org/standards/foundational/sdtmig/sdtm-and-sdtmig-conformance-rules-v2-0 | ā Passed | 100% | 100% | Critical | Study data: SDTM and ADaMSV |
SD-003 EX required variables are populatedStudy Data Pipeline conformance rule SD-003 (required) on SDTM EXAfter SDTMIG 3.4 / SDTM and SDTMIG Conformance Rules 2.0: https://www.cdisc.org/standards/foundational/sdtmig/sdtm-and-sdtmig-conformance-rules-v2-0 | ā Passed | 100% | 100% | Critical | Study data: SDTM and ADaMEX |
SD-004 AE required variables are populatedStudy Data Pipeline conformance rule SD-004 (required) on SDTM AEAfter SDTMIG 3.4 / SDTM and SDTMIG Conformance Rules 2.0: https://www.cdisc.org/standards/foundational/sdtmig/sdtm-and-sdtmig-conformance-rules-v2-0 | ā Passed | 100% | 100% | Critical | Study data: SDTM and ADaMAE |
SD-005 VS required variables are populatedStudy Data Pipeline conformance rule SD-005 (required) on SDTM VSAfter SDTMIG 3.4 / SDTM and SDTMIG Conformance Rules 2.0: https://www.cdisc.org/standards/foundational/sdtmig/sdtm-and-sdtmig-conformance-rules-v2-0 | ā Passed | 100% | 100% | Critical | Study data: SDTM and ADaMVS |
SD-006 LB required variables are populatedStudy Data Pipeline conformance rule SD-006 (required) on SDTM LBAfter SDTMIG 3.4 / SDTM and SDTMIG Conformance Rules 2.0: https://www.cdisc.org/standards/foundational/sdtmig/sdtm-and-sdtmig-conformance-rules-v2-0 | ā Passed | 100% | 100% | Critical | Study data: SDTM and ADaMLB |
SD-007 DS required variables are populatedStudy Data Pipeline conformance rule SD-007 (required) on SDTM DSAfter SDTMIG 3.4 / SDTM and SDTMIG Conformance Rules 2.0: https://www.cdisc.org/standards/foundational/sdtmig/sdtm-and-sdtmig-conformance-rules-v2-0 | ā Passed | 100% | 100% | Critical | Study data: SDTM and ADaMDS |
SD-008 SUPPDM required variables are populatedStudy Data Pipeline conformance rule SD-008 (required) on SDTM SUPPDMAfter SDTMIG 3.4 / SDTM and SDTMIG Conformance Rules 2.0: https://www.cdisc.org/standards/foundational/sdtmig/sdtm-and-sdtmig-conformance-rules-v2-0 | ā Passed | 100% | 100% | Critical | Study data: SDTM and ADaMSUPPDM |
SD-048 EG required variables are populatedStudy Data Pipeline conformance rule SD-048 (required) on SDTM EGAfter SDTMIG 3.4 / SDTM and SDTMIG Conformance Rules 2.0: https://www.cdisc.org/standards/foundational/sdtmig/sdtm-and-sdtmig-conformance-rules-v2-0 | ā Passed | 100% | 100% | Critical | Study data: SDTM and ADaMEG |
SD-055 CM required variables are populatedStudy Data Pipeline conformance rule SD-055 (required) on SDTM CMAfter SDTMIG 3.4 / SDTM and SDTMIG Conformance Rules 2.0: https://www.cdisc.org/standards/foundational/sdtmig/sdtm-and-sdtmig-conformance-rules-v2-0 | ā Passed | 100% | 100% | Critical | Study data: SDTM and ADaMCM |
SD-064 MH required variables are populatedStudy Data Pipeline conformance rule SD-064 (required) on SDTM MHAfter SDTMIG 3.4 / SDTM and SDTMIG Conformance Rules 2.0: https://www.cdisc.org/standards/foundational/sdtmig/sdtm-and-sdtmig-conformance-rules-v2-0 | ā Passed | 100% | 100% | Critical | Study data: SDTM and ADaMMH |
SD-071 IE required variables are populatedStudy Data Pipeline conformance rule SD-071 (required) on SDTM IEAfter SDTMIG 3.4 / SDTM and SDTMIG Conformance Rules 2.0: https://www.cdisc.org/standards/foundational/sdtmig/sdtm-and-sdtmig-conformance-rules-v2-0 | ā Passed | 100% | 100% | Critical | Study data: SDTM and ADaMIE |
AD-001 ADSL required variables are populatedStudy Data Pipeline conformance rule AD-001 (required) on ADAM ADSLAfter ADaMIG 1.3: https://www.cdisc.org/standards/foundational/adam/adamig-v1-3 | ā Passed | 100% | 100% | Critical | Study data: SDTM and ADaMADSL |
| Rule | Result | Pass rate | Threshold | Severity | Data product |
|---|---|---|---|---|---|
DQ-V01 Visit statuses come from the EDC's listvisit_status IN ('entered', 'missed', 'pending-entry') | ā Passed | 100% | 100% | Critical | EDC visits |
DQ-V02 Query statuses and origins come from the EDC's listsquery_status IN ('open', 'answered', 'closed') AND query_origin IN ('edit-check', 'manual') | ā Passed | 100% | 100% | Critical | EDC queries |
DQ-V03 Deviations use the study's categories and importance levelsimportance IN ('important', 'not-important') AND deviation_category IN (the seven categories) | ā Passed | 100% | 100% | Major | Protocol deviations |
DQ-V04 Site countries are ISO 3166-1 alpha-2 codescountry_code IN (ISO 3166-1 alpha-2) | ā Passed | 100% | 100% | Major | Sites |
DQ-V05 No visit is dated or entered after the data cutvisit_date <= :data_cut AND data_entered_at <= :data_cut | ā Passed | 100% | 100% | Critical | EDC visits |
DQ-V06 Budget and actual amounts are zero or morebudget_usd >= 0 AND actual_usd >= 0 | ā Passed | 100% | 100% | Critical | Finance lines |
DQ-V07 Verified SDV pages lie between zero and the pages due0 <= sdv_pages_verified <= sdv_pages_due AND action_items >= 0 | ā Passed | 100% | 100% | Major | Monitoring visits |
DQ-V08 Kit statuses come from the IRT's listkit_status IN ('available', 'dispensed', 'expired') | ā Passed | 100% | 100% | Minor | Drug kits |
DQ-V09 Queried fields name a domain and a variablequeried_field LIKE 'DOMAIN.VARIABLE' | ā Passed | 100% | 100% | Minor | EDC queries |
SD-014 DM.RFICDTC is an ISO 8601 dateStudy Data Pipeline conformance rule SD-014 (iso) on SDTM DMAfter SDTMIG 3.4 / SDTM and SDTMIG Conformance Rules 2.0: https://www.cdisc.org/standards/foundational/sdtmig/sdtm-and-sdtmig-conformance-rules-v2-0 | ā Passed | 100% | 100% | Critical | Study data: SDTM and ADaMDM |
SD-015 SV.SVSTDTC is an ISO 8601 dateStudy Data Pipeline conformance rule SD-015 (iso) on SDTM SVAfter SDTMIG 3.4 / SDTM and SDTMIG Conformance Rules 2.0: https://www.cdisc.org/standards/foundational/sdtmig/sdtm-and-sdtmig-conformance-rules-v2-0 | ā Passed | 100% | 100% | Critical | Study data: SDTM and ADaMSV |
SD-016 EX.EXSTDTC is an ISO 8601 dateStudy Data Pipeline conformance rule SD-016 (iso) on SDTM EXAfter SDTMIG 3.4 / SDTM and SDTMIG Conformance Rules 2.0: https://www.cdisc.org/standards/foundational/sdtmig/sdtm-and-sdtmig-conformance-rules-v2-0 | ā Passed | 100% | 100% | Critical | Study data: SDTM and ADaMEX |
SD-017 AE.AESTDTC is an ISO 8601 dateStudy Data Pipeline conformance rule SD-017 (iso) on SDTM AEAfter SDTMIG 3.4 / SDTM and SDTMIG Conformance Rules 2.0: https://www.cdisc.org/standards/foundational/sdtmig/sdtm-and-sdtmig-conformance-rules-v2-0 | ā Passed | 100% | 100% | Critical | Study data: SDTM and ADaMAE |
SD-018 VS.VSDTC is an ISO 8601 dateStudy Data Pipeline conformance rule SD-018 (iso) on SDTM VSAfter SDTMIG 3.4 / SDTM and SDTMIG Conformance Rules 2.0: https://www.cdisc.org/standards/foundational/sdtmig/sdtm-and-sdtmig-conformance-rules-v2-0 | ā Passed | 100% | 100% | Critical | Study data: SDTM and ADaMVS |
SD-019 LB.LBDTC is an ISO 8601 dateStudy Data Pipeline conformance rule SD-019 (iso) on SDTM LBAfter SDTMIG 3.4 / SDTM and SDTMIG Conformance Rules 2.0: https://www.cdisc.org/standards/foundational/sdtmig/sdtm-and-sdtmig-conformance-rules-v2-0 | ā Passed | 100% | 100% | Critical | Study data: SDTM and ADaMLB |
SD-020 DS.DSSTDTC is an ISO 8601 dateStudy Data Pipeline conformance rule SD-020 (iso) on SDTM DSAfter SDTMIG 3.4 / SDTM and SDTMIG Conformance Rules 2.0: https://www.cdisc.org/standards/foundational/sdtmig/sdtm-and-sdtmig-conformance-rules-v2-0 | ā Passed | 100% | 100% | Critical | Study data: SDTM and ADaMDS |
SD-021 DM.SEX uses CDISC controlled terminologyStudy Data Pipeline conformance rule SD-021 (ct) on SDTM DMAfter Local CT subset of NCI EVS CDISC CT 2026-09-25, each code checked against that release: https://evs.nci.nih.gov/ftp1/CDISC/ C66731; non-extensible local rule. | ā Passed | 100% | 100% | Critical | Study data: SDTM and ADaMDM |
SD-022 AE.AESER uses CDISC controlled terminologyStudy Data Pipeline conformance rule SD-022 (ct) on SDTM AEAfter Local CT subset of NCI EVS CDISC CT 2026-09-25, each code checked against that release: https://evs.nci.nih.gov/ftp1/CDISC/ C66742; non-extensible local rule. | ā Passed | 100% | 100% | Critical | Study data: SDTM and ADaMAE |
SD-023 AE.AEREL uses CDISC controlled terminologyStudy Data Pipeline conformance rule SD-023 (ct) on SDTM AEAfter Local CT subset of NCI EVS CDISC CT 2026-09-25, each code checked against that release: https://evs.nci.nih.gov/ftp1/CDISC/ CL_AEREL; extensible local rule. | ā Passed | 100% | 100% | Minor | Study data: SDTM and ADaMAE |
SD-024 EX.EXDOSU uses CDISC controlled terminologyStudy Data Pipeline conformance rule SD-024 (ct) on SDTM EXAfter Local CT subset of NCI EVS CDISC CT 2026-09-25, each code checked against that release: https://evs.nci.nih.gov/ftp1/CDISC/ C71620; non-extensible local rule. | ā Passed | 100% | 100% | Critical | Study data: SDTM and ADaMEX |
SD-050 EG.EGDTC is an ISO 8601 dateStudy Data Pipeline conformance rule SD-050 (iso) on SDTM EGAfter SDTMIG 3.4 / SDTM and SDTMIG Conformance Rules 2.0: https://www.cdisc.org/standards/foundational/sdtmig/sdtm-and-sdtmig-conformance-rules-v2-0 | ā Passed | 100% | 100% | Critical | Study data: SDTM and ADaMEG |
SD-057 CM.CMSTDTC is an ISO 8601 dateStudy Data Pipeline conformance rule SD-057 (iso) on SDTM CMAfter SDTMIG 3.4 / SDTM and SDTMIG Conformance Rules 2.0: https://www.cdisc.org/standards/foundational/sdtmig/sdtm-and-sdtmig-conformance-rules-v2-0 | ā Passed | 100% | 100% | Critical | Study data: SDTM and ADaMCM |
SD-058 CM.CMENDTC is an ISO 8601 dateStudy Data Pipeline conformance rule SD-058 (iso) on SDTM CMAfter SDTMIG 3.4 / SDTM and SDTMIG Conformance Rules 2.0: https://www.cdisc.org/standards/foundational/sdtmig/sdtm-and-sdtmig-conformance-rules-v2-0 | ā Passed | 100% | 100% | Critical | Study data: SDTM and ADaMCM |
SD-061 CM.CMDOSU uses CDISC controlled terminologyStudy Data Pipeline conformance rule SD-061 (ct) on SDTM CMAfter Local CT subset of NCI EVS CDISC CT 2026-09-25, each code checked against that release: https://evs.nci.nih.gov/ftp1/CDISC/ C71620; non-extensible local rule. | ā Passed | 100% | 100% | Critical | Study data: SDTM and ADaMCM |
SD-062 CM.CMROUTE uses CDISC controlled terminologyStudy Data Pipeline conformance rule SD-062 (ct) on SDTM CMAfter Local CT subset of NCI EVS CDISC CT 2026-09-25, each code checked against that release: https://evs.nci.nih.gov/ftp1/CDISC/ C66729; extensible local rule. | ā Passed | 100% | 100% | Minor | Study data: SDTM and ADaMCM |
SD-066 MH.MHDTC is an ISO 8601 dateStudy Data Pipeline conformance rule SD-066 (iso) on SDTM MHAfter SDTMIG 3.4 / SDTM and SDTMIG Conformance Rules 2.0: https://www.cdisc.org/standards/foundational/sdtmig/sdtm-and-sdtmig-conformance-rules-v2-0 | ā Passed | 100% | 100% | Critical | Study data: SDTM and ADaMMH |
SD-067 MH.MHSTDTC is an ISO 8601 dateStudy Data Pipeline conformance rule SD-067 (iso) on SDTM MHAfter SDTMIG 3.4 / SDTM and SDTMIG Conformance Rules 2.0: https://www.cdisc.org/standards/foundational/sdtmig/sdtm-and-sdtmig-conformance-rules-v2-0 | ā Passed | 100% | 100% | Critical | Study data: SDTM and ADaMMH |
SD-068 MH.MHENDTC is an ISO 8601 dateStudy Data Pipeline conformance rule SD-068 (iso) on SDTM MHAfter SDTMIG 3.4 / SDTM and SDTMIG Conformance Rules 2.0: https://www.cdisc.org/standards/foundational/sdtmig/sdtm-and-sdtmig-conformance-rules-v2-0 | ā Passed | 100% | 100% | Critical | Study data: SDTM and ADaMMH |
SD-073 IE.IEDTC is an ISO 8601 dateStudy Data Pipeline conformance rule SD-073 (iso) on SDTM IEAfter SDTMIG 3.4 / SDTM and SDTMIG Conformance Rules 2.0: https://www.cdisc.org/standards/foundational/sdtmig/sdtm-and-sdtmig-conformance-rules-v2-0 | ā Passed | 100% | 100% | Critical | Study data: SDTM and ADaMIE |
| Rule | Result | Pass rate | Threshold | Severity | Data product |
|---|---|---|---|---|---|
DQ-U01 One site per study and site numberCOUNT(*) = 1 GROUP BY study_id, site_number | ā Passed | 100% | 100% | Critical | Sites |
DQ-U02 Site names are unique within a studyCOUNT(*) = 1 GROUP BY study_id, site_name | ā Passed | 100% | 100% | Minor | Sites |
DQ-U03 Each subject is randomised onceCOUNT(*) = 1 GROUP BY subject_id | ā Passed | 100% | 100% | Critical | Randomisations |
DQ-U04 One visit per subject per planned visitCOUNT(*) = 1 GROUP BY subject_id, planned_visit_id | ā Passed | 100% | 100% | Major | EDC visits |
DQ-U05 One monitoring plan per studyCOUNT(*) = 1 GROUP BY study_id | ā Passed | 100% | 100% | Major | Monitoring plans |
DQ-U06 One TMF document per study, site and artifactCOUNT(*) = 1 GROUP BY study_id, site_id, artifact | ā Passed | 100% | 100% | Minor | TMF documents |
SD-009 EXSEQ is unique within EXStudy Data Pipeline conformance rule SD-009 (unique) on SDTM EXAfter SDTMIG 3.4 / SDTM and SDTMIG Conformance Rules 2.0: https://www.cdisc.org/standards/foundational/sdtmig/sdtm-and-sdtmig-conformance-rules-v2-0 | ā Passed | 100% | 100% | Critical | Study data: SDTM and ADaMEX |
SD-010 AESEQ is unique within AEStudy Data Pipeline conformance rule SD-010 (unique) on SDTM AEAfter SDTMIG 3.4 / SDTM and SDTMIG Conformance Rules 2.0: https://www.cdisc.org/standards/foundational/sdtmig/sdtm-and-sdtmig-conformance-rules-v2-0 | ā Passed | 100% | 100% | Critical | Study data: SDTM and ADaMAE |
SD-011 VSSEQ is unique within VSStudy Data Pipeline conformance rule SD-011 (unique) on SDTM VSAfter SDTMIG 3.4 / SDTM and SDTMIG Conformance Rules 2.0: https://www.cdisc.org/standards/foundational/sdtmig/sdtm-and-sdtmig-conformance-rules-v2-0 | ā Passed | 100% | 100% | Critical | Study data: SDTM and ADaMVS |
SD-012 LBSEQ is unique within LBStudy Data Pipeline conformance rule SD-012 (unique) on SDTM LBAfter SDTMIG 3.4 / SDTM and SDTMIG Conformance Rules 2.0: https://www.cdisc.org/standards/foundational/sdtmig/sdtm-and-sdtmig-conformance-rules-v2-0 | ā Passed | 100% | 100% | Critical | Study data: SDTM and ADaMLB |
SD-013 DSSEQ is unique within DSStudy Data Pipeline conformance rule SD-013 (unique) on SDTM DSAfter SDTMIG 3.4 / SDTM and SDTMIG Conformance Rules 2.0: https://www.cdisc.org/standards/foundational/sdtmig/sdtm-and-sdtmig-conformance-rules-v2-0 | ā Passed | 100% | 100% | Critical | Study data: SDTM and ADaMDS |
SD-035 USUBJID is unique within DMStudy Data Pipeline conformance rule SD-035 (unique) on SDTM DMAfter SDTMIG 3.4 / SDTM and SDTMIG Conformance Rules 2.0: https://www.cdisc.org/standards/foundational/sdtmig/sdtm-and-sdtmig-conformance-rules-v2-0 | ā Passed | 100% | 100% | Critical | Study data: SDTM and ADaMDM |
SD-036 VS holds no measurement entered twiceStudy Data Pipeline conformance rule SD-036 (duplicate) on SDTM VSAfter SDTMIG 3.4 / SDTM and SDTMIG Conformance Rules 2.0: https://www.cdisc.org/standards/foundational/sdtmig/sdtm-and-sdtmig-conformance-rules-v2-0 | ā Passed | 100% | 100% | Minor | Study data: SDTM and ADaMVS |
SD-037 LB holds no measurement entered twiceStudy Data Pipeline conformance rule SD-037 (duplicate) on SDTM LBAfter SDTMIG 3.4 / SDTM and SDTMIG Conformance Rules 2.0: https://www.cdisc.org/standards/foundational/sdtmig/sdtm-and-sdtmig-conformance-rules-v2-0 | ā Passed | 100% | 100% | Minor | Study data: SDTM and ADaMLB |
SD-049 EGSEQ is unique within EGStudy Data Pipeline conformance rule SD-049 (unique) on SDTM EGAfter SDTMIG 3.4 / SDTM and SDTMIG Conformance Rules 2.0: https://www.cdisc.org/standards/foundational/sdtmig/sdtm-and-sdtmig-conformance-rules-v2-0 | ā Passed | 100% | 100% | Critical | Study data: SDTM and ADaMEG |
SD-052 EG holds no measurement entered twiceStudy Data Pipeline conformance rule SD-052 (duplicate) on SDTM EGAfter SDTMIG 3.4 / SDTM and SDTMIG Conformance Rules 2.0: https://www.cdisc.org/standards/foundational/sdtmig/sdtm-and-sdtmig-conformance-rules-v2-0 | ā Passed | 100% | 100% | Minor | Study data: SDTM and ADaMEG |
SD-056 CMSEQ is unique within CMStudy Data Pipeline conformance rule SD-056 (unique) on SDTM CMAfter SDTMIG 3.4 / SDTM and SDTMIG Conformance Rules 2.0: https://www.cdisc.org/standards/foundational/sdtmig/sdtm-and-sdtmig-conformance-rules-v2-0 | ā Passed | 100% | 100% | Critical | Study data: SDTM and ADaMCM |
SD-065 MHSEQ is unique within MHStudy Data Pipeline conformance rule SD-065 (unique) on SDTM MHAfter SDTMIG 3.4 / SDTM and SDTMIG Conformance Rules 2.0: https://www.cdisc.org/standards/foundational/sdtmig/sdtm-and-sdtmig-conformance-rules-v2-0 | ā Passed | 100% | 100% | Critical | Study data: SDTM and ADaMMH |
SD-072 IESEQ is unique within IEStudy Data Pipeline conformance rule SD-072 (unique) on SDTM IEAfter SDTMIG 3.4 / SDTM and SDTMIG Conformance Rules 2.0: https://www.cdisc.org/standards/foundational/sdtmig/sdtm-and-sdtmig-conformance-rules-v2-0 | ā Passed | 100% | 100% | Critical | Study data: SDTM and ADaMIE |
AD-002 USUBJID is unique within ADSLStudy Data Pipeline conformance rule AD-002 (unique) on ADAM ADSLAfter ADaMIG 1.3: https://www.cdisc.org/standards/foundational/adam/adamig-v1-3 | ā Passed | 100% | 100% | Critical | Study data: SDTM and ADaMADSL |
| Rule | Result | Pass rate | Threshold | Severity | Data product |
|---|---|---|---|---|---|
DQ-K01 Subject dates run in orderscreened_on <= enrolled_on <= COALESCE(completed_on, discontinued_on) | ā Passed | 100% | 100% | Critical | EDC subjects |
DQ-K02 No visit happens before the subject's screening consentvisit_date >= edc_subject.screened_on | ā Passed | 100% | 100% | Critical | EDC visits |
DQ-K03 Missed visits carry no visit datevisit_status = 'missed' ā visit_date IS NULL | ā Passed | 100% | 100% | Major | EDC visits |
DQ-K04 Queries are answered after they open and closed after thatopened_at <= answered_at <= closed_at | ā Passed | 100% | 100% | Critical | EDC queries |
DQ-K05 Query status agrees with its timestampsclosed ā closed_at IS NOT NULL; answered ā answered_at IS NOT NULL | ā Passed | 100% | 100% | Major | EDC queries |
DQ-K06 Deviations are identified on or after they occuridentified_on >= occurred_on | ā Passed | 100% | 100% | Major | Protocol deviations |
DQ-K07 Randomised subjects are enrolled in EDC at the same siteEXISTS edc_subject WHERE subject_id = r.subject_id AND site_id = r.site_id AND enrolled_on IS NOT NULL | ā Passed | 100% | 100% | Critical | Randomisations |
DQ-K08 Kits are dispensed after receipt and before expiryreceived_on <= dispensed_on <= expires_on | ā Passed | 100% | 100% | Critical | Drug kits |
DQ-K09 Subjects are screened at an activated site, after activationsite.activated_on IS NOT NULL AND screened_on >= site.activated_on | ā Passed | 100% | 100% | Major | EDC subjects |
DQ-K10 Subjects are randomised to no more arms than the study hasCOUNT(DISTINCT irt_randomization.arm) <= arm_count for each study | ā Passed | 100% | 100% | Minor | Studies |
DQ-K11 Spend variance is actual less budgetvariance_usd = actual_usd - budget_usd | ā Passed | 100% | 100% | Major | Spend facts |
DQ-K12 Staff assignments end on or after they startend_on IS NULL OR end_on >= start_on | ā Passed | 100% | 100% | Minor | Site staff assignments |
SD-025 AE.AESTDY agrees with its date and the reference startStudy Data Pipeline conformance rule SD-025 (study-day) on SDTM AEAfter SDTMIG 3.4 / SDTM and SDTMIG Conformance Rules 2.0: https://www.cdisc.org/standards/foundational/sdtmig/sdtm-and-sdtmig-conformance-rules-v2-0 | ā Passed | 100% | 100% | Critical | Study data: SDTM and ADaMAE |
SD-026 VS.VSDY agrees with its date and the reference startStudy Data Pipeline conformance rule SD-026 (study-day) on SDTM VSAfter SDTMIG 3.4 / SDTM and SDTMIG Conformance Rules 2.0: https://www.cdisc.org/standards/foundational/sdtmig/sdtm-and-sdtmig-conformance-rules-v2-0 | ā Passed | 100% | 100% | Critical | Study data: SDTM and ADaMVS |
SD-027 LB.LBDY agrees with its date and the reference startStudy Data Pipeline conformance rule SD-027 (study-day) on SDTM LBAfter SDTMIG 3.4 / SDTM and SDTMIG Conformance Rules 2.0: https://www.cdisc.org/standards/foundational/sdtmig/sdtm-and-sdtmig-conformance-rules-v2-0 | ā Passed | 100% | 100% | Critical | Study data: SDTM and ADaMLB |
SD-028 SV visits match the trial visitsStudy Data Pipeline conformance rule SD-028 (visit) on SDTM SVAfter SDTMIG 3.4 / SDTM and SDTMIG Conformance Rules 2.0: https://www.cdisc.org/standards/foundational/sdtmig/sdtm-and-sdtmig-conformance-rules-v2-0 | ā Passed | 100% | 100% | Critical | Study data: SDTM and ADaMSV |
SD-029 VS.EPOCH matches the trial elementsStudy Data Pipeline conformance rule SD-029 (epoch) on SDTM VSAfter SDTMIG 3.4 / SDTM and SDTMIG Conformance Rules 2.0: https://www.cdisc.org/standards/foundational/sdtmig/sdtm-and-sdtmig-conformance-rules-v2-0 | ā Passed | 100% | 100% | Critical | Study data: SDTM and ADaMVS |
SD-030 LB.LBLOBXFL flags one baseline per subject and testStudy Data Pipeline conformance rule SD-030 (baseline) on SDTM LBAfter SDTMIG 3.4 / SDTM and SDTMIG Conformance Rules 2.0: https://www.cdisc.org/standards/foundational/sdtmig/sdtm-and-sdtmig-conformance-rules-v2-0 | ā Passed | 100% | 100% | Critical | Study data: SDTM and ADaMLB |
SD-038 VS.VSORRESU is the test's standard unitStudy Data Pipeline conformance rule SD-038 (unit) on SDTM VSAfter SDTMIG 3.4 / SDTM and SDTMIG Conformance Rules 2.0: https://www.cdisc.org/standards/foundational/sdtmig/sdtm-and-sdtmig-conformance-rules-v2-0 | ā Passed | 100% | 100% | Minor | Study data: SDTM and ADaMVS |
SD-039 LB.LBORRESU is the test's standard unitStudy Data Pipeline conformance rule SD-039 (unit) on SDTM LBAfter SDTMIG 3.4 / SDTM and SDTMIG Conformance Rules 2.0: https://www.cdisc.org/standards/foundational/sdtmig/sdtm-and-sdtmig-conformance-rules-v2-0 | ā Passed | 100% | 100% | Minor | Study data: SDTM and ADaMLB |
SD-051 EG.EGDY agrees with its date and the reference startStudy Data Pipeline conformance rule SD-051 (study-day) on SDTM EGAfter SDTMIG 3.4 / SDTM and SDTMIG Conformance Rules 2.0: https://www.cdisc.org/standards/foundational/sdtmig/sdtm-and-sdtmig-conformance-rules-v2-0 | ā Passed | 100% | 100% | Critical | Study data: SDTM and ADaMEG |
SD-053 EG.EGORRESU is the test's standard unitStudy Data Pipeline conformance rule SD-053 (unit) on SDTM EGAfter SDTMIG 3.4 / SDTM and SDTMIG Conformance Rules 2.0: https://www.cdisc.org/standards/foundational/sdtmig/sdtm-and-sdtmig-conformance-rules-v2-0 | ā Passed | 100% | 100% | Minor | Study data: SDTM and ADaMEG |
SD-054 EG records trace to their source recordsStudy Data Pipeline conformance rule SD-054 (lineage) on SDTM EGAfter Source traceability for Define-XML 2.1 origins: https://www.cdisc.org/standards/data-exchange/define-xml | ā Passed | 100% | 100% | Critical | Study data: SDTM and ADaMEG |
SD-059 CM.CMSTDY agrees with its date and the reference startStudy Data Pipeline conformance rule SD-059 (study-day) on SDTM CMAfter SDTMIG 3.4 / SDTM and SDTMIG Conformance Rules 2.0: https://www.cdisc.org/standards/foundational/sdtmig/sdtm-and-sdtmig-conformance-rules-v2-0 | ā Passed | 100% | 100% | Critical | Study data: SDTM and ADaMCM |
SD-060 CM.CMENDY agrees with its date and the reference startStudy Data Pipeline conformance rule SD-060 (study-day) on SDTM CMAfter SDTMIG 3.4 / SDTM and SDTMIG Conformance Rules 2.0: https://www.cdisc.org/standards/foundational/sdtmig/sdtm-and-sdtmig-conformance-rules-v2-0 | ā Passed | 100% | 100% | Critical | Study data: SDTM and ADaMCM |
SD-063 CM records trace to their source recordsStudy Data Pipeline conformance rule SD-063 (lineage) on SDTM CMAfter Source traceability for Define-XML 2.1 origins: https://www.cdisc.org/standards/data-exchange/define-xml | ā Passed | 100% | 100% | Critical | Study data: SDTM and ADaMCM |
SD-069 MH.MHDY agrees with its date and the reference startStudy Data Pipeline conformance rule SD-069 (study-day) on SDTM MHAfter SDTMIG 3.4 / SDTM and SDTMIG Conformance Rules 2.0: https://www.cdisc.org/standards/foundational/sdtmig/sdtm-and-sdtmig-conformance-rules-v2-0 | ā Passed | 100% | 100% | Critical | Study data: SDTM and ADaMMH |
SD-070 MH records trace to their source recordsStudy Data Pipeline conformance rule SD-070 (lineage) on SDTM MHAfter Source traceability for Define-XML 2.1 origins: https://www.cdisc.org/standards/data-exchange/define-xml | ā Passed | 100% | 100% | Critical | Study data: SDTM and ADaMMH |
SD-074 IE records match who failed screeningStudy Data Pipeline conformance rule SD-074 (eligibility) on SDTM IEAfter SDTMIG 3.4 / SDTM and SDTMIG Conformance Rules 2.0: https://www.cdisc.org/standards/foundational/sdtmig/sdtm-and-sdtmig-conformance-rules-v2-0 | ā Passed | 100% | 100% | Critical | Study data: SDTM and ADaMIE |
SD-075 IE records trace to their source recordsStudy Data Pipeline conformance rule SD-075 (lineage) on SDTM IEAfter Source traceability for Define-XML 2.1 origins: https://www.cdisc.org/standards/data-exchange/define-xml | ā Passed | 100% | 100% | Critical | Study data: SDTM and ADaMIE |
AD-003 ADVS.BASE derivation agrees with its sourceStudy Data Pipeline conformance rule AD-003 (adam) on ADAM ADVSAfter ADaMIG 1.3: https://www.cdisc.org/standards/foundational/adam/adamig-v1-3 | ā Passed | 100% | 100% | Critical | Study data: SDTM and ADaMADVS |
AD-004 ADVS.CHG derivation agrees with its sourceStudy Data Pipeline conformance rule AD-004 (adam) on ADAM ADVSAfter ADaMIG 1.3: https://www.cdisc.org/standards/foundational/adam/adamig-v1-3 | ā Passed | 100% | 100% | Critical | Study data: SDTM and ADaMADVS |
AD-005 ADAE.TRTEMFL derivation agrees with its sourceStudy Data Pipeline conformance rule AD-005 (adam) on ADAM ADAEAfter ADaMIG 1.3: https://www.cdisc.org/standards/foundational/adam/adamig-v1-3 | ā Passed | 100% | 100% | Critical | Study data: SDTM and ADaMADAE |
AD-011 ADEG.BASE derivation agrees with its sourceStudy Data Pipeline conformance rule AD-011 (adam) on ADAM ADEGAfter ADaMIG 1.3: https://www.cdisc.org/standards/foundational/adam/adamig-v1-3 | ā Passed | 100% | 100% | Critical | Study data: SDTM and ADaMADEG |
AD-012 ADEG.CHG derivation agrees with its sourceStudy Data Pipeline conformance rule AD-012 (adam) on ADAM ADEGAfter ADaMIG 1.3: https://www.cdisc.org/standards/foundational/adam/adamig-v1-3 | ā Passed | 100% | 100% | Critical | Study data: SDTM and ADaMADEG |
AD-013 ADEG records trace to their source recordsStudy Data Pipeline conformance rule AD-013 (lineage) on ADAM ADEGAfter ADaMIG 1.3: https://www.cdisc.org/standards/foundational/adam/adamig-v1-3 | ā Passed | 100% | 100% | Critical | Study data: SDTM and ADaMADEG |
AD-016 ADCM.PREFL derivation agrees with its sourceStudy Data Pipeline conformance rule AD-016 (adam) on ADAM ADCMAfter ADaMIG 1.3: https://www.cdisc.org/standards/foundational/adam/adamig-v1-3 | ā Passed | 100% | 100% | Critical | Study data: SDTM and ADaMADCM |
AD-017 ADCM.ONTRTFL derivation agrees with its sourceStudy Data Pipeline conformance rule AD-017 (adam) on ADAM ADCMAfter ADaMIG 1.3: https://www.cdisc.org/standards/foundational/adam/adamig-v1-3 | ā Passed | 100% | 100% | Critical | Study data: SDTM and ADaMADCM |
AD-018 ADCM records trace to their source recordsStudy Data Pipeline conformance rule AD-018 (lineage) on ADAM ADCMAfter ADaMIG 1.3: https://www.cdisc.org/standards/foundational/adam/adamig-v1-3 | ā Passed | 100% | 100% | Critical | Study data: SDTM and ADaMADCM |
SD-040 DM records trace to their source recordsStudy Data Pipeline conformance rule SD-040 (lineage) on SDTM DMAfter Source traceability for Define-XML 2.1 origins: https://www.cdisc.org/standards/data-exchange/define-xml | ā Passed | 100% | 100% | Critical | Study data: SDTM and ADaMDM |
SD-041 SV records trace to their source recordsStudy Data Pipeline conformance rule SD-041 (lineage) on SDTM SVAfter Source traceability for Define-XML 2.1 origins: https://www.cdisc.org/standards/data-exchange/define-xml | ā Passed | 100% | 100% | Critical | Study data: SDTM and ADaMSV |
SD-042 EX records trace to their source recordsStudy Data Pipeline conformance rule SD-042 (lineage) on SDTM EXAfter Source traceability for Define-XML 2.1 origins: https://www.cdisc.org/standards/data-exchange/define-xml | ā Passed | 100% | 100% | Critical | Study data: SDTM and ADaMEX |
SD-043 AE records trace to their source recordsStudy Data Pipeline conformance rule SD-043 (lineage) on SDTM AEAfter Source traceability for Define-XML 2.1 origins: https://www.cdisc.org/standards/data-exchange/define-xml | ā Passed | 100% | 100% | Critical | Study data: SDTM and ADaMAE |
SD-044 VS records trace to their source recordsStudy Data Pipeline conformance rule SD-044 (lineage) on SDTM VSAfter Source traceability for Define-XML 2.1 origins: https://www.cdisc.org/standards/data-exchange/define-xml | ā Passed | 100% | 100% | Critical | Study data: SDTM and ADaMVS |
SD-045 LB records trace to their source recordsStudy Data Pipeline conformance rule SD-045 (lineage) on SDTM LBAfter Source traceability for Define-XML 2.1 origins: https://www.cdisc.org/standards/data-exchange/define-xml | ā Passed | 100% | 100% | Critical | Study data: SDTM and ADaMLB |
SD-046 DS records trace to their source recordsStudy Data Pipeline conformance rule SD-046 (lineage) on SDTM DSAfter Source traceability for Define-XML 2.1 origins: https://www.cdisc.org/standards/data-exchange/define-xml | ā Passed | 100% | 100% | Critical | Study data: SDTM and ADaMDS |
SD-047 SUPPDM records trace to their source recordsStudy Data Pipeline conformance rule SD-047 (lineage) on SDTM SUPPDMAfter Source traceability for Define-XML 2.1 origins: https://www.cdisc.org/standards/data-exchange/define-xml | ā Passed | 100% | 100% | Critical | Study data: SDTM and ADaMSUPPDM |
AD-006 ADSL records trace to their source recordsStudy Data Pipeline conformance rule AD-006 (lineage) on ADAM ADSLAfter ADaMIG 1.3: https://www.cdisc.org/standards/foundational/adam/adamig-v1-3 | ā Passed | 100% | 100% | Critical | Study data: SDTM and ADaMADSL |
AD-007 ADVS records trace to their source recordsStudy Data Pipeline conformance rule AD-007 (lineage) on ADAM ADVSAfter ADaMIG 1.3: https://www.cdisc.org/standards/foundational/adam/adamig-v1-3 | ā Passed | 100% | 100% | Critical | Study data: SDTM and ADaMADVS |
AD-008 ADLB records trace to their source recordsStudy Data Pipeline conformance rule AD-008 (lineage) on ADAM ADLBAfter ADaMIG 1.3: https://www.cdisc.org/standards/foundational/adam/adamig-v1-3 | ā Passed | 100% | 100% | Critical | Study data: SDTM and ADaMADLB |
AD-009 ADAE records trace to their source recordsStudy Data Pipeline conformance rule AD-009 (lineage) on ADAM ADAEAfter ADaMIG 1.3: https://www.cdisc.org/standards/foundational/adam/adamig-v1-3 | ā Passed | 100% | 100% | Critical | Study data: SDTM and ADaMADAE |
AD-010 ADTTE records trace to their source recordsStudy Data Pipeline conformance rule AD-010 (lineage) on ADAM ADTTEAfter ADaMIG 1.3: https://www.cdisc.org/standards/foundational/adam/adamig-v1-3 | ā Passed | 100% | 100% | Critical | Study data: SDTM and ADaMADTTE |
| Rule | Result | Pass rate | Threshold | Severity | Data product |
|---|---|---|---|---|---|
DQ-T01 Visits are entered within 14 daysdata_entered_at - visit_date <= 14 days, for 90% of entered visits | ā Passed239 of 7520 rows fail, for example DEMO-101-103-002-D1, DEMO-101-103-011-D1, DEMO-101-103-014-D15 | 96.8% | 90.0% | Major | EDC visits |
DQ-T02 No unresolved query is older than 30 daysquery_status <> 'closed' ā :data_cut - opened_at <= 30 days, for 80% of them | ā Passed | 100% | 80.0% | Minor | EDC queries |
DQ-T03 Monitoring reports are final within the plan's deadlineCOALESCE(report_final_on, :data_cut) - visit_date <= plan.report_due_days, for 90% of visits | ā² Failed351 of 1123 rows fail, for example DEMO-101-US-103-MV01, DEMO-201-CA-102-MV04, DEMO-201-CA-102-MV05 | 68.7% | 90.0% | Major | Monitoring visits |
DQ-T04 TMF documents are filed by their due dateCOALESCE(filed_on, :data_cut) <= due_on, for 90% of documents due by the cut | ā² Failed373 of 656 rows fail, for example DEMO-101-DOC001, DEMO-101-DOC002, DEMO-101-DOC003 | 43.1% | 90.0% | Major | TMF documents |
DQ-T05 Deviations are identified within 30 daysidentified_on - occurred_on <= 30 days, for 90% of deviations | ā Passed24 of 329 rows fail, for example DEMO-201-107-011-PD1, DEMO-201-111-002-PD2, DEMO-202-104-012-PD1 | 92.7% | 90.0% | Minor | Protocol deviations |
DQ-T06 Events reach the committee within 30 daysreported_on - occurred_on <= 30 days, for 90% of events | ā Passed | 100% | 90.0% | Major | Event adjudications |
| Rule | Result | Pass rate | Threshold | Severity | Data product |
|---|---|---|---|---|---|
DQ-A01 Visit facts reconcile with EDC, study by studyCOUNT(gold.fct_visit) = COUNT(silver.edc_visit) for each study | ā Passed | 100% | 100% | Critical | Visit facts |
DQ-A02 Query facts reconcile with EDC, study by studyCOUNT(gold.fct_query) = COUNT(silver.edc_query) for each study | ā Passed | 100% | 100% | Critical | Query facts |
DQ-A03 Enrollment facts reconcile with EDC, study by studyCOUNT(fct_enrollment WHERE event_type = 'enrolled') = COUNT(edc_subject WHERE enrolled_on IS NOT NULL) | ā Passed | 100% | 100% | Critical | Enrollment facts |
DQ-A04 Spend facts reconcile with finance lines, study by studySUM(fct_spend.budget_usd, actual_usd) = SUM(finance_line.budget_usd, actual_usd) for each study | ā Passed | 100% | 100% | Critical | Spend facts |
DQ-A05 KRI values equal their numerator over their denominatorkri_value = numerator / denominator, or NULL when denominator = 0 | ā Passed | 100% | 100% | Major | KRI snapshots |
DQ-A06 Current site versions match the CTMS site recordis_current ā (country_code, planned_enrollment, activated_on) = silver.site's | ā Passed | 100% | 100% | Major | Site dimension |
SD-031 SV.SVSTDY values are plausibleStudy Data Pipeline conformance rule SD-031 (exception) on SDTM SVAfter SDTMIG 3.4 / SDTM and SDTMIG Conformance Rules 2.0: https://www.cdisc.org/standards/foundational/sdtmig/sdtm-and-sdtmig-conformance-rules-v2-0 | ā To review23 of 582 rows fail, for example SV row 35, SV row 45, SV row 49 | 96.0% | 100% | Minor | Study data: SDTM and ADaMSV |
SD-032 LB.LBNRIND values are plausibleStudy Data Pipeline conformance rule SD-032 (exception) on SDTM LBAfter SDTMIG 3.4 / SDTM and SDTMIG Conformance Rules 2.0: https://www.cdisc.org/standards/foundational/sdtmig/sdtm-and-sdtmig-conformance-rules-v2-0 | ā To review68 of 2592 rows fail, for example LB row 8, LB row 60, LB row 71 | 97.3% | 100% | Minor | Study data: SDTM and ADaMLB |
SD-033 AE.AESTDTC values are plausibleStudy Data Pipeline conformance rule SD-033 (exception) on SDTM AEAfter SDTMIG 3.4 / SDTM and SDTMIG Conformance Rules 2.0: https://www.cdisc.org/standards/foundational/sdtmig/sdtm-and-sdtmig-conformance-rules-v2-0 | ā To review6 of 44 rows fail, for example AE row 12, AE row 17, AE row 18 | 86.3% | 100% | Minor | Study data: SDTM and ADaMAE |
SD-034 AE.AESTDY values are plausibleStudy Data Pipeline conformance rule SD-034 (exception) on SDTM AEAfter SDTMIG 3.4 / SDTM and SDTMIG Conformance Rules 2.0: https://www.cdisc.org/standards/foundational/sdtmig/sdtm-and-sdtmig-conformance-rules-v2-0 | ā To review5 of 44 rows fail, for example AE row 9, AE row 10, AE row 30 | 88.6% | 100% | Minor | Study data: SDTM and ADaMAE |
AD-014 ADEG.CRIT1FL values are plausibleStudy Data Pipeline conformance rule AD-014 (exception) on ADAM ADEGAfter ADaMIG 1.3: https://www.cdisc.org/standards/foundational/adam/adamig-v1-3 | ā Passed | 100% | 100% | Minor | Study data: SDTM and ADaMADEG |
AD-015 ADEG.PARAMCD values are plausibleStudy Data Pipeline conformance rule AD-015 (exception) on ADAM ADEGAfter ADaMIG 1.3: https://www.cdisc.org/standards/foundational/adam/adamig-v1-3 | ā Passed | 100% | 100% | Minor | Study data: SDTM and ADaMADEG |
The terms the governed metrics are defined in, read from the site's one glossary, so a definition here matches the one in every tooltip. Sources are cited by reference.
24 terms
The stewardship check passes: every role sits in exactly one domain, every product and metric has an owner and a steward from the same domain, and every decision has one accountable role.
Each product and metric names an owner and a steward from the same domain, and the catalog checks that every role it names is in one.
Data collected from subjects and the standard datasets derived from it for analysis.
How studies are run: sites, enrollment, visits, monitoring, deviations, supplies, vendors, milestones and the trial master file.
Adverse events and their review, including event adjudication.
Study budgets and actual spend.
Reference data every domain shares that no business area owns, such as the calendar.
Held by: The owner role a product or metric names, for example Clinical Operations Lead.
Held by: The steward role a product or metric names, for example Clinical Data Steward.
Held by: Data Platform Engineering, for every domain.
Held by: Anyone who reads a product or metric: a report, a downstream product or an analyst.
Each decision has exactly one accountable role and at least one responsible role, and applies one of the policies below.
| Decision | Data owner | Data steward | Data custodian | Data consumer | Policy |
|---|---|---|---|---|---|
| Certify a new metricA metric is added to the registry, or a draft metric is certified for reports to rely on. | AAccountable | RResponsible | IInformed | CConsulted | Metric certification |
| Release a breaking contract changeA data contract change removes or narrows something consumers rely on, which needs a new major version. | AAccountable | RResponsible | RResponsible | IInformed | Change control |
| Grant access to a data productSomeone asks to read a data product they cannot read yet. | AAccountable | CConsulted | RResponsible | IInformed | Access |
| Change a retention periodA product's retention period or the basis for it changes. | AAccountable | RResponsible | CConsulted | IInformed | Retention and archival |
5 policies, written as data so this page and the tests read the same rules. A rule applied in code names the platform function that applies it.
Every value carries a class that sets who may read it.
Every column carries one of four classes, from least to most protected: public, internal, confidential and restricted.
Applied in code by WAREHOUSE_SCHEMA.
A data product takes the highest class of any column it holds.
Applied in code by dataProducts.
A product whose rows describe study subjects is personal health data, however its columns are classified.
Applied in code by dataProducts.
Restricted values, such as a randomised arm that blinded staff must not see, are readable only by the roles named for them.
Applied by a person in review.
The platform holds synthetic data only. No real subject record is loaded into it.
Applied by a person in review.
How long each data product is kept, and what sets the period.
Every contract states a retention period in whole years and the basis for it.
Applied in code by checkDataProducts.
Trial records, the subject, monitoring, deviation, randomisation and adjudication records that belong to the trial master file, are kept for at least 25 years after the trial ends, the period Regulation (EU) No 536/2014 sets for archiving the trial master file.
Applied by a person in review.
Operational and derived data are kept for 10 years. That period is a sponsor policy choice, not a regulatory minimum.
Applied by a person in review.
No policy decision shortens a period that a regulation sets.
Applied by a person in review.
A change to a retention period or its basis is released as a new contract version.
Applied in code by checkContractChange.
Archived data stays read-only for the rest of its retention period, and is deleted only after its owner confirms that no hold applies.
Applied by a person in review.
Who may read a data product, and how access is granted and ended.
Access is granted per data product, for a stated purpose, with the product owner's approval.
Applied by a person in review.
A request for confidential, restricted or personal health data needs the steward to check its purpose against the classification before the owner decides.
Applied by a person in review.
Access ends when its purpose does, and every grant is reviewed at least once a year.
Applied by a person in review.
Self-service SQL runs in the visitor's own in-memory copy of the published tables, with external access switched off and the engine settings locked.
Applied in code by WORKBENCH_ENGINE_SETTINGS.
Platform pages read data built ahead of time and never query a production database.
Applied by a person in review.
What a metric needs before reports may rely on it.
A certified metric has an owner, a steward, a description, a unit and a linked business glossary term.
Applied in code by checkMetricRegistry.
Its formula reads only gold tables and columns that exist, guards every nullable column it reads, and can reach every dimension it allows.
Applied in code by checkMetricRegistry.
A certified report uses only certified metrics and carries its owner's sign-off on its current version.
Applied in code by checkReportSpec.
A released metric contract is never edited. Changing what a certified metric computes needs a new major version.
Applied in code by checkMetricChange.
How a change to a contract or a metric reaches the people who rely on it.
Every data contract carries a semantic version.
Applied in code by checkDataProducts.
A contract change takes at least the version bump its largest difference needs, so a breaking change ships only as a new major version.
Applied in code by checkContractChange.
Before a breaking change is released, lineage names everything downstream of the changed columns and the roles to tell.
Applied in code by contractChangeImpact.
A metric's change log ends at its current version, and each entry says what changed.
Applied in code by checkMetricRegistry.