News and updates
- 2021-06-28: New contents, new endpoints, new features
- 2021-05-04: Added diff functionality
- 2021-03-30: New contents, editorial updates
- 2020-11-11: Next Generation CDISC Library
- 2020-07-07: New contents, new endpoint, metadata adjustments for ADaM
- 2020-02-14: New contents, new endpoints, editorial updates
General
IMPORTANT The 2020-11-11 release is generally known as Next Generation CDISC Library, where CDISC begins to host CDISC Library in Microsoft Azure. To learn more, access the free course NGLIB001: Next Generation CDISC Library on CDISC Learning System.
All access inquires, technical support tickets, comments, and general CDISC Library questions, please use the CDISC Library Product Inquiry form.
The base URL for the API is:
https://library.cdisc.org/api
The URL for Data Standards Browser is:
https://library.cdisc.org/browser
The CDISC Library API generally follows HTTP/1.1's guidelines for status code. Details are here: HTTP Status Codes.
The REST API uses API key authentication.
Note, support for Basic Auth is deprecated as of the 2020-11-11 release. For an interactive walk-through, refer to the video posted on https://www.cdisc.org/cdisc-library/getting-started, starting at 00:44:38.
Content for CDISC Controlled Terminology P43 is available as a patch release dated 2020-11-06. It consists of contents published on 2020-09-25 plus transactional updates from the version dated 2020-11-06.
The following standards have been loaded:
- CDISC Controlled Terminology P19 (2014-09-26) to P46 (2021-06-28)*, a total of 28 quarters with 115 parts
- CDASH v1.1.1/CDASHUG v1.0, CDASH Model v1.0 to v1.1, CDASHIG v2.0 to v2.1
- SDTM v1.2 to v1.8, SDTMIG v3.1.2 to v3.3, SDTMIG-AP v1.0, SDTMIG-PGx v1.0, SDTMIG-MD v1.0, SDTMIG-MD v1.1
- SENDIG v3.0, SENDIG v3.1.1, SENDIG-DART v1.1, SENDIG-AR v1.0
- ADaM v2.1, ADaMIG v1.0 to ADaMIG v1.1 to v1.2, ADaM ADAE v1.0, ADaM TTE for BDS v1.0, ADaM OCCDS v1.0
* denotes new contents added as of the 2021-06-28 release
UPDATED Included in the 2021-06-28 release are:
Enhancements
Feature
- QRS*, accessible via:
- API endpoint.
- Data Standards Browser.
- ODM-XML support.
Contents
- CDISC Controlled Terminology Q2 2021 publication (P46).
- List of draft contents:
- ADaM OCCDS v1.1 (new).
- SDTM v2.0 (updated).
- SDTMIG v3.4 (updated).
Data Standards Browser
- Added a text search in the left navigation pane.
- Updated to display multi-line text properly, e.g., CDISC Notes.
- Applied word wrapping behavior to columns, e.g., Label.
- Updated to show an error message when a Diff report can't be generated when there is nothing to compare with, i.e., no predecessor.
* For details, go to QRS Supplements to SDTMIG.
Corrections & Patches
- "dataset" was incorrectly indexed as "datasetStructure". Fixed the indexer so that dataset names such as AE are searchable using the correct scope.
- Excel and CSV export requests for ADaM v2.1 no longer creates an error. It is now showing 0 variables, which is the expected result.
- SDTMIG-MD v1.1's predecessor was missing. It now has predecessor relationship to SDTMIG-MD v1.0.
Deprecations
- N/A for this release
For system maintenance status, use this endpoint to obtain a flag indicating whether CDISC Library is under maintenance and a related system message:
/mdr/maintenance
For example,
{ "maintenanceMode": true, "maintenanceMessage": "CDISC Library is currently under a scheduled maintenance." }
For a machine-readable method to obtain a full listing of products loaded into the metadata repository use:
/mdr/products
Or, by product group:
/mdr/products/{product-group}
where product-group is one of these values:
- Terminology
- DataCollection
- DataTabulation
- DataAnalysis
- DraftContent*
* denotes new parameter added as of the 2021-03-30 release
Included in the 2020-02-14 release are two new endpoints, designed to provide high-level information about CDISC Library. These endpoints support both JSON and XML media types.
First, /mdr/about returns the URL for on-line API Documentation and Release Notes. It also includes a hypermedia link to a list of the product groups with their most recent update dates, as described below.
/mdr/about
/mdr/lastupdated returns dates of last updated, organized by CDISC product group.
/mdr/lastupdated
For example:
{ "_links": { "self": { "href": "/mdr/about", "title": "Information About CDISC Library", "type": "About CDISC Library" }, "lastupdated": { "href": "/mdr/lastupdated", "title": "Last Update Date of CDISC Library Products", "type": "About CDISC Library" } }, "release-notes": "https://wiki.cdisc.org/display/LIBSUPRT/Release+Notes", "api-documentation": "https://www.cdisc.org/cdisc-library/api-documentation" }
{ "_links": { "self": { "href": "/mdr/lastupdated", "title": "Last Update Date of CDISC Library Products", "type": "About CDISC Library" } }, "overall": "2020-02-14", "data-analysis": "2020-02-14", "data-collection": "2020-02-14", "data-tabulation": "2019-11-18", "terminology": "2020-02-14" }
Media Type
UPDATED Added to the 2021-06-28 release is the support for ODM-XML, as a beta functionality. The media type for ODM-XML is application/odm+xml. For CDASHIG, users will receive an ODM v1.3.2 document as the response payload. For ADaMIG, SDTMIG, and SENDIG, user will receive a Define-XML v2.1 document.
ODM-XML, CSV and Excel Workbook media types are only available at the top-level of a foundational standard. When requesting them at levels in any lower hierarchy, the API will return an HTTP 406 Not Acceptable status code.
CDISC Controlled Terminology in ODM-XML format is not yet supported. This is currently accessible through NCI EVS FTP site, here: https://evs.nci.nih.gov/ftp1/CDISC.
For example, a cURL snippet to obtain ADaM OCCDS v1.0 (lines #1-3), SDTMIG v3.3 (lines #5-7) in ODM format. The outputs are in Define-XML v2.1:
curl -X GET \ https://library.cdisc.org/api/mdr/adam/adam-occds-1-0 \ -H 'Accept: application/odm+xml' curl -X GET \ https://library.cdisc.org/api/mdr/sdtmig/3-3 \ -H 'Accept: application/odm+xml'
Another cURL snippet to obtain CDASHIG v2.1 in ODM format. The output is in ODM v1.3.2:
curl -X GET \ https://library.cdisc.org/api/mdr/cdashig/2-1 \ -H 'Accept: application/odm+xml'
Below is a cURL snippet to obtain ADaM OCCDS v1.0 (lines #1-3), SDTMIG v3.3 (lines #5-7), and Controlled Terminology P38 (lines #9-11) in CSV format:
curl -X GET \ https://library.cdisc.org/api/mdr/adam/adam-occds-1-0 \ -H 'Accept: text/csv' curl -X GET \ https://library.cdisc.org/api/mdr/sdtmig/3-3 \ -H 'Accept: text/csv' curl -X GET \ https://library.cdisc.org/api/mdr/ct/packages/sdtmct-2019-06-28 \ -H 'Accept: text/csv'
Similarly, a cURL snippet to obtain ADaM OCCDS v1.0 (lines #1-3) , SDTMIG v3.3 (lines #5-7), and Controlled Terminology P38 (lines #9-11) in Excel Workbook format:
curl -X GET \ https://library.cdisc.org/api/mdr/adam/adam-occds-1-0 \ -H 'Accept: application/vnd.ms-excel' curl -X GET \ https://library.cdisc.org/api/mdr/sdtmig/3-3 \ -H 'Accept: application/vnd.ms-excel' curl -X GET \ https://library.cdisc.org/api/mdr/ct/packages/sdtmct-2019-06-28 \ -H 'Accept: application/vnd.ms-excel'
Draft Contents
Starting 2021-03-30, users can access draft contents through CDISC Library. Draft contents are point-in-time snapshots, before they become official publication. Although may not be suitable for production use, draft contents are helpful toward evaluation and public reviews.
Controlled Terminology
Whenever mid-cycle revision to CDISC Controlled Terminology publication is necessary, only the latest corrected information will appear in the metadata repository.
The earliest CDISC Controlled Terminology publication loaded into the metadata repository is P19 (2014-09-26). With that, _links/priorVersion will not be part of the API response when querying P19 packages. CDISC will evaluate loading prior publications based on demand and requests.
For CDISC Controlled Terminology, NCI EVS publishes synonyms in a semi-colon separated list. In the metadata repository, they are decoded into individual entries. In rare cases where synonyms are non-unique for any given term, only distinct synonyms will appear in the metadata repository.
When querying using the API, lexicographic order is applied to synonyms listing in the response. For example, this is a response excerpt when querying the term Left Ventricular Maximum Positive dP/dt (C120916):
{ "conceptId": "C120916", "submissionValue": "Left Ventricular Maximum Positive dP/dt", "definition": "The maximum rate of positive pressure change over time within the left ventricle (systole).", "preferredTerm": "Left Ventricular Maximum Positive dP/dt", "synonyms": [ "+dPdt", "Left Ventricular Maximum Positive dP/dt", "dPdt Maximum" ] }
In the CDISC Controlled Terminology Protocol package, where the Codelist Extensible (Yes/No) attribute reads "NA", they are treated as null in the metadata repository.
CDASH
All instances of "N/A" in CDASH publications are treated as null in the metadata repository.
An exception is the "Controlled Terminology Codelist Name" column exported in the CSV and Excel formats to preserve original sequence of codelist values as shown in the published document.
In the CDASH Model v1.0 and the CDASHIG v2.0, the CDASH team applied the class concept to all domains. Identifier and timing variables were assigned class Identifier and Timing respectively as an attribute. In order to offer one common API design for all CDASH products, it was necessary to apply this class concept to CDASHIG v1.1 domains. In consequence, "Common variables" (identifier and visit timing variables in Sections 5.1, 5.2) were also instantiated to all CDASHIG v1.1 domains.
These changes were presented to and approved by the CDISC Global Governance Committee. For these changes, a new version indicator, 1.1.1, is given in the metadata repository.
The CDASH products include different types of mappings:
- CDASH model class variables to SDTM class variables
- CDASH model class variables to SDTM dataset variables
- CDASH model domain variables to SDTM dataset variables
- CDASH model domain variables to SDTMIG dataset variables
- CDASHIG domain fields to SDTMIG dataset variables
- CDASHIG domain fields to SDTM class variables
- CDASHIG scenario fields to SDTMIG dataset variables
To accommodate the different types of mapping targets, three JSON array attributes had to be defined:
- sdtmClassMappingTargets
- sdtmDatasetMappingTargets
- sdtmigDatasetMappingTargets
SDTM
Variables in the SDTM occasionally have expanded text to describe a variable's role. This text is stored in "roleDescription" in the metadata repository. Otherwise, "roleDescription" matches "role", where "role" has a set of controlled values. Below is an example for the SDTM v1.5 variable SVUPDES:
"ordinal": "11", "name": "SVUPDES", "label": "Description of Unplanned Visit", "description": "Description of what happened to the subject during an unplanned visit. Null for protocol-defined visits.", "role": "Qualifier", "roleDescription": "Optional Qualifier", ...
Some Implementation Guide variables have multiple CDISC Controlled Terminology codelists. Therefore, an array object is used to output codelist metadata in an API response. For example, this is an excerpt when querying the SENDIG v3.1 variable MISTRESC:
"codelist": [ { "href": "/mdr/root/ct/sendct/codelists/C88025", "title": "Version-agnostic anchor resource for codelist C88025", "type": "Root Value Domain" }, { "href": "/mdr/root/ct/sendct/codelists/C120531", "title": "Version-agnostic anchor resource for codelist C120531", "type": "Root Value Domain" } ]
To promote consistency, the label "ISO 3166-1 Alpha-3" is used whenever this external country codelist is referenced. Similarly, "ISO 21090 NullFlavor enumeration" is used for null flavors.