From cf4679b6e7267bcb557f78acf6c61ee95fa77021 Mon Sep 17 00:00:00 2001 From: Juan Cruz Viotti Date: Fri, 31 Jan 2025 15:33:59 -0400 Subject: [PATCH] Add HCA Metadata v4.6.1 Signed-off-by: Juan Cruz Viotti --- DEPENDENCIES | 1 + configuration.json | 4 + vendor/hca-metadata-4-6-1.mask | 14 ++ .../json_schema/analysis.json | 188 ++++++++++++++++++ .../json_schema/analysis_bundle.json | 32 +++ .../hca-metadata-4-6-1/json_schema/assay.json | 46 +++++ .../json_schema/assay_bundle.json | 50 +++++ .../json_schema/barcode.json | 39 ++++ .../json_schema/cell_suspension.json | 31 +++ .../json_schema/contact.json | 51 +++++ .../hca-metadata-4-6-1/json_schema/core.json | 33 +++ .../hca-metadata-4-6-1/json_schema/death.json | 38 ++++ .../hca-metadata-4-6-1/json_schema/donor.json | 124 ++++++++++++ .../json_schema/enrichment.json | 37 ++++ .../hca-metadata-4-6-1/json_schema/file.json | 24 +++ .../json_schema/imaging.json | 61 ++++++ .../json_schema/immortalized_cell_line.json | 48 +++++ .../json_schema/ingest.json | 39 ++++ .../json_schema/ontology.json | 19 ++ .../ontology_json/body_part_ontology.json | 27 +++ .../ontology_json/cell_type_ontology.json | 27 +++ .../ontology_json/disease_ontology.json | 36 ++++ .../json_schema/organoid.json | 14 ++ .../json_schema/primary_cell_line.json | 32 +++ .../json_schema/project.json | 106 ++++++++++ .../json_schema/project_bundle.json | 32 +++ .../json_schema/protocol.json | 48 +++++ .../json_schema/publication.json | 36 ++++ .../hca-metadata-4-6-1/json_schema/rna.json | 73 +++++++ .../json_schema/sample.json | 126 ++++++++++++ .../json_schema/sample_bundle.json | 49 +++++ .../hca-metadata-4-6-1/json_schema/seq.json | 122 ++++++++++++ .../json_schema/single_cell.json | 29 +++ .../json_schema/specimen_from_organism.json | 25 +++ .../json_schema/state_of_specimen.json | 54 +++++ .../json_schema/submission.json | 87 ++++++++ .../hca-metadata-4-6-1/json_schema/well.json | 34 ++++ 37 files changed, 1836 insertions(+) create mode 100644 vendor/hca-metadata-4-6-1.mask create mode 100644 vendor/hca-metadata-4-6-1/json_schema/analysis.json create mode 100644 vendor/hca-metadata-4-6-1/json_schema/analysis_bundle.json create mode 100644 vendor/hca-metadata-4-6-1/json_schema/assay.json create mode 100644 vendor/hca-metadata-4-6-1/json_schema/assay_bundle.json create mode 100644 vendor/hca-metadata-4-6-1/json_schema/barcode.json create mode 100644 vendor/hca-metadata-4-6-1/json_schema/cell_suspension.json create mode 100644 vendor/hca-metadata-4-6-1/json_schema/contact.json create mode 100644 vendor/hca-metadata-4-6-1/json_schema/core.json create mode 100644 vendor/hca-metadata-4-6-1/json_schema/death.json create mode 100644 vendor/hca-metadata-4-6-1/json_schema/donor.json create mode 100644 vendor/hca-metadata-4-6-1/json_schema/enrichment.json create mode 100644 vendor/hca-metadata-4-6-1/json_schema/file.json create mode 100644 vendor/hca-metadata-4-6-1/json_schema/imaging.json create mode 100644 vendor/hca-metadata-4-6-1/json_schema/immortalized_cell_line.json create mode 100644 vendor/hca-metadata-4-6-1/json_schema/ingest.json create mode 100644 vendor/hca-metadata-4-6-1/json_schema/ontology.json create mode 100644 vendor/hca-metadata-4-6-1/json_schema/ontology_json/body_part_ontology.json create mode 100644 vendor/hca-metadata-4-6-1/json_schema/ontology_json/cell_type_ontology.json create mode 100644 vendor/hca-metadata-4-6-1/json_schema/ontology_json/disease_ontology.json create mode 100644 vendor/hca-metadata-4-6-1/json_schema/organoid.json create mode 100644 vendor/hca-metadata-4-6-1/json_schema/primary_cell_line.json create mode 100644 vendor/hca-metadata-4-6-1/json_schema/project.json create mode 100644 vendor/hca-metadata-4-6-1/json_schema/project_bundle.json create mode 100644 vendor/hca-metadata-4-6-1/json_schema/protocol.json create mode 100644 vendor/hca-metadata-4-6-1/json_schema/publication.json create mode 100644 vendor/hca-metadata-4-6-1/json_schema/rna.json create mode 100644 vendor/hca-metadata-4-6-1/json_schema/sample.json create mode 100644 vendor/hca-metadata-4-6-1/json_schema/sample_bundle.json create mode 100644 vendor/hca-metadata-4-6-1/json_schema/seq.json create mode 100644 vendor/hca-metadata-4-6-1/json_schema/single_cell.json create mode 100644 vendor/hca-metadata-4-6-1/json_schema/specimen_from_organism.json create mode 100644 vendor/hca-metadata-4-6-1/json_schema/state_of_specimen.json create mode 100644 vendor/hca-metadata-4-6-1/json_schema/submission.json create mode 100644 vendor/hca-metadata-4-6-1/json_schema/well.json diff --git a/DEPENDENCIES b/DEPENDENCIES index 6970e98..245395b 100644 --- a/DEPENDENCIES +++ b/DEPENDENCIES @@ -46,6 +46,7 @@ geojson-1-0-2 https://github.com/geojson/schema v1.0.2 geojson-1-0-1 https://github.com/geojson/schema v1.0.1 geojson-1-0-0 https://github.com/geojson/schema v1.0.0 hca-metadata-5-0-0 https://github.com/HumanCellAtlas/metadata-schema 5.0.0 +hca-metadata-4-6-1 https://github.com/HumanCellAtlas/metadata-schema 4.6.1 dats-1-0-0 https://github.com/datatagsuite/schema 1.0.0 fhir https://github.com/FHIR/packages b401fbd45566006a21243a9b88f1391e32b1ed40 asyncapi https://github.com/asyncapi/spec-json-schemas v6.8.1 diff --git a/configuration.json b/configuration.json index e22cf58..a99bcd0 100644 --- a/configuration.json +++ b/configuration.json @@ -389,6 +389,10 @@ "base": "https://schema.humancellatlas.org", "path": "./vendor/hca-metadata-5-0-0/json_schema" }, + "humancellatlas/metadata/v4.6.1": { + "base": "https://raw.githubusercontent.com/HumanCellAtlas/metadata-schema/4.6.1/json_schema", + "path": "./vendor/hca-metadata-4-6-1/json_schema" + }, "dats/v1.0.0": { "base": "https://w3id.org/dats/schema", "path": "./vendor/dats-1-0-0" diff --git a/vendor/hca-metadata-4-6-1.mask b/vendor/hca-metadata-4-6-1.mask new file mode 100644 index 0000000..ca20c1c --- /dev/null +++ b/vendor/hca-metadata-4-6-1.mask @@ -0,0 +1,14 @@ +docs/ +examples/ +json_schema/README.md +json_schema_extensions/ +schema_test_files/ +src/ +.travis.yml +changelog.md +contributing.md +README.md +requirements.txt +json_meta_schema/ +schema_tests/ +spreadsheet/ diff --git a/vendor/hca-metadata-4-6-1/json_schema/analysis.json b/vendor/hca-metadata-4-6-1/json_schema/analysis.json new file mode 100644 index 0000000..029e31f --- /dev/null +++ b/vendor/hca-metadata-4-6-1/json_schema/analysis.json @@ -0,0 +1,188 @@ +{ + "title": "analysis", + "required": [ + "timestamp_start_utc", + "timestamp_stop_utc", + "computational_method", + "input_bundles", + "reference_bundle", + "analysis_id", + "analysis_run_type", + "metadata_schema", + "tasks", + "inputs", + "outputs", + "core" + ], + "additionalProperties": true, + "definitions": { + "task": { + "additionalProperties": false, + "required": [ + "name", + "start_time", + "stop_time", + "disk_size", + "docker_image", + "cpus", + "memory", + "zone" + ], + "type": "object", + "properties": { + "disk_size": { + "type": "string" + }, + "name": { + "type": "string" + }, + "zone": { + "type": "string" + }, + "log_err": { + "type": "string" + }, + "start_time": { + "type": "string", + "format": "date-time" + }, + "cpus": { + "type": "integer" + }, + "log_out": { + "type": "string" + }, + "stop_time": { + "type": "string", + "format": "date-time" + }, + "memory": { + "type": "string" + }, + "docker_image": { + "type": "string" + } + } + }, + "parameter": { + "additionalProperties": false, + "required": [ + "name", + "value" + ], + "type": "object", + "properties": { + "checksum": { + "type": "string" + }, + "name": { + "type": "string" + }, + "value": { + "type": "string" + } + } + }, + "file": { + "additionalProperties": false, + "required": [ + "name", + "file_path", + "format" + ], + "type": "object", + "properties": { + "checksum": { + "type": "string" + }, + "file_path": { + "type": "string" + }, + "name": { + "type": "string" + }, + "format": { + "type": "string" + } + } + } + }, + "$schema": "http://json-schema.org/draft-04/schema#", + "type": "object", + "properties": { + "inputs": { + "items": { + "$ref": "https://raw.githubusercontent.com/HumanCellAtlas/metadata-schema/4.6.1/json_schema/analysis.json#/definitions/parameter" + }, + "type": "array", + "description": "Input parameters used in the pipeline run, these can be files or string values (settings)." + }, + "reference_bundle": { + "type": "string", + "description": "Bundle containing the reference used in running the pipeline." + }, + "tasks": { + "items": { + "$ref": "https://raw.githubusercontent.com/HumanCellAtlas/metadata-schema/4.6.1/json_schema/analysis.json#/definitions/task" + }, + "type": "array", + "description": "Descriptions of tasks in the workflow." + }, + "description": { + "type": "string", + "description": "A general description of the analysis." + }, + "timestamp_stop_utc": { + "type": "string", + "description": "Terminal stop time of the full pipeline.", + "format": "date-time" + }, + "input_bundles": { + "items": { + "type": "string" + }, + "type": "array", + "description": "The input bundles used in this analysis run." + }, + "outputs": { + "items": { + "$ref": "https://raw.githubusercontent.com/HumanCellAtlas/metadata-schema/4.6.1/json_schema/analysis.json#/definitions/file" + }, + "type": "array", + "description": "Output generated by the pipeline run." + }, + "name": { + "type": "string", + "description": "A short, descriptive name for the analysis that need not be unique." + }, + "computational_method": { + "type": "string", + "description": "A URI to a versioned workflow and versioned execution environment in a GA4GH-compliant repository." + }, + "timestamp_start_utc": { + "type": "string", + "description": "Initial start time of the full pipeline.", + "format": "date-time" + }, + "core": { + "description": "Type and schema for this object.", + "$ref": "https://raw.githubusercontent.com/HumanCellAtlas/metadata-schema/4.6.1/json_schema/core.json" + }, + "analysis_run_type": { + "enum": [ + "run", + "copy-forward" + ], + "type": "string", + "description": "Indicator of whether the analysis actually ran or was just copied forward as an optimization." + }, + "metadata_schema": { + "type": "string", + "description": "The version of the metadata schemas used for the json files." + }, + "analysis_id": { + "type": "string", + "description": "A unique ID for this analysis." + } + } +} \ No newline at end of file diff --git a/vendor/hca-metadata-4-6-1/json_schema/analysis_bundle.json b/vendor/hca-metadata-4-6-1/json_schema/analysis_bundle.json new file mode 100644 index 0000000..3e33044 --- /dev/null +++ b/vendor/hca-metadata-4-6-1/json_schema/analysis_bundle.json @@ -0,0 +1,32 @@ +{ + "definitions": { + "analysis_ingest": { + "required": [ + "hca_ingest", + "content", + "core" + ], + "type": "object", + "properties": { + "content": { + "type": "object", + "description": "Analysis content", + "$ref": "https://raw.githubusercontent.com/HumanCellAtlas/metadata-schema/4.6.1/json_schema/analysis.json" + }, + "core": { + "description": "Type and schema for this object.", + "$ref": "https://raw.githubusercontent.com/HumanCellAtlas/metadata-schema/4.6.1/json_schema/core.json" + }, + "hca_ingest": { + "type": "object", + "description": "core fields added by HCA ingest service", + "$ref": "https://raw.githubusercontent.com/HumanCellAtlas/metadata-schema/4.6.1/json_schema/ingest.json" + } + } + } + }, + "$schema": "http://json-schema.org/draft-04/schema#", + "type": "object", + "description": "A schema for a analysis bundle", + "$ref": "https://raw.githubusercontent.com/HumanCellAtlas/metadata-schema/4.6.1/json_schema/analysis_bundle.json#/definitions/analysis_ingest" +} \ No newline at end of file diff --git a/vendor/hca-metadata-4-6-1/json_schema/assay.json b/vendor/hca-metadata-4-6-1/json_schema/assay.json new file mode 100644 index 0000000..45aef1f --- /dev/null +++ b/vendor/hca-metadata-4-6-1/json_schema/assay.json @@ -0,0 +1,46 @@ +{ + "description": "An assay contains information relevant to how a sample (in vitro) was converted into digital information (in silico).", + "title": "assay", + "required": [ + "core", + "assay_id" + ], + "additionalProperties": false, + "definitions": {}, + "$schema": "http://json-schema.org/draft-04/schema#", + "type": "object", + "properties": { + "core": { + "description": "Type and schema for this object.", + "$ref": "https://raw.githubusercontent.com/HumanCellAtlas/metadata-schema/4.6.1/json_schema/core.json" + }, + "name": { + "type": "string", + "description": "A short, descriptive name for the assay that need not be unique." + }, + "seq": { + "description": "Information about how a cDNA sample was sequenced.", + "$ref": "https://raw.githubusercontent.com/HumanCellAtlas/metadata-schema/4.6.1/json_schema/seq.json" + }, + "rna": { + "description": "Information about how RNA was converted to cDNA.", + "$ref": "https://raw.githubusercontent.com/HumanCellAtlas/metadata-schema/4.6.1/json_schema/rna.json" + }, + "single_cell": { + "description": "Information on single-cell aspects of an assay.", + "$ref": "https://raw.githubusercontent.com/HumanCellAtlas/metadata-schema/4.6.1/json_schema/single_cell.json" + }, + "imaging": { + "description": "Information on image based RNA quantification assays", + "$ref": "https://raw.githubusercontent.com/HumanCellAtlas/metadata-schema/4.6.1/json_schema/imaging.json" + }, + "assay_id": { + "type": "string", + "description": "A unique ID for this assay." + }, + "description": { + "type": "string", + "description": "A general description of the assay." + } + } +} \ No newline at end of file diff --git a/vendor/hca-metadata-4-6-1/json_schema/assay_bundle.json b/vendor/hca-metadata-4-6-1/json_schema/assay_bundle.json new file mode 100644 index 0000000..482f5c8 --- /dev/null +++ b/vendor/hca-metadata-4-6-1/json_schema/assay_bundle.json @@ -0,0 +1,50 @@ +{ + "definitions": { + "assay_ingest": { + "required": [ + "hca_ingest", + "content", + "core" + ], + "type": "object", + "properties": { + "has_input": { + "type": "string", + "description": "The sample that this assay was performed on." + }, + "core": { + "description": "Type and schema for this object.", + "$ref": "https://raw.githubusercontent.com/HumanCellAtlas/metadata-schema/4.6.1/json_schema/core.json" + }, + "content": { + "type": "object", + "description": "Assay content", + "$ref": "https://raw.githubusercontent.com/HumanCellAtlas/metadata-schema/4.6.1/json_schema/assay.json" + }, + "has_output": { + "items": { + "type": "string" + }, + "type": "array", + "description": "The files that were generated from this assay." + }, + "derivation_protocols": { + "items": { + "description": "An array of protocols used in derivation of this sample.", + "$ref": "https://raw.githubusercontent.com/HumanCellAtlas/metadata-schema/4.6.1/json_schema/protocol.json" + }, + "type": "array" + }, + "hca_ingest": { + "type": "object", + "description": "core fields added by HCA ingest service", + "$ref": "https://raw.githubusercontent.com/HumanCellAtlas/metadata-schema/4.6.1/json_schema/ingest.json" + } + } + } + }, + "$schema": "http://json-schema.org/draft-04/schema#", + "type": "object", + "description": "A schema for an assay bundle", + "$ref": "https://raw.githubusercontent.com/HumanCellAtlas/metadata-schema/4.6.1/json_schema/assay_bundle.json#/definitions/assay_ingest" +} \ No newline at end of file diff --git a/vendor/hca-metadata-4-6-1/json_schema/barcode.json b/vendor/hca-metadata-4-6-1/json_schema/barcode.json new file mode 100644 index 0000000..96fb99d --- /dev/null +++ b/vendor/hca-metadata-4-6-1/json_schema/barcode.json @@ -0,0 +1,39 @@ +{ + "description": "This object describes where a particular type of barcode is in a read.", + "title": "barcode", + "required": [ + "offset", + "size", + "read" + ], + "additionalProperties": false, + "$schema": "http://json-schema.org/draft-04/schema#", + "type": "object", + "properties": { + "read": { + "enum": [ + "Read 1", + "Read 2", + "i7 Index", + "i5 Index" + ], + "description": "The read that the barcode is found in. Should be one of Read 1, Read 2, i7 Index, or i5 Index." + }, + "size": { + "minimum": 0, + "type": "integer", + "description": "Size of barcode in nucleotides.", + "maximum": 50 + }, + "white_list_file": { + "type": "string", + "description": "Name of file containing legitimate barcode sequences. Unused for randomly generated barcodes." + }, + "offset": { + "minimum": 0, + "type": "integer", + "description": "Offset in read of barcode. 0 for beginning of read.", + "maximum": 50 + } + } +} \ No newline at end of file diff --git a/vendor/hca-metadata-4-6-1/json_schema/cell_suspension.json b/vendor/hca-metadata-4-6-1/json_schema/cell_suspension.json new file mode 100644 index 0000000..966d66b --- /dev/null +++ b/vendor/hca-metadata-4-6-1/json_schema/cell_suspension.json @@ -0,0 +1,31 @@ +{ + "$schema": "http://json-schema.org/draft-04/schema#", + "title": "cell_suspension", + "description": "Information about the cell suspension derived from the collected or cultured specimen", + "properties": { + "well": { + "description": "Information about wells in a plate or chip used for single-cell isolation.", + "$ref": "https://raw.githubusercontent.com/HumanCellAtlas/metadata-schema/4.6.1/json_schema/well.json" + }, + "target_cell_type": { + "items": { + "$ref": "https://raw.githubusercontent.com/HumanCellAtlas/metadata-schema/4.6.1/json_schema/ontology_json/cell_type_ontology.json" + }, + "type": "array", + "description": "Cell types present in the suspension." + }, + "total_estimated_cells": { + "minimum": 0.1, + "type": "number", + "description": "Total estimated number of cells in sample. May be 1 for well-based assays.", + "maximum": 1000000000.0 + }, + "enrichment": { + "items": { + "$ref": "https://raw.githubusercontent.com/HumanCellAtlas/metadata-schema/4.6.1/json_schema/enrichment.json" + }, + "type": "array", + "description": "How sample was enriched for specific cell type(s)." + } + } +} \ No newline at end of file diff --git a/vendor/hca-metadata-4-6-1/json_schema/contact.json b/vendor/hca-metadata-4-6-1/json_schema/contact.json new file mode 100644 index 0000000..20ee9b5 --- /dev/null +++ b/vendor/hca-metadata-4-6-1/json_schema/contact.json @@ -0,0 +1,51 @@ +{ + "description": "contact schema generate by tagSchemaToJson from contact", + "title": "contact", + "required": [ + "name", + "email" + ], + "additionalProperties": false, + "definitions": {}, + "$schema": "http://json-schema.org/draft-04/schema#", + "type": "object", + "properties": { + "country_division": { + "type": "string", + "description": "Name of state, province, canton, or other country subdivision where contact works." + }, + "city": { + "type": "string", + "description": "Name of city where contact works." + }, + "name": { + "type": "string", + "description": "The contact's name. Should be in the format first, middle, last name. Middle can be initial or left blank. e.g. John,D,Doe or Jane,,Smith" + }, + "country": { + "type": "string", + "description": "Name of country where contact works." + }, + "institution": { + "type": "string", + "description": "Name of primary institute where contact works." + }, + "phone": { + "type": "string", + "description": "Phone number (including country code) of contact or contact's lab." + }, + "address": { + "type": "string", + "description": "Full mailing address where contact works. Should include street name and number, city, state, postal code, country." + }, + "laboratory": { + "type": "string", + "description": "Name of lab (often the PI name) within institute where contact works." + }, + "email": { + "pattern": "^.*@.*..*$", + "type": "string", + "description": "An email address for the contact." + } + } +} \ No newline at end of file diff --git a/vendor/hca-metadata-4-6-1/json_schema/core.json b/vendor/hca-metadata-4-6-1/json_schema/core.json new file mode 100644 index 0000000..b669edc --- /dev/null +++ b/vendor/hca-metadata-4-6-1/json_schema/core.json @@ -0,0 +1,33 @@ +{ + "$schema": "http://json-schema.org/draft-04/schema#", + "required": [ + "type" + ], + "description": "Core object found in all modules.", + "properties": { + "type": { + "enum": [ + "assay", + "project", + "protocol", + "sample", + "file", + "analysis", + "assay_bundle", + "sample_bundle", + "project_bundle", + "analysis_bundle" + ], + "description": "The name of the core metadata entity type." + }, + "schema_url": { + "type": "string", + "description": "URL of JSON schema document that validates this version of this module." + }, + "schema_version": { + "pattern": "^...*..*$", + "type": "string", + "description": "Version number in major.minor.patch format. e.g. 3.2.4. Major version changes likely require changes to software. Minor version changes should not require software changes. Patches are just documentation changes." + } + } +} \ No newline at end of file diff --git a/vendor/hca-metadata-4-6-1/json_schema/death.json b/vendor/hca-metadata-4-6-1/json_schema/death.json new file mode 100644 index 0000000..d2b522c --- /dev/null +++ b/vendor/hca-metadata-4-6-1/json_schema/death.json @@ -0,0 +1,38 @@ +{ + "description": "Information relating to the death of the donor", + "title": "death", + "required": [ + "cause_of_death" + ], + "additionalProperties": false, + "definitions": {}, + "$schema": "http://json-schema.org/draft-04/schema#", + "type": "object", + "properties": { + "cause_of_death": { + "description": "Cause of death from death report for human donor, from research lab for mouse.", + "$ref": "https://raw.githubusercontent.com/HumanCellAtlas/metadata-schema/4.6.1/json_schema/ontology.json" + }, + "hardy_scale": { + "minimum": 0, + "type": "integer", + "description": "Should be integer representing: (0) ventilator case, (1) violent and fast death, (2) fast death of natural causes, (3) intermediate death, or (4) slow death.", + "maximum": 4 + }, + "cold_perfused": { + "type": "boolean", + "description": "Yes if perfused with cold fluid to help preserve tissues before heart stopped. No otherwise." + }, + "days_on_ventilator": { + "minimum": 0, + "type": "number", + "description": "Days on ventilator before dying.", + "maximum": 10000 + }, + "time_of_death": { + "type": "string", + "description": "Date and time of death on death certificate for deceased donor.", + "format": "date-time" + } + } +} \ No newline at end of file diff --git a/vendor/hca-metadata-4-6-1/json_schema/donor.json b/vendor/hca-metadata-4-6-1/json_schema/donor.json new file mode 100644 index 0000000..9de0faf --- /dev/null +++ b/vendor/hca-metadata-4-6-1/json_schema/donor.json @@ -0,0 +1,124 @@ +{ + "description": "Information about the donor from which a specimen was collected", + "title": "donor", + "required": [ + "is_living" + ], + "additionalProperties": false, + "$schema": "http://json-schema.org/draft-04/schema#", + "type": "object", + "properties": { + "nutritional_state": { + "enum": [ + "normal", + "fasting", + "feeding tube removed" + ], + "description": "Should be one of normal, fasting, or feeding tube removed." + }, + "is_living": { + "type": "boolean", + "description": "Should be yes if donor is living at time of sample donation. Otherwise, should be no." + }, + "death": { + "description": "Information about conditions of death (or info that donor was living at time of collection).", + "$ref": "https://raw.githubusercontent.com/HumanCellAtlas/metadata-schema/4.6.1/json_schema/death.json" + }, + "genotype": { + "type": "string", + "description": "Genotype of donor including strain, cross, and genetic modification information. Must be in MGI format for mice." + }, + "weight": { + "pattern": "^[0-9]+\\.?[0-9]*-?[0-9]*\\.?[0-9]*$", + "type": "string", + "description": "Weight of donor, in kilograms. Can be a range separated by a hyphen." + }, + "strain": { + "items": { + "$ref": "https://raw.githubusercontent.com/HumanCellAtlas/metadata-schema/4.6.1/json_schema/ontology.json" + }, + "type": "array", + "description": "The name of the mouse inbred strain. e.g. C57BL/6." + }, + "alcohol_history": { + "type": "string", + "description": "Number of drinks consumed on a typical day." + }, + "age": { + "pattern": "^[0-9]+\\.?[0-9]*-?[0-9]*\\.?[0-9]*$", + "type": "string", + "description": "Age in age_units. For embryos, measured since fertilization. For all others, measured since birth." + }, + "life_stage": { + "enum": [ + "adult", + "child", + "embryo", + "postpartum" + ], + "description": "Should be one of adult, child, embryo, or postpartum." + }, + "disease": { + "items": { + "$ref": "https://raw.githubusercontent.com/HumanCellAtlas/metadata-schema/4.6.1/json_schema/ontology_json/disease_ontology.json" + }, + "type": "array", + "description": "Short description of disease status of individual." + }, + "age_unit": { + "enum": [ + "hour", + "day", + "week", + "year", + "hours", + "days", + "weeks", + "years" + ], + "description": "The unit in which age is expressed. Must be one of day, week, month, or year." + }, + "height": { + "pattern": "^[0-9]+\\.?[0-9]*-?[0-9]*\\.?[0-9]*$", + "type": "string", + "description": "Height of donor, in meters. Can be a range separated by a hyphen." + }, + "body_mass_index": { + "minimum": 5, + "type": "number", + "description": "The body mass index of the donor.", + "maximum": 100 + }, + "ancestry": { + "items": { + "$ref": "https://raw.githubusercontent.com/HumanCellAtlas/metadata-schema/4.6.1/json_schema/ontology.json" + }, + "type": "array", + "description": "An array of ontology terms from EMBL-EBI's Ancestry Ontology describing ancestral groups, uncategorised ancestral groups, and population isolates." + }, + "smoking_history": { + "type": "string", + "description": "Estimated number of cigarettes smoked per day and for how many years." + }, + "sex": { + "enum": [ + "female", + "male", + "mixed", + "unknown" + ], + "description": "Sex of donor. Should be one of male, female, mixed, or unknown." + }, + "medication": { + "items": { + "$ref": "https://raw.githubusercontent.com/HumanCellAtlas/metadata-schema/4.6.1/json_schema/ontology.json" + }, + "type": "array", + "description": "List of medications the donor was currently taking at time of sample donation." + }, + "development_stage": { + "description": "More detailed (especially for embryos) version of life_stage. e.g. \"E9\" or \"P17\" for mouse.", + "$ref": "https://raw.githubusercontent.com/HumanCellAtlas/metadata-schema/4.6.1/json_schema/ontology.json" + } + } +} \ No newline at end of file diff --git a/vendor/hca-metadata-4-6-1/json_schema/enrichment.json b/vendor/hca-metadata-4-6-1/json_schema/enrichment.json new file mode 100644 index 0000000..d5bbc4c --- /dev/null +++ b/vendor/hca-metadata-4-6-1/json_schema/enrichment.json @@ -0,0 +1,37 @@ +{ + "description": "enrichment schema generate by tagSchemaToJson from enrichment", + "title": "enrichment", + "required": [ + "type" + ], + "additionalProperties": false, + "$schema": "http://json-schema.org/draft-04/schema#", + "type": "object", + "properties": { + "type": { + "enum": [ + "FACS", + "MACS", + "Ficoll gradient", + "density gradient" + ], + "description": "The method by which enrichment was achieved. e.g. MACS, FACS, Ficoll gradient" + }, + "size_min": { + "minimum": 0.01, + "type": "number", + "description": "Minimum size passing selection, in microns.", + "maximum": 10000 + }, + "size_max": { + "minimum": 0.01, + "type": "number", + "description": "Maximum size passing selection, in microns.", + "maximum": 10000 + }, + "markers": { + "type": "string", + "description": "Space-delimited list of markers (with +/-) used for enrichment. e.g. CD4+ CD8-" + } + } +} \ No newline at end of file diff --git a/vendor/hca-metadata-4-6-1/json_schema/file.json b/vendor/hca-metadata-4-6-1/json_schema/file.json new file mode 100644 index 0000000..f477317 --- /dev/null +++ b/vendor/hca-metadata-4-6-1/json_schema/file.json @@ -0,0 +1,24 @@ +{ + "description": "Information about the data files produced from single cells and results files produced from analysis workflows.", + "title": "file", + "required": [ + "filename" + ], + "additionalProperties": false, + "$schema": "http://json-schema.org/draft-04/schema#", + "type": "object", + "properties": { + "core": { + "description": "Type and schema for this object.", + "$ref": "https://raw.githubusercontent.com/HumanCellAtlas/metadata-schema/4.6.1/json_schema/core.json" + }, + "file_format": { + "description": "The format that the data file is in. Must be one of: fastq, fastq.gz, tiff, jpg, jpeg, png, txt, bam, cram, gtf, tar, tsv, csv.", + "type": "string" + }, + "filename": { + "type": "string", + "description": "A filename for a data or results file. Must have a valid extension." + } + } +} \ No newline at end of file diff --git a/vendor/hca-metadata-4-6-1/json_schema/imaging.json b/vendor/hca-metadata-4-6-1/json_schema/imaging.json new file mode 100644 index 0000000..4e4f1b1 --- /dev/null +++ b/vendor/hca-metadata-4-6-1/json_schema/imaging.json @@ -0,0 +1,61 @@ +{ + "description": "imaging schema generate by tagSchemaToJson from imaging", + "title": "imaging", + "required": [ + "field_counts", + "field_resolution", + "probes" + ], + "additionalProperties": false, + "definitions": {}, + "$schema": "http://json-schema.org/draft-04/schema#", + "type": "object", + "properties": { + "exposure_time": { + "minimum": 1e-09, + "type": "number", + "description": "Exposure time as a floating point number in units of seconds", + "maximum": 1000 + }, + "field_microns": { + "items": { + "type": "integer" + }, + "type": "array", + "description": "microns covered by a field in x,y, and z. Z includes all focal planes in a single file" + }, + "fixation": { + "type": "string", + "description": "Description of fixation conditions" + }, + "microscope": { + "enum": [ + "generic confocal", + "generic two photon" + ], + "description": "Microscope used for imaging" + }, + "embedding": { + "type": "string", + "description": "Description of embedding conditions" + }, + "field_resolution": { + "items": { + "type": "integer" + }, + "type": "array", + "description": "x, y, and z (number of focal planes) resolution of an individual field" + }, + "probes": { + "type": "string", + "description": "A file containing information on probe sequence, genes they cover, and colors" + }, + "field_counts": { + "items": { + "type": "integer" + }, + "type": "array", + "description": "number of fields in x and y dimensions" + } + } +} \ No newline at end of file diff --git a/vendor/hca-metadata-4-6-1/json_schema/immortalized_cell_line.json b/vendor/hca-metadata-4-6-1/json_schema/immortalized_cell_line.json new file mode 100644 index 0000000..3fddefe --- /dev/null +++ b/vendor/hca-metadata-4-6-1/json_schema/immortalized_cell_line.json @@ -0,0 +1,48 @@ +{ + "description": "Information about the immortalized cell line used in the sample", + "title": "immortalized_cell_line", + "additionalProperties": false, + "$schema": "http://json-schema.org/draft-04/schema#", + "type": "object", + "properties": { + "catalog_url": { + "type": "string", + "description": "The supplier catalogue URL for the cell line." + }, + "cell_type": { + "description": "What cell type the line was derived from. CLO ontology.", + "$ref": "https://raw.githubusercontent.com/HumanCellAtlas/metadata-schema/4.6.1/json_schema/ontology_json/cell_type_ontology.json" + }, + "date_established": { + "type": "string", + "description": "When the cell line was established.", + "format": "date-time" + }, + "catalog_number": { + "type": "string", + "description": "The supplier catalogue number for the cell line." + }, + "disease": { + "description": "A disease associated with the cell line. EFO ontology.", + "$ref": "https://raw.githubusercontent.com/HumanCellAtlas/metadata-schema/4.6.1/json_schema/ontology_json/disease_ontology.json" + }, + "passage_number": { + "minimum": 0, + "type": "integer", + "description": "The number of passages the cell line as been through.", + "maximum": 1000 + }, + "cell_cycle": { + "description": "The cell cycle phase, if known.", + "$ref": "https://raw.githubusercontent.com/HumanCellAtlas/metadata-schema/4.6.1/json_schema/ontology.json" + }, + "karyotype": { + "type": "string", + "description": "The karyotype of the cell line." + }, + "publication": { + "description": "The publication in which the cell line creation was cited.", + "$ref": "https://raw.githubusercontent.com/HumanCellAtlas/metadata-schema/4.6.1/json_schema/publication.json" + } + } +} \ No newline at end of file diff --git a/vendor/hca-metadata-4-6-1/json_schema/ingest.json b/vendor/hca-metadata-4-6-1/json_schema/ingest.json new file mode 100644 index 0000000..24f5712 --- /dev/null +++ b/vendor/hca-metadata-4-6-1/json_schema/ingest.json @@ -0,0 +1,39 @@ +{ + "additionalProperties": false, + "$schema": "http://json-schema.org/draft-04/schema#", + "required": [ + "document_id", + "submissionDate" + ], + "description": "Information added or generated at ingest time.", + "properties": { + "accession": { + "type": "string", + "description": "A unique accession for this entity, provided by the broker." + }, + "submissionDate": { + "type": "string", + "description": "When project was first submitted to database.", + "format": "date-time" + }, + "submitter_id": { + "type": "string", + "description": "ID of contact who first submitted project" + }, + "updateDate": { + "type": "string", + "description": "When project was last updated", + "format": "date-time" + }, + "document_id": { + "comment": "This structure supports the current ingest API. It may change in future.", + "pattern": ".{8}-.{4}-.{4}-.{4}-.{12}", + "type": "string", + "description": "Identifier for document." + }, + "updater_id": { + "type": "string", + "description": "ID of contact who last updated project" + } + } +} \ No newline at end of file diff --git a/vendor/hca-metadata-4-6-1/json_schema/ontology.json b/vendor/hca-metadata-4-6-1/json_schema/ontology.json new file mode 100644 index 0000000..71513c5 --- /dev/null +++ b/vendor/hca-metadata-4-6-1/json_schema/ontology.json @@ -0,0 +1,19 @@ +{ + "description": "A term that may be associated with an ontology term", + "title": "ontology", + "required": [ + "text" + ], + "$schema": "http://json-schema.org/draft-04/schema#", + "type": "object", + "properties": { + "text": { + "type": "string", + "description": "The text for the term as the user provides it." + }, + "ontology": { + "type": "string", + "description": "An optional ontology reference in format where prefix_ indicates which ontology" + } + } +} \ No newline at end of file diff --git a/vendor/hca-metadata-4-6-1/json_schema/ontology_json/body_part_ontology.json b/vendor/hca-metadata-4-6-1/json_schema/ontology_json/body_part_ontology.json new file mode 100644 index 0000000..7eb158f --- /dev/null +++ b/vendor/hca-metadata-4-6-1/json_schema/ontology_json/body_part_ontology.json @@ -0,0 +1,27 @@ +{ + "$schema": "http://json-schema.org/draft-04/schema#", + "additionalProperties": false, + "description": "A term that may be associated with an anatomy-related ontology term", + "properties": { + "text": { + "description": "The text for the term as the user provides it.", + "type": "string" + }, + "ontology": { + "description": "An optional ontology reference in format where prefix_ indicates which ontology", + "type": "string", + "graph_restriction": { + "ontologies" : ["obo:uberon"], + "classes": ["UBERON:0000465"], + "relations": ["rdfs:subClassOf"], + "direct": false, + "include_self": true + } + } + }, + "required": [ + "text" + ], + "title": "body_part_ontology", + "type": "object" +} diff --git a/vendor/hca-metadata-4-6-1/json_schema/ontology_json/cell_type_ontology.json b/vendor/hca-metadata-4-6-1/json_schema/ontology_json/cell_type_ontology.json new file mode 100644 index 0000000..1b4c844 --- /dev/null +++ b/vendor/hca-metadata-4-6-1/json_schema/ontology_json/cell_type_ontology.json @@ -0,0 +1,27 @@ +{ + "$schema": "http://json-schema.org/draft-04/schema#", + "additionalProperties": false, + "description": "A term that may be associated with a cell type-related ontology term", + "properties": { + "text": { + "description": "The name of a cell type supplied by a user.", + "type": "string" + }, + "ontology": { + "description": "An ontology term identifier in the form prefix:accession", + "type": "string", + "graph_restriction": { + "ontologies" : ["obo:cl"], + "classes": ["CL:0000003"], + "relations": ["rdfs:subClassOf"], + "direct": false, + "include_self": true + } + } + }, + "required": [ + "text" + ], + "title": "cell_type_ontology", + "type": "object" +} \ No newline at end of file diff --git a/vendor/hca-metadata-4-6-1/json_schema/ontology_json/disease_ontology.json b/vendor/hca-metadata-4-6-1/json_schema/ontology_json/disease_ontology.json new file mode 100644 index 0000000..d823eb6 --- /dev/null +++ b/vendor/hca-metadata-4-6-1/json_schema/ontology_json/disease_ontology.json @@ -0,0 +1,36 @@ +{ + "$schema": "http://json-schema.org/draft-04/schema#", + "additionalProperties": false, + "description": "A term that may be associated with a disease-related ontology term", + "properties": { + "text": { + "description": "The text for the term as the user provides it.", + "type": "string" + }, + "ontology": { + "description": "An optional ontology reference in format where prefix_ indicates which ontology", + "type": "string", + "graph_restriction": { + "ontologies": [ + "obo:efo", + "obo:mondo" + ], + "classes": [ + "MONDO:0000001", + "EFO:0000408" + ], + "relations": [ + "rdfs:subClassOf" + ], + "direct": false, + "include_self": false + } + } + }, + + "required": [ + "text" + ], + "title": "disease_ontology", + "type": "object" +} \ No newline at end of file diff --git a/vendor/hca-metadata-4-6-1/json_schema/organoid.json b/vendor/hca-metadata-4-6-1/json_schema/organoid.json new file mode 100644 index 0000000..e8888d6 --- /dev/null +++ b/vendor/hca-metadata-4-6-1/json_schema/organoid.json @@ -0,0 +1,14 @@ +{ + "title": "organoid", + "$schema": "http://json-schema.org/draft-04/schema#", + "required": [ + "model_for_organ" + ], + "description": "A description of an organoid sample.", + "properties": { + "model_for_organ": { + "description": "Organ that this organoid is a model system for.", + "$ref": "https://raw.githubusercontent.com/HumanCellAtlas/metadata-schema/4.6.1/json_schema/ontology.json" + } + } +} \ No newline at end of file diff --git a/vendor/hca-metadata-4-6-1/json_schema/primary_cell_line.json b/vendor/hca-metadata-4-6-1/json_schema/primary_cell_line.json new file mode 100644 index 0000000..6251300 --- /dev/null +++ b/vendor/hca-metadata-4-6-1/json_schema/primary_cell_line.json @@ -0,0 +1,32 @@ +{ + "description": "Information about the primary cell line used in the sample", + "title": "primary_cell_line", + "additionalProperties": false, + "$schema": "http://json-schema.org/draft-04/schema#", + "type": "object", + "properties": { + "cell_type": { + "description": "The cell type that the cell line was derived from. Should be a CLO ontology.", + "$ref": "https://raw.githubusercontent.com/HumanCellAtlas/metadata-schema/4.6.1/json_schema/ontology_json/cell_type_ontology.json" + }, + "date_established": { + "type": "string", + "description": "When the cell line was established, in date-time format.", + "format": "date-time" + }, + "disease": { + "description": "Free text describing any disease association to the cell type. Should be found in EFO ontology.", + "$ref": "https://raw.githubusercontent.com/HumanCellAtlas/metadata-schema/4.6.1/json_schema/ontology_json/disease_ontology.json" + }, + "passage_number": { + "minimum": 0, + "type": "integer", + "description": "The number of passages the cell line has been through.", + "maximum": 1000 + }, + "cell_cycle": { + "description": "The cell cycle phase if the cell line is synchronized growing cells or the phase is known.", + "$ref": "https://raw.githubusercontent.com/HumanCellAtlas/metadata-schema/4.6.1/json_schema/ontology.json" + } + } +} \ No newline at end of file diff --git a/vendor/hca-metadata-4-6-1/json_schema/project.json b/vendor/hca-metadata-4-6-1/json_schema/project.json new file mode 100644 index 0000000..d13adb9 --- /dev/null +++ b/vendor/hca-metadata-4-6-1/json_schema/project.json @@ -0,0 +1,106 @@ +{ + "description": "project schema generate by tagSchemaToJson from project", + "title": "project", + "required": [ + "core", + "contributors", + "project_id" + ], + "patternProperties": { + "^characteristics_.*$": { + "type": "string", + "description": "Fields that begin with characteristics_ can contain any value, and the field name can be anything after the prefix" + } + }, + "additionalProperties": false, + "definitions": {}, + "$schema": "http://json-schema.org/draft-04/schema#", + "type": "object", + "properties": { + "core": { + "description": "type and schema for this object", + "$ref": "https://raw.githubusercontent.com/HumanCellAtlas/metadata-schema/4.6.1/json_schema/core.json" + }, + "related_projects": { + "items": { + "type": "string" + }, + "type": "array", + "description": "A list of other projects that may be logically grouped with this one." + }, + "name": { + "type": "string", + "description": "A short, descriptive name for the project that need not be unique." + }, + "contributors": { + "items": { + "$ref": "https://raw.githubusercontent.com/HumanCellAtlas/metadata-schema/4.6.1/json_schema/contact.json" + }, + "type": "array", + "description": "List of people contributing to the project." + }, + "submitters": { + "items": { + "$ref": "https://raw.githubusercontent.com/HumanCellAtlas/metadata-schema/4.6.1/json_schema/contact.json" + }, + "type": "array", + "description": "List of people submitting data to the project." + }, + "insdc_project": { + "pattern": "^[D|E|S]RP[0-9]+$", + "type": "string", + "description": "An INSDC (International Nucleotide Sequence Database Collaboration) project accession. Can be from the DDBJ, EMBL-EBI, or NCBI. Accession must start with DRP, ERP, or SRP." + }, + "supplementary_files": { + "items": { + "type": "string" + }, + "type": "array", + "description": "Project-level supplementary files. e.g. experimental design documents, lab spreadsheets, manuscripts in preparation." + }, + "geo_series": { + "pattern": "^GSE.*$", + "type": "string", + "description": "An NCBI GEO series accession." + }, + "experimental_design": { + "items": { + "description": "A short description of overall experiment type. e.g. \"single cell RNA sequencing.\"", + "$ref": "https://raw.githubusercontent.com/HumanCellAtlas/metadata-schema/4.6.1/json_schema/ontology.json" + }, + "type": "array" + }, + "publications": { + "items": { + "description": "An array of publication modules.", + "$ref": "https://raw.githubusercontent.com/HumanCellAtlas/metadata-schema/4.6.1/json_schema/publication.json" + }, + "type": "array" + }, + "experimental_factor_name": { + "items": { + "type": "string" + }, + "type": "array", + "description": "A list of the factors that vary between samples in the experiment. e.g. \"time since collection\", \"preservation method\"" + }, + "project_id": { + "type": "string", + "description": "A unique ID for this project." + }, + "array_express_investigation": { + "pattern": "^E-....-.*$", + "type": "string", + "description": "An EBI ArrayExpress investigation accession." + }, + "insdc_study": { + "pattern": "^PRJ[E|N|D][a-zA-Z][0-9]+$", + "type": "string", + "description": "An INSDC (International Nucleotide Sequence Database Collaboration) study accession. Can be from the DDBJ, EMBL-EBI, or NCBI. Accession must start with PRJE, PRJN, or PRJD" + }, + "description": { + "type": "string", + "description": "A general description of the project." + } + } +} \ No newline at end of file diff --git a/vendor/hca-metadata-4-6-1/json_schema/project_bundle.json b/vendor/hca-metadata-4-6-1/json_schema/project_bundle.json new file mode 100644 index 0000000..7f9a73d --- /dev/null +++ b/vendor/hca-metadata-4-6-1/json_schema/project_bundle.json @@ -0,0 +1,32 @@ +{ + "definitions": { + "project_ingest": { + "required": [ + "hca_ingest", + "content", + "core" + ], + "type": "object", + "properties": { + "content": { + "type": "object", + "description": "Project content", + "$ref": "https://raw.githubusercontent.com/HumanCellAtlas/metadata-schema/4.6.1/json_schema/project.json" + }, + "core": { + "description": "Type and schema for this object.", + "$ref": "https://raw.githubusercontent.com/HumanCellAtlas/metadata-schema/4.6.1/json_schema/core.json" + }, + "hca_ingest": { + "type": "object", + "description": "core fields added by HCA ingest service", + "$ref": "https://raw.githubusercontent.com/HumanCellAtlas/metadata-schema/4.6.1/json_schema/ingest.json" + } + } + } + }, + "$schema": "http://json-schema.org/draft-04/schema#", + "type": "object", + "description": "A schema for a project bundle", + "$ref": "https://raw.githubusercontent.com/HumanCellAtlas/metadata-schema/4.6.1/json_schema/project_bundle.json#/definitions/project_ingest" +} \ No newline at end of file diff --git a/vendor/hca-metadata-4-6-1/json_schema/protocol.json b/vendor/hca-metadata-4-6-1/json_schema/protocol.json new file mode 100644 index 0000000..c5f595f --- /dev/null +++ b/vendor/hca-metadata-4-6-1/json_schema/protocol.json @@ -0,0 +1,48 @@ +{ + "description": "protocol schema generate by tagSchemaToJson from protocol", + "title": "protocol", + "required": [ + "core", + "protocol_id", + "type" + ], + "additionalProperties": false, + "definitions": {}, + "$schema": "http://json-schema.org/draft-04/schema#", + "type": "object", + "properties": { + "core": { + "description": "type and schema for this object", + "$ref": "https://raw.githubusercontent.com/HumanCellAtlas/metadata-schema/4.6.1/json_schema/core.json" + }, + "retail_name": { + "type": "string", + "description": "The retail name of the kit used. e.g SureCell WTA 3' Library Prep Kit" + }, + "description": { + "type": "string", + "description": "A general description of the protocol." + }, + "protocol_id": { + "type": "string", + "description": "A unique ID for this protocol." + }, + "batch_number": { + "type": "string", + "description": "The batch of kit used." + }, + "pdf": { + "pattern": "^.*.pdf$", + "type": "string", + "description": "A filename of a PDF containing the details of the protocol." + }, + "type": { + "description": "The type of protocol. Ideally an EFO term.", + "$ref": "https://raw.githubusercontent.com/HumanCellAtlas/metadata-schema/4.6.1/json_schema/ontology.json" + }, + "name": { + "type": "string", + "description": "A short, descriptive name for the protocol that need not be unique." + } + } +} \ No newline at end of file diff --git a/vendor/hca-metadata-4-6-1/json_schema/publication.json b/vendor/hca-metadata-4-6-1/json_schema/publication.json new file mode 100644 index 0000000..087571d --- /dev/null +++ b/vendor/hca-metadata-4-6-1/json_schema/publication.json @@ -0,0 +1,36 @@ +{ + "description": "A publication contains information about a journal article, book, web page or other external available documentation on a project", + "title": "publication", + "required": [ + "authors", + "title" + ], + "additionalProperties": false, + "$schema": "http://json-schema.org/draft-04/schema#", + "type": "object", + "properties": { + "url": { + "type": "string", + "description": "A URL, preferably not behind a paywall, for the publication." + }, + "title": { + "type": "string", + "description": "The full title of the publication." + }, + "pmid": { + "type": "integer", + "description": "A PubMed ID of the publication, if available. e.g. 27565351" + }, + "doi": { + "type": "string", + "description": "The publication digital object identifier (doi), if available. e.g. 10.1016/j.cell.2016.07.054" + }, + "authors": { + "items": { + "type": "string" + }, + "type": "array", + "description": "A list of authors associated with the publication. Names can be in any format but must be separated by ||." + } + } +} \ No newline at end of file diff --git a/vendor/hca-metadata-4-6-1/json_schema/rna.json b/vendor/hca-metadata-4-6-1/json_schema/rna.json new file mode 100644 index 0000000..52d5ac7 --- /dev/null +++ b/vendor/hca-metadata-4-6-1/json_schema/rna.json @@ -0,0 +1,73 @@ +{ + "description": "Information about how RNA was converted to cDNA for sequencing.", + "title": "rna", + "required": [ + "end_bias", + "library_construction", + "strand" + ], + "additionalProperties": false, + "definitions": {}, + "$schema": "http://json-schema.org/draft-04/schema#", + "type": "object", + "properties": { + "spike_in_dilution": { + "minimum": 1, + "type": "integer", + "description": "Dilution of RNA spike-in.", + "maximum": 1000000 + }, + "library_protocol": { + "pattern": "^P-....-.*$", + "type": "string", + "description": "RNA preparation protocol" + }, + "spike_in": { + "enum": [ + "ERCC" + ], + "description": "Name of RNA spike-in kit. e.g. ERCC." + }, + "end_bias": { + "enum": [ + "three_prime_end", + "three_prime_bias", + "five_prime_end", + "five_prime_bias", + "none" + ], + "description": "The type of end bias the library has. Must be one of 3' bias, 5' bias, 3' end, 5' end, or none." + }, + "primer": { + "enum": [ + "poly-dT", + "random" + ], + "description": "Primer used for cDNA synthesis from RNA. Must be either poly-dT or random." + }, + "strand": { + "enum": [ + "both", + "first" + ], + "description": "Single stranded?" + }, + "library_construction": { + "enum": [ + "unknown", + "CEL-seq", + "SMARTer Ultra Low RNA Kit", + "modified smart-seq2", + "smart-seq2", + "QUARTZ-Seq", + "10x_v2", + "drop-seq", + "inDrop", + "10x_v1", + "SMARTer cDNA synthesis kit", + "TruSeq Stranded Total RNA Library Prep" + ], + "description": "The general approach for sequencing library construction. e.g. Smart-seq, Drop-seq, 10x." + } + } +} \ No newline at end of file diff --git a/vendor/hca-metadata-4-6-1/json_schema/sample.json b/vendor/hca-metadata-4-6-1/json_schema/sample.json new file mode 100644 index 0000000..61e5351 --- /dev/null +++ b/vendor/hca-metadata-4-6-1/json_schema/sample.json @@ -0,0 +1,126 @@ +{ + "oneOf": [ + { + "required": [ + "donor" + ] + }, + { + "required": [ + "immortalized_cell_line" + ] + }, + { + "required": [ + "cell_suspension" + ] + }, + { + "required": [ + "organoid" + ] + }, + { + "required": [ + "primary_cell_line" + ] + }, + { + "required": [ + "specimen_from_organism" + ] + } + ], + "description": "A sample contains information on the biosample that was sequenced or imaged. This includes donor, body part, and anything that comes between removing the sample from a donor and the assay.", + "allOf": [ + { + "required": [ + "sample_id", + "core", + "ncbi_taxon_id" + ] + } + ], + "title": "sample", + "patternProperties": { + "^characteristics_.*$": { + "type": "string", + "description": "Fields that begin with characteristics_ can contain any value, and the field name can be anything after the prefix." + } + }, + "additionalProperties": false, + "$schema": "http://json-schema.org/draft-04/schema#", + "properties": { + "core": { + "description": "Type and schema for this object.", + "$ref": "https://raw.githubusercontent.com/HumanCellAtlas/metadata-schema/4.6.1/json_schema/core.json" + }, + "sample_accessions": { + "additionalProperties": false, + "type": "object", + "description": "One or more accession numbers from a standard archive.", + "properties": { + "insdc_sample": { + "pattern": "^[D|E|S]RS[0-9]+$", + "type": "string", + "description": "An INSDC (International Nucleotide Sequence Database Collaboration) sample accession. Can be from the DDBJ, EMBL-EBI, or NCBI. Accession must start with DRS, ERS, or SRS." + }, + "biosd_sample": { + "pattern": "^SAM(D|N|E([AG]?))[0-9]+$", + "type": "string", + "description": "A DDBJ, NCBI, or EBI BioSample ID. Accessions must start with SAMD, SAMN, or SAME." + } + } + }, + "immortalized_cell_line": { + "$ref": "https://raw.githubusercontent.com/HumanCellAtlas/metadata-schema/4.6.1/json_schema/immortalized_cell_line.json" + }, + "description": { + "type": "string", + "description": "A general description of the sample." + }, + "cell_suspension": { + "$ref": "https://raw.githubusercontent.com/HumanCellAtlas/metadata-schema/4.6.1/json_schema/cell_suspension.json" + }, + "specimen_from_organism": { + "$ref": "https://raw.githubusercontent.com/HumanCellAtlas/metadata-schema/4.6.1/json_schema/specimen_from_organism.json" + }, + "genus_species": { + "description": "Scientific binomial name of donor species. e.g. Homo sapiens.", + "$ref": "https://raw.githubusercontent.com/HumanCellAtlas/metadata-schema/4.6.1/json_schema/ontology.json" + }, + "supplementary_files": { + "items": { + "type": "string" + }, + "type": "array", + "description": "A list of filenames of sample-level supplementary files." + }, + "ncbi_taxon_id": { + "type": "integer", + "description": "A taxonomy ID (taxonID) from NCBI." + }, + "derived_from": { + "comment": "This field is primarily required for spreadsheet based submissions", + "type": "string", + "description": "If this sample is derived from another sample e.g. a tissue or donor, enter the sample_id for the sample this was derived from" + }, + "sample_id": { + "type": "string", + "description": "A unique ID for this sample." + }, + "donor": { + "$ref": "https://raw.githubusercontent.com/HumanCellAtlas/metadata-schema/4.6.1/json_schema/donor.json" + }, + "primary_cell_line": { + "$ref": "https://raw.githubusercontent.com/HumanCellAtlas/metadata-schema/4.6.1/json_schema/primary_cell_line.json" + }, + "organoid": { + "$ref": "https://raw.githubusercontent.com/HumanCellAtlas/metadata-schema/4.6.1/json_schema/organoid.json" + }, + "name": { + "type": "string", + "description": "A short, descriptive name for the sample that need not be unique." + } + } +} \ No newline at end of file diff --git a/vendor/hca-metadata-4-6-1/json_schema/sample_bundle.json b/vendor/hca-metadata-4-6-1/json_schema/sample_bundle.json new file mode 100644 index 0000000..94afcad --- /dev/null +++ b/vendor/hca-metadata-4-6-1/json_schema/sample_bundle.json @@ -0,0 +1,49 @@ +{ + "definitions": { + "sample_ingest": { + "required": [ + "hca_ingest", + "content" + ], + "type": "object", + "properties": { + "content": { + "type": "object", + "description": "Sample content", + "$ref": "https://raw.githubusercontent.com/HumanCellAtlas/metadata-schema/4.6.1/json_schema/sample.json" + }, + "derivation_protocols": { + "items": { + "description": "An array of protocols used in derivation of this sample.", + "$ref": "https://raw.githubusercontent.com/HumanCellAtlas/metadata-schema/4.6.1/json_schema/protocol.json" + }, + "type": "array" + }, + "hca_ingest": { + "type": "object", + "description": "core fields added by HCA ingest service", + "$ref": "https://raw.githubusercontent.com/HumanCellAtlas/metadata-schema/4.6.1/json_schema/ingest.json" + }, + "derived_from": { + "type": "string", + "description": "The sample that this sample was derived from." + } + } + } + }, + "$schema": "http://json-schema.org/draft-04/schema#", + "type": "object", + "description": "A schema for a sample bundle", + "properties": { + "core": { + "description": "Type and schema for this object.", + "$ref": "https://raw.githubusercontent.com/HumanCellAtlas/metadata-schema/4.6.1/json_schema/core.json" + }, + "samples": { + "items": { + "$ref": "https://raw.githubusercontent.com/HumanCellAtlas/metadata-schema/4.6.1/json_schema/sample_bundle.json#/definitions/sample_ingest" + }, + "type": "array" + } + } +} \ No newline at end of file diff --git a/vendor/hca-metadata-4-6-1/json_schema/seq.json b/vendor/hca-metadata-4-6-1/json_schema/seq.json new file mode 100644 index 0000000..6f7e959 --- /dev/null +++ b/vendor/hca-metadata-4-6-1/json_schema/seq.json @@ -0,0 +1,122 @@ +{ + "description": "Information about how a sample was sequenced.", + "title": "seq", + "required": [ + "instrument_model", + "instrument_platform", + "lanes", + "molecule", + "paired_ends" + ], + "additionalProperties": false, + "definitions": { + "lanes": { + "items": { + "additionalProperties": false, + "required": [ + "r1" + ], + "type": "object", + "properties": { + "i1": { + "type": "string", + "description": "A barcode index file. Often index off of first read." + }, + "i2": { + "type": "string", + "description": "A barcode index file. Often index off of second read." + }, + "number": { + "type": "number", + "description": "Which lane number" + }, + "r2": { + "type": "string", + "description": "File name of second read in paired-end read assay." + }, + "r1": { + "type": "string", + "description": "File name of first read in paired-end read sequencing assay, or only read for unpaired." + } + }, + "title": "A sequencing lane." + }, + "type": "array", + "title": "lane array" + } + }, + "$schema": "http://json-schema.org/draft-04/schema#", + "type": "object", + "properties": { + "paired_ends": { + "type": "boolean", + "description": "Was a paired-end sequencing strategy used? Must be either yes or no." + }, + "lanes": { + "$ref": "https://raw.githubusercontent.com/HumanCellAtlas/metadata-schema/4.6.1/json_schema/seq.json#/definitions/lanes" + }, + "insdc_run": { + "items": { + "pattern": "^[D|E|S]RR[0-9]+$", + "type": "string" + }, + "type": "array", + "description": "An INSDC (International Nucleotide Sequence Database Collaboration) run accession. Accession must start with DRR, ERR, or SRR." + }, + "local_machine_name": { + "type": "string", + "description": "Local name for the particular machine on which the sample was sequenced." + }, + "molecule": { + "enum": [ + "polyA RNA", + "total RNA", + "genomic DNA" + ], + "description": "Specific type of molecule sequenced. e.g. total RNA, genomic DNA, polyA RNA." + }, + "instrument_model": { + "enum": [ + "HiSeq 2000", + "HiSeq 2500", + "HiSeq 4000", + "MiSeq", + "NextSeq 500", + "Sequel" + ], + "description": "The model of the sequencer used. e.g. HiSeq 2000, Sequel." + }, + "umi_barcode": { + "description": "Information about unique molecular identifier (UMI) barcode sequences.", + "$ref": "https://raw.githubusercontent.com/HumanCellAtlas/metadata-schema/4.6.1/json_schema/barcode.json" + }, + "library_protocol": { + "pattern": "^P-....-.*$", + "type": "string", + "description": "DNA sequencing library preparation protocol." + }, + "insdc_experiment": { + "pattern": "^[D|E|S]RX[0-9]+$", + "type": "string", + "description": "An INSDC (International Nucleotide Sequence Database Collaboration) experiment accession. Accession must start with DRX, ERX, or SRX." + }, + "instrument_platform": { + "enum": [ + "Illumina", + "Ion Torrent", + "Pacific Biosciences" + ], + "description": "The sequencing platform used. e.g. Illumina, Ion Torrent, Pacific Biosciences." + }, + "library_construction": { + "enum": [ + "Nextera XT", + "TruSeq", + "modified Nextera XT", + "10x_v2", + "10x_v1" + ], + "description": "How the DNA sequencing library was prepared. e.g. Nextera XT, TrueSeq." + } + } +} \ No newline at end of file diff --git a/vendor/hca-metadata-4-6-1/json_schema/single_cell.json b/vendor/hca-metadata-4-6-1/json_schema/single_cell.json new file mode 100644 index 0000000..84eb8c6 --- /dev/null +++ b/vendor/hca-metadata-4-6-1/json_schema/single_cell.json @@ -0,0 +1,29 @@ +{ + "description": "Contains information on single cell aspects of an assay.", + "title": "single_cell", + "required": [ + "cell_handling" + ], + "additionalProperties": false, + "$schema": "http://json-schema.org/draft-04/schema#", + "type": "object", + "properties": { + "cell_barcode": { + "description": "Information about cell identifier barcode.", + "$ref": "https://raw.githubusercontent.com/HumanCellAtlas/metadata-schema/4.6.1/json_schema/barcode.json" + }, + "cell_handling": { + "enum": [ + "10x_v2", + "FACS", + "Fluidigm C1", + "drop-seq", + "inDrop", + "mouth pipette", + "bulk", + "10x_v1" + ], + "description": "How cells are separated. e.g. FACS, drop-seq, 10x_v2, Fluidigm C1." + } + } +} \ No newline at end of file diff --git a/vendor/hca-metadata-4-6-1/json_schema/specimen_from_organism.json b/vendor/hca-metadata-4-6-1/json_schema/specimen_from_organism.json new file mode 100644 index 0000000..10e1067 --- /dev/null +++ b/vendor/hca-metadata-4-6-1/json_schema/specimen_from_organism.json @@ -0,0 +1,25 @@ +{ + "description": "Information about the specimen that was extracted from the donor organism.", + "title": "specimen_from_organism", + "required": [ + "body_part", + "organ" + ], + "additionalProperties": false, + "$schema": "http://json-schema.org/draft-04/schema#", + "type": "object", + "properties": { + "body_part": { + "description": "A more detailed position within the body than the term given in the organ field.", + "$ref": "https://raw.githubusercontent.com/HumanCellAtlas/metadata-schema/4.6.1/json_schema/ontology_json/body_part_ontology.json" + }, + "state_of_specimen": { + "description": "State of body_part at collection and how it was preserved after removal.", + "$ref": "https://raw.githubusercontent.com/HumanCellAtlas/metadata-schema/4.6.1/json_schema/state_of_specimen.json" + }, + "organ": { + "description": "The organ that the sample came from. e.g. liver, spleen. Blood and connective tissue count as organs.", + "$ref": "https://raw.githubusercontent.com/HumanCellAtlas/metadata-schema/4.6.1/json_schema/ontology.json" + } + } +} \ No newline at end of file diff --git a/vendor/hca-metadata-4-6-1/json_schema/state_of_specimen.json b/vendor/hca-metadata-4-6-1/json_schema/state_of_specimen.json new file mode 100644 index 0000000..c6d2310 --- /dev/null +++ b/vendor/hca-metadata-4-6-1/json_schema/state_of_specimen.json @@ -0,0 +1,54 @@ +{ + "description": "State of body part at collection and how it was preserved after removal and/or cell enrichment", + "title": "state_of_specimen", + "additionalProperties": false, + "definitions": {}, + "$schema": "http://json-schema.org/draft-04/schema#", + "type": "object", + "properties": { + "ischemic_time": { + "minimum": 0, + "type": "integer", + "description": "Duration of time, in seconds, that the body part had insufficient blood supply.", + "maximum": 1000000 + }, + "gross_image": { + "items": { + "pattern": "^.*.jpg$|^.*.jpeg$|^.*.tiff$|^.*.png$", + "type": "string" + }, + "type": "array", + "description": "List of filenames of photographs of body part without magnification. Must be of format JPEG, TIFF, or PNG." + }, + "postmortem_interval": { + "minimum": 0, + "type": "integer", + "description": "Duration of time, in seconds, between when death is declared and when the tissue is preserved or processed.", + "maximum": 1000000 + }, + "gross_description": { + "type": "string", + "description": "Color, size, and other aspects of specimen as visible to naked eye." + }, + "autolysis_score": { + "enum": [ + "none", + "mild", + "moderate" + ], + "description": "State of tissue breakdown due to self-digestion. Must be one of: none, mild, moderate." + }, + "microscopic_image": { + "items": { + "pattern": "^.*.jpg$|^.*.jpeg$|^.*.tiff$|^.*.png$", + "type": "string" + }, + "type": "array", + "description": "List of filenames of photographs of body part under microscope. Must be of format JPEG, TIFF, or PNG." + }, + "microscopic_description": { + "type": "string", + "description": "How the sample looks under the microscope and how it compares with normal cells." + } + } +} \ No newline at end of file diff --git a/vendor/hca-metadata-4-6-1/json_schema/submission.json b/vendor/hca-metadata-4-6-1/json_schema/submission.json new file mode 100644 index 0000000..1ee2ab1 --- /dev/null +++ b/vendor/hca-metadata-4-6-1/json_schema/submission.json @@ -0,0 +1,87 @@ +{ + "title": "submission", + "required": [ + "transfer_service_version", + "submitted_files" + ], + "additionalProperties": false, + "definitions": { + "submitted_files": { + "additionalProperties": false, + "items": { + "$ref": "https://raw.githubusercontent.com/HumanCellAtlas/metadata-schema/4.6.1/json_schema/submission.json#/definitions/file" + }, + "type": "array" + }, + "transfer_service_version": { + "additionalProperties": false, + "type": "string" + }, + "file": { + "additionalProperties": false, + "required": [ + "name", + "content_type", + "size", + "id", + "checksums" + ], + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "URI of the Data Storage System file resource that describes this file" + }, + "checksums": { + "required": [ + "s3etag", + "sha1", + "sha256", + "crc32" + ], + "type": "object", + "properties": { + "crc32": { + "type": "string", + "description": "CRC-32 checksum of this file" + }, + "sha256": { + "type": "string", + "description": "SHA-256 checksum of this file" + }, + "s3etag": { + "type": "string", + "description": "S3 ETAG checksum of this file" + }, + "sha1": { + "type": "string", + "description": "SHA-1 checksum of this file" + } + } + }, + "name": { + "type": "string", + "description": "Name of the file" + }, + "content_type": { + "type": "string", + "description": "type of file e.g hca-sample-json, hca-assay-json, hca-rnaseq-fastq-gz" + }, + "size": { + "type": "integer", + "description": "Length of file in bytes" + } + } + } + }, + "$schema": "http://json-schema.org/draft-04/schema#", + "type": "object", + "properties": { + "submitted_files": { + "$ref": "https://raw.githubusercontent.com/HumanCellAtlas/metadata-schema/4.6.1/json_schema/submission.json#/definitions/submitted_files" + }, + "transfer_service_version": { + "$ref": "https://raw.githubusercontent.com/HumanCellAtlas/metadata-schema/4.6.1/json_schema/submission.json#/definitions/transfer_service_version" + } + } +} \ No newline at end of file diff --git a/vendor/hca-metadata-4-6-1/json_schema/well.json b/vendor/hca-metadata-4-6-1/json_schema/well.json new file mode 100644 index 0000000..c97f57a --- /dev/null +++ b/vendor/hca-metadata-4-6-1/json_schema/well.json @@ -0,0 +1,34 @@ +{ + "description": "This describes the well inside the plate or fluidics chip where sample came from.", + "title": "well", + "additionalProperties": false, + "$schema": "http://json-schema.org/draft-04/schema#", + "type": "object", + "properties": { + "plate": { + "type": "string", + "description": "An ID for the plate that the well is located on." + }, + "row": { + "type": "string", + "description": "Well row in plate." + }, + "quality": { + "enum": [ + "OK", + "control, 2-cell well", + "control, empty well", + "low quality cell" + ], + "description": "Note on how good cell looks if imaged in well before sequencing." + }, + "col": { + "type": "string", + "description": "Well column in plate." + }, + "name": { + "type": "string", + "description": "A name for the well. Should be unique for the plate" + } + } +} \ No newline at end of file