Overview

Management of metadata is performed using macros and driver programs to add, modify, and delete metadata. Prior to version 1.6 of the SAS Clinical Standards Toolkit, these macros were in three general categories:
  • Macros or driver programs that derive entire data sets or catalogs from standard-specific data or metadata. For example:
    • The driver program create_sourcemetadata, which initializes source metadata files from a SAS library of data sets or from a CRT-DDS define.xml file.
    • The macro cst_createdsfromtemplate, which creates a zero-observation data set that is based on a template.
    • The macro cst_createTablesForDataStandard, which creates domain data sets as defined in reference_tables and reference_columns.
    • The macro cstutil_buildformatsfromxml, which creates format catalogs from codelist information in XML-based standards.
  • Macros or driver programs that modify run-time process metadata from standard-specific data or metadata. For example:
    • The macro cst_insertStandardSASRefs, which does a look-through to provide paths and memnames from StandardSASReferences.
    • The macro cstupdateStandardSASRefs, which expands all relative paths to full paths in a SASReferences file.
  • Macros or driver programs that register or initialize a new standard or standard version. For example, the macro cst_registerStandard registers a new standard within the global standards library.
There were no macros or driver programs to support modifying metadata files that are associated with a given standard or standard version at a record level. Version 1.6 of the SAS Clinical Standards Toolkit provides metadata management macros that enable metadata management to accomplish these goals:
  • Make minor modifications to a domain. For example, increase a column length in the reference_columns data set.
  • Add or remove columns to or from domain metadata, such as reference_columns or source_columns.
  • Update a validation_master record to change the definition of an existing validation check.
  • Add one or more records (validation checks) to a validation_master data set.
  • Modify a Messages data set record. For example, modify the text or severity values.
  • Update a specific CRT-DDS or Define-XML 2.0 data set (in any of the SAS representation data sets).
  • Add a record to value-level metadata, such as source_values.
  • Retain any metadata modifications in a permanent transaction log data set.
The SAS Clinical Standards Toolkit has always been an open-source collection of SAS macros, programs, format catalogs, and data sets. Any SAS programmer, with the proper security authorization, can modify any of these components of the product. For this reason, the metadata management macros enable you to make modifications to the metadata data sets and to track these changes in a transaction log data set. Use of these macros preserves the metadata of the SAS Clinical Standard Toolkit data sets, such as data set labels, keys, and sort order.
Metadata management macros are addressed in this chapter. Each macro is briefly described. In addition to the main metadata management macros, a small group of supporting macros is available. All actions performed by the metadata management macros are written to a transaction log data set. Information about all macros is in the SAS Clinical Data Standards Toolkit: Macro API Documentation.