SAS Clinical Standards Toolkit 1.6 Getting Started

SAS Clinical Standards Toolkit 1.6 Getting Started
SAS Clinical Standards
Toolkit 1.6
®
Getting Started
SAS® Documentation
The correct bibliographic citation for this manual is as follows: SAS Institute Inc. 2014. SAS® Clinical Standards Toolkit 1.6:
Getting Started. Cary, NC: SAS Institute Inc.
SAS® Clinical Standards Toolkit 1.6: Getting Started
Copyright © 2014, SAS Institute Inc., Cary, NC, USA
All rights reserved. Produced in the United States of America.
For a hard-copy book: No part of this publication may be reproduced, stored in a retrieval system, or transmitted, in any
form or by any means, electronic, mechanical, photocopying, or otherwise, without the prior written permission of the
publisher, SAS Institute Inc.
For a web download or e-book: Your use of this publication shall be governed by the terms established by the vendor at
the time you acquire this publication.
The scanning, uploading, and distribution of this book via the Internet or any other means without the permission of the
publisher is illegal and punishable by law. Please purchase only authorized electronic editions and do not participate in or
encourage electronic piracy of copyrighted materials. Your support of others' rights is appreciated.
U.S. Government License Rights; Restricted Rights: The Software and its documentation is commercial computer
software developed at private expense and is provided with RESTRICTED RIGHTS to the United States Government. Use,
duplication or disclosure of the Software by the United States Government is subject to the license terms of this Agreement
pursuant to, as applicable, FAR 12.212, DFAR 227.7202-1(a), DFAR 227.7202-3(a) and DFAR 227.7202-4 and, to the
extent required under U.S. federal law, the minimum restricted rights as set out in FAR 52.227-19 (DEC 2007). If FAR
52.227-19 is applicable, this provision serves as notice under clause (c) thereof and no other notice is required to be affixed
to the Software or documentation. The Government's rights in Software and documentation shall be only those set forth in
this Agreement.
SAS Institute Inc., SAS Campus Drive, Cary, North Carolina 27513-2414.
February 2014
SAS provides a complete selection of books and electronic products to help customers use SAS® software to its fullest
potential. For more information about our offerings, visit support.sas.com/bookstore or call 1-800-727-3228.
SAS® and all other SAS Institute Inc. product or service names are registered trademarks or trademarks of SAS Institute
Inc. in the USA and other countries. ® indicates USA registration.
Other brand and product names are trademarks of their respective companies.
Contents
Using This Book . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . vii
Recommended Reading . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ix
Chapter 1 • Introduction to the SAS Clinical Standards Toolkit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
Key SAS Clinical Standards Toolkit Functionality . . . . . . . . . . . . . . . . 1
The SAS Clinical Standards Toolkit File Roadmap . . . . . . . . . . . . . . . 2
Key SAS Clinical Standards Toolkit Components . . . . . . . . . . . . . . . . 5
Using the SAS Clinical Standards Toolkit . . . . . . . . . . . . . . . . . . . . . . 7
Chapter 2 • Sample Scenarios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
Validating the CDISC ADaM Data Sets . . . . . . . . . . . . . . . . . . . . . .
Creating a CRT-DDS 1.0.0 define.xml File from
CDISC SDTM 3.1.3 Source Data . . . . . . . . . . . . . . . . . . . . . . . . .
Creating a Define-XML 2.0 define.xml File from
SDTM Source Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Importing and Validating a CDISC ODM XML File . . . . . . . . . . . . . .
10
12
17
22
Chapter 3 • Frequently Asked Questions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
Global Standards Library . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Process Results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Standards . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Creating and Modifying Files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Validation Process . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Macros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Miscellaneous . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
31
32
32
34
41
43
44
vi Contents
vii
Using This Book
Audience
The SAS Clinical Standards Toolkit and this book are designed for SAS programmers in
the clinical research industry. Programmers must have a good understanding of the
SAS macro language and must be knowledgeable of evolving industry data standards,
such as the Clinical Data Interchange Standards Consortium (CDISC).
Requirements
This book does not attempt to provide instructions to install the SAS Clinical Standards
Toolkit. It is assumed that the SAS Clinical Standards Toolkit has been successfully
installed by a SAS Administrator and that the installation has been verified to be
installed correctly and properly functioning.
viii
ix
Recommended Reading
Here is the recommended reading list:
n
SAS Clinical Standards Toolkit: User's Guide
This book provides more comprehensive information about the SAS Clinical
Standards Toolkit.
n
SAS Clinical Standards Toolkit: Operational Qualification
For a complete list of SAS books, go to support.sas.com/bookstore. If you have
questions about which titles you need, please contact a SAS Book Sales
Representative:
SAS Books
SAS Campus Drive
Cary, NC 27513-2414
Phone: 1-800-727-3228
Fax: 1-919-677-8166
E-mail: [email protected]
Web address: support.sas.com/bookstore
x
1
1
Introduction to the SAS Clinical
Standards Toolkit
Key SAS Clinical Standards Toolkit Functionality . . . . . . . . . . . . . . . . . . 1
The SAS Clinical Standards Toolkit File Roadmap . . . . . . . . . . . . . . . . . . 2
Key SAS Clinical Standards Toolkit Components . . . . . . . . . . . . . . . . . . . 5
Using the SAS Clinical Standards Toolkit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
Key SAS Clinical Standards Toolkit
Functionality
This book provides a brief introduction to the SAS Clinical Standards Toolkit. The SAS
Clinical Standards Toolkit serves two primary purposes:
n
Provide SAS implementations, based in SAS, of evolving clinical data standards.
n
Provide a framework that exploits these standards to meet common clinical research
analysis and submission requirements.
Through the SAS Clinical Standards Toolkit 1.6 release, the SAS Clinical Standards
Toolkit supports only standards developed by the Clinical Data Interchange Standards
Consortium (CDISC). However, there is nothing in the product design that limits support
of other standards, and it is anticipated that both current users and future SAS Clinical
Standards Toolkit releases will support non-CDISC clinical-related standards.
2
Chapter 1 / Introduction to the SAS Clinical Standards Toolkit
The SAS Clinical Standards Toolkit is an open-source solution. Most of the code is
either Base SAS or SAS macro code. For XML-based standards, some Java and XSLT
code is used. The SAS Clinical Standards Toolkit is a SAS solution for SAS users.
Because study design, data collection, and analysis and submission requirements of
each research protocol are unique and because the SAS Clinical Standards Toolkit
provides libraries of open-source SAS macros and code, user customization is expected
and encouraged.
The SAS Clinical Standards Toolkit File
Roadmap
The SAS Clinical Standards Toolkit files can be aggregated into three primary groups:
n
the SAS Clinical Standards Toolkit global standards library
n
SAS program files (!SASROOT)
n
the SAS Clinical Standards Toolkit sample library
The primary function of the SAS Clinical Standards Toolkit global standards library is to
provide the metadata that defines each supported SAS Clinical Standards Toolkit
standard. This location is specified during product installation and can be subsequently
moved to another location. By default, on Microsoft Windows, this location is set to the
c:\cstGlobalLibrary directory.
Here are the top-level subfolders:
Figure 1.1 Global Standards Library Top Folder Hierarchy
The SAS Clinical Standards Toolkit File Roadmap
3
The metadata folder contains key metadata about all supported standards and can be
updated with each new product release. The metadata folder can be updated each time
you elect to register a new standard or version of a standard. The schema-repository
and xsl-repository folders support XML-based standards (such as CDISC ODM and
CDISC CRT-DDS). The standards folder contains a subfolder hierarchy for each
supported standard.
The logs folder contains a single transaction log SAS data set. This single transaction
log SAS data set can be used to track the changes that you make to the SAS Clinical
Standards Toolkit metadata files using the metadata management macros. For more
information, see Chapter 4, “Metadata Management,” in the SAS Clinical Standards
Toolkit: User's Guide.
This folder hierarchy illustrates the types of metadata supporting the CDISC SDTM
3.1.3 standard:
Figure 1.2 Global Standards Library Folder Hierarchy, CDISC SDTM 3.1.3
The control folder contains data sets that provide general metadata about the standard.
The macros folder contains SAS macros for standards that are included in the SAS
autocall path when working with that standard. The messages folder contains
messages used in reporting or process results for a specific standard. The metadata
folder contains the gold-standard definition of the standard as interpreted and
implemented by the person who registered the standard. The programs folder contains
programs and property files supporting the general use of the standard. The validation
folder and the control folder contain validation check metadata for those standards
supporting validation of standard domains or data sets.
4
Chapter 1 / Introduction to the SAS Clinical Standards Toolkit
Installation of the SAS Clinical Standards Toolkit places files in the !SASROOT tree for
the common SAS Clinical Standards Toolkit framework files. The generic (crossstandard or standard-independent) framework SAS macros are installed in
the !SASROOT/cstframework/sasmacros directory (Microsoft Windows). The SAS
config file was altered when the SAS Clinical Standards Toolkit was installed to include
this folder, by default, in the SASAUTOS path, meaning that the framework macros are
available to you whenever and however you start SAS and reference the default SAS
config file.
In the SAS Clinical Standards Toolkit sample library, there is a sample folder for each
standard. A sample folder contains the files that represent a sample SAS
implementation of the specific standard, sample study data sets, and sample programs
and results that illustrate the SAS Clinical Standards Toolkit functionality.
Here is the CDISC ADaM 2.1 sample folder hierarchy:
Figure 1.3 Folder Hierarchy for CDISC ADaM 2.1 Sample
Key SAS Clinical Standards Toolkit Components
5
The folder hierarchy might be different for other standards. For example, the CDISC
ADaM analysis folder and subfolders are unique to ADaM. The cstSampleLibrary
folder merely provides a location for the sample SAS implementation. Your files can be
located anywhere accessible by SAS. You do not need to conform to the folder-naming
convention illustrated in the CDISC ADaM sample.
Key SAS Clinical Standards Toolkit
Components
Framework macros and SAS macros specific to a standard provide the foundation for
the SAS Clinical Standards Toolkit functionality. Three other SAS Clinical Standards
Toolkit components are also noteworthy:
n
driver programs
n
properties
n
SASReferences data set
The SAS Clinical Standards Toolkit provides a set of driver programs (non-macro SAS
code) that illustrate all of the basic SAS Clinical Standards Toolkit functions using
sample data provided by SAS. These drivers can serve as templates for the processes
that you want to develop. These drivers might be submitted as batch or interactive
processes. They can be found in the programs subfolder for each standard (for the
relative location of this folder, see Figure 1.3 on page 4). For a more complete
description of what these drivers do, see “Using the SAS Clinical Standards Toolkit” on
page 7.
The SAS Clinical Standards Toolkit provides a series of framework properties files and
properties files specific to a standard (such as initialization, validation, and report
properties files). You can use these files to define global macro variables and to set
their default values. These typically can be found in the same folders as the driver
programs. Use of these property files is optional but recommended, and you can add
your own global macro variables as needed.
6
Chapter 1 / Introduction to the SAS Clinical Standards Toolkit
Perhaps the single most important file used by the SAS Clinical Standards Toolkit is the
SASReferences data set. The SASReferences data set captures all the input and output
file library and file references associated with any process. Here is a sample:
Figure 1.4
Sample SASReferences Data Set (CDISC SDTM 3.1.2 Validation Process)
Here are some general observations about the sample SASReferences data set:
n
The type and subtype values are used by the SAS Clinical Standards Toolkit code
to find the fileref or libref associated with a particular input or output file type.
n
The SASref can be any user-defined value.
n
An empty path tells the SAS Clinical Standards Toolkit to look for the default value
from the metadata for a specific standard in the global standards library (usually a
global standards library location).
A complete discussion of the SASReferences data set is provided in Chapter 6,
“SASReferences File,” in the SAS Clinical Standards Toolkit: User's Guide. The SAS
Clinical Standards Toolkit defines a standard SASReferences data set for each
supported standard (found in the global standards library directory/
standards/standard/control directory).
Using the SAS Clinical Standards Toolkit
7
Using the SAS Clinical Standards
Toolkit
The SAS Clinical Standards Toolkit global standards library contains the SAS metadata
definition of all supported standards. This metadata definition, defined primarily as the
reference_tables and reference_columns data sets, can be used as defined. The
metadata definition can be modified or used as a template to build your own SAS
representation of the CDISC standards provided by SAS or to build your own
customized standard.
Sample driver programs are provided with each supported standard. These programs
can be copied and modified to reflect your own data and metadata sources and the
target location for any SAS process output. These drivers all follow the same general
process workflow:
n
Set any process global macro variable values.
n
Define a root path for input and output files (unnecessary if you do not use relative
paths and you specify explicit paths).
n
Create or reference a SASReferences data set that defines all input and output files.
n
Call the cstutil_processsetup macro that confirms a valid SASReferences structure,
allocates any SAS librefs and filerefs, sets macro autocall for a specific standard,
and formats search paths.
n
Call the primary macro of interest (such as validation or define creation macro).
n
(Optional) Perform any session cleanup.
For a more complete description of what a driver program does, see “Running a
Validation Process” in Chapter 8, “Internal Validation,” in the SAS Clinical Standards
Toolkit: User's Guide.
8
Chapter 1 / Introduction to the SAS Clinical Standards Toolkit
9
2
Sample Scenarios
Validating the CDISC ADaM Data Sets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
Assumption . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
Location of ADaM Driver Programs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
Step 1: Derive Metadata about Your Source Data . . . . . . . . . . . . . . . . . 11
Step 2: Build Your Own Driver Program . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
Step 3: Submit the Modified Driver Program . . . . . . . . . . . . . . . . . . . . . . . 11
Creating a CRT-DDS 1.0.0 define.xml File from
CDISC SDTM 3.1.3 Source Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
Assumption . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
Location of CRT-DDS Driver Programs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
Step 1: Extract Available SDTM Metadata into
CRT-DDS Metadata Files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
Step 2: (Optional) Populate the Remaining CRTDDS Data Sets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
Step 3: Create the define.xml File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
Step 4: Validate the Generated define.xml File . . . . . . . . . . . . . . . . . . . . 15
Creating a Define-XML 2.0 define.xml File from
SDTM Source Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
Assumption . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
Location of Define-XML 2.0 Driver Programs . . . . . . . . . . . . . . . . . . . . . . 17
10 Chapter 2 / Sample Scenarios
Step 1: Extract Available SDTM Source
Metadata into the SAS Representation of
Define-XML 2.0 Metadata . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
Step 2: Create the define.xml File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
Importing and Validating a CDISC ODM XML File . . . . . . . . . . . . . . . . . . 22
Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
Assumption . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
Location of ODM Driver Programs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
Step 1: Validate the ODM XML File against the
ODM 1.3.1 XML Schema . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
Step 2: Import the ODM XML File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
Step 3: Validate the SAS Representation of the
ODM XML File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
Step 4: Extract Domain Data from the ODM XML File . . . . . . . . . . . . 26
Validating the CDISC ADaM Data Sets
Assumption
You have a library of CDISC ADaM SAS data sets (for the purposes of this example, it
is derived from a library of CDISC SDTM 3.1.2 domains). Derivation of ADaM analysis
files from SDTM domains is not a supported function in the SAS Clinical Standards
Toolkit. Products such as SAS Clinical Data Integration can be used to create these
mapping processes and transformation processes.
Location of ADaM Driver Programs
The ADaM driver programs are located in the sample study library directory/
cdisc-adam-2.1-1.6/sascstdemodata/programs directory.
Validating the CDISC ADaM Data Sets
11
Step 1: Derive Metadata about Your Source
Data
Before you can validate your ADaM data sets, you must derive a set of metadata that
describes your library of analysis data sets. In the SAS Clinical Standards Toolkit, the
metadata that describes your study data sets and columns is generally referred to as
source metadata. To help derive this metadata, the SAS Clinical Standards Toolkit
provides a sample driver program (create_sourcemetadata.sas) that calls the SAS
macro adamutil_createsrcmetafromsaslib.sas found in the global standards
library directory/standards/cdisc-adam-2.1-1.6/macros directory. This
macro uses Base SAS metadata (PROC CONTENTS output) and reference metadata
(provided by SAS) describing the CDISC ADaM standard to initialize the source
metadata. You might need to augment or modify this approach based on other
metadata that you have available or other processes that you adopt.
Step 2: Build Your Own Driver Program
The sample driver that can be run to demonstrate the ADaM validation process is
validate_data.sas. Use this driver as a sample to build your own driver program,
specifying the locations of source data and metadata. Take note of the SASReferences
data set created in the validate_data driver. It references both SDTM and ADaM data
and metadata, as well as ADaM controlled terminology. Reference to the SDTM
metadata supports comparison of ADaM column metadata with SDTM column metadata
for those columns derived directly from SDTM. (See “Assumption” on page 10.)
Step 3: Submit the Modified Driver Program
The SAS Clinical Standards Toolkit validation processes generally create two types of
output data sets: validation results and validation metrics. The names and locations of
these SAS data sets depend on your SASReferences specifications for results
management.
12 Chapter 2 / Sample Scenarios
Here is a sample Results data set produced by the validation process:
Figure 2.1 Partial Sample Results Data Set (CDISC ADaM 2.1 Validation Process)
The validation results are representative of the range of validation results one might
see, from no reported errors (such as ADAM0001) to multiple errors detected (such as
ADAM0053) to an inability to run a specific check because of a lack of data or metadata
(such as ADAM0102). The validation metrics output data set attempts to summarize the
validation results and provide a denominator for each check.
For a more thorough discussion of how validation is performed, see Chapter 8, “Internal
Validation,” in the SAS Clinical Standards Toolkit: User's Guide.
Creating a CRT-DDS 1.0.0 define.xml
File from CDISC SDTM 3.1.3 Source
Data
Overview
The SAS Clinical Standards Toolkit supports the currently published CDISC CRT-DDS
1.0 (define.xml) submission standard, which supports representation of the CDISC
SDTM tabulation data sets and ADaM 2.1 analysis data sets in metadata form.
Creating a CRT-DDS 1.0.0 define.xml File from CDISC SDTM 3.1.3 Source Data
13
Assumption
You have a library of CDISC SDTM SAS data sets (which are not read by this process)
from which a set of metadata (in the form of source_study, source_tables,
source_columns, source_values, and source_documents data sets) has been created.
This metadata must contain the expected, correctly typed columns created for the
sample study provided by SAS.
Location of CRT-DDS Driver Programs
The CRT-DDS driver programs are located in the sample study library
directory/cdisc-crtdds-1.0-1.6/programs directory.
Step 1: Extract Available SDTM Metadata
into CRT-DDS Metadata Files
The initial task is to extract the available SDTM metadata into CRT-DDS metadata files.
The SAS representation of CRT-DDS involves 39 data sets, but only 19 of these derive
directly from the SDTM metadata. The sample driver create_crtdds_from_sdtm.sas,
modified to point to your specific SDTM study, must be submitted to extract the SDTM
metadata. This process builds all 39 data sets, but populates only 19 (depending on
your study).
Note: The key input (source) files are the SDTM metadata files (source_study,
source_tables, source_columns, source_values, and source_documents), not the
SDTM domain data sets.
Step 2: (Optional) Populate the Remaining
CRT-DDS Data Sets
Note: If you do not have additional metadata, you can skip this step.
None of the remaining 39 data sets must be populated to create a viable define.xml file
using the SAS Clinical Standards Toolkit. However, they might be needed to further
14 Chapter 2 / Sample Scenarios
populate the remaining CRT-DDS data sets using your own metadata sources and
methods.
For more discussion of this step, see FAQ “How Do I Add Supplemental Data (Not
Directly Derivable from Other Standards Such as CDISC SDTM) Used to Create a
define.xml File?” on page 38. For a discussion of the data sets most critical for
successful derivation of the define.xml file, see “Special Topic: A Round Trip Exercise
Involving the CDISC CRT-DDS Standard: Importing and Exporting the define.xml File”
in Chapter 9, “XML-Based Standards,” in the SAS Clinical Standards Toolkit: User's
Guide.
Step 3: Create the define.xml File
At this point, all available content for the define.xml file has been captured in the SAS
representation (39 data sets) of the CDISC CRT-DDS standard. The SAS Clinical
Standards Toolkit provides a sample driver program, create_crtdds_define.sas. This
program builds and validates the define.xml file. Submit the create_crtdds_define.sas
driver program.
In this driver, the call to the primary task macro requests that the default style sheet
provided by SAS (the source of which is CDISC) be copied to the folder location
containing the generated define.xml file. The macro is located in the global
standards library directory/standards/cdisc-crtdds-1.0-1.6/macros
directory.
Here is the macro:
%crtdds_write(_cstCreateDisplayStyleSheet=1);
Creating a CRT-DDS 1.0.0 define.xml File from CDISC SDTM 3.1.3 Source Data
15
Here is a portion of the define.xml file as rendered by the default style sheet. Hyperlinks
among tables, columns, codelists, and other file elements are provided.
Figure 2.2
Partial Sample define.xml File (as Rendered by the Default Style Sheet)
Step 4: Validate the Generated define.xml
File
The final step is to validate the generated define.xml file. As discussed in Chapter 9,
“XML-Based Standards,” in the SAS Clinical Standards Toolkit: User's Guide, the SAS
Clinical Standards Toolkit offers two complementary validation methodologies.
n
The first methodology relies on the definition of a master set of validation checks as
described in the previous example. This method uses SAS files and SAS code to
validate the SAS representation of the standard. Example checks include the
assessment of foreign key relationships across data sets and value conformance to
a set of expected values.
n
The second methodology involves verification that the XML file is valid structurally
and syntactically according to the XML schema.
The final task in the sample create_crtdds_define.sas driver is to call the
cstutilxmlvalidate macro to perform the schema validation.
16 Chapter 2 / Sample Scenarios
Here is a sample Results data set produced by the validation process:
Figure 2.3 Partial Sample Results Data Set (CDISC CRT-DDS 1.0 Create Process)
The Results data set provides process information and the location of the generated
define.xml file. The Results data set confirms that no problems were found with the file
after validation of the file.
Note: The SAS validation of file content was not run in this example.
Creating a Define-XML 2.0 define.xml File from SDTM Source Data
17
Creating a Define-XML 2.0 define.xml
File from SDTM Source Data
Overview
The SAS Clinical Standards Toolkit supports the currently published CDISC Define-XML
2.0 submission standard, which supports representation of the CDISC SDTM and
CDISC SEND tabulation data sets and ADaM 2.1 analysis data sets in metadata form.
Assumption
You have a library of CDISC SDTM SAS data sets (which are not read by this process)
from which a set of metadata (in the form of source_study, source_tables,
source_columns, source_codelists, source_values, and source_documents data sets)
has been created. This metadata must contain the expected, correctly typed columns
created for the sample study provided by SAS. The source_study, source_tables, and
source_columns data sets are required to create a Define-XML 2.0 define.xml file.
Location of Define-XML 2.0 Driver Programs
The Define-XML driver programs are located in the sample study library
directory/cdisc-definexml-2.0-1.6/programs directory.
Step 1: Extract Available SDTM Source
Metadata into the SAS Representation of
Define-XML 2.0 Metadata
The initial task is to extract the available SDTM metadata into Define-XML 2.0 metadata
files. The SAS representation of Define-XML 2.0 involves 46 data sets, but only 31 of
these are typically used for the creation of a Define-XML 2.0 file. The other 15 data sets
contain ODM (Operational Data Model) metadata that is an extension of the DefineXML 2.0 model. The sample driver create_sasdefine_from_source.sas, modified to
18 Chapter 2 / Sample Scenarios
point to your specific SDTM study metadata, must be submitted to create the SAS
representation of Define-XML 2.0 metadata. This process builds the 31 core data sets,
but it might not populate all of them (depending on the completeness of the metadata of
your study).
The sample driver runs this macro:
%define_sourcetodefine(
_cstOutLib=srcdata,
_cstSourceStudy=sampdata.source_study,
_cstSourceTables=sampdata.source_tables,
_cstSourceColumns=sampdata.source_columns,
_cstSourceCodeLists=sampdata.source_codelists,
_cstSourceDocuments=sampdata.source_documents,
_cstSourceValues=sampdata.source_values,
_cstFullModel=N,
_cstLang=en
);
The macro is located in the global standards library directory/
standards/cdisc-definexml-2.0-1.6/macros directory.
Note: The key input (source) files are the SDTM metadata files (source_study,
source_tables, source_columns, source_codelists, source_values, and
source_documents), not the SDTM domain data sets. The source files to create a
Define-XML 2.0 file have a different structure than the source files to create a CRT-DDS
1.0 file.
In the sample study, the source files for the SDTM 3.1.2 study are in the sample
study library directory/cdisc-definexml-2.0-1.6/sascstdemodata/
cdisc-sdtm-3.1.2/metadata directory.
Step 2: Create the define.xml File
At this point, all available content for the define.xml file has been captured in the SAS
representation (31 data sets) of the CDISC Define-XML 2.0 standard. The SAS Clinical
Standards Toolkit provides a sample driver program, create_definexml.sas. This
program builds and validates the define-sdtm-3.1.2.xml file. Submit the
create_definexml.sas driver program.
Creating a Define-XML 2.0 define.xml File from SDTM Source Data
19
In this driver, the call to the primary task macro requests that the default style sheet
provided by SAS (the source of which is CDISC) be copied to the folder location
containing the generated define.xml file. The macro is located in the global
standards library directory/standards/cdisc-definexml-2.0-1.6/
macros directory.
Here is the macro:
%define_write(_cstCreateDisplayStyleSheet=1,
_cstHeaderComment=%str(Produced from SAS data using the SAS
Clinical Standards Toolkit &_cstVersion));
Here is a portion of the define-sdtm-3.1.2.xml file as rendered by the default style sheet.
Hyperlinks among tables, columns, codelists, and other file elements are provided.
Display 2.1
Sheet)
Partial Sample define-sdtm-3.1.2.xml File (as Rendered by the Default Style
The final task in the sample create_definexml.sas driver is to call the cstutilxmlvalidate
macro to perform the schema validation. This involves verifying that the Define-XML
define.xml file is valid structurally and syntactically according to the XML schema.
20 Chapter 2 / Sample Scenarios
Note: The SAS Clinical Standards Toolkit 1.6 does not contain validation checks to
validate the SAS representation of the Define-XML 2.0 standard. It is expected that
version 1.7 of the SAS Clinical Standards Toolkit will contain validation methodology
that goes beyond XML schema validation.
Creating a Define-XML 2.0 define.xml File from SDTM Source Data
21
Here is a sample Results data set produced by the validation process:
Figure 2.4 Partial Sample Results Data Set (CDISC Define-XML 2.0 Create Process)
The Results data set provides process information and the location of the generated
define-sdtm-3.1.2.xml file. The Results data set confirms that no problems were found
with the file after validation of the file.
22 Chapter 2 / Sample Scenarios
Importing and Validating a CDISC ODM
XML File
Overview
The SAS Clinical Standards Toolkit supports the currently published CDISC ODM 1.3.0
and 1.3.1 standards, which facilitate the archival and interchange of metadata and data
for clinical research. The SAS Clinical Standards Toolkit can import an ODM XML file
into a SAS data set representation of the ODM 1.3.0 or 1.3.1 standard.
Assumption
You have an ODM XML file (which is not created by this process) from which a SAS
representation has to be created.
Location of ODM Driver Programs
The ODM driver programs are located in the sample study library directory/
cdisc-odm-1.3.1-1.6/programs directory.
Step 1: Validate the ODM XML File against
the ODM 1.3.1 XML Schema
The initial task is to validate the ODM XML file against the ODM 1.3.1 XML schema.
This involves verifying that the ODM XML file is valid structurally and syntactically
according to the XML schema. The sample driver create_sasodm_fromxml.sas,
modified to point to your specific ODM XML file, contains a call to the cstutilxmlvalidate
macro to perform validation.
Importing and Validating a CDISC ODM XML File
23
Here is a sample Results data set produced by the schema validation process:
Figure 2.5
Partial Sample Results Data Set (CDISC ODM 1.3.1 Schema Validation Process)
This Results data set provides process information and the location of the ODM XML
file . The Results data set confirms that the ODM XML file validated successfully.
24 Chapter 2 / Sample Scenarios
Here is a sample Results data set that shows schema validation issues with an ODM
XML file:
Figure 2.6 Partial Sample Results Data Set (CDISC ODM 1.3.1 Schema Validation Process) –
Invalid ODM XML File
Running the odm_xmlvalidate macro is not required to import an ODM XML file.
However, importing an invalid ODM XML file can result in an incomplete import because
the odm_read macro ignores elements and attributes in the ODM XML file that are not
defined by the XML schema.
Step 2: Import the ODM XML File
The next step is to import the ODM XML file by calling the odm_read macro, which
results in 76 SAS data sets describing the CDISC ODM 1.3.1 data model. The
odm_read macro is called by the sample driver create_sasodm_fromxml.sas.
Here is a sample Results data set. It provides process information and the location of
the imported ODM XML file. The Results data set confirms that no problems were found
Importing and Validating a CDISC ODM XML File
25
with the import. And, the Results data set shows that format catalogs and data sets
have been created.
Figure 2.7 Partial Sample Results Data Set (CDISC ODM 1.3.1 Read Process)
Step 3: Validate the SAS Representation of
the ODM XML File
The next step is to validate the SAS representation of the ODM XML standard. In step
1, the ODM XML file was validated against the XML schema. Validating the SAS
representation of the ODM XML standard goes further than XML schema validation.
An example of a check that is part of the validation of the SAS representation is the
assessment of foreign key relationships across data sets. The SAS Clinical Standards
Toolkit provides a sample driver program, validate_odm_data.sas, which validates the
SAS representation of an ODM XML file.
Submit the modified driver program. The SAS Clinical Standards Toolkit validation
processes generally create two output files: validation results and validation metrics.
The names and locations of these SAS data sets depend on your SASReferences
specifications for results management.
26 Chapter 2 / Sample Scenarios
Here is a sample Results data set produced by the validation process:
Figure 2.8 Partial Sample Results Data Set (CDISC ODM 1.3.1 Validation Process)
In this example, there are several issues in the foreign key relationships across data
sets.
Step 4: Extract Domain Data from the ODM
XML File
The final step is to extract domain data from the ODM XML file by calling the
odm_extractdomaindata macro. The odm_extractdomaindata macro extracts one or
more data sets from the ClinicalData or ReferenceData sections of the ODM XML file.
The odm_extractdomaindata macro is called by the sample driver
extract_domaindata.sas (extract one domain) or by the sample driver
extract_domaindata_all.sas (extract all domains).
Importing and Validating a CDISC ODM XML File
Here is an example of the extracted AE data set:
Figure 2.9 Example Extracted AE Data Set
27
28 Chapter 2 / Sample Scenarios
29
3
Frequently Asked Questions
Global Standards Library . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
Does It Matter Where the Global Standards
Library is Located? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
How Do I Change the Location of the Global
Standards Library? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
Process Results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
How Do I See Process Results? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
Standards . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
How Do I Customize a Registered Standard? . . . . . . . . . . . . . . . . . . . . . . 32
How Do I Register a New Standard (or a New
Version for an Existing Standard)? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
Does SAS Offer Updates for Previously Released Standards? . . 33
Creating and Modifying Files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
Should I Modify SAS Clinical Standards Toolkit
Files Supplied by SAS If I Want to Test
Changes or Make Permanent Changes to Any
of Those Files? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
How Do I Modify a Sample Driver Program to
Point to My Own Study Data? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
How Do I Create the Required Study Metadata? . . . . . . . . . . . . . . . . . . 35
Can I Modify the Check Metadata Columns
tableScope and columnScope to Match My Study? . . . . . . . . . . . . . 35
Can I Add My Own New Validation Checks for
SDTM or ADaM? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
30 Chapter 3 / Frequently Asked Questions
How Do I Use My Own Controlled Terminology? . . . . . . . . . . . . . . . . . . 36
How Do I Point to My Company’s Version of MedDRA? . . . . . . . . . . 37
How Do I Use My Own Style Sheet with a
define.xml File Generated by SAS Clinical
Standards Toolkit? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
Can I Associate a Style Sheet with an ODM XML
File Generated by the SAS Clinical Standards Toolkit? . . . . . . . . . 38
How Do I Add Supplemental Data (Not Directly
Derivable from Other Standards Such as
CDISC SDTM) Used to Create a define.xml File? . . . . . . . . . . . . . . . 38
How Do I Create the Data Sets That Are Used to
Create an ODM XML File? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
How Do I Modify the autocall Path to Point to My
Own Macros? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
Do I Have to Create and Use a SASReferences
Data Set for Any SAS Clinical Standards
Toolkit Process That I Run? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
Do I Need to Use Properties Files to Define My
Own Global Macro Variables? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
Validation Process . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
Do I Have to Run All of the SAS Validation
Checks for SDTM? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
Can I Run a Validation Process in the SAS
Clinical Standards Toolkit on Multiple Studies
Simultaneously? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
If I Disagree with or Choose to Modify the
Codelogic of a Specific Validation Check, What
Needs to Be Done? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
Macros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
Is There Any Debugging Help for SAS Macro Errors? . . . . . . . . . . . . 43
Where Do the Framework and Standard-Specific
Macros Reside? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
Miscellaneous . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
Global Standards Library
31
How Do I Report Problems, Ask Questions, or
Get More Information about How to Use the
SAS Clinical Standards Toolkit? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
Can the SAS Clinical Standards Toolkit 1.6 Be
Used with Any Release of SAS Besides SAS 9.4? . . . . . . . . . . . . . . 44
How Is Availability of a New SAS Clinical
Standards Toolkit Release Publicized? . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
Does a New Version of the SAS Clinical
Standards Toolkit Automatically Overwrite
Files Installed with a Previous Version? . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
Global Standards Library
Does It Matter Where the Global Standards
Library is Located?
No. On Microsoft Windows systems, the default location for the global standards library
is the c:/cstGlobalLibrary directory. On UNIX systems, the default location for the
global standards library is the /usr/local/cstGlobalLibrary directory.
This location is assumed (and referenced as global standards library directory)
throughout this document. global standards library directory can point to any location
that is accessible by SAS.
For a summary of the cstGlobalLibrary, see “Global Standards Library” in Chapter 2,
“Framework,” in the SAS Clinical Standards Toolkit: User's Guide.
How Do I Change the Location of the Global
Standards Library?
The value of the variable cstGlobalLibrary is set during installation of the SAS Clinical
Standards Toolkit. If you want to change the location after installation, you must modify
the framework autocall utility macro cstutil_setcstgroot to point to the new location that
you have chosen.
32 Chapter 3 / Frequently Asked Questions
Note: The SAS Clinical Standards Toolkit recognizes and uses only one global
standards library at a time.
Process Results
How Do I See Process Results?
The default location for the results of a SAS Clinical Standards Toolkit process is set by
the _cstResultsDS property in the framework initialize.properties file. By default, this is
set to work._cstresults. Process results can be persisted if the SASReferences data set
has a type=results record.
Note: All SAS Clinical Standards Toolkit process Results data sets have the same
structure and all columns have the same meaning.
Standards
How Do I Customize a Registered Standard?
The definition of each standard (and version of each standard) is done in the global
standards library. A best practice recommendation is that you do not (permanently)
modify the global standards library files., Instead, modify copies of the files.
The files and metadata that constitute a standard vary from standard to standard. Use
the files that define each standard, located in the global standards library
directory/standards/standard directory, as templates and add your
customizations. You can rename or introduce your own subfolders and files that
constitute each standard. If you want to create your own version of an existing
registered standard, review the information in the next question.
Standards 33
How Do I Register a New Standard (or a New
Version for an Existing Standard)?
Use the SAS Clinical Standards Toolkit framework utility macro
cst_registerstandard.sas to register a new standard. A new subfolder hierarchy is added
to the global standards library directory/standards/ directory, and the
global standards library directory/metadata/standards.sas7bdat
data set is updated with metadata about the new standard. This metadata is provided in
the form of two data sets: standards and StandardSASReferences. These data sets are
passed to the SAS Clinical Standards Toolkit as parameters in the call to the
cst_registerstandard macro.
See “Maintenance Usage Scenarios” in Chapter 2, “Framework,” in the SAS Clinical
Standards Toolkit: User's Guide.
Does SAS Offer Updates for Previously
Released Standards?
New production releases of the SAS Clinical Standards Toolkit routinely provide
updates to previously released standards. For information about how these updates are
provided, see “Does a New Version of the SAS Clinical Standards Toolkit Automatically
Overwrite Files Installed with a Previous Version?” on page 45.
SAS has a SAS Support Knowledge Base Focus Area
(http://support.sas.com/rnd/base/cdisc/cst/index.html) to communicate product
information, references, and updates. Preproduction files are also available for
download.
The SAS Clinical Standards Toolkit development team supports the early adopter phase
and works with development partners on future product releases.
34 Chapter 3 / Frequently Asked Questions
Creating and Modifying Files
Should I Modify SAS Clinical Standards
Toolkit Files Supplied by SAS If I Want to
Test Changes or Make Permanent Changes
to Any of Those Files?
A best practice recommendation is that you do not (permanently) modify framework
autocall macros or global standards library files. Instead, modify copies of the files. This
allows seamless updates to those files provided by SAS without overwriting or losing
your changes.
Note: The SAS Clinical Standards Toolkit provides an internal backup of the global
standards library files for specific standards provided by SAS in the sample study library
directory subfolders for a specific standard.
How Do I Modify a Sample Driver Program to
Point to My Own Study Data?
Each sample driver program sets a &studyRootPath macro variable to point to the root
path of the sample study SAS supplies for each standard. This macro enables you to
point to your own study root path by resetting the value of this macro variable. You
might prefer to use explicit paths in your SASReferences data set and not use
&studyRootPath at all.
The sample drivers assume a study folder hierarchy like that of the sample study, but
this hierarchy is not required. If you have another organization for your study, you might
need to make other changes to the paths specified in your driver program.
Creating and Modifying Files
35
How Do I Create the Required Study
Metadata?
Each supported standard might define study metadata differently. The SAS
representation of the 32 standard CDISC SDTM 3.1.2 domains differs from the SAS
representation of the three types of tables supported in CDISC ADaM 2.1.
Most users have metadata about their studies in some form and file format other than
that used by the SAS Clinical Standards Toolkit. You have to convert or map some of
that metadata into the source_study, source_tables, and source_columns format
specified in the sample study metadata folder (such as the sample study library
directory/cdisc-adam-2.1-1.6/sascstdemodata/metadata directory). Some
standards provide sample code that supports this task. For CDISC ADaM, look at the
create_sourcemetadata.sas sample driver program as an example.
Note: The structure of the source metadata corresponds to the reference metadata for
each standard as defined in the global standards library (such as global standards
library directory/standards/cdisc-adam-2.1-1.6/metadata
reference_tables and reference_columns data sets).
Note: SAS Clinical Standards Toolkit 1.6 has an initial implementation that supports
the creation of Define-XML 2.0 files. The Define-XML 2.0 standard has different
metadata needs than the CRT-DDS 1.0.0 standard. The previous paragraphs of this
question describe metadata used for the creation of CRT-DDS 1.0 define.xml files. For
more information about the creation of Define-XML 2.0 define.xml files, see Chapter 9,
“XML-Based Standards,” in the SAS Clinical Standards Toolkit: User's Guide.
Can I Modify the Check Metadata Columns
tableScope and columnScope to Match My
Study?
Yes. The initial values are based on the sample data associated with each standard.
Your study data almost certainly differs. For CDISC SDTM and CDISC ADaM, your
domains and analysis data sets reflect your study protocol. Some checks might not
36 Chapter 3 / Frequently Asked Questions
apply to some of your domains because your implementation of that domain might
deviate from other domains from the same class (such as Findings).
Be aware that tableScope and columnScope wildcarding is a convenience. Instead, you
can explicitly reference a specific table or column in any check invocation.
See “Validation Check Metadata: Validation Master” in Chapter 7, “Compliance
Assessment Against a Reference Standard,” in the SAS Clinical Standards Toolkit:
User's Guide.
Can I Add My Own New Validation Checks for
SDTM or ADaM?
Yes. You can add checks to any SAS Clinical Standards Toolkit standard that supports
validation. Each check is defined as a set of metadata (in the validation_master data set
found in the global standards library directory/standards/standard/
validation/control directory) and a message to be used when an error is detected
(in the messages data set found in the global standards library directory/
standards/standard/messages directory).
For each new check, you must create the check metadata to conform to the
validation_master template and an associated message to conform to the messages
data set metadata structure.
For more information about check metadata and the available SAS Clinical Standards
Toolkit validation check macros, see Chapter 8, “Internal Validation,” in the SAS Clinical
Standards Toolkit: User's Guide.
How Do I Use My Own Controlled
Terminology?
The SAS Clinical Standards Toolkit permits the use of any set of controlled terminology
or any coding dictionaries. Generally, controlled terminology is defined to the SAS
Clinical Standards Toolkit as SAS format catalogs and coding dictionaries as SAS data
sets. Either format is valid.
The SASReferences data set is used to document these format catalogs and coding
dictionaries and to facilitate run-time references to these reference input sources. In the
Creating and Modifying Files
37
SAS Clinical Standards Toolkit sample drivers, a SASReferences type=fmtsearch
record points to each SAS format catalog (and allows specification of a reference order
for like-named formats), and a type=referencecterm record points to each specific
coding dictionary to be referenced. The format search path is set with the call to the
cstutil_processsetup macro.
For more information about using controlled terminology in validation processes, see
“Special Topic: Using Alternative Controlled Terminologies” in Chapter 7, “Compliance
Assessment Against a Reference Standard,” in the SAS Clinical Standards Toolkit:
User's Guide.
How Do I Point to My Company’s Version of
MedDRA?
The sample SDTM SASReferences data set offers an example of referencing the
MedDRA dictionary. The type=referencecterm record points to a folder (which can be
anywhere) that can contain a MedDRA data set (using any name).
The SDTM validation check (SDTM0451) provided by SAS that compares AEDECOD to
MedDRA preferred terms expects that the MedDRA data set contains the column
PT_NAME. If your data set uses other column names, see “If I Disagree with or Choose
to Modify the Codelogic of a Specific Validation Check, What Needs to Be Done?” on
page 42.
See “Building a Validation Process” in Chapter 7, “Compliance Assessment Against a
Reference Standard,” in the SAS Clinical Standards Toolkit: User's Guide.
How Do I Use My Own Style Sheet with a
define.xml File Generated by SAS Clinical
Standards Toolkit?
The SAS Clinical Standards Toolkit uses the crtdds_write macro (for CRT-DDS 1.0.0) or
the define_write macro (for Define-XML 2.0) to create a define.xml file. This macro has
the optional parameter _cstCreateDisplayStyleSheet that determines two things:
n
whether the macro creates a style sheet in the same folder as the output define.xml
file
38 Chapter 3 / Frequently Asked Questions
n
whether the macro creates a reference to that style sheet in the define.xml file
If you set this macro parameter to 1, the macro looks in the provided SASReferences
file for a record with a type/subtype of referencexml/stylesheet and uses that file.
By default, the crtdds_write macro and the define_write macro create a style sheet
reference in the define.xml file and copy a style sheet in the same folder as the
define.xml file. This default style sheet, define1-0-0.xsl (for CRT-DDS 1.0.0) or
define2-0-0.xsl (for Define-XML 2.0), is copied from the global standards
library directory/standards/cdisc-crtdds-1.0/stylesheet directory (for
CRT-DDS 1.0.0) or the global standards library directory/standards/
cdisc-definexml-2.0/stylesheet directory (for Define-XML 2.0). The default
style sheet is identical to the style sheet that was originally made available by CDISC as
part of the original release of the define.xml file.
See “Writing XML Files” in Chapter 9, “XML-Based Standards,” in the SAS Clinical
Standards Toolkit: User's Guide.
Can I Associate a Style Sheet with an ODM
XML File Generated by the SAS Clinical
Standards Toolkit?
Although it is not common to associate a style sheet with an ODM XML file, the SAS
Clinical Standards Toolkit allows it. To do this, you must call the macro odm_write with
macro parameter cstCreateDisplayStyleSheet=1 and add a record to the
SASReferences file with type/subtype of referencexml/stylesheet pointing to the
style sheet to be used.
Note: SAS does not supply a default style sheet for ODM.
See the online macro API reference material about ODM.
How Do I Add Supplemental Data (Not
Directly Derivable from Other Standards Such
Creating and Modifying Files
39
as CDISC SDTM) Used to Create a define.xml
File?
When the SAS Clinical Standards Toolkit creates a CRT-DDS 1.0 define.xml file, it
converts the information from a SAS data set representation of the CRT-DDS model
into XML. For CDISC CRT-DDS 1.0, this means that 39 data sets (such as itemdefs)
are the source for creating the define.xml element and attribute structure. The content of
these 39 data sets can be derived in part from other standards (such as CDISC SDTM).
You can directly maintain these 39 data sets so that you can add data that needs to be
part of the define.xml. To maintain these 39 data sets, you must be familiar with the
structure of these data sets and the relationships among these data sets. For example,
to add Value Level Metadata to the define.xml file, add rows to four data sets: itemdefs,
valuelists, valuelistitemrefs, and itemvaluelistrefs.
See the online API reference material about CRT-DDS 1.0 SAS data sets and “Writing
XML Files” in Chapter 9, “XML-Based Standards,” in the SAS Clinical Standards Toolkit:
User's Guide.
How Do I Create the Data Sets That Are Used
to Create an ODM XML File?
When the SAS Clinical Standards Toolkit creates an ODM XML file, it converts the
information from a SAS data set representation of the ODM model into XML. For CDISC
ODM 1.3.1, this means that 76 data sets (such as itemdefs) are the source for creating
the ODM XML element and attribute structure.
You can directly maintain these 76 data sets so that you can add data that needs to be
part of the ODM XML file. To maintain these 76 data sets, you must be familiar with the
structure of these data sets and the relationships among these data sets.
Normally, you would not use SAS to create an ODM XML file because it is assumed
that there is a workflow in which a data collection and management system exports
metadata definitions and data content in the form of a transactional or snapshot ODM
XML file. When SAS is used to create an ODM XML file, the initial SAS representation
of the ODM model can be created by using one of these methods:
40 Chapter 3 / Frequently Asked Questions
n
Call %cst_createTablesForDataStandard(_cstStandard=CDISC-ODM,
_cstStandardVersion=1.3.1, _cstOutputLibrary=work); to build zero-observation SAS
data sets.
n
Call the %odm_read macro to import an ODM XML file that can serve as a template
for the creation of the SAS representation of the ODM XML data model.
See “Writing XML Files” in Chapter 9, “XML-Based Standards,” in the SAS Clinical
Standards Toolkit: User's Guide.
How Do I Modify the autocall Path to Point to
My Own Macros?
The SAS Clinical Standards Toolkit autocall path is set by default to SASAUTOS, which
includes the SAS Clinical Standards Toolkit framework macros found in the !SASROOT
\cstframework\sasmacro directory (Microsoft Windows) or in the !SASROOT/
sasautos directory (UNIX).
A macro library is defined for each standard in the global standards library. (See “Where
Do the Framework and Standard-Specific Macros Reside?” on page 43.) In the
SASReferences data set, one or more records with type=autocall can be used to reset
the SAS autocall path, where the order column specifies the order each macro library is
to be referenced. You can use the same strategy to reference any user-defined macro
libraries, even if those libraries are not associated with a specific standard.
See Chapter 6, “SASReferences File,” in the SAS Clinical Standards Toolkit: User's
Guide.
Do I Have to Create and Use a
SASReferences Data Set for Any SAS Clinical
Standards Toolkit Process That I Run?
No. However, the SAS Clinical Standards Toolkit has adopted this method to define and
document the input and output file and library references, to build the macro autocall,
and to format search paths for each SAS Clinical Standards Toolkit process. Although
you can perform all library and file allocations and set SAS system options yourself, it is
highly recommended that you use the SASReferences approach.
Validation Process
41
See Chapter 6, “SASReferences File,” in the SAS Clinical Standards Toolkit: User's
Guide.
Do I Need to Use Properties Files to Define
My Own Global Macro Variables?
No. However, doing so standardizes your approach to creating and documenting global
macro variables.
Within the SAS Clinical Standards Toolkit, either of these two methods is always used
to process properties files:
n
adding a type=properties record to the SASReferences data set, which is then
processed in the routine call to cstutil_processsetup
n
directly calling cst_setproperties
See “Properties” in Chapter 3, “Metadata File Descriptions,” in the SAS Clinical
Standards Toolkit: User's Guide.
Validation Process
Do I Have to Run All of the SAS Validation
Checks for SDTM?
No. The SAS Clinical Standards Toolkit offers the full set of CDISC SDTM 3.1.2
validation checks in the global standards library data set called validation_master found
in the global standards library directory/standards/
cdisc-sdtm-3.1.2-1.6/validation/control directory.
This set of checks represents an amalgamation of WebSDM, OpenCDISC, and SAS
checks. Some checks assess structural (metadata) compliance, and other checks
evaluate specific data sets, columns, and data values at the “cell” level.
For any validation process, the SAS Clinical Standards Toolkit expects that you have
defined and referenced (in SASReferences, with type/subtype set to control/
validation) a run-time set of checks that might be some subset of the
42 Chapter 3 / Frequently Asked Questions
validation_master checks. You have the option of both creating this subset and ordering
the checks to be run.
The run-time set of checks might change over time. For example, once the metadata
structure of the domains is confirmed, those checks do not need to be run again.
See “Building a Validation Process” in Chapter 7, “Compliance Assessment Against a
Reference Standard,” in the SAS Clinical Standards Toolkit: User's Guide.
Can I Run a Validation Process in the SAS
Clinical Standards Toolkit on Multiple Studies
Simultaneously?
Yes. The SAS Clinical Standards Toolkit offers several distinct methodologies that
support validating multiple studies. However, these methodologies depend on your data
accrual processes and workflow. It is important that you maintain relationships between
the source study data and the metadata that the SAS Clinical Standards Toolkit
requires. Each column in each data set in each study must be uniquely identifiable.
See “Case Study 7: Validation of Multiple Studies” in Chapter 7, “Compliance
Assessment Against a Reference Standard,” in the SAS Clinical Standards Toolkit:
User's Guide.
If I Disagree with or Choose to Modify the
Codelogic of a Specific Validation Check,
What Needs to Be Done?
Create your own copy of the validation_master data set for a specific standard (which
might be the run-time validation_control data set). Then, make the changes to the
copy’s validation check metadata, including codelogic.
If you believe that the codelogic provided by SAS is in error and you want SAS to
correct the error, report the problem through normal SAS Technical Support channels.
Approved updates become available with a subsequent hot fix or release of the SAS
Clinical Standards Toolkit.
Macros
43
Macros
Is There Any Debugging Help for SAS Macro
Errors?
Debugging errors in SAS macros can be difficult. The SAS Clinical Standards Toolkit
defines the global macro variable_cstDebug to enable these SAS system options:
mprint, mlogic, symbolgen, and mautolocdisplay.
Use these options to significantly increase the number of lines written to the SAS log.
By default, _cstDebug is set to 0, and these options are not enabled.
Common errors might be discussed in various parts of the SAS Clinical Standards
Toolkit: User's Guide. SAS also maintains a knowledge base that includes notes
regarding installation, problems, and usage for specific products. (See “How Do I Report
Problems, Ask Questions, or Get More Information about How to Use the SAS Clinical
Standards Toolkit?” on page 44.)
Other users might have reported or addressed problems on the SAS and Clinical Trials
Community forum (http://communities.sas.com/community/sas_and_clinical_trials).
See “Common Errors and Solutions” in Chapter 6, “SASReferences File,” in the SAS
Clinical Standards Toolkit: User's Guide.
Where Do the Framework and StandardSpecific Macros Reside?
The SAS Clinical Standards Toolkit framework macros can be found here for SAS 9.3:
n
Microsoft Windows
!SASROOT\cstframework\sasmacro, where !SASROOT is
C:\Program Files\SASHome\SASFoundation\9.3
n
UNIX
44 Chapter 3 / Frequently Asked Questions
!SASROOT/sasautos, where !SASROOT is /usr/local/SASHome/
SASFoundation/9.3/
Macros for specific standards can be found in the global standards library
directory/standards/standard/macros directory.
Miscellaneous
How Do I Report Problems, Ask Questions, or
Get More Information about How to Use the
SAS Clinical Standards Toolkit?
See “References” in Chapter 1, “Introduction to the SAS Clinical Standards Toolkit,” in
the SAS Clinical Standards Toolkit: User's Guide.
Can the SAS Clinical Standards Toolkit 1.6
Be Used with Any Release of SAS Besides
SAS 9.4?
The SAS Clinical Standards Toolkit 1.6 release is validated on SAS 9.3 (M2) and SAS
9.4, running on these platforms:
n
Windows for x64
n
Linux for x64
In general, the code base for the SAS Clinical Standards Toolkit is designed to be
backward compatible with prior releases of Base SAS, with only limited use of new
features introduced with recent SAS releases. The open-source nature of the product
allows user updates to all product components. “Off-label” use of the product is at the
discretion of the user.
Miscellaneous
45
How Is Availability of a New SAS Clinical
Standards Toolkit Release Publicized?
Releases of the SAS Clinical Standards Toolkit occur periodically. Your site
representative should contact your SAS account manager for updates on the release
schedule.
Availability of product updates is typically announced on the SAS and Clinical Trials
Community forum (http://communities.sas.com/community/sas_and_clinical_trials).
You can use e-mail notifications and RSS feeds to ensure that you do not miss any
announcements.
The SAS Clinical Standards Toolkit development team members report on product
updates and availability at user conferences for specific industries such as PharmaSUG
and PhUSE.
Does a New Version of the SAS Clinical
Standards Toolkit Automatically Overwrite
Files Installed with a Previous Version?
No. The installation prompts you to define new locations for the SAS Clinical Standards
Toolkit global standards library and the sample library. SAS has a strategy of adding the
release number to folder names for the global standards library files and the sample
study library files. For example:
n
SAS Clinical Standards Toolkit 1.5
global standards library directory/standards/
cdisc-sdtm-3.1.2-1.5/control
n
SAS Clinical Standards Toolkit 1.6
global standards library directory/standards/
cdisc-sdtm-3.1.2-1.6/control
In addition, SAS does not automatically reset the default version of any previously
installed version of a standard to the current version. Instead, you must make the
decision to upgrade to the current version.
46 Chapter 3 / Frequently Asked Questions
See “Unregistering an Old Version of a Standard, and Then Registering a New Version
of a Standard” in Chapter 2, “Framework,” in the SAS Clinical Standards Toolkit: User's
Guide.
Was this manual useful for you? yes no
Thank you for your participation!

* Your assessment is very important for improving the work of artificial intelligence, which forms the content of this project

Download PDF

advertisement