What's New in the SAS Clinical Standards Toolkit

Overview

Here are some of the new capabilities in the SAS Clinical Standards Toolkit 1.5:
  • Deployment of the SAS Clinical Standards Toolkit 1.5 now includes the sample library.
    Previous versions of the SAS Clinical Standards Toolkit deployed all sample files into the !sasroot folder hierarchy. During the installation and configuration of the SAS Clinical Standards Toolkit 1.5, the installer is prompted for the location in which to install the sample study library. The configuration process creates a series of directories in this location.
  • The introduction of a set of tools to validate the SAS Clinical Standards Toolkit metadata itself.
    This functionality is referred to as internal validation. A subset of validation checks serves to support installation and operational qualification of the SAS Clinical Standards Toolkit. For a description of the implementation, see Internal Validation.
  • The CDISC SDTM 3.1.3 standard, including all metadata and validation checks, has been fully implemented.
    This includes definitions of the 36 domains itemized in the Study Data Tabulation Model Implementation Guide: Human Clinical Trials (Version 3.1.3). For a description of the implementation, see Supported Standards.
  • The SDTM check utility macro sdtmcheckutil_recordlookup was completely rewritten to optimize performance.
    This macro is used to identify records in a source data set that cannot be found in the referenced lookup data set. Examples of the source data set include SUPPxx, CO, and RELREC.
  • The CDISC ODM 1.3.1 standard, including all metadata and validation checks, has been fully implemented.
    Support for the extraction of ODM Clinical data and ODM Reference data into SAS data sets has been added to both ODM 1.3.0 and ODM 1.3.1. For a description and limitations of the implementation, see Supported Standards and XML-Based Standards.
  • The CRT-DDS 1.0.0 standard (define.xml) was updated to include support for creating a define.xml for the CDISC ADaM standard.
    Support was added for the definitions of study source metadata for value level metadata (SDTM), parameter value level metadata (ADaM), and document metadata for annotated CRFs and supplemental documents (SDTM).
    The ability to create a define.pdf for SDTM and ADaM was added to the CRT-DDS standard.
  • An initial implementation of the CDISC SEND 3.0 standard, including the definitions of all domains and columns as specified in the Standard for Exchange of Nonclinical Data Implementation Guide: Nonclinical Studies, Version 3.0, has been provided. For a brief description of the implementation, see Supported Standards.
    Note: No support of CDISC SEND validation checks is provided in the SAS Clinical Standards Toolkit 1.5.
  • Support for the CDISC ADaM Data Structure for Adverse Event Analysis (ADAE) Version 1.0 has been added to the SAS Clinical Standards Toolkit ADaM reference metadata.
    An example implementation of the CDISC ADaM Basic Data Structure for Time-to-Event (ADTTE) Analysis Version 1.0 has been added to the ADaM sample study.
    New validation checks in support of ADAE and ADTTE have been added to the ADaM Validation Master data set.
  • The implementation of CT 1.0.0, a tool to support the import of the National Cancer Institute (NCI) CDISC Controlled Terminology in the ODM XML format into SAS data sets and SAS format catalogs, has been added.
    Samples are provided to import the latest versions of controlled terminology for ADaM, CDASH, SDTM, SEND, Questionnaires, and the Clinical Data Element Glossary. For a description of the implementation, see XML-Based Standards.
  • Additional columns have been added to all SASReferences and StandardSASReferences data sets provided by SAS.
    The ioype, filetype, allowoverwrite, and relpathprefix columns primarily support validation of the SASReferences data set and a broader capability to define relative study paths. For a full description of these columns, see Metadata File Descriptions.
  • Full i18n multiple-byte character support for data has been added.
    All SAS Clinical Standards Toolkit validation macros have been updated to handle multiple-byte data characters encoded in UTF-8 or Shift JIS.
    Note: This initial i18n implementation is limited to clinical data only. The SAS Clinical Standards Toolkit 1.5 metadata does not support i18n with the exception of directory pathnames. The SAS macros and codelogic field of the validation_master data set were modified by replacing SAS functions with i18n-compatible K functions.
  • The SAS Clinical Standards Toolkit metadata and code base have been updated.
  • A number of new framework macros are available, including three new validation check macros and six new validation check utility macros.
    These macros are described briefly below. For more information about the check macros, see Multiple Validation Check Invocations for a Specific CheckID. Information about all macros is in the online macro API reference documentation.

Changes to Metadata and Code Base

Framework Changes

These autocall macros are new:
  • cst_createdsfromtemplate.sas creates a zero-observation data set that is based on a template. The template is returned from the Standardlookup data set based on a specified standard, standardversion, type, and subtype.
  • cstcheckcompareallcolumns.sas compares all columns in one domain with the same columns in other domains.
  • cstcheckentitynotfound.sas reports that an entity, typically a file, folder, or column, cannot be found.
  • cstcheckforeignkeynotfound.sas compares the consistency of one or more columns across two tables, where a column in the first table is a foreign key that points to a primary key in the second table.
  • cstcheckutilcheckfile.sas determines whether a file exists as defined by columns in a source data set. This macro is used primarily by internal validation to confirm that files exist based on the content of the global standards library directory/metadata/standards.sas7bdat data set.
  • cstcheckutilcheckfolder.sas determines whether a folder exists as defined by columns in a source data set. This macro is used primarily by internal validation to confirm that folders exist based on the content of the global standards library directory/metadata/standards.sas7bdat data set.
  • cstcheckutilcheckstructure.sas compares the structure of data sets referenced within StandardSASReferences or SASReferences data sets against a template.
  • cstcheckutilfindsasrefsfile.sas determines whether designated files in the referenced SASReferences data set exist.
  • cstcheckutillookupvalues.sas determines whether metadata column values for discrete columns can be found in the Standardlookup data set.
  • cstupdatestandardsasrefs.sas expands all relative paths to full paths in a SASReferences data set.
  • cstutil_getcstversion.sas returns the SAS Clinical Standards Toolkit product version.
  • cstutil_setcstsroot.sas sets the value of the global macro variable _cstSRoot, which provides the location of the sample library. If the default installation location is used, this is C:\cstSampleLibrary (Microsoft Windows) or /usr/local/cstSampleLibrary (UNIX).
  • cstutilbuildmetadatafromsasrefs.sas builds the framework reference_tables and reference_columns data sets from available SASReferences data sets as a part of internal validation.
  • cstutilbuildstdvalidationcode.sas generates the validation-specific macro _cstreadStds to build the internal validation workflow for one or more standards.
  • cstutilcheckforproblem.sas handles any error condition that sets the global macro variable _cst_rc to 1. This macro variable can be set after a call to any SAS Clinical Standards Toolkit macro.
  • cstutilcheckjava.sas determines whether issues related to Java exist in the previous DATA step.
    Note: In the SAS Clinical Standards Toolkit 1.4, cstutilcheckjava.sas was known as cstcheck_java. It has been renamed in version 1.5 to follow naming conventions.
  • cstutilcheckwriteaccess.sas checks for Write access for an entity that has been defined as an output object in a SASReferences data set.
  • cstutilcomparestructure.sas compares the metadata structure of two data sets using a return code to provide information about the result of the comparison.
  • cstutilcreateattribfromds.sas creates a DATA step ATTRIB statement for all columns in a specified data set.
  • cstutildropmissingvars.sas drops variables from a data set that have only missing values.
  • cstutilfindvalidfile.sas checks whether a folder, file, data set, catalog, or catalog member exists. It is used most often in the validation of a SASReferences data set.
  • cstutilnobs.sas returns the number of observations in a data set or an error.
  • cstutilprocessfailed.sas returns a Boolean value to report whether a SAS Clinical Standards Toolkit process failed.
  • cstutiltrimcharvars.sas trims character variables to their minimum length.
  • cstutilvalidatesasreferences.sas validates the structure and content of a SASReferences data set. Eight different conditions are evaluated.
  • cstutilvalidationsummary.sas summarizes the contents of the validation process Results data set, reporting the number of validation warnings or errors that were generated and whether some validation checks were not run.
  • cstvalidate.sas validates the SAS Clinical Standards Toolkit framework metadata.
  • csutilwriteresultsintro.sas adds process metadata records to the Results data set.
These macros are located in the !sasroot/cstframework/sasmacro directory (Microsoft Windows) or in the !sasroot/sasautos directory (UNIX). A description of each new macro is provided in the online macro API reference documentation.

Sample Library

The SAS Clinical Standards Toolkit 1.5 installs all sample study files into a folder hierarchy outside the !sasroot location that was used in prior versions. For example, in version 1.4, the sample library for CDISC-SDTM 3.1.2 was located for SAS 9.3 here:
!sasroot/../../SASClinicalStandardsToolkitSDTM312/1.4/sample/cdisc-sdtm-3.1.2/sascstdemodata
This !sasroot deployment location caused access problems for customers whose Write access permission to !sasroot was restricted.
During the installation and configuration of the SAS Clinical Standards Toolkit 1.5, the installer is prompted for the location in which to install the sample study library. These are default locations:
  • C:\cstSampleLibrary (Microsoft Windows)
  • /usr/local/cstSampleLibrary (UNIX)
The global macro variable &_cstSRoot is now set to the location of the sample study library (paralleling the &_cstGRoot global macro variable that points to the global standards library).
In many sample driver programs, the global macro variable studyRootPath was set in previous versions to the !sasroot location for the standard, using code such as this:
call symput('studyRootPath', '!sasroot/../../SASClinicalStandardsToolkitSDTM312/1.4/sample/cdisc-sdtm-3.1.2/sascstdemodata');
Now, the same initialization of studyRootPath is this:
call symput('studyRootPath',cats("&_cstSRoot","/cdisc-sdtm-3.1.2-1.5/sascstdemodata"));
The sample library is used to illustrate use of the SAS Clinical Standards Toolkit. Most standards that are provided by SAS use a sample set of data, metadata, and code to provide an instance of each specific standard. In reality, the SAS Clinical Standards Toolkit sample library is simply a proxy for your clinical study data, metadata, and code.
As a part of each standard definition, the global standards library directory/standards/<standard and version>/control/standards.sas7bdat data set contains a column named studylibraryrootpath. This column, by default, has been set to the rootpath of the sample study for that standard. You can choose to use this column to point to the rootpath of some study hierarchy within your organization. There are a number of alternative ways to reference your study data and metadata as well.

Internal Validation

The SAS Clinical Standards Toolkit 1.5 provides a new set of functionality, called internal validation, to help verify that metadata files are consistent and correct. This feature is especially useful as you customize the SAS Clinical Standards Toolkit. This new set of tools uses the SAS Clinical Standards Toolkit validation framework and methodology that assess standard-specific files against a defined reference standard.
Given the central role that the SASReferences data set plays in submission of SAS Clinical Standards Toolkit processes, more rigorous validation of this data set is provided with the cstutilvalidatesasreferences macro.
For more information, see Internal Validation.

CDISC CRT-DDS Changes

These changes were made to CDISC CRT-DDS:
  • These macros were added to support the creation of a define.xml file for the CDISC ADaM standard:
    • crtdds_adamtodefine
    • crtdds_itemgroupdefitemrefs_adam
    • crtdds_itemgroupdefs_adam
  • The crtdds_writepdf macro was added to support the creation of a define.pdf for the CDISC SDTM and CDISC ADaM standards.
  • The crtdds_sourcevalues and crtdds_sourcedocuments macros were added to import metadata that describes value level metadata (SDTM), parameter value level metadata (ADaM), and document metadata for annotated CRFs and supplemental documents (SDTM).
  • New conventions were implemented for the creation of the various OID attributes in the define.xml file. Here are some examples:
    • MetaDataVersion OID="MDV.1"
    • def:ComputationMethod OID="CM.EG.EGTESTCD.QTCB"
    • def:ValueListDef OID="VL.EG.EGTESTCD"
    • ItemGroupDef OID="IG.AE"
    • ItemDef OID="IT.AE.AESTDTC"
    • CodeList OID="CL.AESEV"

CDISC Controlled Terminology

The SAS Clinical Standards Toolkit support for controlled terminology has been updated to the most recent version of the NCI CDISC controlled terminology as of April 1, 2013.
This table lists the implemented controlled terminology versions. Every controlled terminology standard (ADaM, CDASH, SDTM, and SEND) also contains a current folder, which is a copy of the most recent controlled terminology version for that standard.
Implemented Controlled Terminology
Standard
201101
201104
201107
201201
201212
ADaM
x
x
CDASH
x
x
SDTM
x
x
SEND
x
x