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 %CST_CREATEDSFROMTEMPLATE macro, which creates a zero-observation data set that is based on a template.
    • The %CST_CREATETABLESFORDATASTANDARD macro, which creates domain data sets as defined in reference_tables and reference_columns.
    • The %CSTUTIL_BUILDFORMATSFROMXML macro, 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 %CST_INSERTSTANDARDSASREFS macro, which does a look-through to provide paths and memnames from StandardSASReferences.
    • The %CSTUPDATESTANDARDSASREFS macro, 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 %CST_REGISTERSTANDARD macro 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. Beginning with 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.
  • Enable the registration of a new set of controlled terminology
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 Standards Toolkit: Macro API Documentation.