JMP Clinical Key Variables
Domain keys are columns whose values uniquely identify individual records. These keys are used when comparing snapshots to identify modified, new, dropped, and duplicate records.
Users can specify the key columns for the study domains by editing the system.clinical.preferences file in ‘C:\Users\<username>\Documents\JMPClinical19\Configurations\Default’.
Here is an example of a nested associative array that specifies domain keys for various studies:
"DomainKeysForSnapshots" => ["*" => [
"DM" => {"STUDYID", "USUBJID"},
"ADSL" => {"STUDYID", "USUBJID"},
"CO" => {"STUDYID", "USUBJID", "COSEQ"},
"ADCO" => {"STUDYID", "USUBJID", "COSEQ"},
"SV" => {"STUDYID", "USUBJID", "VISITNUM"},
"ADSV" => {"STUDYID", "USUBJID", "AVISITN"},
"CM" => {"STUDYID", "USUBJID", "CMSEQ"},
"ADCM" => {"STUDYID", "USUBJID", "CMSEQ"},
"AE" => {"STUDYID", "USUBJID", "AEDECOD", "AESTDTC"},
"ADAE" => {"STUDYID", "USUBJID", "AEDECOD", "ASTDT"}
],
"Nicardipine" => [
"AE" => {"STUDYID", "USUBJID", "AESEQ"}
],
"NicardipineAbbr" => [
"AE" => {"STUDYID", "USUBJID", "AEDECOD", "AESTDTC"},
"CM" => {"STUDYID", "USUBJID", "CMTRT", "CMSTDTC"}
]
]
How to read the above nested associative array:
| • | The top-level key is "DomainKeysForSnapshots". |
| • | Its value is an associative array where: |
| • | Each key represents a study name (e.g., "*", "Nicardipine", "NicardipineAbbr"). |
| • | Each study name maps to another associative array where: |
| • | Keys represent domain names (e.g., "DM", "AE"). |
| • | Values are lists of key variables for those domains. |
| • | If "*" wildcard is specified for study name, that means that it applies to all studies not explicitly listed. |
If no "DomainKeysForSnapshots" nested associative array is specified in the system.clinical.preferences file, or if the "*" wildcard is not present, or if some domains are not listed, then JMP Clinical derives the domain keys.
The tables below illustrate how domain keys are derived for SDTM and ADaM domains in JMP Clinical. The primary choice is always the option labeled (1). If any of the columns listed under (1) are not available, we move to option (2), and so on until all columns are available.
SDTM domain keys used by JMP Clinical if there are no user-defined domain keys in the system.clinical.preferences file.
| Class | SDTM Domain | Keys |
|---|---|---|
| Special Purpose | DM |
(1) STUDYID, USUBJID |
| CO |
(1) STUDYID, USUBJID, COSEQ (2) STUDYID, USUBJID, IDVAR, COREF, CODTC |
|
| SE |
(1) STUDYID, USUBJID, SESEQ (2) STUDYID, USUBJID, ETCD, SESTDTC |
|
| SM |
(1) STUDYID, USUBJID, SESMQ (2) STUDYID, USUBJID, MIDS |
|
| SV |
(1) STUDYID, USUBJID, VISITNUM |
|
| All other domains | (1) STUDYID, USUBJID, xxSEQ | |
| Interventions | CM, EX, EC, AG, ML, PR, SU, etc. |
(1) STUDYID, USUBJID, xxSEQ (2) STUDYID, USUBJID, xxTRT, xxSTDTC |
| Events | AE, DS |
(1) STUDYID, USUBJID, xxSEQ (2) STUDYID, USUBJID, xxDECOD, xxSTDTC (3) STUDYID, USUBJID, xxTERM, xxSTDTC |
| MH |
(1) STUDYID, USUBJID, xxSEQ (2) STUDYID, USUBJID, xxDECOD (3) STUDYID, USUBJID, xxTERM |
|
| CE, DV, HO |
(1) STUDYID, USUBJID, xxSEQ (2) STUDYID, USUBJID, xxTERM, xxSTDTC |
|
| All other domains |
(1) STUDYID, USUBJID, xxSEQ (2) STUDYID, USUBJID, xxDECOD, xxSTDTC (3) STUDYID, USUBJID, xxTERM, xxSTDTC |
|
| Findings | CV, EG, FT, MB, MS, PC, RE, VS |
(1) STUDYID, USUBJID, xxSEQ (2) STUDYID, USUBJID, xxTESTCD, VISITNUM, xxTPTREF, xxTPTNUM |
| IS, SS, PE, RP |
(1) STUDYID, USUBJID, xxSEQ (2) STUDYID, USUBJID, xxTESTCD, VISITNUM |
|
| DA, DD |
(1) STUDYID, USUBJID, xxSEQ (2) STUDYID, USUBJID, xxTESTCD, xxDTC |
|
| IE, SC |
(1) STUDYID, USUBJID, xxSEQ (2) STUDYID, USUBJID, xxTESTCD |
|
| FA, SR |
(1) STUDYID, USUBJID, xxSEQ (2) STUDYID, USUBJID, xxTESTCD, xxOBJ, VISITNUM, xxTPTREF, xxTPTNUM |
|
| MK, MO |
(1) STUDYID, USUBJID, xxSEQ (2) STUDYID, USUBJID, VISITNUM, xxTESTCD, xxLOC, xxLAT |
|
| UR |
(1) STUDYID, USUBJID, xxSEQ (2) STUDYID, USUBJID, VISITNUM, xxTESTCD, xxLOC, xxLAT, xxDIR |
|
| NV |
(1) STUDYID, USUBJID, xxSEQ (2) STUDYID, USUBJID, VISITNUM, xxTPTNUM, xxLOC, xxTESTCD |
|
| OE |
(1) STUDYID, USUBJID, xxSEQ (2) STUDYID, USUBJID, VISITNUM, FOCID, xxTESTCD, xxTSTDTL, xxMETHOD, xxLOC, xxLAT, xxDIR, VISITNUM, xxDTC, xxTPTREF, xxTPTNUM, xxREPNUM |
|
| MI |
(1) STUDYID, USUBJID, xxSEQ (2) STUDYID, USUBJID, VISITNUM, FOCID, xxTESTCD, xxTSTDTL, xxMETHOD, xxLOC, xxLAT, xxDIR, VISITNUM, xxDTC, xxTPTREF, xxTPTNUM, xxREPNUM |
|
| LB |
(1) STUDYID, USUBJID, xxSEQ (2) STUDYID, USUBJID, xxTESTCD, xxSPEC, VISITNUM, xxTPTREF, xxTPTNUM |
|
| QS |
(1) STUDYID, USUBJID, xxSEQ (2) STUDYID, USUBJID, xxCAT, xxSCAT, VISITNUM, xxTESTCD |
|
| PP |
(1) STUDYID, USUBJID, xxSEQ (2) STUDYID, USUBJID, xxTESTCD, xxCAT, VISITNUM, xxTPTREF |
|
| RS |
(1) STUDYID, USUBJID, xxSEQ (2) STUDYID, USUBJID, xxTESTCD, VISITNUM, xxTPTREF, xxTPTNUM, xxEVAL, xxEVALID |
|
| TR |
(1) STUDYID, USUBJID, xxSEQ (2) STUDYID, USUBJID, xxTESTCD, xxEVALID, VISITNUM |
|
| TU |
(1) STUDYID, USUBJID, xxSEQ (2) STUDYID, USUBJID, xxEVALID, xxLINKID |
|
| All other domains |
(1) STUDYID, USUBJID, xxSEQ |
|
| Trial Design | TA |
(1) STUDYID, ARMCD, TAETORD |
| TD |
(1) STUDYID, TDORDER |
|
| TE |
(1) STUDYID, ETCD |
|
| TI |
(1) STUDYID, IETESTCD |
|
| TM |
(1) STUDYID, MIDSTYPE |
|
| TS |
(1) STUDYID, TSPARMCD, TSSEQ |
|
| TV |
(1) STUDYID, ARM, VISIT |
|
| Relationships | RELREC |
(1) STUDYID, RDOMAIN, USUBJID, IDVAR, IDVARVAL, RELID |
| RELSUB |
(1) STUDYID, USUBJID, RSUBJID, SREL |
|
| Supplemental Qualifiers | SUPPDM |
(1) STUDYID, RDOMAIN, USUBJID |
| All other SUPP domains |
(1) STUDYID, RDOMAIN, USUBJID, IDVAR, IDVARVAL |
ADaM domain keys used by JMP Clinical if there are no user defined domain keys in the system.clinical.preferences file:
| Class | ADaM Domain | Keys |
|---|---|---|
| Special Purpose | ADSL |
(1) STUDYID, USUBJID |
| ADCO |
(1) STUDYID, USUBJID, COSEQ (2) STUDYID, USUBJID, IDVAR, COREF, CODTC |
|
| ADSE |
(1) STUDYID, USUBJID, SESEQ (2) STUDYID, USUBJID, ETCD, SESTDTC |
|
| ADSM |
(1) STUDYID, USUBJID, SMSEQ (2) STUDYID, USUBJID, MIDS |
|
| ADSV |
(1) STUDYID, USUBJID, AVISITN |
|
| All other domains |
(1) STUDYID, USUBJID, xxSEQ (2) STUDYID, USUBJID, ASEQ |
|
| Interventions | ADCM, ADEX, ADEC, ADAG, ADML, ADPR, ADSU, etc. |
(1) STUDYID, USUBJID, xxSEQ (2) STUDYID, USUBJID, ASEQ (3) STUDYID, USUBJID, xxTRT, xxSTDTC (4) STUDYID, USUBJID, xxTRT, ASTDTM (5) STUDYID, USUBJID, xxTRT, ASTDT (6) STUDYID, USUBJID, xxTRT, ADT |
| Events | ADAE, ADDS |
(1) STUDYID, USUBJID, xxSEQ (2) STUDYID, USUBJID, ASEQ (3) STUDYID, USUBJID, xxDECOD, xxSTDTC (4) STUDYID, USUBJID, xxDECOD, ASTDT (5) STUDYID, USUBJID, xxTERM, xxSTDTC (6) STUDYID, USUBJID, xxTERM, ASTDT |
| ADMH |
(1) STUDYID, USUBJID, xxSEQ (2) STUDYID, USUBJID, ASEQ (3) STUDYID, USUBJID, xxDECOD (4) STUDYID, USUBJID, xxTERM |
|
| ADCE, ADDV, ADHO |
(1) STUDYID, USUBJID, xxSEQ (2) STUDYID, USUBJID, ASEQ (3) STUDYID, USUBJID, xxTERM, xxSTDTC (4) STUDYID, USUBJID, xxTERM, ASTDT |
|
| All other domains |
(1) STUDYID, USUBJID, xxSEQ (2) STUDYID, USUBJID, ASEQ (3) STUDYID, USUBJID, xxDECOD, xxSTDTC (4) STUDYID, USUBJID, xxDECOD, ASTDT (5) STUDYID, USUBJID, xxTERM, xxSTDTC (6) STUDYID, USUBJID, xxTERM, ASTDT |
|
| Findings | All Domains |
(1) STUDYID, USUBJID, xxSEQ (2) STUDYID, USUBJID, ASEQ (3) STUDYID, USUBJID, PARAMCD, AVISITN, ATPTN |
Specifying Alternative Keys
Use the following procedure for specifying alternative keys:
| 8 | Navigate to the location of the system.clinical.preferences file. Typically, this file is located in the ‘C:\Users\<username>\Documents\JMPClinical19\Configurations\Default’ directory. |
| 8 | Make a copy of the system.clinical.preferences file and save it under a different name to ensure that you retain a copy of the default file. |
| 8 | Open the system.clinical.preferences file. |
| 8 | Insert the nested associative array that specifies the keys to be used with your study. The array code should be inserted into the system.clinical.preferences file at the location shown above. |
In this example, we insert the following array:
"DomainKeysForSnapshots" => ["*" => [
"DM" => {"STUDYID", "USUBJID"},
"ADSL" => {"STUDYID", "USUBJID"},
"CO" => {"STUDYID", "USUBJID", "COREFID"},
"ADCO" => {"STUDYID", "USUBJID", "COREFID"},
"SV" => {"STUDYID", "USUBJID", "VISITNUM"},
"ADSV" => {"STUDYID", "USUBJID", "AVISITN"},
"CM" => {"STUDYID", "USUBJID", "CMREFID"},
"ADCM" => {"STUDYID", "USUBJID", "CMREFID"},
"EX" => {"STUDYID", "USUBJID", "EXREFID"},
"AE" => {"STUDYID", "USUBJID", "AEREFID"},
"ADAE" => {"STUDYID", "USUBJID", "AEREFID"}
]
],
The modified system.clinical.preferences file is shown below. The array is shaded in yellow.
| 8 | Save the system.clinical.preferences file and close JMP Clinical. |
You must close and restart JMP Clinical for the changes to the system.clinical.preferences file to take effect.
To revert to the default keys, delete the system.clinical.preferences file from the ‘C:\Users\<username>\Documents\JMPClinical19\Configurations\Default’ directory. Rename your saved copy to system.clinical.preferences, and close and reopen JMP Clinical.