diff --git a/setup.py b/setup.py index 6c70ab40749..fae677f6c6b 100644 --- a/setup.py +++ b/setup.py @@ -5,7 +5,7 @@ README = open(os.path.join(here, 'README.md')).read() CHANGES = open(os.path.join(here, 'CHANGES.rst')).read() # Edit Snovault version after the `@` here, can be a branch or tag -SNOVAULT_DEP = "git+https://github.com/ENCODE-DCC/snovault.git@1.0.62" +SNOVAULT_DEP = "git+https://github.com/ENCODE-DCC/snovault.git@upgrade-validator-sno2" INSTALL_REQUIRES = [ "PasteDeploy==2.1.0", @@ -21,7 +21,7 @@ "elasticsearch==5.4.0", "future==0.18.2", "humanfriendly==6.1", - "jsonschema_serialize_fork==2.1.1", + "jsonschema[format]==4.4.0", "loremipsum==1.0.5", "passlib==1.7.2", "psutil==5.6.7", @@ -32,7 +32,7 @@ "pyramid==1.10.4", "python-magic==0.4.15", "pytz==2019.3", - "rdflib-jsonld==0.4.0", + "rdflib-jsonld==0.6.0", "rdflib==4.2.2", "repoze.debug==1.1", "rfc3987==1.3.8", diff --git a/src/encoded/auth0.py b/src/encoded/auth0.py index 3bb37232adc..29bf47f0d3c 100644 --- a/src/encoded/auth0.py +++ b/src/encoded/auth0.py @@ -7,7 +7,7 @@ from snovault.schema_utils import validate_request from pyramid.authentication import CallbackAuthenticationPolicy from encoded.types.user import User -from jsonschema_serialize_fork.exceptions import ValidationError +from jsonschema.exceptions import ValidationError from pyramid.httpexceptions import ( HTTPBadRequest, HTTPInternalServerError, diff --git a/src/encoded/schema_formats.py b/src/encoded/schema_formats.py index 46eb9f37dde..35a082da977 100644 --- a/src/encoded/schema_formats.py +++ b/src/encoded/schema_formats.py @@ -1,6 +1,6 @@ import re import rfc3987 -from jsonschema_serialize_fork import FormatChecker +from jsonschema import FormatChecker from pyramid.threadlocal import get_current_request from uuid import UUID diff --git a/src/encoded/schemas/access_key.json b/src/encoded/schemas/access_key.json index 3c843bdba16..d9d04242879 100644 --- a/src/encoded/schemas/access_key.json +++ b/src/encoded/schemas/access_key.json @@ -1,7 +1,7 @@ { "title": "Admin access key", - "id": "/profiles/access_key_admin.json", - "$schema": "http://json-schema.org/draft-04/schema#", + "$id": "/profiles/access_key_admin.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", "required": [], "additionalProperties": false, "mixinProperties": [ diff --git a/src/encoded/schemas/aggregate_series.json b/src/encoded/schemas/aggregate_series.json index 9c82ba17726..798fca46be0 100644 --- a/src/encoded/schemas/aggregate_series.json +++ b/src/encoded/schemas/aggregate_series.json @@ -1,8 +1,8 @@ { "title": "Aggregate series", "description": "Schema for submitting metadata for an aggregate series.", - "id": "/profiles/aggregate_series.json", - "$schema": "http://json-schema.org/draft-04/schema#", + "$id": "/profiles/aggregate_series.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", "type": "object", "required": [ "award", "lab"], "identifyingProperties": ["uuid", "accession" , "aliases"], @@ -21,7 +21,7 @@ { "$ref": "series.json#/properties" }, { "$ref": "mixins.json#/submitter_comment" } ], - "dependencies": { + "dependentSchemas": { "status": { "oneOf": [ { diff --git a/src/encoded/schemas/analysis.json b/src/encoded/schemas/analysis.json index 445c904ed36..7ec5281e856 100644 --- a/src/encoded/schemas/analysis.json +++ b/src/encoded/schemas/analysis.json @@ -2,8 +2,8 @@ "title": "Analysis", "description": "Schema for grouping files into one analysis.", "comment": "An analysis is typically performed on one experiments and is initially designed to group only files from a single experiment.", - "id": "/profiles/analysis.json", - "$schema": "http://json-schema.org/draft-04/schema#", + "$id": "/profiles/analysis.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", "type": "object", "required": ["files"], "identifyingProperties": ["uuid", "accession", "aliases"], @@ -18,7 +18,6 @@ { "$ref": "mixins.json#/notes" }, { "$ref": "mixins.json#/documents" } ], - "dependencies": {}, "properties": { "schema_version": { "default": "1" diff --git a/src/encoded/schemas/analysis_step.json b/src/encoded/schemas/analysis_step.json index 2d92dd31f0a..66ae412d508 100644 --- a/src/encoded/schemas/analysis_step.json +++ b/src/encoded/schemas/analysis_step.json @@ -1,8 +1,8 @@ { "title": "Analysis step", "description": "Schema for submitting a computational analysis steps as a subobject of pipeline that transforms input files to output files.", - "id": "/profiles/analysis_step.json", - "$schema": "http://json-schema.org/draft-04/schema#", + "$id": "/profiles/analysis_step.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", "type": "object", "required": ["step_label", "title", "analysis_step_types", "input_file_types", "major_version"], "additionalProperties": false, diff --git a/src/encoded/schemas/analysis_step_run.json b/src/encoded/schemas/analysis_step_run.json index adfc019bc4f..bc5c6bb9e9f 100644 --- a/src/encoded/schemas/analysis_step_run.json +++ b/src/encoded/schemas/analysis_step_run.json @@ -1,8 +1,8 @@ { "title": "Analysis step run", "description": "Schema for reporting the specific calculation of an analysis_step", - "id": "/profiles/analysis_step_run.json", - "$schema": "http://json-schema.org/draft-04/schema#", + "$id": "/profiles/analysis_step_run.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", "type": "object", "required": ["analysis_step_version"], "additionalProperties": false, diff --git a/src/encoded/schemas/analysis_step_version.json b/src/encoded/schemas/analysis_step_version.json index 1c58b63be29..a88e0ad2ea3 100644 --- a/src/encoded/schemas/analysis_step_version.json +++ b/src/encoded/schemas/analysis_step_version.json @@ -1,8 +1,8 @@ { "title": "Analysis step version", "description": "A compatible version of an analysis step.", - "id": "/profiles/analysis_step_version.json", - "$schema": "http://json-schema.org/draft-04/schema#", + "$id": "/profiles/analysis_step_version.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", "type": "object", "required": ["software_versions", "analysis_step", "minor_version"], "additionalProperties": false, diff --git a/src/encoded/schemas/annotation.json b/src/encoded/schemas/annotation.json index 6afc947ff0d..f898d3c7447 100644 --- a/src/encoded/schemas/annotation.json +++ b/src/encoded/schemas/annotation.json @@ -1,8 +1,8 @@ { "title": "Annotation", "description": "Schema for submitting metadata for an annotation set.", - "id": "/profiles/annotation.json", - "$schema": "http://json-schema.org/draft-04/schema#", + "$id": "/profiles/annotation.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", "type": "object", "required": [ "award", "lab", "annotation_type"], "identifyingProperties": ["uuid", "accession" , "aliases"], @@ -21,7 +21,11 @@ { "$ref": "dataset.json#/properties" }, { "$ref": "file_set.json#/properties" } ], - "dependencies": { + "dependentRequired": { + "relevant_timepoint": ["relevant_timepoint_units"], + "relevant_timepoint_units": ["relevant_timepoint"] + }, + "dependentSchemas": { "biosample_ontology": { "not": { "properties": { @@ -41,8 +45,6 @@ } } }, - "relevant_timepoint": ["relevant_timepoint_units"], - "relevant_timepoint_units": ["relevant_timepoint"], "status": { "oneOf": [ { diff --git a/src/encoded/schemas/antibody_characterization.json b/src/encoded/schemas/antibody_characterization.json index bf5c1b3f1dd..d8ec55d4d22 100644 --- a/src/encoded/schemas/antibody_characterization.json +++ b/src/encoded/schemas/antibody_characterization.json @@ -1,8 +1,8 @@ - { +{ "title": "Antibody characterization", "description": "Schema for submitting antibody characterization data.", - "id": "/profiles/antibody_characterization.json", - "$schema": "http://json-schema.org/draft-04/schema#", + "$id": "/profiles/antibody_characterization.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", "type": "object", "required": [ "award", "lab", "characterizes", "target", "attachment"], "identifyingProperties": ["uuid", "aliases"], @@ -20,8 +20,10 @@ { "$ref": "mixins.json#/documents" }, { "$ref": "mixins.json#/submitter_comment" } ], - "dependencies": { - "characterization_reviews": ["primary_characterization_method"], + "dependentRequired": { + "characterization_reviews": ["primary_characterization_method"] + }, + "dependentSchemas": { "primary_characterization_method": { "oneOf": [ { diff --git a/src/encoded/schemas/antibody_lot.json b/src/encoded/schemas/antibody_lot.json index 36b263aac59..ba4b2f59d63 100644 --- a/src/encoded/schemas/antibody_lot.json +++ b/src/encoded/schemas/antibody_lot.json @@ -1,8 +1,8 @@ { "title": "Antibody lot", "description": "Schema for submitting an antibody lot (not including target or characterization information).", - "id": "/profiles/antibody_lot.json", - "$schema": "http://json-schema.org/draft-04/schema#", + "$id": "/profiles/antibody_lot.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", "type": "object", "required": [ "award", "lab", "product_id", "source", "lot_id", "host_organism"], "identifyingProperties": ["uuid","accession","aliases"], diff --git a/src/encoded/schemas/atac_alignment_enrichment_quality_metric.json b/src/encoded/schemas/atac_alignment_enrichment_quality_metric.json index c1c647d6100..fbf0b009b04 100644 --- a/src/encoded/schemas/atac_alignment_enrichment_quality_metric.json +++ b/src/encoded/schemas/atac_alignment_enrichment_quality_metric.json @@ -1,8 +1,8 @@ { "title": "ATAC-seq alignment enrichment quality metric", "description": "Schema for ATAC-seq alignment enrichment quality metrics", - "id": "/profiles/atac_alignment_enrichment_quality_metric.json", - "$schema": "http://json-schema.org/draft-04/schema#", + "$id": "/profiles/atac_alignment_enrichment_quality_metric.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", "type": "object", "required": ["step_run","quality_metric_of", "award", "lab"], "additionalProperties": false, diff --git a/src/encoded/schemas/atac_alignment_quality_metric.json b/src/encoded/schemas/atac_alignment_quality_metric.json index 3a3dd741ccb..8eb303a7518 100644 --- a/src/encoded/schemas/atac_alignment_quality_metric.json +++ b/src/encoded/schemas/atac_alignment_quality_metric.json @@ -1,8 +1,8 @@ { "title": "ATAC-seq alignment quality metric", "description": "Schema for reporting ATAC-seq alignment quality metrics", - "id": "/profiles/atac_alignment_quality_metric.json", - "$schema": "http://json-schema.org/draft-04/schema#", + "$id": "/profiles/atac_alignment_quality_metric.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", "type": "object", "required": ["step_run","quality_metric_of", "award", "lab"], "additionalProperties": false, diff --git a/src/encoded/schemas/atac_library_complexity_quality_metric.json b/src/encoded/schemas/atac_library_complexity_quality_metric.json index c79963dd53b..49800eaa06a 100644 --- a/src/encoded/schemas/atac_library_complexity_quality_metric.json +++ b/src/encoded/schemas/atac_library_complexity_quality_metric.json @@ -1,8 +1,8 @@ { "title": "ATAC-seq library quality metric", "description": "Schema for reporting ATAC-seq library quality metrics", - "id": "/profiles/atac_library_complexity_quality_metric.json", - "$schema": "http://json-schema.org/draft-04/schema#", + "$id": "/profiles/atac_library_complexity_quality_metric.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", "type": "object", "required": ["step_run","quality_metric_of", "award", "lab"], "additionalProperties": false, diff --git a/src/encoded/schemas/atac_peak_enrichment_quality_metric.json b/src/encoded/schemas/atac_peak_enrichment_quality_metric.json index 68b4a292efd..690be733160 100644 --- a/src/encoded/schemas/atac_peak_enrichment_quality_metric.json +++ b/src/encoded/schemas/atac_peak_enrichment_quality_metric.json @@ -1,8 +1,8 @@ { "title": "ATAC-seq peak enrichment quality metric", "description": "Schema for reporting ATAC-seq peak enrichment quality metrics", - "id": "/profiles/atac_peak_enrichment_quality_metric.json", - "$schema": "http://json-schema.org/draft-04/schema#", + "$id": "/profiles/atac_peak_enrichment_quality_metric.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", "type": "object", "required": ["step_run","quality_metric_of", "award", "lab"], "additionalProperties": false, diff --git a/src/encoded/schemas/atac_replication_quality_metric.json b/src/encoded/schemas/atac_replication_quality_metric.json index ba97fe655e8..da90158f5b6 100644 --- a/src/encoded/schemas/atac_replication_quality_metric.json +++ b/src/encoded/schemas/atac_replication_quality_metric.json @@ -1,8 +1,8 @@ { "title": "ATAC-seq replication quality metric", "description": "Schema for reporting ATAC-seq replication quality metrics", - "id": "/profiles/atac_replication_quality_metric.json", - "$schema": "http://json-schema.org/draft-04/schema#", + "$id": "/profiles/atac_replication_quality_metric.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", "type": "object", "required": ["step_run","quality_metric_of", "award", "lab"], "additionalProperties": false, diff --git a/src/encoded/schemas/award.json b/src/encoded/schemas/award.json index 4df5997812f..9a42ccfc08a 100644 --- a/src/encoded/schemas/award.json +++ b/src/encoded/schemas/award.json @@ -1,7 +1,7 @@ { "title": "Grant", - "id": "/profiles/award.json", - "$schema": "http://json-schema.org/draft-04/schema#", + "$id": "/profiles/award.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", "required": [ "name", "project", "rfa", "title"], "identifyingProperties": ["uuid", "name", "title"], "additionalProperties": false, diff --git a/src/encoded/schemas/biosample.json b/src/encoded/schemas/biosample.json index 8d9bf65286e..3f4c42792cc 100644 --- a/src/encoded/schemas/biosample.json +++ b/src/encoded/schemas/biosample.json @@ -2,8 +2,8 @@ "title": "Biosample", "description": "Schema for submitting a biosample.", "comment": "For cultured samples this object represents unique growths or culture harvests.", - "id": "/profiles/biosample.json", - "$schema": "http://json-schema.org/draft-04/schema#", + "$id": "/profiles/biosample.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", "type": "object", "required": [ "award", "lab", "source", "organism", "biosample_ontology"], "identifyingProperties": ["uuid", "accession", "aliases"], @@ -27,7 +27,7 @@ {"$ref": "mixins.json#/accession"}, {"$ref": "mixins.json#/uuid"} ], - "dependencies": { + "dependentSchemas": { "biosample_ontology": { "not": { "properties": { @@ -976,9 +976,11 @@ "maximum": 100 } }, - "dependencies": { - "expression_range_minimum": ["expression_range_maximum"], - "expression_range_maximum": ["expression_range_minimum"], + "dependentRequired": { + "expression_range_minimum": ["expression_range_maximum"], + "expression_range_maximum": ["expression_range_minimum"] + }, + "dependentSchemas": { "expression_percentile": { "not": { "anyOf": [ diff --git a/src/encoded/schemas/biosample_characterization.json b/src/encoded/schemas/biosample_characterization.json index 7456a6d9add..bb562b8556c 100644 --- a/src/encoded/schemas/biosample_characterization.json +++ b/src/encoded/schemas/biosample_characterization.json @@ -1,8 +1,8 @@ { "title": "Biosample characterization", "description": "Schema for submitting biosample characterization data", - "id": "/profiles/biosample_characterization.json", - "$schema": "http://json-schema.org/draft-04/schema#", + "$id": "/profiles/biosample_characterization.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", "type": "object", "required": [ "award", "lab", "characterizes", "attachment"], "identifyingProperties": ["uuid", "aliases"], diff --git a/src/encoded/schemas/biosample_type.json b/src/encoded/schemas/biosample_type.json index 5a4d08d5ff5..fc4a3f920fd 100644 --- a/src/encoded/schemas/biosample_type.json +++ b/src/encoded/schemas/biosample_type.json @@ -2,8 +2,8 @@ "title": "Biosample Type", "description": "Schema for describing the type of a specific biosample.", "comment": "This object collects common properties of a group of similar biosamples to help reduce ambiguity and duplications. Do not submit. DCC personnel is responsible for creating and maintaining these objects", - "id": "/profiles/biosample_type.json", - "$schema": "http://json-schema.org/draft-04/schema#", + "$id": "/profiles/biosample_type.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", "type": "object", "required": ["classification", "term_id", "term_name"], "identifyingProperties": ["aliases", "uuid"], @@ -16,7 +16,7 @@ {"$ref": "mixins.json#/standard_status"}, {"$ref": "mixins.json#/uuid"} ], - "dependencies": { + "dependentSchemas": { "term_id":{ "oneOf": [ { diff --git a/src/encoded/schemas/bismark_quality_metric.json b/src/encoded/schemas/bismark_quality_metric.json index e42f1c17c9a..43f88a179f4 100644 --- a/src/encoded/schemas/bismark_quality_metric.json +++ b/src/encoded/schemas/bismark_quality_metric.json @@ -1,8 +1,8 @@ { "title": "Bismark quality metric", "description": "Schema for reporting the specific calculation of an quality metrics", - "id": "/profiles/bismark_quality_metric.json", - "$schema": "http://json-schema.org/draft-04/schema#", + "$id": "/profiles/bismark_quality_metric.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", "type": "object", "required": ["step_run", "quality_metric_of", "award", "lab"], "additionalProperties": false, diff --git a/src/encoded/schemas/bru_library_quality_metric.json b/src/encoded/schemas/bru_library_quality_metric.json index 9b58749d37f..33abaa1bca0 100644 --- a/src/encoded/schemas/bru_library_quality_metric.json +++ b/src/encoded/schemas/bru_library_quality_metric.json @@ -1,8 +1,8 @@ { "title": "Bru library quality metric", "description": "Schema for reporting Bru assay library quality metric", - "id": "/profiles/bru_library_quality_metric.json", - "$schema": "http://json-schema.org/draft-04/schema#", + "$id": "/profiles/bru_library_quality_metric.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", "type": "object", "required": ["step_run", "award", "lab", "quality_metric_of"], "additionalProperties": false, diff --git a/src/encoded/schemas/cart.json b/src/encoded/schemas/cart.json index 55536296fd4..9e2a777a27e 100644 --- a/src/encoded/schemas/cart.json +++ b/src/encoded/schemas/cart.json @@ -2,8 +2,8 @@ "title": "Cart", "description": "Cart of objects aka shopping cart.", "comment": "This object gets connected with user objects.", - "id": "/profiles/cart.json", - "$schema": "http://json-schema.org/draft-04/schema#", + "$id": "/profiles/cart.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", "type": "object", "required": ["name"], "identifyingProperties": ["uuid", "identifier"], @@ -13,7 +13,7 @@ { "$ref": "mixins.json#/submitted" }, { "$ref": "mixins.json#/uuid" } ], - "dependencies": { + "dependentSchemas": { "status":{ "comment": "Listed, released, or revoked carts must have a description.", "oneOf": [ diff --git a/src/encoded/schemas/characterization.json b/src/encoded/schemas/characterization.json index 853c89fe99e..98884ef24f7 100644 --- a/src/encoded/schemas/characterization.json +++ b/src/encoded/schemas/characterization.json @@ -1,8 +1,8 @@ { "title": "Base characterization", "description": "Schema for submitting a characterization of an object.", - "id": "/profiles/characterization.json", - "$schema": "http://json-schema.org/draft-04/schema#", + "$id": "/profiles/characterization.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", "type": "object", "required": [ "award", "lab", "characterizes", "attachment"], "additionalProperties": false, diff --git a/src/encoded/schemas/chia_pet_alignment_quality_metric.json b/src/encoded/schemas/chia_pet_alignment_quality_metric.json index a4a3efcefd8..5d54f5fa028 100644 --- a/src/encoded/schemas/chia_pet_alignment_quality_metric.json +++ b/src/encoded/schemas/chia_pet_alignment_quality_metric.json @@ -1,8 +1,8 @@ { "title": "ChIA-PET alignment quality metric", "description": "Schema for reporting ChIA-PET alignment quality metric", - "id": "/profiles/chia_pet_alignment_quality_metric.json", - "$schema": "http://json-schema.org/draft-04/schema#", + "$id": "/profiles/chia_pet_alignment_quality_metric.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", "type": "object", "required": ["step_run", "award", "lab", "quality_metric_of"], "additionalProperties": false, diff --git a/src/encoded/schemas/chia_pet_chr_interactions_quality_metric.json b/src/encoded/schemas/chia_pet_chr_interactions_quality_metric.json index 3ec4f1fccbe..96d286e8386 100644 --- a/src/encoded/schemas/chia_pet_chr_interactions_quality_metric.json +++ b/src/encoded/schemas/chia_pet_chr_interactions_quality_metric.json @@ -1,8 +1,8 @@ { "title": "ChIA-PET chromatin interactions quality metric", "description": "Schema for reporting ChIA-PET chromatin interactions quality metric", - "id": "/profiles/chia_pet_chr_interactions_quality_metric.json", - "$schema": "http://json-schema.org/draft-04/schema#", + "$id": "/profiles/chia_pet_chr_interactions_quality_metric.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", "type": "object", "required": ["step_run", "award", "lab", "quality_metric_of"], "additionalProperties": false, diff --git a/src/encoded/schemas/chia_pet_peak_enrichment_quality_metric.json b/src/encoded/schemas/chia_pet_peak_enrichment_quality_metric.json index f285e6f1c43..bc380690b4c 100644 --- a/src/encoded/schemas/chia_pet_peak_enrichment_quality_metric.json +++ b/src/encoded/schemas/chia_pet_peak_enrichment_quality_metric.json @@ -1,8 +1,8 @@ { "title": "ChIA-PET peak enrichment quality metric", "description": "Schema for reporting ChIA-PET peak enrichment quality metric", - "id": "/profiles/chia_pet_peak_enrichment_quality_metric.json", - "$schema": "http://json-schema.org/draft-04/schema#", + "$id": "/profiles/chia_pet_peak_enrichment_quality_metric.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", "type": "object", "required": ["step_run", "award", "lab", "quality_metric_of"], "additionalProperties": false, diff --git a/src/encoded/schemas/chip_alignment_enrichment_quality_metric.json b/src/encoded/schemas/chip_alignment_enrichment_quality_metric.json index 79986e7dcd4..2becec7f518 100644 --- a/src/encoded/schemas/chip_alignment_enrichment_quality_metric.json +++ b/src/encoded/schemas/chip_alignment_enrichment_quality_metric.json @@ -1,8 +1,8 @@ { "title": "ChIP-seq alignment enrichment quality metric", "description": "Schema for ChIP-seq alignment enrichment quality metrics", - "id": "/profiles/chip_alignment_enrichment_quality_metric.json", - "$schema": "http://json-schema.org/draft-04/schema#", + "$id": "/profiles/chip_alignment_enrichment_quality_metric.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", "type": "object", "required": ["step_run","quality_metric_of", "award", "lab"], "additionalProperties": false, diff --git a/src/encoded/schemas/chip_alignment_samstat_quality_metric.json b/src/encoded/schemas/chip_alignment_samstat_quality_metric.json index 4936955fcea..e54074318c0 100644 --- a/src/encoded/schemas/chip_alignment_samstat_quality_metric.json +++ b/src/encoded/schemas/chip_alignment_samstat_quality_metric.json @@ -1,8 +1,8 @@ { "title": "ChIP-seq alignment quality metric", "description": "Schema for reporting ChIP-seq alignment quality metrics", - "id": "/profiles/chip_alignment_samstat_quality_metric.json", - "$schema": "http://json-schema.org/draft-04/schema#", + "$id": "/profiles/chip_alignment_samstat_quality_metric.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", "type": "object", "required": ["step_run","quality_metric_of", "award", "lab"], "additionalProperties": false, diff --git a/src/encoded/schemas/chip_library_quality_metric.json b/src/encoded/schemas/chip_library_quality_metric.json index b34a54671f6..293290809a1 100644 --- a/src/encoded/schemas/chip_library_quality_metric.json +++ b/src/encoded/schemas/chip_library_quality_metric.json @@ -1,8 +1,8 @@ { "title": "ChIP-seq library quality metric", "description": "Schema for reporting ChIP-seq library quality metrics", - "id": "/profiles/chip_library_quality_metric.json", - "$schema": "http://json-schema.org/draft-04/schema#", + "$id": "/profiles/chip_library_quality_metric.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", "type": "object", "required": ["step_run","quality_metric_of", "award", "lab"], "additionalProperties": false, diff --git a/src/encoded/schemas/chip_peak_enrichment_quality_metric.json b/src/encoded/schemas/chip_peak_enrichment_quality_metric.json index 73c4e206fc5..49bc38944ec 100644 --- a/src/encoded/schemas/chip_peak_enrichment_quality_metric.json +++ b/src/encoded/schemas/chip_peak_enrichment_quality_metric.json @@ -1,8 +1,8 @@ { "title": "ChIP-seq peak enrichment quality metric", "description": "Schema for reporting ChIP-seq peak enrichment quality metrics", - "id": "/profiles/chip_peak_enrichment_quality_metric.json", - "$schema": "http://json-schema.org/draft-04/schema#", + "$id": "/profiles/chip_peak_enrichment_quality_metric.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", "type": "object", "required": ["step_run","quality_metric_of", "award", "lab"], "additionalProperties": false, diff --git a/src/encoded/schemas/chip_replication_quality_metric.json b/src/encoded/schemas/chip_replication_quality_metric.json index 4744bf19c0c..ce665e0e006 100644 --- a/src/encoded/schemas/chip_replication_quality_metric.json +++ b/src/encoded/schemas/chip_replication_quality_metric.json @@ -1,8 +1,8 @@ { "title": "ChIP-seq replication quality metric", "description": "Schema for reporting ChIP-seq replication quality metrics", - "id": "/profiles/chip_replication_quality_metric.json", - "$schema": "http://json-schema.org/draft-04/schema#", + "$id": "/profiles/chip_replication_quality_metric.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", "type": "object", "required": ["step_run","quality_metric_of", "award", "lab"], "additionalProperties": false, diff --git a/src/encoded/schemas/chipseq_filter_quality_metric.json b/src/encoded/schemas/chipseq_filter_quality_metric.json index 9e4e47af29f..e6d463c9108 100644 --- a/src/encoded/schemas/chipseq_filter_quality_metric.json +++ b/src/encoded/schemas/chipseq_filter_quality_metric.json @@ -1,8 +1,8 @@ { "title": "ChIP-seq library complexity and cross-correlation quality metric", "description": "Schema for reporting ChIP library complexity and cross-correlation quality metrics", - "id": "/profiles/chipseq_filter_quality_metric.json", - "$schema": "http://json-schema.org/draft-04/schema#", + "$id": "/profiles/chipseq_filter_quality_metric.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", "type": "object", "required": ["step_run","quality_metric_of", "award", "lab"], "additionalProperties": false, diff --git a/src/encoded/schemas/collection_series.json b/src/encoded/schemas/collection_series.json index dd24887bbcb..7c7b2d0ed4b 100644 --- a/src/encoded/schemas/collection_series.json +++ b/src/encoded/schemas/collection_series.json @@ -1,8 +1,8 @@ { "title": "Collection series", "description": "Schema for submitting metadata for a collection series.", - "id": "/profiles/collection_series.json", - "$schema": "http://json-schema.org/draft-04/schema#", + "$id": "/profiles/collection_series.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", "type": "object", "required": [ "award", "lab"], "identifyingProperties": ["uuid", "accession" , "aliases"], @@ -21,7 +21,7 @@ { "$ref": "series.json#/properties" }, { "$ref": "mixins.json#/submitter_comment" } ], - "dependencies": { + "dependentSchemas": { "status": { "oneOf": [ { diff --git a/src/encoded/schemas/complexity_xcorr_quality_metric.json b/src/encoded/schemas/complexity_xcorr_quality_metric.json index 255577027b2..766dd5ae131 100644 --- a/src/encoded/schemas/complexity_xcorr_quality_metric.json +++ b/src/encoded/schemas/complexity_xcorr_quality_metric.json @@ -1,8 +1,8 @@ { "title": "Library complexity and cross-correlation quality metric", "description": "Schema for reporting library complexity and cross-correlation ('PCR bottleneck coefficient' and 'phantumpeakqualtools run_spp.R') quality metric", - "id": "/profiles/complexity_xcorr_quality_metric.json", - "$schema": "http://json-schema.org/draft-04/schema#", + "$id": "/profiles/complexity_xcorr_quality_metric.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", "type": "object", "required": ["step_run", "quality_metric_of", "award", "lab"], "additionalProperties": false, diff --git a/src/encoded/schemas/computational_model.json b/src/encoded/schemas/computational_model.json index a6ae99f2b14..ddd2a0030c7 100644 --- a/src/encoded/schemas/computational_model.json +++ b/src/encoded/schemas/computational_model.json @@ -1,8 +1,8 @@ { "title": "Computational Model", "description": "Schema for submitting metadata for a computational model set.", - "id": "/profiles/computational_model.json", - "$schema": "http://json-schema.org/draft-04/schema#", + "$id": "/profiles/computational_model.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", "type": "object", "required": [ "award", "lab"], "identifyingProperties": ["uuid", "accession" , "aliases"], @@ -20,7 +20,7 @@ { "$ref": "mixins.json#/documents" }, { "$ref": "file_set.json#/properties" } ], - "dependencies": { + "dependentSchemas": { "status": { "oneOf": [ { @@ -145,4 +145,4 @@ }, "changelog": "/profiles/changelogs/computational_model.md" -} \ No newline at end of file +} diff --git a/src/encoded/schemas/correlation_quality_metric.json b/src/encoded/schemas/correlation_quality_metric.json index 25790842da5..106fb04997e 100644 --- a/src/encoded/schemas/correlation_quality_metric.json +++ b/src/encoded/schemas/correlation_quality_metric.json @@ -1,8 +1,8 @@ { "title": "Correlation quality metric", "description": "Schema for reporting correlation as a quality metric", - "id": "/profiles/correlation_quality_metric.json", - "$schema": "http://json-schema.org/draft-04/schema#", + "$id": "/profiles/correlation_quality_metric.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", "type": "object", "required": ["step_run","quality_metric_of", "award", "lab"], "additionalProperties": false, diff --git a/src/encoded/schemas/cpg_correlation_quality_metric.json b/src/encoded/schemas/cpg_correlation_quality_metric.json index 5783a00ce06..75a8657e0e7 100644 --- a/src/encoded/schemas/cpg_correlation_quality_metric.json +++ b/src/encoded/schemas/cpg_correlation_quality_metric.json @@ -1,8 +1,8 @@ { "title": "CpG correlation quality metric", "description": "Schema for reporting the 'CpG Correlation' output as a quality metric", - "id": "/profiles/cpg_correlation_quality_metric.json", - "$schema": "http://json-schema.org/draft-04/schema#", + "$id": "/profiles/cpg_correlation_quality_metric.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", "type": "object", "required": ["step_run","quality_metric_of", "award", "lab"], "additionalProperties": false, diff --git a/src/encoded/schemas/dataset.json b/src/encoded/schemas/dataset.json index 3e92211c8f2..cfdc505e8d3 100644 --- a/src/encoded/schemas/dataset.json +++ b/src/encoded/schemas/dataset.json @@ -1,8 +1,8 @@ { "title": "Dataset", "description": "Schema for submitting metadata for a dataset.", - "id": "/profiles/dataset.json", - "$schema": "http://json-schema.org/draft-04/schema#", + "$id": "/profiles/dataset.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", "type": "object", "required": [ "award", "lab"], "identifyingProperties": ["uuid", "accession" , "aliases"], diff --git a/src/encoded/schemas/differential_accessibility_series.json b/src/encoded/schemas/differential_accessibility_series.json index 568d119d20d..11ffd334740 100644 --- a/src/encoded/schemas/differential_accessibility_series.json +++ b/src/encoded/schemas/differential_accessibility_series.json @@ -1,8 +1,8 @@ { "title": "Differential accessibility series", "description": "Chromatin accessibility data investigating cells sorted based on expression of specific genes.", - "id": "/profiles/differential_accessibility_series.json", - "$schema": "http://json-schema.org/draft-04/schema#", + "$id": "/profiles/differential_accessibility_series.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", "type": "object", "required": [ "award", "lab"], "identifyingProperties": ["uuid", "accession" , "aliases"], @@ -21,7 +21,7 @@ { "$ref": "series.json#/properties" }, { "$ref": "mixins.json#/submitter_comment" } ], - "dependencies": { + "dependentSchemas": { "status": { "oneOf": [ { diff --git a/src/encoded/schemas/differentiation_series.json b/src/encoded/schemas/differentiation_series.json index c2a5b4401e4..5ccf3aeb61c 100644 --- a/src/encoded/schemas/differentiation_series.json +++ b/src/encoded/schemas/differentiation_series.json @@ -1,8 +1,8 @@ { "title": "Differentiation series", "description": "Experimental data investigating biosamples along a differentiation trajectory.", - "id": "/profiles/differentiation_series.json", - "$schema": "http://json-schema.org/draft-04/schema#", + "$id": "/profiles/differentiation_series.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", "type": "object", "required": [ "award", "lab"], "identifyingProperties": ["uuid", "accession" , "aliases"], @@ -21,7 +21,7 @@ { "$ref": "series.json#/properties" }, { "$ref": "mixins.json#/submitter_comment" } ], - "dependencies": { + "dependentSchemas": { "status": { "oneOf": [ { diff --git a/src/encoded/schemas/disease_series.json b/src/encoded/schemas/disease_series.json index 0baf73b2901..293fe10f845 100644 --- a/src/encoded/schemas/disease_series.json +++ b/src/encoded/schemas/disease_series.json @@ -1,8 +1,8 @@ { "title": "Disease series", "description": "Experimental data investigating samples grouping guided by an identified disease.", - "id": "/profiles/disease_series.json", - "$schema": "http://json-schema.org/draft-04/schema#", + "$id": "/profiles/disease_series.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", "type": "object", "required": [ "award", "lab"], "identifyingProperties": ["uuid", "accession" , "aliases"], @@ -21,7 +21,7 @@ { "$ref": "series.json#/properties" }, { "$ref": "mixins.json#/submitter_comment" } ], - "dependencies": { + "dependentSchemas": { "status": { "oneOf": [ { @@ -335,4 +335,4 @@ "doi": 1.0 }, "changelog": "/profiles/changelogs/disease_series.md" -} \ No newline at end of file +} diff --git a/src/encoded/schemas/dnase_alignment_quality_metric.json b/src/encoded/schemas/dnase_alignment_quality_metric.json index b6fc726282c..5564c57ab49 100644 --- a/src/encoded/schemas/dnase_alignment_quality_metric.json +++ b/src/encoded/schemas/dnase_alignment_quality_metric.json @@ -1,8 +1,8 @@ { "title": "DNase specific alignment quality alignment", "description": "Schema for reporting DNAse seq insert size information and attachments", - "id": "/profiles/dnase_alignment_quality_metric.json", - "$schema": "http://json-schema.org/draft-04/schema#", + "$id": "/profiles/dnase_alignment_quality_metric.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", "type": "object", "required": ["step_run", "award", "lab", "quality_metric_of"], "additionalProperties": false, diff --git a/src/encoded/schemas/dnase_footprinting_quality_metric.json b/src/encoded/schemas/dnase_footprinting_quality_metric.json index 6ab6e1edb48..d6ab8e69206 100644 --- a/src/encoded/schemas/dnase_footprinting_quality_metric.json +++ b/src/encoded/schemas/dnase_footprinting_quality_metric.json @@ -1,8 +1,8 @@ { "title": "DNase footprinting quality metric", "description": "Schema for reporting DNase footprinting quality metric", - "id": "/profiles/dnase_footprinting_quality_metric.json", - "$schema": "http://json-schema.org/draft-04/schema#", + "$id": "/profiles/dnase_footprinting_quality_metric.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", "type": "object", "required": ["step_run", "award", "lab", "quality_metric_of"], "additionalProperties": false, diff --git a/src/encoded/schemas/document.json b/src/encoded/schemas/document.json index 73924bb1498..440187702c1 100644 --- a/src/encoded/schemas/document.json +++ b/src/encoded/schemas/document.json @@ -1,8 +1,8 @@ { "title": "Document", "description": "Schema for submitting a document file.", - "id": "/profiles/document.json", - "$schema": "http://json-schema.org/draft-04/schema#", + "$id": "/profiles/document.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", "type": "object", "required": [ "document_type", "lab", "award"], "identifyingProperties": ["uuid","aliases"], diff --git a/src/encoded/schemas/donor.json b/src/encoded/schemas/donor.json index e12adab100f..4b8a1273ec5 100644 --- a/src/encoded/schemas/donor.json +++ b/src/encoded/schemas/donor.json @@ -2,8 +2,8 @@ "title": "Donor", "description": "Base schema for donors or strains.", "comment": "Human donors and model organism strains derive from this base object.", - "id": "/profiles/donor.json", - "$schema": "http://json-schema.org/draft-04/schema#", + "$id": "/profiles/donor.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", "type": "object", "required": [ "award", "lab", "organism"], "mixinProperties": [ diff --git a/src/encoded/schemas/donor_characterization.json b/src/encoded/schemas/donor_characterization.json index 1fa64fe60bd..1d01d11fe23 100644 --- a/src/encoded/schemas/donor_characterization.json +++ b/src/encoded/schemas/donor_characterization.json @@ -1,8 +1,8 @@ { "title": "Donor characterization", "description": "Schema for submitting model organism donor (strain) characterization data", - "id": "/profiles/donor_characterization.json", - "$schema": "http://json-schema.org/draft-04/schema#", + "$id": "/profiles/donor_characterization.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", "type": "object", "required": [ "award", "lab", "characterizes", "attachment"], "identifyingProperties": ["uuid", "aliases"], diff --git a/src/encoded/schemas/duplicates_quality_metric.json b/src/encoded/schemas/duplicates_quality_metric.json index 0b86f2fa9b5..92ecb1a0f43 100644 --- a/src/encoded/schemas/duplicates_quality_metric.json +++ b/src/encoded/schemas/duplicates_quality_metric.json @@ -1,8 +1,8 @@ { "title": "Read duplicates quality metric", "description": "Schema for reporting duplicates from 'picard' or 'samtools -c' as a quality metric", - "id": "/profiles/duplicates_quality_metric.json", - "$schema": "http://json-schema.org/draft-04/schema#", + "$id": "/profiles/duplicates_quality_metric.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", "type": "object", "required": ["step_run","quality_metric_of", "award", "lab"], "additionalProperties": false, diff --git a/src/encoded/schemas/edwbamstats_quality_metric.json b/src/encoded/schemas/edwbamstats_quality_metric.json index 630868a95f5..f1858a6d9f0 100644 --- a/src/encoded/schemas/edwbamstats_quality_metric.json +++ b/src/encoded/schemas/edwbamstats_quality_metric.json @@ -1,8 +1,8 @@ { "title": "edwbamstats quality metric", "description": "Schema for reporting 'edwBamStats' output as a quality metric", - "id": "/profiles/edwbamstats_quality_metric.json", - "$schema": "http://json-schema.org/draft-04/schema#", + "$id": "/profiles/edwbamstats_quality_metric.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", "type": "object", "required": ["step_run","quality_metric_of", "award", "lab"], "additionalProperties": false, diff --git a/src/encoded/schemas/experiment.json b/src/encoded/schemas/experiment.json index e091102914e..8c2238eafbf 100644 --- a/src/encoded/schemas/experiment.json +++ b/src/encoded/schemas/experiment.json @@ -2,8 +2,8 @@ "title": "Experiment", "description": "Schema for submitting metadata for an assay with 1 or more replicates.", "comment": "An experiment is a special case of dataset. It includes assay metadata, replicate information and data files.", - "id": "/profiles/experiment.json", - "$schema": "http://json-schema.org/draft-04/schema#", + "$id": "/profiles/experiment.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", "type": "object", "required": ["award", "lab", "assay_term_name", "biosample_ontology"], "identifyingProperties": ["uuid", "accession" , "aliases"], @@ -23,7 +23,7 @@ { "$ref": "mixins.json#/assay" }, { "$ref": "mixins.json#/submitter_comment" } ], - "dependencies": { + "dependentSchemas": { "status": { "oneOf": [ { diff --git a/src/encoded/schemas/experiment_series.json b/src/encoded/schemas/experiment_series.json index 8d2664d58c0..9d4561956f5 100644 --- a/src/encoded/schemas/experiment_series.json +++ b/src/encoded/schemas/experiment_series.json @@ -1,8 +1,8 @@ { "title": "Experiment series", "description": "Schema for submitting metadata for a group of experiments which are applying the same assay on the same type of biosample.", - "id": "/profiles/experiment_series.json", - "$schema": "http://json-schema.org/draft-04/schema#", + "$id": "/profiles/experiment_series.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", "type": "object", "required": ["award", "lab", "related_datasets"], "identifyingProperties": ["uuid", "accession", "aliases"], @@ -18,7 +18,7 @@ { "$ref": "mixins.json#/notes" }, { "$ref": "mixins.json#/submitter_comment" } ], - "dependencies": { + "dependentSchemas": { "status": { "oneOf": [ { diff --git a/src/encoded/schemas/file.json b/src/encoded/schemas/file.json index c7ff99c2f6d..827e93337b1 100644 --- a/src/encoded/schemas/file.json +++ b/src/encoded/schemas/file.json @@ -1,8 +1,8 @@ { "title": "Data file", "description": "Schema for submitting metadata for a data file.", - "id": "/profiles/file.json", - "$schema": "http://json-schema.org/draft-04/schema#", + "$id": "/profiles/file.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", "type": "object", "anyOf":[ { @@ -168,7 +168,7 @@ "title": "Encyclopedia version" } }, - "dependencies": { + "dependentSchemas": { "no_file_available":{ "comment": "md5sum is required for all files unless the file is not available from the portal. file_size is required for files present on portal and have one of the statuses: in progress, revoked, archived or released.", "oneOf": [ diff --git a/src/encoded/schemas/file_set.json b/src/encoded/schemas/file_set.json index 930169de40f..1ad020ffdae 100644 --- a/src/encoded/schemas/file_set.json +++ b/src/encoded/schemas/file_set.json @@ -1,8 +1,8 @@ { "title": "File set", "description": "Schema for submitting metadata for a file set.", - "id": "/profiles/file_set.json", - "$schema": "http://json-schema.org/draft-04/schema#", + "$id": "/profiles/file_set.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", "type": "object", "required": [ "award", "lab"], "identifyingProperties": ["uuid", "accession" , "aliases"], diff --git a/src/encoded/schemas/filtering_quality_metric.json b/src/encoded/schemas/filtering_quality_metric.json index 6c5373f3050..ea3125d6c60 100644 --- a/src/encoded/schemas/filtering_quality_metric.json +++ b/src/encoded/schemas/filtering_quality_metric.json @@ -1,8 +1,8 @@ { "title": "Read filter quality metric", "description": "Schema for reporting post alignment read filtering as a quality metric", - "id": "/profiles/filtering_quality_metric.json", - "$schema": "http://json-schema.org/draft-04/schema#", + "$id": "/profiles/filtering_quality_metric.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", "type": "object", "required": ["step_run","quality_metric_of", "award", "lab"], "additionalProperties": false, diff --git a/src/encoded/schemas/fly_donor.json b/src/encoded/schemas/fly_donor.json index 0d41c65bee5..257cebef756 100644 --- a/src/encoded/schemas/fly_donor.json +++ b/src/encoded/schemas/fly_donor.json @@ -2,8 +2,8 @@ "title": "Fly donor", "description": "Schema for submitting a fly strain.", "comment": "The fly donor object is meant to represent a strain not an individual fly.", - "id": "/profiles/fly_donor.json", - "$schema": "http://json-schema.org/draft-04/schema#", + "$id": "/profiles/fly_donor.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", "type": "object", "required": [ "award", "lab", "organism"], "identifyingProperties": ["uuid", "accession", "aliases", "external_ids"], @@ -26,7 +26,7 @@ { "$ref": "mixins.json#/submitter_comment" }, { "$ref": "mixins.json#/schema_version" } ], - "dependencies": { + "dependentSchemas": { "parent_strains": { "comment": "Parent strains list can contain up to two entries, of strains of the same organism.", "properties":{ diff --git a/src/encoded/schemas/functional_characterization_experiment.json b/src/encoded/schemas/functional_characterization_experiment.json index 688b36b096d..f05ba5e0829 100644 --- a/src/encoded/schemas/functional_characterization_experiment.json +++ b/src/encoded/schemas/functional_characterization_experiment.json @@ -2,8 +2,8 @@ "title": "Functional characterization experiment", "description": "Schema for submitting metadata for a functional characterization assay.", "comment": "A functional characterization experiment is a special case of dataset. It includes assay metadata, replicate information and data files.", - "id": "/profiles/functional_characterization_experiment.json", - "$schema": "http://json-schema.org/draft-04/schema#", + "$id": "/profiles/functional_characterization_experiment.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", "type": "object", "required": ["award", "lab", "assay_term_name", "biosample_ontology"], "identifyingProperties": ["uuid", "accession" , "aliases"], @@ -23,7 +23,7 @@ { "$ref": "mixins.json#/assay" }, { "$ref": "mixins.json#/submitter_comment" } ], - "dependencies": { + "dependentSchemas": { "status": { "oneOf": [ { @@ -300,9 +300,11 @@ ] } }, - "dependencies": { - "expression_range_minimum": ["expression_range_maximum"], - "expression_range_maximum": ["expression_range_minimum"], + "dependentRequired": { + "expression_range_minimum": ["expression_range_maximum"], + "expression_range_maximum": ["expression_range_minimum"] + }, + "dependentSchemas": { "expression_percentile": { "not": { "anyOf": [ diff --git a/src/encoded/schemas/functional_characterization_series.json b/src/encoded/schemas/functional_characterization_series.json index 77c7302c448..f18435faac8 100644 --- a/src/encoded/schemas/functional_characterization_series.json +++ b/src/encoded/schemas/functional_characterization_series.json @@ -1,8 +1,8 @@ { "title": "Functional characterization experiment series", "description": "Schema for submitting metadata for functional characterization experiment series.", - "id": "/profiles/functional_characterization_series.json", - "$schema": "http://json-schema.org/draft-04/schema#", + "$id": "/profiles/functional_characterization_series.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", "type": "object", "required": [ "award", "lab"], "identifyingProperties": ["uuid", "accession" , "aliases"], @@ -21,7 +21,7 @@ { "$ref": "series.json#/properties" }, { "$ref": "mixins.json#/submitter_comment" } ], - "dependencies": { + "dependentSchemas": { "status": { "oneOf": [ { diff --git a/src/encoded/schemas/gembs_alignment_quality_metric.json b/src/encoded/schemas/gembs_alignment_quality_metric.json index fd1c3376bdf..dacebde8474 100644 --- a/src/encoded/schemas/gembs_alignment_quality_metric.json +++ b/src/encoded/schemas/gembs_alignment_quality_metric.json @@ -1,8 +1,8 @@ { "title": "gemBS alignment quality metric", "description": "Schema for gemBS alignment quality metrics", - "id": "/profiles/gembs_alignment_quality_metric.json", - "$schema": "http://json-schema.org/draft-04/schema#", + "$id": "/profiles/gembs_alignment_quality_metric.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", "type": "object", "required": ["step_run","quality_metric_of", "award", "lab"], "additionalProperties": false, diff --git a/src/encoded/schemas/gencode_category_quality_metric.json b/src/encoded/schemas/gencode_category_quality_metric.json index b55b7428666..6da6eeb1bfd 100644 --- a/src/encoded/schemas/gencode_category_quality_metric.json +++ b/src/encoded/schemas/gencode_category_quality_metric.json @@ -1,8 +1,8 @@ { "title": "GENCODE category quality metric", "description": "Schema for reporting bulk RNA-seq pipeline GENCODE comprehensive unique category counts", - "id": "/profiles/gencode_category_quality_metric.json", - "$schema": "http://json-schema.org/draft-04/schema#", + "$id": "/profiles/gencode_category_quality_metric.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", "type": "object", "required": ["step_run", "award", "lab", "quality_metric_of"], "additionalProperties": false, diff --git a/src/encoded/schemas/gene.json b/src/encoded/schemas/gene.json index 59dadb02ccb..d80c218c4c1 100644 --- a/src/encoded/schemas/gene.json +++ b/src/encoded/schemas/gene.json @@ -1,8 +1,8 @@ { "title": "Gene", "description": "Schema for submitting a gene.", - "id": "/profiles/gene.json", - "$schema": "http://json-schema.org/draft-04/schema#", + "$id": "/profiles/gene.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", "type": "object", "required": ["geneid", "ncbi_entrez_status", "symbol", "dbxrefs", "organism"], "identifyingProperties": ["uuid", "geneid"], @@ -13,7 +13,7 @@ { "$ref": "mixins.json#/notes" }, { "$ref": "mixins.json#/standard_status" } ], - "dependencies": { + "dependentSchemas": { "locations": { "oneOf": [ { diff --git a/src/encoded/schemas/gene_quantification_quality_metric.json b/src/encoded/schemas/gene_quantification_quality_metric.json index 0b4c86a30dc..8a97809ee9b 100644 --- a/src/encoded/schemas/gene_quantification_quality_metric.json +++ b/src/encoded/schemas/gene_quantification_quality_metric.json @@ -1,8 +1,8 @@ { "title": "RNA-seq gene quantification quality metric", "description": "Schema for reporting number of genes detected in RNA-seq", - "id": "/profiles/gene_quantification_quality_metric.json", - "$schema": "http://json-schema.org/draft-04/schema#", + "$id": "/profiles/gene_quantification_quality_metric.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", "type": "object", "required": ["step_run","quality_metric_of", "award", "lab"], "additionalProperties": false, diff --git a/src/encoded/schemas/gene_silencing_series.json b/src/encoded/schemas/gene_silencing_series.json index 1da8a1fac59..f1e2badf7ce 100644 --- a/src/encoded/schemas/gene_silencing_series.json +++ b/src/encoded/schemas/gene_silencing_series.json @@ -1,8 +1,8 @@ { "title": "Gene silencing series", "description": "Experimental data investigating the effects of knockout or knockdown of genes.", - "id": "/profiles/gene_silencing_series.json", - "$schema": "http://json-schema.org/draft-04/schema#", + "$id": "/profiles/gene_silencing_series.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", "type": "object", "required": [ "award", "lab"], "identifyingProperties": ["uuid", "accession" , "aliases"], @@ -21,7 +21,7 @@ { "$ref": "series.json#/properties" }, { "$ref": "mixins.json#/submitter_comment" } ], - "dependencies": { + "dependentSchemas": { "status": { "oneOf": [ { diff --git a/src/encoded/schemas/gene_type_quantification_quality_metric.json b/src/encoded/schemas/gene_type_quantification_quality_metric.json index 0fa47f537ea..f832f8f720f 100644 --- a/src/encoded/schemas/gene_type_quantification_quality_metric.json +++ b/src/encoded/schemas/gene_type_quantification_quality_metric.json @@ -1,8 +1,8 @@ { "title": "RNA-seq gene type quantification quality metric", "description": "Schema for reporting number of reads per gene category in RNA-seq. https://www.gencodegenes.org/pages/biotypes.html", - "id": "/profiles/gene_type_quantification_quality_metric.json", - "$schema": "http://json-schema.org/draft-04/schema#", + "$id": "/profiles/gene_type_quantification_quality_metric.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", "type": "object", "required": ["step_run","quality_metric_of", "award", "lab"], "additionalProperties": false, diff --git a/src/encoded/schemas/generic_quality_metric.json b/src/encoded/schemas/generic_quality_metric.json index fc4cd4f83ce..366c2ca231e 100644 --- a/src/encoded/schemas/generic_quality_metric.json +++ b/src/encoded/schemas/generic_quality_metric.json @@ -1,8 +1,8 @@ { "title": "Quality metric", "description": "Schema for reporting generic quality metric", - "id": "/profiles/generic_quality_metric.json", - "$schema": "http://json-schema.org/draft-04/schema#", + "$id": "/profiles/generic_quality_metric.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", "type": "object", "required": ["step_run", "quality_metric_of", "name", "award", "lab"], "additionalProperties": false, diff --git a/src/encoded/schemas/genetic_modification.json b/src/encoded/schemas/genetic_modification.json index 9613082baca..163eb2a59ed 100644 --- a/src/encoded/schemas/genetic_modification.json +++ b/src/encoded/schemas/genetic_modification.json @@ -1,8 +1,8 @@ { "title": "Genetic Modification", "description": "Schema for submitting information on genetic modification.", - "id": "/profiles/genetic_modification.json", - "$schema": "http://json-schema.org/draft-04/schema#", + "$id": "/profiles/genetic_modification.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", "type": "object", "anyOf": [ { @@ -37,7 +37,7 @@ { "$ref": "mixins.json#/notes" }, { "$ref": "mixins.json#/submitter_comment" } ], - "dependencies": { + "dependentSchemas": { "purpose": { "comment": "Modifications for tagging purposes need to include the introduced_tag property in combination with a target. Modifications for other purposes also need either the site and/or target specified.", "oneOf": [ diff --git a/src/encoded/schemas/genetic_modification_characterization.json b/src/encoded/schemas/genetic_modification_characterization.json index 301ca592ee4..2fad1c0ca7c 100644 --- a/src/encoded/schemas/genetic_modification_characterization.json +++ b/src/encoded/schemas/genetic_modification_characterization.json @@ -1,8 +1,8 @@ { "title": "Genetic modification characterization", "description": "Schema for submitting genetic modification characterization data.", - "id": "/profiles/genetic_modification_characterization.json", - "$schema": "http://json-schema.org/draft-04/schema#", + "$id": "/profiles/genetic_modification_characterization.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", "type": "object", "required": [ "award", "lab", "characterizes", "attachment"], "identifyingProperties": ["uuid", "aliases"], diff --git a/src/encoded/schemas/hic_quality_metric.json b/src/encoded/schemas/hic_quality_metric.json index cf429e34133..b0381809312 100644 --- a/src/encoded/schemas/hic_quality_metric.json +++ b/src/encoded/schemas/hic_quality_metric.json @@ -1,8 +1,8 @@ { "title": "HiC quality metric", "description": "HiC quality metrics", - "id": "/profiles/hic_quality_metric.json", - "$schema": "http://json-schema.org/draft-04/schema#", + "$id": "/profiles/hic_quality_metric.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", "type": "object", "required": ["step_run","quality_metric_of", "award", "lab"], "additionalProperties": false, @@ -17,7 +17,7 @@ { "$ref": "mixins.json#/standard_status"}, { "$ref": "mixins.json#/assay" } ], - "dependencies": { + "dependentSchemas": { "avg_insert_size": { "required": ["run_type"], "properties": { diff --git a/src/encoded/schemas/histone_chipseq_quality_metric.json b/src/encoded/schemas/histone_chipseq_quality_metric.json index f0804e933d2..acb4aa6a6b9 100644 --- a/src/encoded/schemas/histone_chipseq_quality_metric.json +++ b/src/encoded/schemas/histone_chipseq_quality_metric.json @@ -1,8 +1,8 @@ { "title": "Histone modification ChIP-seq quality metric", "description": "Schema for reporting histone modification ChIP-seq quality metrics", - "id": "/profiles/histone_chipseq_quality_metric.json", - "$schema": "http://json-schema.org/draft-04/schema#", + "$id": "/profiles/histone_chipseq_quality_metric.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", "type": "object", "required": ["step_run","quality_metric_of", "award", "lab"], "additionalProperties": false, diff --git a/src/encoded/schemas/hotspot_quality_metric.json b/src/encoded/schemas/hotspot_quality_metric.json index 610438a9eac..4fe05d2f9eb 100644 --- a/src/encoded/schemas/hotspot_quality_metric.json +++ b/src/encoded/schemas/hotspot_quality_metric.json @@ -1,8 +1,8 @@ { "title": "Hotspot quality metric", "description": "Schema for reporting hotspot 'spot.out' as a quality metric", - "id": "/profiles/hotspot_quality_metric.json", - "$schema": "http://json-schema.org/draft-04/schema#", + "$id": "/profiles/hotspot_quality_metric.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", "type": "object", "required": ["step_run","quality_metric_of", "award", "lab"], "additionalProperties": false, diff --git a/src/encoded/schemas/human_donor.json b/src/encoded/schemas/human_donor.json index ce90a4cb77d..8f97d3b7823 100644 --- a/src/encoded/schemas/human_donor.json +++ b/src/encoded/schemas/human_donor.json @@ -2,8 +2,8 @@ "title": "Human donor", "description": "Schema for submitting a human donor.", "comment":"This object is meant to be one to one with an individual human.", - "id": "/profiles/human_donor.json", - "$schema": "http://json-schema.org/draft-04/schema#", + "$id": "/profiles/human_donor.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", "type": "object", "required": [ "award", "lab", "organism"], "identifyingProperties": ["uuid", "accession", "aliases", "external_ids"], @@ -23,7 +23,7 @@ { "$ref": "mixins.json#/submitter_comment" }, { "$ref": "mixins.json#/schema_version" } ], - "dependencies": { + "dependentSchemas": { "internal_tags": { "comment": "If internal_tags list is initiated, it must contain at least one value.", "properties": { diff --git a/src/encoded/schemas/idr_quality_metric.json b/src/encoded/schemas/idr_quality_metric.json index 8934259fb91..a7f942e80a6 100644 --- a/src/encoded/schemas/idr_quality_metric.json +++ b/src/encoded/schemas/idr_quality_metric.json @@ -1,8 +1,8 @@ { "title": "IDR quality metric", "description": "Schema for reporting the 'Irreproducible Discovery Rate' (IDR) statistics", - "id": "/profiles/idr_quality_metric.json", - "$schema": "http://json-schema.org/draft-04/schema#", + "$id": "/profiles/idr_quality_metric.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", "type": "object", "required": ["step_run","quality_metric_of", "award", "lab"], "additionalProperties": false, diff --git a/src/encoded/schemas/idr_summary_quality_metric.json b/src/encoded/schemas/idr_summary_quality_metric.json index 2f00b992528..ca5c59d9af6 100644 --- a/src/encoded/schemas/idr_summary_quality_metric.json +++ b/src/encoded/schemas/idr_summary_quality_metric.json @@ -1,8 +1,8 @@ { "title": "IDR summary quality metric", "description": "Schema for reporting the 'Irreproducible Discovery Rate' (IDR) summary quality metric", - "id": "/profiles/idr_summary_quality_metric.json", - "$schema": "http://json-schema.org/draft-04/schema#", + "$id": "/profiles/idr_summary_quality_metric.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", "type": "object", "required": ["step_run","quality_metric_of", "award", "lab"], "additionalProperties": false, diff --git a/src/encoded/schemas/image.json b/src/encoded/schemas/image.json index cd85ab1751c..9d158876dbc 100644 --- a/src/encoded/schemas/image.json +++ b/src/encoded/schemas/image.json @@ -1,8 +1,8 @@ { "title": "Image", "description": "Schema for images embedded in portal pages", - "id": "/profiles/image.json", - "$schema": "http://json-schema.org/draft-04/schema#", + "$id": "/profiles/image.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", "type": "object", "required": [ "attachment" ], "identifyingProperties": ["uuid"], diff --git a/src/encoded/schemas/lab.json b/src/encoded/schemas/lab.json index 8317201ef55..702999c6fe4 100644 --- a/src/encoded/schemas/lab.json +++ b/src/encoded/schemas/lab.json @@ -1,7 +1,7 @@ { "title": "Lab", - "id": "/profiles/lab.json", - "$schema": "http://json-schema.org/draft-04/schema#", + "$id": "/profiles/lab.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", "type": "object", "required": ["name", "title"], "identifyingProperties": ["uuid", "title", "name"], diff --git a/src/encoded/schemas/library.json b/src/encoded/schemas/library.json index 61137efd6d0..d992c1154b3 100644 --- a/src/encoded/schemas/library.json +++ b/src/encoded/schemas/library.json @@ -1,8 +1,8 @@ { "title": "Library", "description": "Schema for submitting a molecular library.", - "id": "/profiles/library.json", - "$schema": "http://json-schema.org/draft-04/schema#", + "$id": "/profiles/library.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", "type": "object", "required": [ "award", "lab", "nucleic_acid_term_name"], "identifyingProperties": ["uuid","accession", "aliases"], @@ -27,13 +27,15 @@ "title": "Status" } }, - "dependencies": { - "nucleic_acid_starting_quantity_units": ["nucleic_acid_starting_quantity"], - "nucleic_acid_starting_quantity": ["nucleic_acid_starting_quantity_units"], - "fragmentation_duration_time_units": ["fragmentation_duration_time", "fragmentation_methods"], - "fragmentation_duration_time": ["fragmentation_duration_time_units", "fragmentation_methods"], - "product_id": ["source"], - "lot_id": ["source", "product_id"], + "dependentRequired": { + "nucleic_acid_starting_quantity_units": ["nucleic_acid_starting_quantity"], + "nucleic_acid_starting_quantity": ["nucleic_acid_starting_quantity_units"], + "fragmentation_duration_time_units": ["fragmentation_duration_time", "fragmentation_methods"], + "fragmentation_duration_time": ["fragmentation_duration_time_units", "fragmentation_methods"], + "product_id": ["source"], + "lot_id": ["source", "product_id"] + }, + "dependentSchemas": { "average_fragment_size": {"not": {"required": ["size_range"]}}, "size_range": {"not": {"required": ["average_fragment_size"]}}, "fragment_length_CV": {"not": {"required": ["fragment_length_SD"]}}, diff --git a/src/encoded/schemas/long_read_rna_mapping_quality_metric.json b/src/encoded/schemas/long_read_rna_mapping_quality_metric.json index 10bec7ef116..809ab453cbf 100644 --- a/src/encoded/schemas/long_read_rna_mapping_quality_metric.json +++ b/src/encoded/schemas/long_read_rna_mapping_quality_metric.json @@ -2,8 +2,8 @@ { "title": "long-read RNA-seq mapping quality metric", "description": "Schema for reporting long-read RNA-seq pipeline mapping quality metric", - "id": "/profiles/long_read_rna_mapping_quality_metric.json", - "$schema": "http://json-schema.org/draft-04/schema#", + "$id": "/profiles/long_read_rna_mapping_quality_metric.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", "type": "object", "required": ["step_run", "award", "lab", "quality_metric_of", "full_length_non_chimeric_read_count", "mapping_rate"], "additionalProperties": false, diff --git a/src/encoded/schemas/long_read_rna_quantification_quality_metric.json b/src/encoded/schemas/long_read_rna_quantification_quality_metric.json index f25bac1e0ee..ff35509a220 100644 --- a/src/encoded/schemas/long_read_rna_quantification_quality_metric.json +++ b/src/encoded/schemas/long_read_rna_quantification_quality_metric.json @@ -2,8 +2,8 @@ { "title": "long-read RNA-seq quantification quality metric", "description": "Schema for reporting long-read RNA-seq pipeline quantification quality metric", - "id": "/profiles/long_read_rna_quantification_quality_metric.json", - "$schema": "http://json-schema.org/draft-04/schema#", + "$id": "/profiles/long_read_rna_quantification_quality_metric.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", "type": "object", "required": ["step_run", "award", "lab", "quality_metric_of", "genes_detected"], "additionalProperties": false, diff --git a/src/encoded/schemas/mad_quality_metric.json b/src/encoded/schemas/mad_quality_metric.json index fe2cedcb8b0..22430b93890 100644 --- a/src/encoded/schemas/mad_quality_metric.json +++ b/src/encoded/schemas/mad_quality_metric.json @@ -1,8 +1,8 @@ { "title": "Mean absolute deviation (MAD) quality metric", "description": "Schema for reporting Replicate Concordance Metric using Mean Absolute Deviation (MAD)", - "id": "/profiles/mad_quality_metric.json", - "$schema": "http://json-schema.org/draft-04/schema#", + "$id": "/profiles/mad_quality_metric.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", "type": "object", "required": ["step_run","quality_metric_of", "award", "lab"], "additionalProperties": false, diff --git a/src/encoded/schemas/manatee_donor.json b/src/encoded/schemas/manatee_donor.json index 8f269d25680..8ad7dd53e7c 100644 --- a/src/encoded/schemas/manatee_donor.json +++ b/src/encoded/schemas/manatee_donor.json @@ -2,8 +2,8 @@ "title": "Manatee donor", "description": "Schema for submitting a manatee individual.", "comment": "The manatee donor object is meant to represent an individual manatee organism.", - "id": "/profiles/manatee_donor.json", - "$schema": "http://json-schema.org/draft-04/schema#", + "$id": "/profiles/manatee_donor.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", "type": "object", "required": [ "award", "lab", "organism"], "identifyingProperties": ["uuid", "accession", "aliases", "external_ids"], @@ -26,7 +26,7 @@ { "$ref": "mixins.json#/submitter_comment" }, { "$ref": "mixins.json#/schema_version" } ], - "dependencies": { + "dependentSchemas": { "age_units": { "comment":"Age units is required if age is specified as anything but unknown.", "required": ["age"], diff --git a/src/encoded/schemas/matched_set.json b/src/encoded/schemas/matched_set.json index a8bcb58a966..5abf7be3a7e 100644 --- a/src/encoded/schemas/matched_set.json +++ b/src/encoded/schemas/matched_set.json @@ -1,8 +1,8 @@ { "title": "Matched Set", "description": "Schema for submitting metadata for a matched set - a collection of experiments with matching properties except for donor.", - "id": "/profiles/matched_set.json", - "$schema": "http://json-schema.org/draft-04/schema#", + "$id": "/profiles/matched_set.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", "type": "object", "required": [ "award", "lab"], "identifyingProperties": ["uuid", "accession" , "aliases"], @@ -21,7 +21,7 @@ { "$ref": "series.json#/properties" }, { "$ref": "mixins.json#/submitter_comment" } ], - "dependencies": { + "dependentSchemas": { "status": { "oneOf": [ { diff --git a/src/encoded/schemas/micro_rna_mapping_quality_metric.json b/src/encoded/schemas/micro_rna_mapping_quality_metric.json index bf0d4a3480f..4934dcecbe4 100644 --- a/src/encoded/schemas/micro_rna_mapping_quality_metric.json +++ b/src/encoded/schemas/micro_rna_mapping_quality_metric.json @@ -1,8 +1,8 @@ { "title": "microRNA mapping quality metric", "description": "Schema for reporting microRNA pipeline mapping quality metric", - "id": "/profiles/micro_rna_mapping_quality_metric.json", - "$schema": "http://json-schema.org/draft-04/schema#", + "$id": "/profiles/micro_rna_mapping_quality_metric.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", "type": "object", "required": ["step_run", "award", "lab", "quality_metric_of", "aligned_reads"], "additionalProperties": false, diff --git a/src/encoded/schemas/micro_rna_quantification_quality_metric.json b/src/encoded/schemas/micro_rna_quantification_quality_metric.json index 17083b396df..acd18e1f8b1 100644 --- a/src/encoded/schemas/micro_rna_quantification_quality_metric.json +++ b/src/encoded/schemas/micro_rna_quantification_quality_metric.json @@ -1,8 +1,8 @@ { "title": "microRNA quantification quality metric", "description": "Schema for reporting microRNA pipeline quantification quality metric", - "id": "/profiles/micro_rna_quantification_quality_metric.json", - "$schema": "http://json-schema.org/draft-04/schema#", + "$id": "/profiles/micro_rna_quantification_quality_metric.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", "type": "object", "required": ["step_run", "award", "lab", "quality_metric_of", "expressed_mirnas"], "additionalProperties": false, diff --git a/src/encoded/schemas/mixins.json b/src/encoded/schemas/mixins.json index 60dac633c9f..c3c7e4589e2 100644 --- a/src/encoded/schemas/mixins.json +++ b/src/encoded/schemas/mixins.json @@ -2,12 +2,12 @@ "title": "Mixin properties", "schema_version": { "schema_version": { - "title": "Schema version", - "description": "The version of the JSON schema that the server uses to validate the object.", - "comment": "Do not submit. The version used to validate the object is set by the server. The default should be set to the current version.", - "type": "string", - "pattern": "^\\d+(\\.\\d+)*$", - "requestMethod": [] + "title": "Schema version", + "description": "The version of the JSON schema that the server uses to validate the object.", + "comment": "Do not submit. The version used to validate the object is set by the server. The default should be set to the current version.", + "type": "string", + "pattern": "^\\d+(\\.\\d+)*$", + "requestMethod": [] } }, "uuid": { @@ -19,7 +19,7 @@ "format": "uuid", "serverDefault": "uuid4", "permission": "import_items", - "requestMethod": "POST" + "requestMethod": ["POST"] } }, "accession": { @@ -140,7 +140,7 @@ "description": "Review of the characterization results by an independent reviewer.", "type": "object", "additionalProperties": false, - "dependencies": { + "dependentSchemas": { "status": { "oneOf": [ { diff --git a/src/encoded/schemas/mouse_donor.json b/src/encoded/schemas/mouse_donor.json index 600d3171554..149de0c1c3a 100644 --- a/src/encoded/schemas/mouse_donor.json +++ b/src/encoded/schemas/mouse_donor.json @@ -2,8 +2,8 @@ "title": "Mouse donor", "description": "Schema for submitting a mouse strain.", "comment": "The mouse donor object is meant to represent a strain not an individual mouse.", - "id": "/profiles/mouse_donor.json", - "$schema": "http://json-schema.org/draft-04/schema#", + "$id": "/profiles/mouse_donor.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", "type": "object", "required": [ "award", "lab", "organism"], "identifyingProperties": ["uuid", "accession", "aliases", "external_ids"], @@ -27,7 +27,7 @@ { "$ref": "mixins.json#/submitter_comment" }, { "$ref": "mixins.json#/schema_version" } ], - "dependencies": { + "dependentSchemas": { "parent_strains": { "comment": "Parent strains list can contain up to two entries, of strains of the same organism.", "properties":{ diff --git a/src/encoded/schemas/multiomics_series.json b/src/encoded/schemas/multiomics_series.json index 1b3e643567e..275bc57dd32 100644 --- a/src/encoded/schemas/multiomics_series.json +++ b/src/encoded/schemas/multiomics_series.json @@ -1,8 +1,8 @@ { "title": "Multiomics series", "description": "Experimental data investigating biosamples via multiple genomics assays.", - "id": "/profiles/multiomics_series.json", - "$schema": "http://json-schema.org/draft-04/schema#", + "$id": "/profiles/multiomics_series.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", "type": "object", "required": [ "award", "lab"], "identifyingProperties": ["uuid", "accession" , "aliases"], @@ -21,7 +21,7 @@ { "$ref": "series.json#/properties" }, { "$ref": "mixins.json#/submitter_comment" } ], - "dependencies": { + "dependentSchemas": { "status": { "oneOf": [ { diff --git a/src/encoded/schemas/organism.json b/src/encoded/schemas/organism.json index 87af7ae8c5f..5831e239e1d 100644 --- a/src/encoded/schemas/organism.json +++ b/src/encoded/schemas/organism.json @@ -1,7 +1,7 @@ { "title": "Organism", - "id": "/profiles/organism.json", - "$schema": "http://json-schema.org/draft-04/schema#", + "$id": "/profiles/organism.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", "type": "object", "required": ["name", "taxon_id", "scientific_name"], "identifyingProperties": ["uuid", "name", "taxon_id", "scientific_name"], diff --git a/src/encoded/schemas/organism_development_series.json b/src/encoded/schemas/organism_development_series.json index df66804c9e9..751834cec60 100644 --- a/src/encoded/schemas/organism_development_series.json +++ b/src/encoded/schemas/organism_development_series.json @@ -1,8 +1,8 @@ { "title": "Organism development series", "description": "Experimental data investigating organisms at different developmental stages.", - "id": "/profiles/organism_development_series.json", - "$schema": "http://json-schema.org/draft-04/schema#", + "$id": "/profiles/organism_development_series.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", "type": "object", "required": [ "award", "lab"], "identifyingProperties": ["uuid", "accession" , "aliases"], @@ -21,7 +21,7 @@ { "$ref": "series.json#/properties" }, { "$ref": "mixins.json#/submitter_comment" } ], - "dependencies": { + "dependentSchemas": { "status": { "oneOf": [ { diff --git a/src/encoded/schemas/page.json b/src/encoded/schemas/page.json index cd5fbff8d4f..71abd840e0a 100644 --- a/src/encoded/schemas/page.json +++ b/src/encoded/schemas/page.json @@ -1,8 +1,8 @@ { "title": "Page", "description": "Schema for a portal page.", - "id": "/profiles/page.json", - "$schema": "http://json-schema.org/draft-04/schema#", + "$id": "/profiles/page.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", "type": "object", "required": [ "name", @@ -30,7 +30,7 @@ "$ref": "mixins.json#/attribution" } ], - "dependencies": { + "dependentSchemas": { "news": { "oneOf": [ { diff --git a/src/encoded/schemas/pipeline.json b/src/encoded/schemas/pipeline.json index 1a0ddb5a409..5ff15d0fec5 100644 --- a/src/encoded/schemas/pipeline.json +++ b/src/encoded/schemas/pipeline.json @@ -1,8 +1,8 @@ { "title": "Pipeline", "description": "Schema for submitting a series of analysis for a given data type.", - "id": "/profiles/pipeline.json", - "$schema": "http://json-schema.org/draft-04/schema#", + "$id": "/profiles/pipeline.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", "type": "object", "required": ["title", "lab", "award"], "identifyingProperties": ["uuid", "aliases", "accession"], @@ -19,7 +19,7 @@ { "$ref": "mixins.json#/documents" }, { "$ref": "mixins.json#/submitter_comment" } ], - "dependencies": { + "dependentSchemas": { "assay_term_names": { "minItems": 1 } diff --git a/src/encoded/schemas/platform.json b/src/encoded/schemas/platform.json index 6c07ee67f32..d5b49f56044 100644 --- a/src/encoded/schemas/platform.json +++ b/src/encoded/schemas/platform.json @@ -1,8 +1,8 @@ { "title": "Platform", "description": "Schema for submitting a measurement device.", - "id": "/profiles/platform.json", - "$schema": "http://json-schema.org/draft-04/schema#", + "$id": "/profiles/platform.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", "type": "object", "required": ["term_id"], "identifyingProperties": ["uuid", "term_name", "aliases", "term_id"], diff --git a/src/encoded/schemas/project.json b/src/encoded/schemas/project.json index fb67acbb898..35a1d915293 100644 --- a/src/encoded/schemas/project.json +++ b/src/encoded/schemas/project.json @@ -1,8 +1,8 @@ { "title": "Project", "description": "Schema for submitting metadata for a project.", - "id": "/profiles/project.json", - "$schema": "http://json-schema.org/draft-04/schema#", + "$id": "/profiles/project.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", "type": "object", "required": [ "award", "lab"], "identifyingProperties": ["uuid", "accession" , "aliases"], @@ -20,7 +20,7 @@ { "$ref": "dataset.json#/properties" }, { "$ref": "file_set.json#/properties" } ], - "dependencies": { + "dependentSchemas": { "status": { "oneOf": [ { diff --git a/src/encoded/schemas/publication.json b/src/encoded/schemas/publication.json index 52199ce67e8..94dce5094da 100644 --- a/src/encoded/schemas/publication.json +++ b/src/encoded/schemas/publication.json @@ -1,8 +1,8 @@ { "title": "Publication", "description": "Schema for a publication page.", - "id": "/profiles/publication.json", - "$schema": "http://json-schema.org/draft-04/schema#", + "$id": "/profiles/publication.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", "type": "object", "required": [ "title", "award", "lab" ], "identifyingProperties": ["uuid", "title"], diff --git a/src/encoded/schemas/publication_data.json b/src/encoded/schemas/publication_data.json index 0ce75e526a4..b302d088d6c 100644 --- a/src/encoded/schemas/publication_data.json +++ b/src/encoded/schemas/publication_data.json @@ -1,8 +1,8 @@ { "title": "Publication data", "description": "Schema for submitting metadata for publication data.", - "id": "/profiles/publication_data.json", - "$schema": "http://json-schema.org/draft-04/schema#", + "$id": "/profiles/publication_data.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", "type": "object", "required": [ "award", "lab", "references"], "identifyingProperties": ["uuid", "accession" , "aliases"], @@ -19,7 +19,7 @@ { "$ref": "dataset.json#/properties" }, { "$ref": "file_set.json#/properties" } ], - "dependencies": { + "dependentSchemas": { "status": { "oneOf": [ { diff --git a/src/encoded/schemas/pulse_chase_time_series.json b/src/encoded/schemas/pulse_chase_time_series.json index e90e25578c1..f4ffca0d106 100644 --- a/src/encoded/schemas/pulse_chase_time_series.json +++ b/src/encoded/schemas/pulse_chase_time_series.json @@ -1,8 +1,8 @@ { "title": "Pulse-chase time series", "description": "Experimental data investigating biosamples using pulse-chase analysis.", - "id": "/profiles/pulse_chase_time_series.json", - "$schema": "http://json-schema.org/draft-04/schema#", + "$id": "/profiles/pulse_chase_time_series.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", "type": "object", "required": [ "award", "lab"], "identifyingProperties": ["uuid", "accession" , "aliases"], @@ -21,7 +21,7 @@ { "$ref": "series.json#/properties" }, { "$ref": "mixins.json#/submitter_comment" } ], - "dependencies": { + "dependentSchemas": { "status": { "oneOf": [ { diff --git a/src/encoded/schemas/quality_metric.json b/src/encoded/schemas/quality_metric.json index e080deaeaeb..32128f596ea 100644 --- a/src/encoded/schemas/quality_metric.json +++ b/src/encoded/schemas/quality_metric.json @@ -1,8 +1,8 @@ { "title": "Quality metric properties", "description": "Schema for reporting the specific calculation of an quality metrics", - "id": "/profiles/quality_metric.json", - "$schema": "http://json-schema.org/draft-04/schema#", + "$id": "/profiles/quality_metric.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", "type": "object", "required": ["step_run", "award", "lab"], "additionalProperties": false, diff --git a/src/encoded/schemas/quality_standard.json b/src/encoded/schemas/quality_standard.json index 68922c3db60..a7349e0b4f5 100644 --- a/src/encoded/schemas/quality_standard.json +++ b/src/encoded/schemas/quality_standard.json @@ -1,8 +1,8 @@ { "title": "Quality report and standard", "description": "Guidelines for quality reporting and quality standards", - "id": "/profiles/quality_standard.json", - "$schema": "http://json-schema.org/draft-04/schema#", + "$id": "/profiles/quality_standard.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", "type": "object", "required": ["name", "definitions"], "additionalProperties": false, diff --git a/src/encoded/schemas/reference.json b/src/encoded/schemas/reference.json index 3c7da45b2e2..b4524d95876 100644 --- a/src/encoded/schemas/reference.json +++ b/src/encoded/schemas/reference.json @@ -1,8 +1,8 @@ { "title": "Reference", "description": "Schema for submitting metadata for a reference set.", - "id": "/profiles/reference.json", - "$schema": "http://json-schema.org/draft-04/schema#", + "$id": "/profiles/reference.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", "type": "object", "required": [ "award", "lab"], "identifyingProperties": ["uuid", "accession" , "aliases"], @@ -20,7 +20,7 @@ { "$ref": "mixins.json#/documents" }, { "$ref": "file_set.json#/properties" } ], - "dependencies": { + "dependentSchemas": { "status": { "oneOf": [ { diff --git a/src/encoded/schemas/reference_epigenome.json b/src/encoded/schemas/reference_epigenome.json index be38fa3be20..1bcaf4fa57e 100644 --- a/src/encoded/schemas/reference_epigenome.json +++ b/src/encoded/schemas/reference_epigenome.json @@ -1,8 +1,8 @@ { "title": "Reference epigenome", "description": "Schema for submitting metadata for a IHEC-defined reference epigenome.", - "id": "/profiles/reference_epigenome.json", - "$schema": "http://json-schema.org/draft-04/schema#", + "$id": "/profiles/reference_epigenome.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", "type": "object", "required": [ "award", "lab"], "identifyingProperties": ["uuid", "accession" , "aliases"], @@ -21,7 +21,7 @@ { "$ref": "series.json#/properties" }, { "$ref": "mixins.json#/submitter_comment" } ], - "dependencies": { + "dependentSchemas": { "status": { "oneOf": [ { diff --git a/src/encoded/schemas/replicate.json b/src/encoded/schemas/replicate.json index 1b44dbfc631..e7a575ba30f 100644 --- a/src/encoded/schemas/replicate.json +++ b/src/encoded/schemas/replicate.json @@ -1,8 +1,8 @@ { "title": "Replicate", "description": "Schema for submitting an experimental replicate.", - "id": "/profiles/replicate.json", - "$schema": "http://json-schema.org/draft-04/schema#", + "$id": "/profiles/replicate.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", "type": "object", "required": ["experiment", "biological_replicate_number", "technical_replicate_number"], "identifyingProperties": ["uuid","aliases"], @@ -14,7 +14,7 @@ { "$ref": "mixins.json#/submitted" }, { "$ref": "mixins.json#/notes" } ], - "dependencies": { + "dependentRequired": { "rbns_protein_concentration": ["rbns_protein_concentration_units"], "rbns_protein_concentration_units": ["rbns_protein_concentration"] }, diff --git a/src/encoded/schemas/replication_timing_series.json b/src/encoded/schemas/replication_timing_series.json index a53c61b9087..3dc30c9a8c9 100644 --- a/src/encoded/schemas/replication_timing_series.json +++ b/src/encoded/schemas/replication_timing_series.json @@ -1,8 +1,8 @@ { "title": "Replication timing series", "description": "Experimental data assessing replication timing phenomena at various phases of the cell cycle.", - "id": "/profiles/replication_timing_series.json", - "$schema": "http://json-schema.org/draft-04/schema#", + "$id": "/profiles/replication_timing_series.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", "type": "object", "required": [ "award", "lab"], "identifyingProperties": ["uuid", "accession" , "aliases"], @@ -21,7 +21,7 @@ { "$ref": "series.json#/properties" }, { "$ref": "mixins.json#/submitter_comment" } ], - "dependencies": { + "dependentSchemas": { "status": { "oneOf": [ { diff --git a/src/encoded/schemas/rna_expression.json b/src/encoded/schemas/rna_expression.json index cb26172e464..d7d4374bebd 100644 --- a/src/encoded/schemas/rna_expression.json +++ b/src/encoded/schemas/rna_expression.json @@ -1,8 +1,8 @@ { "title": "RNAExpression", "description": "Schema for RNA-seq expression", - "id": "/profiles/rna_expression.json", - "$schema": "http://json-schema.org/draft-04/schema#", + "$id": "/profiles/rna_expression.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", "type": "object", "required": [], "additionalProperties": false, diff --git a/src/encoded/schemas/samtools_flagstats_quality_metric.json b/src/encoded/schemas/samtools_flagstats_quality_metric.json index 4341a8ea9a0..746835c34af 100644 --- a/src/encoded/schemas/samtools_flagstats_quality_metric.json +++ b/src/encoded/schemas/samtools_flagstats_quality_metric.json @@ -1,8 +1,8 @@ { "title": "samtools flagstat quality metric", "description": "Schema for reporting 'samtools --flagstats' quality metric", - "id": "/profiles/samtools_flagstats_quality_metric.json", - "$schema": "http://json-schema.org/draft-04/schema#", + "$id": "/profiles/samtools_flagstats_quality_metric.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", "type": "object", "required": ["step_run","quality_metric_of", "award", "lab"], "additionalProperties": false, diff --git a/src/encoded/schemas/samtools_stats_quality_metric.json b/src/encoded/schemas/samtools_stats_quality_metric.json index 5b3bfc18389..5d304449432 100644 --- a/src/encoded/schemas/samtools_stats_quality_metric.json +++ b/src/encoded/schemas/samtools_stats_quality_metric.json @@ -1,8 +1,8 @@ { "title": "samtools stats quality metric", "description": "Schema for reporting 'samtools --stats' summary as a quality metric", - "id": "/profiles/samtools_stats_quality_metric.json", - "$schema": "http://json-schema.org/draft-04/schema#", + "$id": "/profiles/samtools_stats_quality_metric.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", "type": "object", "required": ["step_run","quality_metric_of", "award", "lab"], "additionalProperties": false, diff --git a/src/encoded/schemas/sc_atac_alignment_quality_metric.json b/src/encoded/schemas/sc_atac_alignment_quality_metric.json index 6a96e64a5f4..21fa24e7d43 100644 --- a/src/encoded/schemas/sc_atac_alignment_quality_metric.json +++ b/src/encoded/schemas/sc_atac_alignment_quality_metric.json @@ -1,8 +1,8 @@ { "title": "scATAC-seq alignment quality metric", "description": "Schema for scATAC-seq alignment quality metrics", - "id": "/profiles/sc_atac_alignment_quality_metric.json", - "$schema": "http://json-schema.org/draft-04/schema#", + "$id": "/profiles/sc_atac_alignment_quality_metric.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", "type": "object", "required": ["step_run","quality_metric_of", "award", "lab"], "additionalProperties": false, diff --git a/src/encoded/schemas/sc_atac_analysis_quality_metric.json b/src/encoded/schemas/sc_atac_analysis_quality_metric.json index e3ecb7994c0..195ee366599 100644 --- a/src/encoded/schemas/sc_atac_analysis_quality_metric.json +++ b/src/encoded/schemas/sc_atac_analysis_quality_metric.json @@ -1,8 +1,8 @@ { "title": "scATAC-seq analysis quality metric", "description": "Schema for scATAC-seq analysis quality metrics", - "id": "/profiles/sc_atac_analysis_quality_metric.json", - "$schema": "http://json-schema.org/draft-04/schema#", + "$id": "/profiles/sc_atac_analysis_quality_metric.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", "type": "object", "required": ["step_run","quality_metric_of", "award", "lab"], "additionalProperties": false, diff --git a/src/encoded/schemas/sc_atac_counts_summary_quality_metric.json b/src/encoded/schemas/sc_atac_counts_summary_quality_metric.json index 0c97727ecf6..75e7a72803a 100644 --- a/src/encoded/schemas/sc_atac_counts_summary_quality_metric.json +++ b/src/encoded/schemas/sc_atac_counts_summary_quality_metric.json @@ -1,8 +1,8 @@ { "title": "scATAC-seq counts summary quality metric", "description": "Schema for scATAC-seq counts summary quality metrics", - "id": "/profiles/sc_atac_counts_summary_quality_metric.json", - "$schema": "http://json-schema.org/draft-04/schema#", + "$id": "/profiles/sc_atac_counts_summary_quality_metric.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", "type": "object", "required": ["step_run","quality_metric_of", "award", "lab"], "additionalProperties": false, diff --git a/src/encoded/schemas/sc_atac_library_complexity_quality_metric.json b/src/encoded/schemas/sc_atac_library_complexity_quality_metric.json index fe1ac7a3ce6..04d768bc0b5 100644 --- a/src/encoded/schemas/sc_atac_library_complexity_quality_metric.json +++ b/src/encoded/schemas/sc_atac_library_complexity_quality_metric.json @@ -1,8 +1,8 @@ { "title": "scATAC-seq library complexity quality metric", "description": "Schema for scATAC-seq library complexity quality metrics", - "id": "/profiles/sc_atac_library_complexity_quality_metric.json", - "$schema": "http://json-schema.org/draft-04/schema#", + "$id": "/profiles/sc_atac_library_complexity_quality_metric.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", "type": "object", "required": ["step_run","quality_metric_of", "award", "lab"], "additionalProperties": false, diff --git a/src/encoded/schemas/sc_atac_multiplet_quality_metric.json b/src/encoded/schemas/sc_atac_multiplet_quality_metric.json index 53ea881033f..5d65f93aebe 100644 --- a/src/encoded/schemas/sc_atac_multiplet_quality_metric.json +++ b/src/encoded/schemas/sc_atac_multiplet_quality_metric.json @@ -1,8 +1,8 @@ { "title": "scATAC-seq multiplet quality metric", "description": "Schema for scATAC-seq multiplet quality metrics", - "id": "/profiles/sc_atac_multiplet_quality_metric.json", - "$schema": "http://json-schema.org/draft-04/schema#", + "$id": "/profiles/sc_atac_multiplet_quality_metric.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", "type": "object", "required": ["step_run","quality_metric_of", "award", "lab"], "additionalProperties": false, diff --git a/src/encoded/schemas/sc_atac_read_quality_metric.json b/src/encoded/schemas/sc_atac_read_quality_metric.json index 011c9dd1b70..621960bdbc1 100644 --- a/src/encoded/schemas/sc_atac_read_quality_metric.json +++ b/src/encoded/schemas/sc_atac_read_quality_metric.json @@ -1,8 +1,8 @@ { "title": "scATAC-seq read quality metric", "description": "Schema for scATAC-seq reads quality metrics", - "id": "/profiles/sc_atac_read_quality_metric.json", - "$schema": "http://json-schema.org/draft-04/schema#", + "$id": "/profiles/sc_atac_read_quality_metric.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", "type": "object", "required": ["step_run","quality_metric_of", "award", "lab"], "additionalProperties": false, diff --git a/src/encoded/schemas/scrna_seq_counts_summary_quality_metric.json b/src/encoded/schemas/scrna_seq_counts_summary_quality_metric.json index a29323bd209..64b2005a017 100644 --- a/src/encoded/schemas/scrna_seq_counts_summary_quality_metric.json +++ b/src/encoded/schemas/scrna_seq_counts_summary_quality_metric.json @@ -1,8 +1,8 @@ { "title": "scRNA-seq counts summary quality metric", "description": "Schema for scRNA-seq counts summary quality metric", - "id": "/profiles/scrna_seq_counts_summary_quality_metric.json", - "$schema": "http://json-schema.org/draft-04/schema#", + "$id": "/profiles/scrna_seq_counts_summary_quality_metric.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", "type": "object", "required": ["step_run","quality_metric_of", "award", "lab"], "additionalProperties": false, diff --git a/src/encoded/schemas/segway_quality_metric.json b/src/encoded/schemas/segway_quality_metric.json index 4bc27e17940..15e976522b8 100644 --- a/src/encoded/schemas/segway_quality_metric.json +++ b/src/encoded/schemas/segway_quality_metric.json @@ -1,8 +1,8 @@ { "title": "Segway quality metric", "description": "Schema for Segway quality metric", - "id": "/profiles/segway_quality_metric.json", - "$schema": "http://json-schema.org/draft-04/schema#", + "$id": "/profiles/segway_quality_metric.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", "type": "object", "required": ["step_run","quality_metric_of", "award", "lab"], "additionalProperties": false, diff --git a/src/encoded/schemas/series.json b/src/encoded/schemas/series.json index 9cc895dd23e..d7ae84a67f6 100644 --- a/src/encoded/schemas/series.json +++ b/src/encoded/schemas/series.json @@ -1,8 +1,8 @@ { "title": "Series", "description": "Schema for submitting metadata for a series.", - "id": "/profiles/series.json", - "$schema": "http://json-schema.org/draft-04/schema#", + "$id": "/profiles/series.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", "type": "object", "required": [ "award", "lab"], "identifyingProperties": ["uuid", "accession" , "aliases"], diff --git a/src/encoded/schemas/single_cell_rna_series.json b/src/encoded/schemas/single_cell_rna_series.json index f2e7fd5e2a9..3d9918ed377 100644 --- a/src/encoded/schemas/single_cell_rna_series.json +++ b/src/encoded/schemas/single_cell_rna_series.json @@ -1,8 +1,8 @@ { "title": "Single cell RNA series", "description": "Schema for submitting metadata for a single cell RNA experiment series.", - "id": "/profiles/single_cell_rna_series.json", - "$schema": "http://json-schema.org/draft-04/schema#", + "$id": "/profiles/single_cell_rna_series.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", "type": "object", "required": [ "award", "lab"], "identifyingProperties": ["uuid", "accession" , "aliases"], @@ -21,7 +21,7 @@ { "$ref": "series.json#/properties" }, { "$ref": "mixins.json#/submitter_comment" } ], - "dependencies": { + "dependentSchemas": { "status": { "oneOf": [ { diff --git a/src/encoded/schemas/single_cell_unit.json b/src/encoded/schemas/single_cell_unit.json index e8a55942a0b..6cc5713bd9b 100644 --- a/src/encoded/schemas/single_cell_unit.json +++ b/src/encoded/schemas/single_cell_unit.json @@ -2,8 +2,8 @@ "title": "Single Cell Unit", "description": "Schema for submitting metadata for a single cell unit.", "comment": "A single cell unit is a special case of dataset. It includes assay metadata, replicate information and data files.", - "id": "/profiles/single_cell_unit.json", - "$schema": "http://json-schema.org/draft-04/schema#", + "$id": "/profiles/single_cell_unit.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", "type": "object", "required": ["award", "lab", "assay_term_name", "biosample_ontology"], "identifyingProperties": ["uuid", "accession" , "aliases"], @@ -22,7 +22,7 @@ { "$ref": "mixins.json#/biosample_ontology" }, { "$ref": "mixins.json#/submitter_comment" } ], - "dependencies": { + "dependentSchemas": { "status": { "oneOf": [ { @@ -216,4 +216,4 @@ "description": 8.0 }, "changelog": "/profiles/changelogs/single_cell_unit.md" -} \ No newline at end of file +} diff --git a/src/encoded/schemas/software.json b/src/encoded/schemas/software.json index aece9aa8f9c..362e2e4420e 100644 --- a/src/encoded/schemas/software.json +++ b/src/encoded/schemas/software.json @@ -1,8 +1,8 @@ { "title": "Software", "description": "Schema for submitting analysis software.", - "id": "/profiles/software.json", - "$schema": "http://json-schema.org/draft-04/schema#", + "$id": "/profiles/software.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", "type": "object", "required": ["name", "description", "title", "award", "lab"], "additionalProperties": false, diff --git a/src/encoded/schemas/software_version.json b/src/encoded/schemas/software_version.json index b4dec45792c..54479c067cd 100644 --- a/src/encoded/schemas/software_version.json +++ b/src/encoded/schemas/software_version.json @@ -1,8 +1,8 @@ { "title": "Software version", "description": "Schema for submitting version of software.", - "id": "/profiles/software_version.json", - "$schema": "http://json-schema.org/draft-04/schema#", + "$id": "/profiles/software_version.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", "type": "object", "required": ["software"], "additionalProperties": false, diff --git a/src/encoded/schemas/source.json b/src/encoded/schemas/source.json index 92ef76b37ce..d10a7a7e2e9 100644 --- a/src/encoded/schemas/source.json +++ b/src/encoded/schemas/source.json @@ -1,8 +1,8 @@ { "title": "Source", "description": "Schema for submitting an originating lab or vendor.", - "id": "/profiles/source.json", - "$schema": "http://json-schema.org/draft-04/schema#", + "$id": "/profiles/source.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", "type": "object", "required": ["name", "title"], "identifyingProperties": ["uuid", "name"], diff --git a/src/encoded/schemas/star_quality_metric.json b/src/encoded/schemas/star_quality_metric.json index 9b287c81800..99ba80fb603 100644 --- a/src/encoded/schemas/star_quality_metric.json +++ b/src/encoded/schemas/star_quality_metric.json @@ -1,8 +1,8 @@ { "title": "STAR quality metric", "description": "Schema for reporting the STAR 'Log.Final.out' quality metric", - "id": "/profiles/star_quality_metric.json", - "$schema": "http://json-schema.org/draft-04/schema#", + "$id": "/profiles/star_quality_metric.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", "type": "object", "required": ["step_run","quality_metric_of", "award", "lab"], "additionalProperties": false, diff --git a/src/encoded/schemas/star_solo_quality_metric.json b/src/encoded/schemas/star_solo_quality_metric.json index f406c63c41c..bc43d4763d5 100644 --- a/src/encoded/schemas/star_solo_quality_metric.json +++ b/src/encoded/schemas/star_solo_quality_metric.json @@ -1,8 +1,8 @@ { "title": "STAR solo quality metric", "description": "Schema for reporting the STAR solo quality metric", - "id": "/profiles/star_solo_quality_metric.json", - "$schema": "http://json-schema.org/draft-04/schema#", + "$id": "/profiles/star_solo_quality_metric.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", "type": "object", "required": ["step_run","quality_metric_of", "award", "lab", "mode"], "additionalProperties": false, @@ -284,7 +284,7 @@ } } }, - "dependencies": { + "dependentSchemas": { "mean_gene_per_cell": { "required": ["mode"], "properties": { diff --git a/src/encoded/schemas/target.json b/src/encoded/schemas/target.json index 0323e5e7881..00151762242 100644 --- a/src/encoded/schemas/target.json +++ b/src/encoded/schemas/target.json @@ -1,8 +1,8 @@ { "title": "Target", "description": "Schema for submitting a target gene.", - "id": "/profiles/target.json", - "$schema": "http://json-schema.org/draft-04/schema#", + "$id": "/profiles/target.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", "type": "object", "required": ["label", "investigated_as"], "identifyingProperties": ["uuid", "label-organism.name", "aliases"], @@ -83,7 +83,7 @@ } } ], - "dependencies": { + "dependentRequired": { "modifications": ["genes"] }, "tag_modifications": { diff --git a/src/encoded/schemas/transgenic_enhancer_experiment.json b/src/encoded/schemas/transgenic_enhancer_experiment.json index 34142ba9851..eed57374598 100644 --- a/src/encoded/schemas/transgenic_enhancer_experiment.json +++ b/src/encoded/schemas/transgenic_enhancer_experiment.json @@ -2,8 +2,8 @@ "title": "Transgenic enhancer experiment", "description": "Schema for submitting metadata for a transgenic enhancer experiment.", "comment": "An transgenic enhancer experiment is a special case of dataset. It includes assay metadata.", - "id": "/profiles/transgenic_enhancer_experiment.json", - "$schema": "http://json-schema.org/draft-04/schema#", + "$id": "/profiles/transgenic_enhancer_experiment.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", "type": "object", "required": ["award", "lab", "assay_term_name", "biosample_ontology"], "identifyingProperties": ["uuid", "accession" , "aliases"], @@ -23,7 +23,7 @@ { "$ref": "mixins.json#/assay" }, { "$ref": "mixins.json#/submitter_comment" } ], - "dependencies": { + "dependentSchemas": { "status": { "oneOf": [ { diff --git a/src/encoded/schemas/treatment.json b/src/encoded/schemas/treatment.json index e8339aaa5ae..8f6fff4b1c0 100644 --- a/src/encoded/schemas/treatment.json +++ b/src/encoded/schemas/treatment.json @@ -1,7 +1,7 @@ { "title": "Treatment", - "id": "/profiles/treatment.json", - "$schema": "http://json-schema.org/draft-04/schema#", + "$id": "/profiles/treatment.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", "type": "object", "required": ["treatment_term_name", "treatment_type"], "identifyingProperties": ["uuid","aliases"], @@ -18,7 +18,7 @@ { "$ref": "mixins.json#/product_id"}, { "$ref": "mixins.json#/source"} ], - "dependencies": { + "dependentRequired": { "temperature": ["temperature_units"], "temperature_units": ["temperature"], "amount": ["amount_units"], diff --git a/src/encoded/schemas/treatment_concentration_series.json b/src/encoded/schemas/treatment_concentration_series.json index 895de1a737b..3eeb2fa4e1f 100644 --- a/src/encoded/schemas/treatment_concentration_series.json +++ b/src/encoded/schemas/treatment_concentration_series.json @@ -1,8 +1,8 @@ { "title": "Treatment concentration series", "description": "Experimental data investigating the effects of treatment application at various concentrations.", - "id": "/profiles/treatment_concentration_series.json", - "$schema": "http://json-schema.org/draft-04/schema#", + "$id": "/profiles/treatment_concentration_series.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", "type": "object", "required": [ "award", "lab"], "identifyingProperties": ["uuid", "accession" , "aliases"], @@ -21,7 +21,7 @@ { "$ref": "series.json#/properties" }, { "$ref": "mixins.json#/submitter_comment" } ], - "dependencies": { + "dependentSchemas": { "status": { "oneOf": [ { diff --git a/src/encoded/schemas/treatment_time_series.json b/src/encoded/schemas/treatment_time_series.json index bbef2285ab1..6764dd7aebf 100644 --- a/src/encoded/schemas/treatment_time_series.json +++ b/src/encoded/schemas/treatment_time_series.json @@ -1,8 +1,8 @@ { "title": "Treatment time series", "description": "Experimental data investigating the effects of treatment application at varying durations.", - "id": "/profiles/treatment_time_series.json", - "$schema": "http://json-schema.org/draft-04/schema#", + "$id": "/profiles/treatment_time_series.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", "type": "object", "required": [ "award", "lab"], "identifyingProperties": ["uuid", "accession" , "aliases"], @@ -21,7 +21,7 @@ { "$ref": "series.json#/properties" }, { "$ref": "mixins.json#/submitter_comment" } ], - "dependencies": { + "dependentSchemas": { "status": { "oneOf": [ { diff --git a/src/encoded/schemas/trimming_quality_metric.json b/src/encoded/schemas/trimming_quality_metric.json index 0f6bc83f35a..6b2a382afe0 100644 --- a/src/encoded/schemas/trimming_quality_metric.json +++ b/src/encoded/schemas/trimming_quality_metric.json @@ -1,8 +1,8 @@ { "title": "trim-adapters-illumina quality metric", "description": "Schema for reporting trimming from 'trim-adapters-illumina' as a quality metric", - "id": "/profiles/trimming_quality_metric.json", - "$schema": "http://json-schema.org/draft-04/schema#", + "$id": "/profiles/trimming_quality_metric.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", "type": "object", "required": ["step_run","quality_metric_of", "award", "lab"], "additionalProperties": false, diff --git a/src/encoded/schemas/ucsc_browser_composite.json b/src/encoded/schemas/ucsc_browser_composite.json index f2830b94dfb..551218260a5 100644 --- a/src/encoded/schemas/ucsc_browser_composite.json +++ b/src/encoded/schemas/ucsc_browser_composite.json @@ -1,8 +1,8 @@ { "title": "UCSC browser composite", "description": "Schema for submitting metadata for a composite as defined by the UCSC Genome Browser.", - "id": "/profiles/ucsc_browser_composite.json", - "$schema": "http://json-schema.org/draft-04/schema#", + "$id": "/profiles/ucsc_browser_composite.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", "type": "object", "required": [ "award", "lab"], "identifyingProperties": ["uuid", "accession" , "aliases"], @@ -20,7 +20,7 @@ { "$ref": "dataset.json#/properties" }, { "$ref": "file_set.json#/properties" } ], - "dependencies": { + "dependentSchemas": { "status": { "oneOf": [ { diff --git a/src/encoded/schemas/user.json b/src/encoded/schemas/user.json index 345ac45f791..71abcd4905a 100644 --- a/src/encoded/schemas/user.json +++ b/src/encoded/schemas/user.json @@ -1,7 +1,7 @@ { "title": "User", - "id": "/profiles/user.json", - "$schema": "http://json-schema.org/draft-04/schema#", + "$id": "/profiles/user.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", "type": "object", "required": [ "email", "first_name", "last_name"], "identifyingProperties": ["uuid", "email"], diff --git a/src/encoded/schemas/worm_donor.json b/src/encoded/schemas/worm_donor.json index 41d154c1aa0..ee45c5a856d 100644 --- a/src/encoded/schemas/worm_donor.json +++ b/src/encoded/schemas/worm_donor.json @@ -2,8 +2,8 @@ "title": "Worm donor", "description": "Schema for submitting a worm strain.", "comment": "The worm donor object is meant to represent a strain not an individual worm.", - "id": "/profiles/worm_donor.json", - "$schema": "http://json-schema.org/draft-04/schema#", + "$id": "/profiles/worm_donor.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", "type": "object", "required": [ "award", "lab", "organism"], "identifyingProperties": ["uuid", "accession", "aliases", "external_ids"], @@ -26,7 +26,7 @@ { "$ref": "mixins.json#/submitter_comment" }, { "$ref": "mixins.json#/schema_version" } ], - "dependencies": { + "dependentSchemas": { "parent_strains": { "comment": "Parent strains list can contain up to two entries, of strains of the same organism.", "properties":{ diff --git a/src/encoded/server_defaults.py b/src/encoded/server_defaults.py index 6e11f0778b8..5c22877f21b 100644 --- a/src/encoded/server_defaults.py +++ b/src/encoded/server_defaults.py @@ -1,5 +1,5 @@ from datetime import datetime -from jsonschema_serialize_fork import NO_DEFAULT +from snovault.schema_validation import NO_DEFAULT from pyramid.threadlocal import get_current_request from string import ( digits, @@ -36,7 +36,6 @@ def userid(instance, subschema): @server_default def now(instance, subschema): - # from jsonschema_serialize_fork date-time format requires a timezone return datetime.utcnow().isoformat() + '+00:00' diff --git a/src/encoded/static/components/schema.js b/src/encoded/static/components/schema.js index c4601a3c17c..7e63e845c60 100644 --- a/src/encoded/static/components/schema.js +++ b/src/encoded/static/components/schema.js @@ -26,7 +26,7 @@ const excludedTerms = [ 'mixinProperties', 'title', 'description', - 'id', + '$id', '$schema', 'facets', 'columns', @@ -588,7 +588,7 @@ const SchemaPage = (props) => { const { title } = context; // The schema id is a path to the schema's JSON. Convert that to just the schema name. - const schemaName = schemaIdToName(context.id); + const schemaName = schemaIdToName(context.$id); // Set up the "breadcrumbs" (sneer quotes because it's really just a link to /profiles/). // If schemaName happened to be null (which it realistically can't), would @@ -674,8 +674,8 @@ const AllSchemasPage = (props, reactContext) => { // `objectName` is the @type of each objects e.g. GeneticModification // `schemaName` is the system name of the objects e.g. genetic_modification // `schemaPath` is the schema page path e.g. /profiles/genetic_modification - const schemaName = schemaIdToName(context[objectName].id); - const schemaPath = schemaIdToPage(context[objectName].id); + const schemaName = schemaIdToName(context[objectName].$id); + const schemaPath = schemaIdToPage(context[objectName].$id); return (
diff --git a/src/encoded/tests/test_auth0.py b/src/encoded/tests/test_auth0.py index 9a4024b2c69..78b6573732f 100644 --- a/src/encoded/tests/test_auth0.py +++ b/src/encoded/tests/test_auth0.py @@ -3,7 +3,7 @@ from unittest import mock from snovault import COLLECTIONS import encoded.auth0 as auth0 -from jsonschema_serialize_fork.exceptions import ValidationError +from jsonschema.exceptions import ValidationError from pyramid.httpexceptions import ( HTTPBadRequest, HTTPInternalServerError, diff --git a/src/encoded/tests/test_permissions.py b/src/encoded/tests/test_permissions.py index 14b55c6b600..3ebc314c560 100644 --- a/src/encoded/tests/test_permissions.py +++ b/src/encoded/tests/test_permissions.py @@ -71,6 +71,81 @@ def test_submitter_post_update_experiment(submitter_testapp, lab, award, cell_fr submitter_testapp.patch_json(location, {'description': 'My experiment'}, status=200) +def test_submitter_put_update_experiment(submitter_testapp, lab, award, cell_free): + experiment = { + 'lab': lab['@id'], + 'award': award['@id'], + 'assay_term_name': 'ChIA-PET', + 'biosample_ontology': cell_free['uuid'] + } + res = submitter_testapp.post_json('/experiment', experiment, status=201) + location = res.location + created_experiment = submitter_testapp.get(location).json + experiment['assay_term_name'] = 'RNA-seq' + experiment['accession'] = created_experiment['accession'] + submitter_testapp.put_json(location, experiment, status=200) + updated_experiment = submitter_testapp.get(location).json + for key in ['uuid', 'accession', 'submitted_by']: + assert created_experiment[key] == updated_experiment[key], f'{key} does not match after update' + + +def test_submitter_patch_date_created(submitter_testapp, lab, award, cell_free): + experiment = { + 'lab': lab['@id'], + 'award': award['@id'], + 'assay_term_name': 'ChIA-PET', + 'biosample_ontology': cell_free['uuid'] + } + res = submitter_testapp.post_json('/experiment', experiment, status=201) + location = res.location + created_experiment = submitter_testapp.get(location).json + submitter_testapp.patch_json( + location, + {'date_created': '2022-02-04T04:05:41.045578+00:00'}, + status=422 + ) + + +def test_submitter_put_date_created(submitter_testapp, lab, award, cell_free): + experiment = { + 'lab': lab['@id'], + 'award': award['@id'], + 'assay_term_name': 'ChIA-PET', + 'biosample_ontology': cell_free['uuid'] + } + res = submitter_testapp.post_json('/experiment', experiment, status=201) + location = res.location + created_experiment = submitter_testapp.get(location).json + experiment['uuid'] = created_experiment['uuid'] + experiment['accession'] = created_experiment['accession'] + experiment['date_created'] = '2022-02-04T04:05:41.045578+00:00' + submitter_testapp.put_json( + location, + experiment, + status=422 + ) + + +def test_submitter_patch_update_experiment(submitter_testapp, testapp, lab, award, cell_free): + experiment = { + 'lab': lab['@id'], + 'award': award['@id'], + 'assay_term_name': 'ChIA-PET', + 'biosample_ontology': cell_free['uuid'] + } + res = submitter_testapp.post_json('/experiment', experiment, status=201) + location = res.location + created_experiment = submitter_testapp.get(location).json + submitter_testapp.patch_json(location, {'assay_term_name': 'RNA-seq'}, status=200) + updated_experiment = submitter_testapp.get(location).json + for key in ['uuid', 'accession', 'date_created', 'submitted_by']: + assert created_experiment[key] == updated_experiment[key], f'{key} does not match after update' + testapp.patch_json(location, {'assay_term_name': 'ChIA-PET'}, status=200) + updated_experiment = testapp.get(location).json + for key in ['uuid', 'accession', 'date_created', 'submitted_by']: + assert created_experiment[key] == updated_experiment[key], f'{key} does not match after update' + + def test_submitter_post_other_lab(submitter_testapp, other_lab, award, cell_free): experiment = {'lab': other_lab['@id'], 'award': award['@id'], diff --git a/src/encoded/tests/test_post_put_patch.py b/src/encoded/tests/test_post_put_patch.py index 4d70f85959f..47422d64c4c 100644 --- a/src/encoded/tests/test_post_put_patch.py +++ b/src/encoded/tests/test_post_put_patch.py @@ -217,7 +217,10 @@ def test_put_object_child_validation(content_with_child, testapp): }] } res = testapp.put_json(content_with_child['@id'], edit, status=422) - assert res.json['errors'][0]['name'] == [u'reverse', 0, u'target'] + assert ['reverse', 0, 'target'] in [ + x['name'] + for x in res.json['errors'] + ] def test_put_object_validates_child_references(content_with_child, testapp): diff --git a/src/encoded/tests/test_schema_antibody_characterization.py b/src/encoded/tests/test_schema_antibody_characterization.py index 41956d5c55e..e3ecdf9f305 100644 --- a/src/encoded/tests/test_schema_antibody_characterization.py +++ b/src/encoded/tests/test_schema_antibody_characterization.py @@ -32,11 +32,12 @@ def test_no_attachment(testapp, antibody_characterization): def test_antibody_characterization_exemption_no_explanation(testapp, antibody_characterization, document, + wrangler, k562): antibody_characterization['characterization_reviews'] = [{"organism": "human", "lane": 2, "biosample_ontology": k562['uuid'], "lane_status": "exempt from standards"}] - antibody_characterization['documents'] = [document] - antibody_characterization['reviewed_by'] = '81a6cc12-2847-4e2e-8f2c-f566699eb29e' + antibody_characterization['documents'] = [document['@id']] + antibody_characterization['reviewed_by'] = wrangler['@id'] testapp.post_json('/antibody_characterization', antibody_characterization, status=422) diff --git a/src/encoded/tests/test_schema_library.py b/src/encoded/tests/test_schema_library.py index 295d772a067..9dac01bc761 100644 --- a/src/encoded/tests/test_schema_library.py +++ b/src/encoded/tests/test_schema_library.py @@ -144,7 +144,7 @@ def test_library_biosample_and_mixed_biosample(testapp, library, biosample_1, bi testapp.post_json('/library', library, status=201) library.update({'mixed_biosamples': [biosample_1['@id'], biosample_2['@id']]}) testapp.post_json('/library', library, status=201) - library.update({'biosample': biosample_2}) + library.update({'biosample': biosample_2['@id']}) testapp.post_json('/library', library, status=422) diff --git a/src/encoded/tests/test_views.py b/src/encoded/tests/test_views.py index 761e2133da2..3a9ad75af1e 100644 --- a/src/encoded/tests/test_views.py +++ b/src/encoded/tests/test_views.py @@ -323,9 +323,9 @@ def test_index_data_workbook(workbook, testapp, indexer_testapp, item_type): @pytest.mark.parametrize('item_type', TYPE_LENGTH) def test_profiles(testapp, item_type): - from jsonschema_serialize_fork import Draft4Validator + from jsonschema import Draft202012Validator res = testapp.get('/profiles/%s.json' % item_type).maybe_follow(status=200) - errors = Draft4Validator.check_schema(res.json) + errors = Draft202012Validator.check_schema(res.json) assert not errors diff --git a/src/encoded/tests/testing_views.py b/src/encoded/tests/testing_views.py index 4ef1244e802..523b1bf5f94 100644 --- a/src/encoded/tests/testing_views.py +++ b/src/encoded/tests/testing_views.py @@ -249,7 +249,7 @@ class TestingDependencies(Item): item_type = 'testing_dependencies' schema = { 'type': 'object', - 'dependencies': { + 'dependentRequired': { 'dep1': ['dep2'], 'dep2': ['dep1'], },