Data Transformation Recorder

Welcome to the Continuous Capture of Metadata tools website, presented by MTNA. If you are familiar with our work and objectives, you can get started right away with our Data Transformation Recorder tool. Read below for information on the platform components, or how to use the underlying web services (API). Visit the C2Metadata project site for more information.

Try it out

Open-Source Interface

The MTNA Data Transformation Recorder is free to use but leverages proprietary libraries to support its more advanced features. ICPSR has implemented a fully open source version of the Data Transformation Recorder, offering similar capabilities, but without the options to add file level metadata (authors, filenames, and the like).

Get the codeTry it out

API Services

The metadata transformation process is broken down into multiple microservices, each accessible by its own API. All of these services are open source, with the source code and a Docker image available for use on GitLab. For your convenience, we are hosing them here under one domain. The URL and available endpoints for each of these services is available in the linked documentation. These projects are still in development, so if you notice a bug, we encourage you to file an issue in the associated GitLab repository.

Structured Data Transformation Language (SDTL)

To facilitate the translation of multiple languages into machine-actionable representations of data transformations, the project team developed an intermediate language called Structured Data Transformation Language (SDTL).

GitLab RepositoryBrowse the DocsRead more about SDTL

SPSS to SDTL Parser

The SPSS Parser allows users to translate SPSS code into SDTL.

GitLab RepositoryAPI Documentation

R to SDTL Parser

The R Parser allows users to translate R code into SDTL.

GitLab RepositoryAPI Documentation

Stata to SDTL Parser

The Stata Parser allows users to translate Stata code into SDTL.

GitLab RepositoryAPI Documentation

SAS to SDTL Parser

The SAS Parser allows users to translate SAS code into SDTL.

GitLab RepositoryAPI Documentation

Python to SDTL Parser

The Python Parser allows users to translate Python code into SDTL.

GitLab RepositoryAPI Documentation

HTML Codebook Generator

The HTML Codebook Generator creates an interactive HTML rendering of an XML codebook, showing the variable provenance as described in SDTL.

GitLab RepositoryAPI Documentation

Pseudocode Translator

The Pseudocode Translator turns SDTL into human-readable syntax.

GitLab RepositoryAPI Documentation

Data Transformation Recorder

The Data Transformation Recorder updates a DDI or EML file based on SDTL commands

GitLab RepositoryAPI Documentation

About the Project

The Continuous Capture of Metadata for Statistical Data Project is funded by National Science Foundation grant ACI-1640575, and is a combined effort of these academic and corporate partners:


This Website, underlying services, and content herein, including all data, metadata, scripts, documentation, and resources, are provided to the public strictly for educational and academic research purposes. The content relies upon publicly available data from multiple sources that do not always agree. Metadata Technology North America Inc. hereby disclaims any and all representations and warranties with respect to the Website, including accuracy, fitness for use, and merchantability. You are responsible for determining the suitability of this data for your purposes. Reliance on the Website for medical, financial, or other kind of decision, or the use of the Website for commercial purposes, are strictly prohibited. If you do not agree with these terms, and to our general Website term and privacy policy, you may not access and use this Website.