The domain
and column metadata that constitute the SAS representation of CDISC
CRT-DDS 1.0 are derived from the global standards library in these
formats:
-
as empty data sets (using the utility
macro cst_createTablesForDataStandard)
-
as table metadata for 39 data sets
(reference_tables in the standard metadata folder (see the example
in the following table))
-
Sample Reference_Tables Record (CDISC CRT-DDS 1.0)
Sample Reference_Columns Record (CDISC CRT-DDS 1.0)
|
|
|
|
|
|
|
|
|
File type (Snapshot
| Transactional)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
As a general
rule, the SAS representation of the CDISC CRT-DDS standard is patterned
to match the XML element (data set) and attribute (column) structure
of define.xml. For example, for CDISC SDTM, domain-level metadata
is represented by a define.xml ItemGroupDef element. This metadata
is captured in the ItemGroupDefs SAS data set. This is shown in the
following code and table that represent the
TE
domain metadata:
<ItemGroupDef OID="docroot.IG.TE"
Name="TE"
Repeating="No"
IsReferenceData="Yes"
Purpose="Tabulation"
def:Label="Trial Elements"
def:Structure="One record per planned element"
def:DomainKeys="STUDYID,ETCD"
def:Class="Trial Design"
def:ArchiveLocationID="ArchiveLocation.te">
!-- All ItemRefs would be listed here -->
<def:leaf ID="ArchiveLocation.te"
xlink:href="te.xpt"> <def:title>te.xpt</def:title>
</def:leaf>
</ItemGroupDef>
Sample Data Set Representation: ItemGroupDefs.sas7bdat
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
One record per planned
element
|
|
|
|
|
|
|
Note: Empty or null
attributes are not typically included in the XML file.
The following
table lists the complete set of 39 tables that form the SAS Clinical
Standards Toolkit SAS representation of the CDISC CRT-DDS 1.0 standard.
Data Sets in the SAS Representation of the CDISC CRT-DDS 1.0
Standard
|
|
|
ItemQuestionTranslatedText
|
CLItemDecodeTranslatedText
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
The highly
structured nature of CDISC CRT-DDS data requires that any mapping
to a relational format include a large number of data sets, with foreign
key relationships to help preserve the intended non-relational object
structure. In the SAS Clinical Standards Toolkit, foreign key relationships
are enforced when validating the CDISC CRT-DDS data sets.
Field
lengths in the CDISC CRT-DDS data sets are consistent by core data
type. CDISC has not specified any limit to the length of most character
fields. Arbitrary lengths have been chosen by data type. These lengths
are listed in the following table. In the table, standard data types
are distilled into core data types. To be safe, larger lengths have
been chosen to ensure that no data loss occurs in the SAS Clinical
Standards Toolkit pre-installed data sets. Production tables might
be compressed using SAS mechanisms to preserve disk space.
CDISC CRT-DDS Default Lengths by Data Type
|
|
|
|
|
A unique object identifier
or a reference
|
|
|
A character field that
can accommodate a large number of characters
|
|
|
|
|
|
An item of collected
or reference data
|
|
|
An absolute or relative
file system path or URL
|
The following
table lists the data sets with member columns that form the CDISC
CRT-DDS 1.0 data in the SAS Clinical Standards Toolkit.
No data
set has more than one variable that acts as the key or index for that
data set. The names of key variables are prepended with two asterisks
(**). Some data sets do not have a key.
Foreign
key variable names are prepended with two carat characters (^^). Foreign
key variable names reference, in brackets [ ], the name of the data
set for which it is a foreign key.
Required
fields are marked with an X between brackets [X]. Required fields
are fields for which a non-nil and non-whitespace-only value must
be supplied in any observation for that data set.
Only the
DefineDocument data set, which contains valid values for the FileOID
and FileType variables, is needed to create a minimal, but valid CDISC
CRT-DDS-compliant XML document. This is based on the CDISC CRT-DDS
standard, which is very flexible.
All table
and column names are case sensitive. They must be specified exactly
as shown.
CDISC CRT-DDS SAS Table Construction
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
^^FK_DefineDocument
[DefineDocument] [X]
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
^^FK_MeasurementUnits
[MeasurementUnits][X]
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
^^FK_MetaDataVersion
[MetaDataVersion] [X]
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
^^FK_MetaDataVersion
[MetaDataVersion] [X]
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
^^FK_MetaDataVersion
[MetaDataVersion] [X]
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
^^FK_MDVLeaf [MDVLeaf]
[X]
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
^^FK_MetaDataVersion
[MetaDataVersion] [X]
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
^^FK_MetaDataVersion
[MetaDataVersion] [X]
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
^^ImputationMethodOID
[ImputationMethods]
|
|
|
|
|
|
|
|
^^RoleCodeListOID [CodeLists]
|
|
|
|
^^FK_ValueLists [ValueLists]
[X]
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
^^StudyEventOID [StudyEventDefs]
[X]
|
|
|
|
^^FK_MetaDataVersion
[MetaDataVersion] [X]
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
^^FK_MetaDataVersion
[MetaDataVersion] [X]
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
^^FK_StudyEventDefs
[StudyEventDefs] [X]
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
^^FK_MetaDataVersion
[MetaDataVersion] [X]
|
|
|
|
|
|
|
|
|
|
|
|
^^ItemGroupOID [ItemGroupDefs]
[X]
|
|
|
|
|
|
|
|
|
|
|
|
^^FK_FormDefs [FormDefs]
[X]
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
^^PresentationOID [Presentation]
|
|
|
|
^^FK_FormDefs [FormDefs]
[X]
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
^^ArchiveLocationID
[ItemGroupLeaf] [X]
|
|
|
|
^^FK_MetaDataVersion
[MetaDataVersion] [X]
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
^^ImputationMethodOID
[ImputationMethods]
|
|
|
|
|
|
|
|
^^RoleCodeListOID [CodeLists]
|
|
|
|
^^FK_ItemGroupDefs [ItemGroupDefs][X]
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
^^FK_ItemGroupDefs [ItemGroupDefs]
[X]
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
^^FK_ItemGroupDefs [ItemGroupDefs]
[X]
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
^^FK_ItemGroupLeaf [ItemGroupLeaf]
[X]
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
^^CodeListRef [CodeLists]
|
|
|
|
|
|
|
|
|
|
|
|
^^ComputationMethodOID[ComputationMethods]
|
|
|
|
^^FK_MetaDataVersion
[MetaDataVersion] [X]
|
|
|
|
|
|
|
ItemQuestionTranslatedText
|
|
|
|
|
|
|
|
|
|
|
|
|
^^FK_ItemDefs [ItemDefs]
[X]
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
^^FK_ItemDefs [ItemDefs]
[X]
|
|
|
|
|
|
|
|
|
|
|
|
^^MeasurementUnitOID
[MeasurementUnits] [X]
|
|
|
|
^^FK_ItemDefs [ItemDefs]
[X]
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
^^MURefOID [MeasurementUnits]
|
|
|
|
^^FK_ItemDefs [ItemDefs]
[X]
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
^^FK_ItemRangeChecks
[ItemRangeChecks] [X]
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
^^FK_ItemRangeChecks
[ItemRangeChecks] [X]
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
^^FK_ItemDefs [ItemDefs]
[X]
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
^^FK_ItemDefs [ItemDefs]
[X]
|
|
|
|
|
|
|
|
|
|
|
|
^^ValueListOID [ValueLists]
[X]
|
|
|
|
^^FK_ItemDefs [ItemDefs]
[X]
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
^^FK_MetaDataVersion
[MetaDataVersion] [X]
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
^^FK_CodeLists [CodeLists]
[X]
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
^^FK_CodeLists [CodeLists]
[X]
|
|
|
|
|
|
|
|
|
|
|
CLItemDecodeTranslatedText
|
|
|
|
|
|
|
|
|
|
|
|
|
^^FK_CodeListItems [CodeListItems]
[X]
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
^^FK_MetaDataVersion
[MetaDataVersion] [X]
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
^^FK_MetaDataVersion
[MetaDataVersion] [X]
|
|
|
The SAS
Clinical Standards Toolkit CDISC CRT-DDS reference standard supports
reading and representing in SAS a define.xml file, building a define.xml
file, and validating the structure and content of the SAS representation
of a define.xml file. In addition, it validates the structural integrity
of the define.xml file. To support this functionality, supplemental
files include the following global standards library files:
-
A SAS format catalog (crtddsct.sas7bcat)
in the
formats
folder provides valid
values for selected columns in the 39 tables of the SAS representation.
-
The Validation Master data set
in the
validation/control
folder contains
the super-set of checks validating the structure and content of the
39 tables.
-
The Messages data set in the
messages
folder provides error messaging for all
Validation Master checks.
-
SAS code in the
macros
folder provides CDISC CRT-DDS-specific code
that augments code that is provided in the primary SAS Clinical Standards
Toolkit autocall library (
!sasroot/cstframework/sasmacro
).
-
The
style sheet
folder contains the define1-0-0.xsl file. The style sheet is copied
from
http://www.cdisc.org/stuff/contentmgr/files/0/464923b10ea16b477151fcaa9f465166/misc/define1_0_0.xsl
. A
define.xml file can be rendered in a human-readable form if it contains
an explicit XML style sheet reference, such as a reference to the
default style sheet.
It is
this set of files, in whole or in part, that defines the CDISC CRT-DDS
reference standard.