Thanks to visit codestin.com
Credit goes to github.com

Skip to content

elixir-europe/MARS

Repository files navigation

MARS: Multi-omics Adapter for Repository Submissions

Introduction

MARS is a data brokering initiative designed to facilitate the submission of multi-omics life sciences studies to multiple specialized repositories. Built as a modular system, MARS enables seamless data exchange between data producers and repositories using the standardized ISA-JSON format.

Unlike centralized platforms, MARS functions as a common framework for decentralized data submissions while ensuring consistent interpretation and validation of ISA-JSON metadata across various repositories. This approach preserves important links between multi-omics datasets derived from the same biological source, ensuring mutual understanding and accurate data interpretation.

Stakeholders

MARS is comprised of multiple stakeholders: the end-user, the platform that generates the ISA-JSON, target repositories and the data broker. Each represents key roles in the data submission process. Read more about it in our stakeholders page.

Components

MARS overview

ISA-JSON as metadata carrier

We use ISA-JSON to store and interchange metadata between the end-user and the target repositories because:

  • Standardization: ISA-JSON follows the ISA structure (Investigation- Study - Assay), ensuring structured metadata descriptions.
  • Versatile: It is not bound to any domain and can represent multi-omics experimental metadata.
  • Interoperability: Since ISA-JSON follows a standard format, it facilitates interoperability between different software tools and platforms that support the ISA standard.
  • Community Adoption: Widely adopted within the life sciences research community for metadata standardization.

ISA-JSON is generated by ISA-JSON producing platforms and serves as the metadata input for the Data Broker platform, as outlined below.

Data broker platform

A platform operated by the Data broker should:

  • Accept ISA-JSON as input and submit it to target repositories without any loss of information.
  • Extend the ISA-JSON with additional information from the repositories, such as accession numbers assigned to submitted objects.
  • Handle error reporting efficiently.
  • Maintain an active submission process throughout its duration (up to multiple days), including waiting for repository-side validation steps to complete.
  • Enable secure credential management.
  • Support data transfer via various protocols (e.g., FTP), ensuring checksum verification for data integrity.
  • Allow the Data broker to set up a brokering account or enable end-users to create personal accounts.

Examples of Data broker platforms include ARC, Galaxy, and others.

MARS-CLI

MARS-CLI is a command-line tool (CLI) used by the Data Broker platform to handle the submission of ISA-JSON metadata to multiple repositories. It automates the submission process, updates ISA-JSON with accession numbers based on repository responses, and ensures smooth data integration.

Built as a Python library, MARS-CLI can be integrated into web applications, ARC, Galaxy, and other platforms. The source code and documentation are available in the mars-cli repository.

ISA-JSON support by repositories

ISA-JSON API services, also known as adapters, are being developed and deployed by the repositories that are part of the MARS initiative. This includes programmatic submission, the ingestion of ISA-JSON in order to register the metadata objects and the creation of a receipt according to the MARS repository-api standard.

Track the status of each repository here:

Repository Programmatic submission Development status Deployed Source code
BioSamples yes PoC being improved no GitHub
ENA yes PoC being improved no GitHub
MetaboLights yes Proof of concept no
BioStudies/ArrayExpress yes, in dev Not started no
e!DAL-PGP NA Not started no
Your repository here? Join MARS!

File structure in this repo

├── repository-services
│   ├── isajson-biosamples/
│   │── isajson-ena/
│   ├── repository-api.md
│   └── README.md
│   └── ...
├── test-data
│   └── ...
└── README.md
  • repository-services: Code to deploy repository API endpoints that can accept ISAJSON. See README for deployment instructions.
    • repository-api.md: Describing the receipt standard for repository APIs to follow.
  • test-data: Test data to be used in a submission.
  • README.md: This file

Acknowledgements

This project was initiated during the ELIXIR Europe BioHackathon 2022 and has since received continued support through subsequent ELIXIR Hackathons and the ELIXIR Data Platform WP2.

About

Multi-Repository Data Submission using ISA-JSON

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 11