Each SAS Clinical Standards
Toolkit validation process requires you to specify the validation
checks to be run. This is accomplished by cloning, subsetting, or
building a set of validation checks based on the Validation Master
data set. (
See Validation Check Metadata: Validation Master.) The SAS Clinical Standards Toolkit assumes that each Validation
Control data set is structurally equivalent to the Validation Master
data set.
A sample CDISC SDTM
3.1.3 Validation Control data set is deployed to this directory:
sample study library directory/cdisc-sdtm-3.1.3–1.5/sascstdemodata/control
By default, the Validation
Control data set name is validation_control.sas7bdat.
The &studyRootPath
value is assumed to have been set to
sample study library directory/cdisc-sdtm-3.1.3/sascstdemodata
.
The Validation Master
data set
(illustrated
in Defining the Reference Standard in the SASReferences Data Set and
in this display) serves as the source for Validation Control content.
Note that in this display, the
path and
memname information
have been derived from the StandardSASReferences data set and points
to the global standards library.
Defining Validation Control Data Set Location
This table provides
examples of how to create a Validation Control data set from the Validation
Master data set. The sample code is written assuming that the code
will be submitted in a context where libraries have been allocated
and the format search and autocall paths have been set.
Sample Code to Create Validation Control Data Set
|
|
All checks provided
with the SAS Clinical Standards Toolkit.
|
data control.validation_control;
set refcntl.validation_master;
|
Structural checks (metadata-only
checks that do not require access to the domain data).
|
data control.validation_control;
set refcntl.validation_master
(where=(upcase(checktype)="METADATA")); run;
|
Content checks (checks
that require access to the domain data).
|
data control.validation_control;
set refcntl.validation_master
(where=(upcase(checktype) ne "METADATA"));
|
Checks with a production
status.
|
data control.validation_control;
set refcntl.validation_master
(where=(checkstatus>0));
|
Sampling of checks,
one for each check macro.
|
proc sort
data=refcntl.validation_master out=work.control;
proc sort
data=work.control out=control.validation_control (label="Check
sampler");
|
Checks new to CDISC
SDTM 3.1.3.
|
data control.validation_control;
set refcntl.validation_master
(where=(standardVersion = "3.1.3"));
|
All codelist-related
checks (checks that use the cstcheck_notincodelist macro).
|
data control.validation_control;
set refcntl.validation_master
(where=(upcase(checksource)="CSTCHECK_NOTINCODELIST"));
|
Generally, the SAS Clinical
Standards Toolkit processes validation checks in the order in which
they appear in the Validation Control data set. Each validation process
honors the default validation property _cstCheckSortOrder. If this
property is not set, then the data set order is assumed. As a part
of the Validation Control derivation, checks can be sorted in any
user-defined order. Or, _cstCheckSortOrder can be set to sort the
Validation Control data set at run time by any fields in that data
set.
Tip
Best Practice Recommendation:
You might find the prioritization of checks to be helpful in identifying
problems early in the process, or for using as prerequisites for checks
that follow.