Skip to main content

Schema resources for the National Microbiome Data Collaborative (NMDC)

Project description

National Microbiome Data Collaborative Schema

PyPI - License PyPI version

The NMDC is a multi-organizational effort to integrate microbiome data across diverse areas in medicine, agriculture, bioenergy, and the environment. This integrated platform facilitates comprehensive discovery of and access to multidisciplinary microbiome data in order to unlock new possibilities with microbiome data science.

This repository mainly defines a LinkML schema for managing metadata from the National Microbiome Data Collaborative (NMDC).

Repository Contents Overview

Some products that are maintained, and tasks orchestrated within this repository are:

  • Maintenance of LinkML YAML that specifies the NMDC Schema
  • Makefile targets for converting the schema from it's native LinkML YAML format to other artifact like JSON Schema
  • Build, deployment and distribution of the schema as a PyPI package
  • Automatic publishing of refreshed documentation upon change to the schema, accessible here

Background

The NMDC Introduction to metadata and ontologies primer provides some the context for this project.

Maintaining the Schema

New system requirement: Mike Farah's GO-based yq

Some optional components use the Java-based ROBOT or Jena arq. Jena riot is also a part of the MongoDB dumping, repairing and validation workflow, if the user wishes to generate and validate RDF/TTL.

See MAINTAINERS.md for instructions on maintaining and updating the schema.

Makefiles

Makefiles are text files people can use to tell make (a computer program) how it can make things (or—in general—do things). In the world of Makefiles, those things are called targets.

This repo contains 2 Makefiles:

  • Makefile, based on the generic Makefile from the LinkML cookiecutter
  • project.Makefile, which contains targets that are specific to this project

Here's an example of using make in this repo:

# Deletes all files in `examples/output`.
make examples-clean

The examples-clean target is defined in the project.Makefile. In this repo, the Makefile includes the project.Makefile. As a result, make has access to the targets defined in both files.

Data downloads

The NMDC's metadata about biosamples, studies, bioinformatics workflows, etc. can be obtained from our nmdc-runtime API. Try entering "biosample_set" or "study_set" into the collection_name box at https://api.microbiomedata.org/docs#/metadata/list_from_collection_nmdcschema__collection_name__get

Or use the API programmatically! Note that some collections are large, so the responses are paged.

You can learn about the other available collections at https://microbiomedata.github.io/nmdc-schema/Database/

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

nmdc_schema-9.3.1.tar.gz (655.3 kB view hashes)

Uploaded Source

Built Distribution

nmdc_schema-9.3.1-py3-none-any.whl (674.4 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page