Skip to content

ncihtan/schematic

 
 

Repository files navigation

Schematic

Build Status Documentation Status PyPI version

Introduction

SCHEMATIC is an acronym for Schema Engine for Manifest Ingress and Curation. The Python based infrastructure provides a novel schema-based, data ingress ecosystem, that is meant to streamline the process of dataset annotation, metadata validation and submission to an asset store (e.g., Synapse) for various data contributors.

Installation Requirements and Pre-requisites

  • Python 3.7.1 or higher

Note: You need to be a registered and certified user on synapse.org, and also have the right permissions to download the Google credentials files from Synapse.

git clone https://github.com/ncihtan/data-models.git

Configure the config.yml file in the data-models directory appropriately. All paths in config.yml are specified relative to the config.yml file.

Installing

Create and activate a virtual environment within which you can install the package:

python -m venv .venv
source .venv/bin/activate

Install and update the package using pip:

python -m pip install schematicpy

Command Line Client Usage

Initialization

schematic init --config ~/path/to/config.yml    # initialize mode of authentication

Manifest

schematic manifest --config ~/path/to/config.yml get    # generate manifest based on data type
schematic manifest --config ~/path/to/config.yml validate   # validate manifest

Model

schematic model --config ~/path/to/config.yml submit    # validate and submit manifest

Contributing

Interested in contributing? Awesome! We follow the typical GitHub workflow of forking a repo, creating a branch, and opening pull requests. For more information on how you can add or propose a change, visit our contributing guide. To start contributing to the package, you can refer to the Getting Started section in our contributing guide.

Contributors

Active contributors and maintainers:

About

Package for biomedical data model and data ingress management

Resources

License

Code of conduct

Stars

Watchers

Forks

Releases

No releases published

Languages

  • Python 100.0%