Skip to main content

General, open-standard schema for cell annotations

Project description

Schema Validation

DRAFT: LinkML based schema for cell annotations.

For the original/working repo visit https://github.com/cellannotation/cell-annotation-schema

Cell Annotation Schema

A general, open-standard schema for cell annotations and related metadata.

This effort is part of scFAIR, an initiative to standardize single-cell genomics metadata.

Motivation

Annotation of single cell transcriptomics data with cell types/classes is inherently variable. The reasons authors choose to annotate a set of cells with a particular label are not typically represented in annotated data and there is no established standard for doing so. For relatively simple datasets it may be possible to reconstruct this information by reading an associated publication, but as single cell transcriptomics datasets and accompanying publications become increasingly complex, doing so is becoming increasingly difficult and in many cases publications lack the necessary detail.

CAS provides a programmatically accessible standard designed to solve this problem by allowing users to record additional metadata about individual cell type annotations, including marker genes used as evidence and details of automated annotation transfer. The standard is represented as LinkML schema as this allows all metadata to be gathered in a single, compact validatable file - which includes a link to a cell by gene matrix file of annotated data. However, the schema is designed so that it can be decomposed into individual tables suitable for use in dataframes/TSVs and flattened onto obs in AnnData format.

User stories:

https://github.com/cellannotation/cell-annotation-schema/blob/main/docs/user_stories.md

Examples

Examples used in testing can be browsed under: https://github.com/Cellular-Semantics/cell-annotation-schema/tree/main/examples

brain-bican contains a growing set of working taxonomies including:

Overview

The top level of the LinkML schema is used to store metadata about the annotations: Author details; links to the annotated matrix file, version information etc. This can be thought of as a table that links to a set of subtables.

The top level wraps other JSON objects (sub-tables):

  1. A list of annotation objects (a table of annotations). Each annotation belongs to a named labelset
  2. A table of labelsets - recording names, and additional metadata including a description and provenance (manual vs automated) and if automated, details of automated annotation algorithms etc.

Core schema vs extensions

We define a core schema with a very limited set of compulsory fields. The core schema avoids specifying that additional fields are forbidden, allowing extensions to be built and for any users to add their own customs fields as long as they don't stomp on existing fields in the specification.

Documentation for the core and extension schemas is available at:

Merged LinkML schemas are available at build folder

This repo also contains the CAP AnnData Specification.

Releases

We publish both versioned releases and a nightly snapshot at https://github.com/Cellular-Semantics/cell-annotation-schema/releases

Release assets include a core schema file and extensions (currently for BICAN and the Cell Annotation Platform).

PyPI release is at https://pypi.org/project/cell-annotation-schema/

You can discover instructions on utilizing the PyPI package by visiting the following link https://github.com/cellannotation/cell-annotation-schema/blob/main/docs/pypi_package.md.

Project details


Download files

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

Source Distribution

cas_linkml-0.0.6.tar.gz (1.8 MB view details)

Uploaded Source

Built Distribution

cas_linkml-0.0.6-py3-none-any.whl (1.9 MB view details)

Uploaded Python 3

File details

Details for the file cas_linkml-0.0.6.tar.gz.

File metadata

  • Download URL: cas_linkml-0.0.6.tar.gz
  • Upload date:
  • Size: 1.8 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.8.3 CPython/3.10.12 Linux/6.5.0-1025-azure

File hashes

Hashes for cas_linkml-0.0.6.tar.gz
Algorithm Hash digest
SHA256 75c480547323e3aa4d51e0e793e0f551aaa4e6766981a8f1b14338c840d44e25
MD5 a3a204bc23e8216e043950f48849742d
BLAKE2b-256 dd64598aa5664d037f402ae29825c5b4fed4bf4402d0fd53057a6ea42fcb9d86

See more details on using hashes here.

File details

Details for the file cas_linkml-0.0.6-py3-none-any.whl.

File metadata

  • Download URL: cas_linkml-0.0.6-py3-none-any.whl
  • Upload date:
  • Size: 1.9 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.8.3 CPython/3.10.12 Linux/6.5.0-1025-azure

File hashes

Hashes for cas_linkml-0.0.6-py3-none-any.whl
Algorithm Hash digest
SHA256 0fcd5657da91644dfa0b60f0cd5c34025294066ffb51130c557e4fd8264193ec
MD5 7c061e7ec30e1b225465eedf17835f05
BLAKE2b-256 6cd2c3b81ee62bfd14ad3680dc4ce5877889cbc3ff86adc2a0c82cae168f0045

See more details on using hashes here.

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