Starter contract

pharma_clinical_trial

17 rules · plain YAML · starts in observation mode

OpenDQV Cloud starter template (v0.1) — your tenant inherits this baseline. First customer edit creates v1.0 in your audit trail; pin by yaml_hash for replay. Pharmaceutical clinical trial subject record validation. Enforces ICH-GCP E6(R2) Good Clinical Practice requirements at the point of write. Validates ClinicalTrials.gov protocol identifiers (NCT format), trial phase classification, adverse event severity coding aligned with MedDRA conventions, informed consent status, and dose unit standardisation. Prevents incomplete or miscoded trial data from entering regulatory submission pipelines where FDA 21 CFR Part 11 and EMA CPMP/ICH/135/95 compliance requires audit-ready, complete records.

These are starting points you own. Every rule below ships in the trial, starts in observation mode, and is yours to read, edit, or delete from day one. Rules that reference a lookup list (lookup_file) validate against reference data you control in your tenant.
Rules as at 29 August 2026 — starting points you own, not a maintained regulatory feed. We correct errors in these samples; tracking regulatory change in your active contracts is yours.
RuleFieldSeverityWhat it enforces (the message your team sees)
subject_id_requiredsubject_iderrorsubject_id is required
subject_id_uniquesubject_iderrorsubject_id must be unique within this batch — duplicate subject identifiers indicate a data integrity failure (ICH-GCP E6(R2) 4.11). Note: OpenDQV validates uniqueness within the input payload only; cross-batch uniqueness against the trial master file is the responsibility of the upstream EDC system.
site_id_requiredsite_iderrorsite_id is required
protocol_id_requiredprotocol_iderrorprotocol_id is required
protocol_id_formatprotocol_idwarningprotocol_id does not match ClinicalTrials.gov format (NCT followed by 8 digits, e.g. NCT04470427) — verify if using EudraCT or other registry
trial_phase_valuestrial_phaseerrortrial_phase must be one of: phase_1, phase_1_2, phase_2, phase_2_3, phase_3, phase_4, observational, expanded_access
visit_date_formatvisit_dateerrorvisit_date must be a valid date (YYYY-MM-DD)
age_rangeageerrorage must be between 18 and 100
gender_requiredgendererrorgender is required
gender_valuesgendererrorgender must be one of: male, female, non_binary, not_disclosed, unknown
informed_consent_valuesinformed_consenterrorinformed_consent must be one of: yes, pending, withdrawn, not_required (ICH-GCP E6(R2) 4.8 — informed consent is mandatory before any trial procedure)
dose_mg_mindose_mgerrordose_mg must be >= 0
dose_unit_valuesdose_uniterrordose_unit must be one of: mg, mcg, g, ml, iu, units, mg_kg, mcg_kg
adverse_event_code_requiredadverse_event_codewarningadverse_event_code should be provided if applicable
adverse_event_severity_valuesadverse_event_severitywarningadverse_event_severity must be one of: none, mild, moderate, severe, life_threatening, fatal (MedDRA CTCAE grading — Grade 4/5 triggers SAE reporting obligations)
collection_date_formatcollection_dateerrorcollection_date must be a valid date (YYYY-MM-DD)
investigator_id_requiredinvestigator_iderrorinvestigator_id is required

Run your own data against this contract in the free trial — drop a CSV in the dashboard, no code, no credit card. Start free trial →