Validation of ADaM Data Sets

Overview

Validation of CDISC ADaM data sets in the SAS Clinical Standards Toolkit uses the same validation methodology used for other standards. Within the global standards library, registering each standard includes setting the flag supportsvalidation in the Metadata Standards data set. All standards that support validation, including ADaM, use the same validation framework and processes described in Compliance Assessment Against a Reference Standard.
ADaM validation of ADSL and BDS data sets is based on the CDISC ADaM Validation Checks Version 1.2 Maintenance Release (dated and released July 5, 2012 to correct errors and to add and remove checks). This documentation was prepared by the CDISC ADaM team.
Note: In SAS Clinical Standards Toolkit 1.7, ADaM validation of ADSL and BDS data sets changed from previous releases. The validation checks covered by OpenCDISC have been removed, and only checks developed by SAS and 11 CDISC checks remain (63 total). In SAS Clinical Standards Toolkit 1.7, these remaining 63 checks have no corresponding checks in OpenCDISC and are provided solely to expand the validation of ADaM domains.
The SAS Clinical Standards Toolkit defines validation checks using a combination of these files:
  • the Validation Master data set, which is located here:
    global standards library directory/standards/cdisc-adam-2.1-1.7/validation/control
    This data set contains 63 records, 11 of which are CDISC validation checks.
  • the Messages data set, which is located here:
    global standards library directory/standards/cdisc-adam-2.1-1.7/messages
    This data set contains 56 observations. Some messages in this data set are used across several checks in the Validation Master data set.

Unique Validation Properties

Two validation properties have been added to the SAS Clinical Standards Toolkit to support ADaM validation:
  • _cstParseLengthOverride
    By default, the value is set to 1 and is used only by the SAS Clinical Standards Toolkit framework macro %CSTUTIL_PARSESCOPESEGMENT when evaluating the validation check data set fields tablescope and columnscope. For ADaM validation, it is recommended that this value always be set to 1.
  • _cstCaseMgmt
    By default, the value is set to <blank>. A value of UPCASE is also allowed. This property (global macro variable) is used only in the validation check data set field codelogic. For example, consider this codelogic:
    if (&_cstCaseMgmt(&_cstColumn) not in ("","Y")) then _cstError=1;
    When _cstCaseMgmt=UPCASE, the column value is case insensitive, and the values “y” and “Y” are equivalent. When _cstCaseMgmt=, the value “y” is reported as an error.

Validation Check Macros

ADaM validation uses the following check macros from the autocall library in the defined checks:
%CSTCHECK_COLUMN
%CSTCHECK_CROSSSTDCOMPAREDOMAINS*
%CSTCHECK_COLUMNCOMPARE
%CSTCHECK_CROSSSTDMETAMISMATCH*
%CSTCHECK_COLUMNVARLIST
%CSTCHECK_METAMISMATCH
%CSTCHECK_COMPAREDOMAINS
%CSTCHECK_NOTINCODELIST
%CSTCHECK_DSMISMATCH
%CSTCHECK_NOTUNIQUE
%CSTCHECK_NOTCONSISTENT
%CSTCHECK_ZEROOBS
%CSTCHECKCOMPAREALLCOLUMNS*
* These macros are used only for CDISC ADaM validation, although they are available to all standards.
Note: This list represents a subset of check macros that are available to all standards to be validated.
For information about the purpose and use of each check macro, see the SAS Clinical Standards Toolkit: Macro API Documentation.

Cross-Standard Validation Checks

Several ADaM validation checks require a comparison of ADaM data or metadata with SDTM data or metadata. These checks require the availability of table and column metadata from two different standards. To support this comparison, two check macros (%CSTCHECK_CROSSSTDCOMPAREDOMAINS and %CSTCHECK_CROSSSTDMETAMISMATCH) are available in the SAS Clinical Standards Toolkit. Part of the metadata available in the Validation Master data set for the ADaM cross-standard validation checks is shown in Partial Metadata for the CDISC ADaM Cross-Standard Validation Checks.
Partial Metadata for the CDISC ADaM Cross-Standard Validation Checks
Partial metadata for the CDISC ADaM cross-standard validation checks

Sample Data for Validation and Reporting

The SAS Clinical Standards Toolkit implementation of ADaM includes two sets of data and metadata. One set supports the SAS Clinical Standards Toolkit ADaM reporting. In this set, few, if any, data errors and anomalies are included, and this set is considered a clean, analysis-ready set of data. A second set includes illustrative data and metadata errors to demonstrate ADaM validation functionality.
The following figure shows some of the installed SAS files for ADaM, the data and metadata folders that support reporting, and the baddata and badmetadata folders that support validation. The corresponding sample driver programs (analyze_data.sas and validate_data.sas, respectively), which are located in the programs folder (as shown in Example Folder Hierarchy for a CDISC ADaM Sample Study) point to the correct source data and metadata folders.
Example Folder Hierarchy for a CDISC ADaM Sample Study
Example folder hierarchy for a CDISC ADaM sample study

Validation Results

The results of an ADaM validation process, as documented in the validation_results data set, are shown in Results from an ADaM Validation Process (Partial Listing) and Results from an ADaM Validation Process (Partial Listing—Continued). The first 15 records of the data set shown in Results from an ADaM Validation Process (Partial Listing) have been excluded from the display because they report generic process setup and metadata information common to all validation processes.
Records 22 through 24 report the results of one of the cross-standard validation checks. This validation check finds a subject (USUBJID) in the ADaM data sets that was not found in the SDTM DM domain.
Results from an ADaM Validation Process (Partial Listing)
Results from an ADaM validation process (partial listing)
Results from an ADaM Validation Process (Partial Listing—Continued)
Results from an ADaM validation process (partial listing—continued)
A partial report of the validation_metrics data set (including a process summary noting that 17 checks were attempted, two could not be run, and 11 errors were detected) is shown in Metrics from an ADaM Validation Process (Partial Listing). The two checks that could not be run referenced columns in the check metadata that could not be found or assessed in the source data sets.
Metrics from an ADaM Validation Process (Partial Listing)
Metrics from an ADaM validation process (partial listing)