The NIST Materials Data Curation System (MDCS) provides a means for capturing, sharing, and transforming materials data into a structured format that is XML based amenable to transformation to other formats. The data are organized using user-selected templates encoded in XML Schema. These templates are used to create data entry forms. The documents are saved in a non-relational (NoSQL) database, namely MongoDB. The data can be searched and retrieved via several means: by a template-driven web-based form, by a SPARQL endpoint query, and by a RESTful API call. The system also enables the interconnection of MDCS repositories for federated searches.
We have had six releases since first public release in 2015. These releases included an XML Schema composer to allow for rapid development of XML schemas for reusable types, a new UI module system that allows for fully featured applets to be associated with XML tags, implementation of new administrative features such tools to perform repository back up and restoration, implementation of stored XML document editing allowing for full round trip processing of data stored in the repository, and a number of enhanced XML tools and features. Later versions added the ability to compose XML schemas from smaller schemas which represent highly reusable types and the ability to store images and other Binary Large Objects (BLOB). The most recent releases included exporters to transform curated data into other formats using XSLT or Python, full text search across the entire database with template-based refinements, enhanced user and group permissions and access control, a user dashboard, OAI-PMH data harvester and provider functionality, template annotations, improved HTML templates for UI theme customization, and enhanced XML support (import, target namespace, extensions, key/keyref). The MDCS is available from https://github.com/usnistgov/MDCS.