CDISC : SDTM, ADaM, Define-XML
Sources, spécification de mapping, construction, contrôles, licences et limites.
Le pipeline CDISC transforme un export de n’importe quel EDC en fichiers attendus par un promoteur, un CRO ou une autorité : d’abord la source en CDISC ODM, Excel et SAS, puis les jeux SDTM et ADaM avec Define-XML 2.1. Chaque étape suit une spécification de mapping que vous pouvez lire, modifier et conserver. Aucune IA n’est utilisée : la même spécification sur les mêmes données donne toujours le même résultat.
1. Chargez l’export
Formats acceptés : un fichier XML ODM 1.3, ou des fichiers CSV/XLSX avec un fichier ou une feuille par formulaire (export « modulaire »), ou un fichier plat, ou un ZIP de ces fichiers. Les colonnes clés sont reconnues par leur nom :
- patient : SUBJID, Subject, Patient, numéro de sélection… ;
- centre : SITEID, Site, Centre ;
- visite : Visit, Folder, Event, InstanceName, redcap_event_name ;
- ligne d’un formulaire journal : Line, RecordPosition, AESEQ, redcap_repeat_instance.
Toutes les autres colonnes deviennent des items ; le type (entier, décimal, date, texte) est déduit des valeurs. Les dates comme 05.03.2024, 2024-03-05 ou 05MAR2024 sont reconnues. Les colonnes techniques (« dernière modification ») sont ignorées.
Dès le chargement, l’onglet Source restitue les données en CDISC ODM 1.3.2 (métadonnées et données cliniques dans un seul XML), en Excel (une feuille par table) et en SAS (un fichier de transport par table et import.sas, qui applique les listes de codes comme formats SAS). Cela suffit déjà à convertir un export modulaire ou plat en ODM.
2. Vérifiez la spécification
La spécification est proposée à partir des données. Les colonnes nommées selon CDASH (AETERM, AESTDAT, VSORRES, SYSBP…) vont directement en SDTM ; les tables sont rattachées aux domaines par leur nom (AE, « Adverse events », « Effets indésirables »…). Elle comprend :
- paramètres : STUDYID, le modèle de USUBJID, COUNTRY, l’origine du bras prévu, de la date de visite, des dates de consentement et de randomisation, la fenêtre « sous traitement » et les classes d’âge ;
- domaines : quelles tables alimentent DM, AE, CM, MH, EX, DS, SV, VS et LB, plus les jeux de design TA, TE, TV et TS ;
- variables : une règle par variable SDTM (copie d’une colonne, date ISO 8601, constante, liste de codes, date la plus précoce ou la plus tardive, en cours, SUPP--, dérivée, vide) ;
- tests : les colonnes « larges » (une colonne par test, comme souvent pour les signes vitaux) deviennent un enregistrement par test avec le code et l’unité CDISC ;
- correspondances : valeur recueillie et valeur de soumission CDISC par liste de codes, par exemple « Légère » vers MILD. Les lignes vides sont à compléter ;
- visites, bras, essai : VISITNUM, jour prévu et époque, ARMCD, paramètres du résumé de l’essai.
Paramètres, domaines, correspondances et paramètres de l’essai se modifient sur la page. Pour le reste, téléchargez la spécification en Excel, modifiez-la et rechargez-la. « Proposer à nouveau à partir des données » repart de zéro en gardant le pays et les paramètres de l’essai.
3. Construction
Une construction produit tout le paquet. Elle s’arrête avec une liste si la spécification cite une table ou une colonne inexistante. Sont dérivés automatiquement : USUBJID, --SEQ, jours d’étude, VISITNUM et VISIT, EPOCH, les dates de référence de DM (RFSTDTC, RFXSTDTC…), ARM et ACTARM, les échecs de sélection (ARMNRS), les indicateurs de valeur de référence (--LOBXFL), les indicateurs hors normes, les résultats standardisés et les jeux de design.
ADaM : ADSL (un enregistrement par patient randomisé ou traité : TRT01P/A, TRTSDT/TRTEDT, RANDFL, ITTFL, SAFFL, AGEGR1, EOSSTT, taille, poids et IMC de référence), ADAE (indicateur « survenu sous traitement » et indicateurs de première occurrence), ADVS et ADLB (AVAL, BASE, CHG, PCHG, ADY). Chaque dérivation est décrite dans define.xml comme méthode.
4. Ce que vous téléchargez
sdtm/etadam/: jeux en transport SAS V5 (.xpt), CDISC Dataset-JSON 1.1 et Excel,define.xml(Define-XML 2.1) et undefine.htmllisible ;source/: la source en ODM, Excel et SAS ;spec/sdtm-spec.xlsx: la spécification utilisée ;checks/checks.xlsx: le rapport de contrôles ;sas/import.sas: lit tous les .xpt dans WORK.
Contrôles
Les contrôles (identifiants YE-…) portent sur les variables obligatoires, les clés et --SEQ, les dates ISO 8601, un début après la fin, la terminologie contrôlée, les limites SAS V5 (noms de 8 caractères, libellés de 40, valeurs de 200 octets), le texte non ASCII et la structure ADaM. Ce sont nos propres contrôles, pas les règles CDISC CORE ni Pinnacle 21. Avant une soumission, lancez un validateur de conformité, par exemple le moteur open source CDISC CORE.
Limites de cette version
- Le codage médical vient de vos propres dictionnaires. AEDECOD, AEBODSYS et la hiérarchie MedDRA (AE, MH), ainsi que CMDECOD et CMCLAS (CM, ATC), sont remplis à partir du Codage médical : chargez-y la MedDRA sous licence de votre organisation ou un ATC complet et codez les termes. La construction n’utilise que vos décisions et les correspondances exactes uniques, indique le dictionnaire et la version dans define.xml et liste les termes restant à coder. Sans un tel dictionnaire, ces variables restent vides si votre export n’a pas de colonnes codées. WHODrug n’est pas encore pris en charge.
- Les valeurs restent dans la langue de recueil. La FDA attend du texte ASCII dans les fichiers de transport ; les termes en russe ou en français sont signalés en avertissement.
- Pas de conversion d’unités ni d’imputation des dates partielles.
- Domaines : DM, AE, CM, MH, EX, DS, SV, VS, LB, TA, TE, TV, TS et SUPP--. Les autres domaines ne sont pas encore construits.
- Terminologie contrôlée : un sous-ensemble intégré couvrant ces domaines. Chargez la version complète que vous utilisez (fichier NCI EVS « SDTM Terminology.txt ») sur la page principale du module.
Le paquet est un brouillon à faire relire par un programmeur statisticien, pas une soumission validée.
Normes et sources
- Normes CDISC (ODM 1.3.2, SDTM et SDTMIG 3.4, ADaMIG 1.3, Define-XML 2.1, Dataset-JSON 1.1) : cdisc.org/standards ;
- Terminologie contrôlée CDISC, publiée par NCI EVS : evs.nci.nih.gov/ftp1/CDISC/SDTM ;
- Format de transport SAS V5 et guide FDA Study Data Technical Conformance Guide : fda.gov, ressources sur les normes de données ;
- CDISC CORE (moteur open source de règles de conformité) : cdisc.org/core ;
- Licences MedDRA : meddra.org.
© 2026 Т.Г. (contact@youedc.com), youEDC. Tous droits réservés. Conditions d’utilisation. Les données saisies par les utilisateurs leur appartiennent.