From 68c19a82ffdc9a1534051a263ae5cccfa5d8186c Mon Sep 17 00:00:00 2001 From: Puja Trivedi Date: Wed, 19 Jul 2023 09:31:39 -0700 Subject: [PATCH 01/17] had to commit kbmodel.yaml before merging --- linkml-schema/kbmodel.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/linkml-schema/kbmodel.yaml b/linkml-schema/kbmodel.yaml index 565a0cfe..cc47a623 100644 --- a/linkml-schema/kbmodel.yaml +++ b/linkml-schema/kbmodel.yaml @@ -6,7 +6,7 @@ prefixes: bican: https://identifiers.org/brain-bican/vocab/ spdx: http://spdx.org/rdf/terms# schema: http://schema.org/ - ncbi: https://www.ncbi.nlm.nih.gov/Taxonomy/Browser/wwwtax.cgi + ncbi: https://www.ncbi.nlm.nih.gov/Taxonomy/Browser/wwwtax.cgi?mode=Info&id= imports: - linkml:types - biolink:biolink-model From 08915376469e68dd20da496df14e021ed4cb5350 Mon Sep 17 00:00:00 2001 From: GitHub Action Date: Wed, 19 Jul 2023 16:34:21 +0000 Subject: [PATCH 02/17] generate another formats --- jsonld-context-autogen/kbmodel.context.jsonld | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/jsonld-context-autogen/kbmodel.context.jsonld b/jsonld-context-autogen/kbmodel.context.jsonld index 95ebeffd..4de624af 100644 --- a/jsonld-context-autogen/kbmodel.context.jsonld +++ b/jsonld-context-autogen/kbmodel.context.jsonld @@ -532,7 +532,7 @@ }, "ncats.drug": "https://drugs.ncats.io/drug/", "ncbi": { - "@id": "https://www.ncbi.nlm.nih.gov/Taxonomy/Browser/wwwtax.cgi", + "@id": "https://www.ncbi.nlm.nih.gov/Taxonomy/Browser/wwwtax.cgi?mode=Info&id=", "@prefix": true }, "oboInOwl": "http://www.geneontology.org/formats/oboInOwl#", @@ -1179,7 +1179,7 @@ }, "has_dataset": { "@type": "@id", - "@id": "dct:source" + "@id": "biolink:has_dataset" }, "has_decreased_amount": { "@type": "@id", @@ -1477,7 +1477,7 @@ "@id": "biolink:indirectly_physically_interacts_with" }, "ingest_date": { - "@id": "pav:version" + "@id": "biolink:ingest_date" }, "interacting_molecules_category": { "@type": "@id", From 8e6f92beb1c761aef46b3847c466f472d202f66b Mon Sep 17 00:00:00 2001 From: Puja Trivedi Date: Wed, 19 Jul 2023 15:37:16 -0700 Subject: [PATCH 03/17] Updated model based off features needed in gfftranslator & added descriptions to various slots --- linkml-schema/kbmodel.yaml | 28 ++++++++++++++++++---------- 1 file changed, 18 insertions(+), 10 deletions(-) diff --git a/linkml-schema/kbmodel.yaml b/linkml-schema/kbmodel.yaml index 132131da..4a79fd9c 100644 --- a/linkml-schema/kbmodel.yaml +++ b/linkml-schema/kbmodel.yaml @@ -7,6 +7,8 @@ prefixes: spdx: http://spdx.org/rdf/terms# schema: http://schema.org/ ncbi: https://www.ncbi.nlm.nih.gov/Taxonomy/Browser/wwwtax.cgi?mode=Info&id= + NCBIAssembly: https://www.ncbi.nlm.nih.gov/assembly/ + imports: - linkml:types - biolink:biolink-model @@ -38,19 +40,19 @@ classes: - version - digest - content_url + - authority genome assembly: -# is_a: named thing -# mixins: -# - thing with taxon + is_a: named thing + mixins: + - thing with taxon description: >- Genome assembly to contain version and label information + slots: + - version attributes: - id: - taxon: - version: - label: - description: + strain: + description: The genetic variant or subtype of a species or organism. checksum: is_a: entity @@ -58,7 +60,10 @@ classes: Checksum values associated with digital entities. slots: - checksum algorithm - - value + attributes: + value: + description: The checksum value obtained from a specific cryotographic hash function. + mapping: description: text @@ -104,6 +109,7 @@ slots: reference assembly: range: uriorcurie digest: + description: Stores checksum information. range: checksum multivalued: true required: true @@ -115,12 +121,14 @@ slots: gene_identifier_2: range: gene annotation authority: + description: The organization responsible for publishing the data. method: creation_date: access_date: checksum algorithm: + description: The type of cryptographic hash function used to calculate the checksum value. range: DigestType - value: + version: source id: description: The authority specific identifier. slot_uri: schema:identifier From 0ca0cebac8468ecdfbcc23e8a33c0a78a62a559f Mon Sep 17 00:00:00 2001 From: Puja Trivedi Date: Wed, 2 Aug 2023 12:20:15 -0700 Subject: [PATCH 04/17] Added purple box classes to model using ingest notebooks --- linkml-schema/kbmodel.yaml | 246 ++++++++++++++++++++++++++++++++----- 1 file changed, 213 insertions(+), 33 deletions(-) diff --git a/linkml-schema/kbmodel.yaml b/linkml-schema/kbmodel.yaml index 4a79fd9c..a987efa0 100644 --- a/linkml-schema/kbmodel.yaml +++ b/linkml-schema/kbmodel.yaml @@ -50,9 +50,7 @@ classes: Genome assembly to contain version and label information slots: - version - attributes: - strain: - description: The genetic variant or subtype of a species or organism. + - strain checksum: is_a: entity @@ -63,28 +61,7 @@ classes: attributes: value: description: The checksum value obtained from a specific cryotographic hash function. - - - mapping: - description: text - slots: - - gene_identifier_1 - - gene_identifier_2 - - authority - - method - - creation_date - - access_date - - member of - notes: relate to - https://mapping-commons.github.io/sssom/ - - - mappings: - description: > - A collection of mappings between identifiers - slots: - - has member - notes: use this model - https://mapping-commons.github.io/sssom/ - + annotation collection: tree_root: true attributes: @@ -101,37 +78,234 @@ classes: inlined_as_list: true range: genome assembly + process output: + description: >- + The output of a process. + slots: + - label + attributes: + created by process id: + description: >- + The id of the process that created the output. + created by process type: + description: >- + The type of process that created the output. + + # 028 - donors.ipynb + donor: + is_a: entity + mixins: + - thing with taxon + description: >- + A person or organism that is the source of a biological sample. + slots: + - label + - sex + - date of birth + - date of death + - age at death + - full genotype + + #TODO: + brain segment: + + + # 026 - brain_segment_sectioning.ipynb + brain section: + is_a: process output + attributes: + barcode: + description: >- + The barcode of the section. + ordinal: + description: >- + The ordinal number of the section. + range: integer + # slots: + # - label + # - created by process id + # - created by process type + + # 025b - tissue_dissectioning.ipynb + tissue sample: + is_a: process output + attributes: + roi plan: + region of interest label: + description: >- + The label of the region of interest. + # slots: + # - label + # - created by process id + # - created by process type + + # 024 - cell_dissociation.ipynb + dissociated cell sample: + is_a: process output + attributes: + cell prep type: + facs population plan: + # slots: + # - label + # - created by process id + # - created by process type + + #TODO: + enriched cell sample: + + # 023 - cell_barcoding.ipynb + barcoded cell sample: + is_a: process output + attributes: + port well: + sample quallity count: + # slots: + # - label + # - created by process id + # - created by process type + + # 022 - cnda_amplification.ipynb + amplified cdna: + is_a: process output + attributes: + amplified quantity: + description: >- + Amount of cDNA amplified (ng). + range: float + pcr cycles: + percent cdna longer than 400bp: + rna amplification pass fail: + slots: + - method + # - label + # - created by process id + # - created by process type + + # 021 - library_constructions.ipynb + library: + is_a: process output + attributes: + avg size: + description: The average size (bp) of the library fragments. bp stands for base pairs. + range: integer + input amount: + description: The amount of input material (ng) used to create the library. + range: float + library prep pass: + quantification fmol: + range: float + quantification ng: + range: float + quantification nm: + range: float + r1 index: + r1 sequence: + r2 index: + r2 sequence: + slots: + - method + - creation date + # - label + # - created by process id + # - created by process type + + + # 020 - aliquoting_and_pooling.ipynb + library aliquot: + is_a: process output + attributes: + input quantity: + description: The amount of input material (fmol) used to create the library aliquot. + range: integer + # slots: + # - label + # - created by process id + # - created by process type + + # 020 - aliquoting_and_pooling.ipynb + library pool: + is_a: process output + attributes: + tube avg size: + tube contents: + description: The content concentration (nm). + range: float + tube internal label: + description: The internal name. + # slots: + # - label + # - created by process id + # - created by process type + + slots: referenced in: range: genome annotation + molecular type: range: BioType + reference assembly: range: uriorcurie + digest: description: Stores checksum information. range: checksum multivalued: true required: true + content_url: slot_uri: schema:url multivalued: true - gene_identifier_1: - range: gene annotation - gene_identifier_2: - range: gene annotation + authority: description: The organization responsible for publishing the data. - method: - creation_date: - access_date: + checksum algorithm: description: The type of cryptographic hash function used to calculate the checksum value. range: DigestType + version: + description: The version of the data used to populate the object. + source id: description: The authority specific identifier. slot_uri: schema:identifier + + strain: + description: The genetic variant or subtype of a species or organism. + + label: + description: The name of the object. + slot_uri: schema:name + + sex: + range: SexType + + date of birth: + description: The date of birth of the donor. + range: date + + date of death: + description: The date of death of the donor. + range: date + + age at death: + description: The age of the donor at the time of death. + range: integer + + full genotype: + description: The full genotype of the donor. + range: string + + method: + description: + slot_uri: schema:name + + creation date: + description: The date and time the object was created. + range: datetime + enums: DigestType: @@ -143,6 +317,11 @@ enums: SHA256: meaning: spdx:checksumAlgorithm_sha256 + SexType: + permissible_values: + female: + male: + BioType: permissible_values: protein_coding: @@ -153,4 +332,5 @@ enums: mouse: meaning: ncbi:10090 human: - meaning: ncbi:9606 \ No newline at end of file + meaning: ncbi:9606 + From 73bcda9354921634fd6db3c91540e8fbf0496400 Mon Sep 17 00:00:00 2001 From: Puja Trivedi Date: Wed, 2 Aug 2023 12:25:20 -0700 Subject: [PATCH 05/17] removed unnecessary comments in kbmodel.yaml --- linkml-schema/kbmodel.yaml | 42 ++++++++------------------------------ 1 file changed, 9 insertions(+), 33 deletions(-) diff --git a/linkml-schema/kbmodel.yaml b/linkml-schema/kbmodel.yaml index a987efa0..5a437585 100644 --- a/linkml-schema/kbmodel.yaml +++ b/linkml-schema/kbmodel.yaml @@ -86,10 +86,10 @@ classes: attributes: created by process id: description: >- - The id of the process that created the output. + The id of the process that created this object. created by process type: description: >- - The type of process that created the output. + The type of process that created this object. # 028 - donors.ipynb donor: @@ -121,10 +121,7 @@ classes: description: >- The ordinal number of the section. range: integer - # slots: - # - label - # - created by process id - # - created by process type + # 025b - tissue_dissectioning.ipynb tissue sample: @@ -134,10 +131,7 @@ classes: region of interest label: description: >- The label of the region of interest. - # slots: - # - label - # - created by process id - # - created by process type + # 024 - cell_dissociation.ipynb dissociated cell sample: @@ -145,24 +139,19 @@ classes: attributes: cell prep type: facs population plan: - # slots: - # - label - # - created by process id - # - created by process type + #TODO: enriched cell sample: + # 023 - cell_barcoding.ipynb barcoded cell sample: is_a: process output attributes: port well: sample quallity count: - # slots: - # - label - # - created by process id - # - created by process type + # 022 - cnda_amplification.ipynb amplified cdna: @@ -177,9 +166,7 @@ classes: rna amplification pass fail: slots: - method - # - label - # - created by process id - # - created by process type + # 021 - library_constructions.ipynb library: @@ -205,9 +192,6 @@ classes: slots: - method - creation date - # - label - # - created by process id - # - created by process type # 020 - aliquoting_and_pooling.ipynb @@ -217,10 +201,7 @@ classes: input quantity: description: The amount of input material (fmol) used to create the library aliquot. range: integer - # slots: - # - label - # - created by process id - # - created by process type + # 020 - aliquoting_and_pooling.ipynb library pool: @@ -231,11 +212,6 @@ classes: description: The content concentration (nm). range: float tube internal label: - description: The internal name. - # slots: - # - label - # - created by process id - # - created by process type slots: From 5ffccd344e58cfe5ad7349994b42a0117bbe4aa7 Mon Sep 17 00:00:00 2001 From: Puja Trivedi Date: Wed, 2 Aug 2023 12:40:15 -0700 Subject: [PATCH 06/17] added to brain_segment in kbmodel --- linkml-schema/kbmodel.yaml | 1 + 1 file changed, 1 insertion(+) diff --git a/linkml-schema/kbmodel.yaml b/linkml-schema/kbmodel.yaml index 5a437585..0cab91c7 100644 --- a/linkml-schema/kbmodel.yaml +++ b/linkml-schema/kbmodel.yaml @@ -108,6 +108,7 @@ classes: #TODO: brain segment: + is_a: process output # 026 - brain_segment_sectioning.ipynb From 9778eebc1b33f922735706d17b681168e32a5ecd Mon Sep 17 00:00:00 2001 From: Puja Trivedi Date: Wed, 2 Aug 2023 12:47:58 -0700 Subject: [PATCH 07/17] added to brain_segment in kbmodel --- linkml-schema/kbmodel.yaml | 18 +++++++++++++----- 1 file changed, 13 insertions(+), 5 deletions(-) diff --git a/linkml-schema/kbmodel.yaml b/linkml-schema/kbmodel.yaml index 0cab91c7..6ca71232 100644 --- a/linkml-schema/kbmodel.yaml +++ b/linkml-schema/kbmodel.yaml @@ -106,18 +106,22 @@ classes: - age at death - full genotype - #TODO: + + # 027 - brain_extraction.ipynb brain segment: is_a: process output - + slots: + - barcode + attributes: + anatomical division: + # 026 - brain_segment_sectioning.ipynb brain section: is_a: process output + slots: + - barcode attributes: - barcode: - description: >- - The barcode of the section. ordinal: description: >- The ordinal number of the section. @@ -275,6 +279,10 @@ slots: description: The full genotype of the donor. range: string + barcode: + description: The unique identifier of the object. + slot_uri: schema:identifier + method: description: slot_uri: schema:name From b7c2eb82166eaaca4e4f725219bc0a391a456144 Mon Sep 17 00:00:00 2001 From: Puja Trivedi Date: Mon, 7 Aug 2023 21:46:21 -0700 Subject: [PATCH 08/17] Fixed slots: creation_date and version slots; testmodels.py should work now --- linkml-schema/kbmodel.yaml | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) diff --git a/linkml-schema/kbmodel.yaml b/linkml-schema/kbmodel.yaml index 6ca71232..9883d53d 100644 --- a/linkml-schema/kbmodel.yaml +++ b/linkml-schema/kbmodel.yaml @@ -197,6 +197,10 @@ classes: slots: - method - creation date + slot_usage: + creation date: + description: The date and time the object was created. + range: datetime # 020 - aliquoting_and_pooling.ipynb @@ -246,9 +250,6 @@ slots: description: The type of cryptographic hash function used to calculate the checksum value. range: DigestType - version: - description: The version of the data used to populate the object. - source id: description: The authority specific identifier. slot_uri: schema:identifier @@ -287,9 +288,11 @@ slots: description: slot_uri: schema:name - creation date: - description: The date and time the object was created. - range: datetime + # SLOTS IMPORTED FROM BIOLINK # + # creation date: + # version: + + enums: From 4e4294f634c12d4ab0778d3851abd90316201472 Mon Sep 17 00:00:00 2001 From: GitHub Action Date: Tue, 8 Aug 2023 04:48:31 +0000 Subject: [PATCH 09/17] generate another formats --- erdiagram-autogen/kbmodel.md | 136 +- json-schema-autogen/kbmodel.json | 1658 +++++++++++++++-- jsonld-context-autogen/kbmodel.context.jsonld | 64 +- models_py-autogen/kbmodel.py | 377 +++- 4 files changed, 2049 insertions(+), 186 deletions(-) diff --git a/erdiagram-autogen/kbmodel.md b/erdiagram-autogen/kbmodel.md index 60afce2b..1081d4b9 100644 --- a/erdiagram-autogen/kbmodel.md +++ b/erdiagram-autogen/kbmodel.md @@ -1,25 +1,134 @@ ```mermaid erDiagram +LibraryPool { + string tube_avg_size + float tube_contents + string tube_internal_label + string label + string created_by_process_id + string created_by_process_type +} +LibraryAliquot { + integer input_quantity + string label + string created_by_process_id + string created_by_process_type +} +Library { + string method + datetime creation_date + integer avg_size + float input_amount + string library_prep_pass + float quantification_fmol + float quantification_ng + float quantification_nm + string r1_index + string r1_sequence + string r2_index + string r2_sequence + string label + string created_by_process_id + string created_by_process_type +} +AmplifiedCdna { + string method + float amplified_quantity + string pcr_cycles + string percent_cdna_longer_than_400bp + string rna_amplification_pass_fail + string label + string created_by_process_id + string created_by_process_type +} +BarcodedCellSample { + string port_well + string sample_quallity_count + string label + string created_by_process_id + string created_by_process_type +} +EnrichedCellSample { + +} +DissociatedCellSample { + string cell_prep_type + string facs_population_plan + string label + string created_by_process_id + string created_by_process_type +} +TissueSample { + string roi_plan + string region_of_interest_label + string label + string created_by_process_id + string created_by_process_type +} +BrainSection { + string barcode + integer ordinal + string label + string created_by_process_id + string created_by_process_type +} +BrainSegment { + string barcode + string anatomical_division + string label + string created_by_process_id + string created_by_process_type +} +Donor { + string label + SexType sex + date date_of_birth + date date_of_death + integer age_at_death + string full_genotype + label_type in_taxon_label + string id + iri_type iri + category_typeList category + stringList type + label_type name + narrative_text description +} +ProcessOutput { + string label + string created_by_process_id + string created_by_process_type +} AnnotationCollection { } GenomeAssembly { - string id - string taxon string version - string label - string description + string strain + label_type in_taxon_label + stringList provided_by + uriorcurieList xref + label_type full_name + label_typeList synonym + string id + iri_type iri + category_typeList category + stringList type + label_type name + narrative_text description } GenomeAnnotation { uriorcurie reference_assembly string version stringList content_url + string authority biological_sequence has_biological_sequence string id label_type in_taxon_label stringList provided_by uriorcurieList xref label_type full_name + label_typeList synonym iri_type iri category_typeList category stringList type @@ -30,28 +139,19 @@ GeneAnnotation { BioType molecular_type string source_id string symbol - label_typeList synonym uriorcurieList xref biological_sequence has_biological_sequence string id label_type in_taxon_label stringList provided_by label_type full_name + label_typeList synonym iri_type iri category_typeList category stringList type symbol_type name narrative_text description } -Mappings { - -} -Mapping { - string authority - string method - string creation_date - string access_date -} Checksum { DigestType checksum_algorithm string value @@ -63,19 +163,19 @@ Checksum { narrative_text description } +Donor ||--}o OrganismTaxon : "in taxon" +Donor ||--}o Attribute : "has attribute" AnnotationCollection ||--}o GeneAnnotation : "annotations" AnnotationCollection ||--}o GenomeAnnotation : "genome_annotations" AnnotationCollection ||--}o GenomeAssembly : "genome_assemblies" +GenomeAssembly ||--}o OrganismTaxon : "in taxon" +GenomeAssembly ||--}o Attribute : "has attribute" GenomeAnnotation ||--}| Checksum : "digest" GenomeAnnotation ||--}o OrganismTaxon : "in taxon" GenomeAnnotation ||--}o Attribute : "has attribute" GeneAnnotation ||--|o GenomeAnnotation : "referenced in" GeneAnnotation ||--}o OrganismTaxon : "in taxon" GeneAnnotation ||--}o Attribute : "has attribute" -Mappings ||--}o NamedThing : "has member" -Mapping ||--|o GeneAnnotation : "gene_identifier_1" -Mapping ||--|o GeneAnnotation : "gene_identifier_2" -Mapping ||--}o NamedThing : "member of" Checksum ||--}o Attribute : "has attribute" ``` diff --git a/json-schema-autogen/kbmodel.json b/json-schema-autogen/kbmodel.json index 0b9cd835..be0f89a6 100644 --- a/json-schema-autogen/kbmodel.json +++ b/json-schema-autogen/kbmodel.json @@ -61,6 +61,13 @@ }, "type": "array" }, + "synonym": { + "description": "Alternate human-readable names for a thing", + "items": { + "type": "string" + }, + "type": "array" + }, "type": { "items": { "type": "string" @@ -128,6 +135,13 @@ }, "type": "array" }, + "synonym": { + "description": "Alternate human-readable names for a thing", + "items": { + "type": "string" + }, + "type": "array" + }, "type": { "items": { "type": "string" @@ -206,6 +220,13 @@ }, "type": "array" }, + "synonym": { + "description": "Alternate human-readable names for a thing", + "items": { + "type": "string" + }, + "type": "array" + }, "type": { "items": { "type": "string" @@ -227,6 +248,42 @@ "title": "Agent", "type": "object" }, + "AmplifiedCdna": { + "additionalProperties": false, + "description": "", + "properties": { + "amplified_quantity": { + "description": "Amount of cDNA amplified (ng).", + "type": "number" + }, + "created_by_process_id": { + "description": "The id of the process that created this object.", + "type": "string" + }, + "created_by_process_type": { + "description": "The type of process that created this object.", + "type": "string" + }, + "label": { + "description": "The name of the object.", + "type": "string" + }, + "method": { + "type": "string" + }, + "pcr_cycles": { + "type": "string" + }, + "percent_cdna_longer_than_400bp": { + "type": "string" + }, + "rna_amplification_pass_fail": { + "type": "string" + } + }, + "title": "AmplifiedCdna", + "type": "object" + }, "AnatomicalEntity": { "additionalProperties": false, "description": "A subcellular location, cell type or gross anatomical part", @@ -284,6 +341,13 @@ }, "type": "array" }, + "synonym": { + "description": "Alternate human-readable names for a thing", + "items": { + "type": "string" + }, + "type": "array" + }, "type": { "items": { "type": "string" @@ -805,6 +869,13 @@ "description": "executive summary of a publication", "type": "string" }, + "synonym": { + "description": "Alternate human-readable names for a thing", + "items": { + "type": "string" + }, + "type": "array" + }, "type": { "items": { "type": "string" @@ -1077,6 +1148,13 @@ }, "type": "array" }, + "synonym": { + "description": "Alternate human-readable names for a thing", + "items": { + "type": "string" + }, + "type": "array" + }, "type": { "items": { "type": "string" @@ -1156,6 +1234,13 @@ }, "type": "array" }, + "synonym": { + "description": "Alternate human-readable names for a thing", + "items": { + "type": "string" + }, + "type": "array" + }, "type": { "items": { "type": "string" @@ -1177,6 +1262,32 @@ "title": "Bacterium", "type": "object" }, + "BarcodedCellSample": { + "additionalProperties": false, + "description": "", + "properties": { + "created_by_process_id": { + "description": "The id of the process that created this object.", + "type": "string" + }, + "created_by_process_type": { + "description": "The type of process that created this object.", + "type": "string" + }, + "label": { + "description": "The name of the object.", + "type": "string" + }, + "port_well": { + "type": "string" + }, + "sample_quallity_count": { + "type": "string" + } + }, + "title": "BarcodedCellSample", + "type": "object" + }, "Behavior": { "additionalProperties": false, "description": "", @@ -1255,6 +1366,13 @@ }, "type": "array" }, + "synonym": { + "description": "Alternate human-readable names for a thing", + "items": { + "type": "string" + }, + "type": "array" + }, "type": { "items": { "type": "string" @@ -1553,6 +1671,13 @@ }, "type": "array" }, + "synonym": { + "description": "Alternate human-readable names for a thing", + "items": { + "type": "string" + }, + "type": "array" + }, "timepoint": { "description": "a point in time", "format": "time", @@ -1637,6 +1762,13 @@ }, "type": "array" }, + "synonym": { + "description": "Alternate human-readable names for a thing", + "items": { + "type": "string" + }, + "type": "array" + }, "type": { "items": { "type": "string" @@ -1751,6 +1883,13 @@ }, "type": "array" }, + "synonym": { + "description": "Alternate human-readable names for a thing", + "items": { + "type": "string" + }, + "type": "array" + }, "type": { "items": { "type": "string" @@ -1850,6 +1989,13 @@ }, "type": "array" }, + "synonym": { + "description": "Alternate human-readable names for a thing", + "items": { + "type": "string" + }, + "type": "array" + }, "type": { "items": { "type": "string" @@ -1932,6 +2078,13 @@ }, "type": "array" }, + "synonym": { + "description": "Alternate human-readable names for a thing", + "items": { + "type": "string" + }, + "type": "array" + }, "type": { "items": { "type": "string" @@ -2015,6 +2168,13 @@ }, "type": "array" }, + "synonym": { + "description": "Alternate human-readable names for a thing", + "items": { + "type": "string" + }, + "type": "array" + }, "timepoint": { "description": "a point in time", "format": "time", @@ -2134,6 +2294,13 @@ "description": "executive summary of a publication", "type": "string" }, + "synonym": { + "description": "Alternate human-readable names for a thing", + "items": { + "type": "string" + }, + "type": "array" + }, "type": { "description": "Should generally be set to an ontology class defined term for 'book'.", "items": { @@ -2256,6 +2423,13 @@ "description": "executive summary of a publication", "type": "string" }, + "synonym": { + "description": "Alternate human-readable names for a thing", + "items": { + "type": "string" + }, + "type": "array" + }, "type": { "items": { "type": "string" @@ -2282,6 +2456,61 @@ "title": "BookChapter", "type": "object" }, + "BrainSection": { + "additionalProperties": false, + "description": "", + "properties": { + "barcode": { + "description": "The unique identifier of the object.", + "type": "string" + }, + "created_by_process_id": { + "description": "The id of the process that created this object.", + "type": "string" + }, + "created_by_process_type": { + "description": "The type of process that created this object.", + "type": "string" + }, + "label": { + "description": "The name of the object.", + "type": "string" + }, + "ordinal": { + "description": "The ordinal number of the section.", + "type": "integer" + } + }, + "title": "BrainSection", + "type": "object" + }, + "BrainSegment": { + "additionalProperties": false, + "description": "", + "properties": { + "anatomical_division": { + "type": "string" + }, + "barcode": { + "description": "The unique identifier of the object.", + "type": "string" + }, + "created_by_process_id": { + "description": "The id of the process that created this object.", + "type": "string" + }, + "created_by_process_type": { + "description": "The type of process that created this object.", + "type": "string" + }, + "label": { + "description": "The name of the object.", + "type": "string" + } + }, + "title": "BrainSegment", + "type": "object" + }, "Case": { "additionalProperties": false, "description": "An individual (human) organism that has a patient role in some clinical context.", @@ -2339,6 +2568,13 @@ }, "type": "array" }, + "synonym": { + "description": "Alternate human-readable names for a thing", + "items": { + "type": "string" + }, + "type": "array" + }, "type": { "items": { "type": "string" @@ -2880,6 +3116,13 @@ }, "type": "array" }, + "synonym": { + "description": "Alternate human-readable names for a thing", + "items": { + "type": "string" + }, + "type": "array" + }, "type": { "items": { "type": "string" @@ -2958,6 +3201,13 @@ }, "type": "array" }, + "synonym": { + "description": "Alternate human-readable names for a thing", + "items": { + "type": "string" + }, + "type": "array" + }, "type": { "items": { "type": "string" @@ -3418,6 +3668,13 @@ }, "type": "array" }, + "synonym": { + "description": "Alternate human-readable names for a thing", + "items": { + "type": "string" + }, + "type": "array" + }, "type": { "items": { "type": "string" @@ -3496,6 +3753,13 @@ }, "type": "array" }, + "synonym": { + "description": "Alternate human-readable names for a thing", + "items": { + "type": "string" + }, + "type": "array" + }, "type": { "items": { "type": "string" @@ -3529,7 +3793,8 @@ "type": "array" }, "checksum_algorithm": { - "$ref": "#/$defs/DigestType" + "$ref": "#/$defs/DigestType", + "description": "The type of cryptographic hash function used to calculate the checksum value." }, "description": { "description": "a human-readable description of an entity", @@ -3561,6 +3826,7 @@ "type": "array" }, "value": { + "description": "The checksum value obtained from a specific cryotographic hash function.", "type": "string" } }, @@ -3639,7 +3905,7 @@ "description": "connects an association to the object of the association. For example, in a gene-to-phenotype association, the gene is subject and phenotype is object." }, "object_aspect_qualifier": { - "$ref": "#/$defs/GeneOrGeneProductOrChemicalPartQualifierEnum" + "$ref": "#/$defs/GeneOrGeneProductOrChemicalEntityAspectEnum" }, "object_category": { "description": "Used to hold the biolink class/category of an association. This is a denormalized field used primarily in the SQL serialization of a knowledge graph via KGX.", @@ -3729,7 +3995,7 @@ "type": "string" }, "subject_aspect_qualifier": { - "$ref": "#/$defs/GeneOrGeneProductOrChemicalPartQualifierEnum" + "$ref": "#/$defs/GeneOrGeneProductOrChemicalEntityAspectEnum" }, "subject_category": { "description": "Used to hold the biolink class/category of an association. This is a denormalized field used primarily in the SQL serialization of a knowledge graph via KGX.", @@ -3865,6 +4131,13 @@ }, "type": "array" }, + "synonym": { + "description": "Alternate human-readable names for a thing", + "items": { + "type": "string" + }, + "type": "array" + }, "trade_name": { "description": "", "type": "string" @@ -4332,6 +4605,13 @@ }, "type": "array" }, + "synonym": { + "description": "Alternate human-readable names for a thing", + "items": { + "type": "string" + }, + "type": "array" + }, "timepoint": { "description": "a point in time", "format": "time", @@ -4656,6 +4936,13 @@ }, "type": "array" }, + "synonym": { + "description": "Alternate human-readable names for a thing", + "items": { + "type": "string" + }, + "type": "array" + }, "trade_name": { "description": "", "type": "string" @@ -5134,6 +5421,13 @@ }, "type": "array" }, + "synonym": { + "description": "Alternate human-readable names for a thing", + "items": { + "type": "string" + }, + "type": "array" + }, "type": { "items": { "type": "string" @@ -5963,8 +6257,15 @@ "rights": { "type": "string" }, - "type": { - "items": { + "synonym": { + "description": "Alternate human-readable names for a thing", + "items": { + "type": "string" + }, + "type": "array" + }, + "type": { + "items": { "type": "string" }, "type": "array" @@ -6045,6 +6346,13 @@ }, "type": "array" }, + "synonym": { + "description": "Alternate human-readable names for a thing", + "items": { + "type": "string" + }, + "type": "array" + }, "type": { "items": { "type": "string" @@ -6128,6 +6436,13 @@ }, "type": "array" }, + "synonym": { + "description": "Alternate human-readable names for a thing", + "items": { + "type": "string" + }, + "type": "array" + }, "type": { "items": { "type": "string" @@ -6196,6 +6511,13 @@ }, "type": "array" }, + "synonym": { + "description": "Alternate human-readable names for a thing", + "items": { + "type": "string" + }, + "type": "array" + }, "type": { "items": { "type": "string" @@ -6274,6 +6596,13 @@ }, "type": "array" }, + "synonym": { + "description": "Alternate human-readable names for a thing", + "items": { + "type": "string" + }, + "type": "array" + }, "type": { "items": { "type": "string" @@ -6341,6 +6670,13 @@ }, "type": "array" }, + "synonym": { + "description": "Alternate human-readable names for a thing", + "items": { + "type": "string" + }, + "type": "array" + }, "type": { "items": { "type": "string" @@ -6423,6 +6759,13 @@ }, "type": "array" }, + "synonym": { + "description": "Alternate human-readable names for a thing", + "items": { + "type": "string" + }, + "type": "array" + }, "type": { "items": { "type": "string" @@ -6506,6 +6849,13 @@ }, "type": "array" }, + "synonym": { + "description": "Alternate human-readable names for a thing", + "items": { + "type": "string" + }, + "type": "array" + }, "type": { "items": { "type": "string" @@ -6574,6 +6924,13 @@ }, "type": "array" }, + "synonym": { + "description": "Alternate human-readable names for a thing", + "items": { + "type": "string" + }, + "type": "array" + }, "type": { "items": { "type": "string" @@ -6682,6 +7039,13 @@ }, "type": "array" }, + "synonym": { + "description": "Alternate human-readable names for a thing", + "items": { + "type": "string" + }, + "type": "array" + }, "trade_name": { "description": "", "type": "string" @@ -6764,6 +7128,13 @@ }, "type": "array" }, + "synonym": { + "description": "Alternate human-readable names for a thing", + "items": { + "type": "string" + }, + "type": "array" + }, "type": { "items": { "type": "string" @@ -6845,6 +7216,13 @@ "rights": { "type": "string" }, + "synonym": { + "description": "Alternate human-readable names for a thing", + "items": { + "type": "string" + }, + "type": "array" + }, "type": { "items": { "type": "string" @@ -6927,6 +7305,13 @@ }, "type": "array" }, + "synonym": { + "description": "Alternate human-readable names for a thing", + "items": { + "type": "string" + }, + "type": "array" + }, "type": { "items": { "type": "string" @@ -7036,6 +7421,13 @@ }, "type": "array" }, + "synonym": { + "description": "Alternate human-readable names for a thing", + "items": { + "type": "string" + }, + "type": "array" + }, "trade_name": { "description": "", "type": "string" @@ -7121,6 +7513,13 @@ "rights": { "type": "string" }, + "synonym": { + "description": "Alternate human-readable names for a thing", + "items": { + "type": "string" + }, + "type": "array" + }, "type": { "items": { "type": "string" @@ -7202,6 +7601,13 @@ "rights": { "type": "string" }, + "synonym": { + "description": "Alternate human-readable names for a thing", + "items": { + "type": "string" + }, + "type": "array" + }, "type": { "items": { "type": "string" @@ -7690,6 +8096,13 @@ "rights": { "type": "string" }, + "synonym": { + "description": "Alternate human-readable names for a thing", + "items": { + "type": "string" + }, + "type": "array" + }, "type": { "items": { "type": "string" @@ -7774,6 +8187,13 @@ "rights": { "type": "string" }, + "synonym": { + "description": "Alternate human-readable names for a thing", + "items": { + "type": "string" + }, + "type": "array" + }, "type": { "items": { "type": "string" @@ -7861,6 +8281,13 @@ "source_web_page": { "type": "string" }, + "synonym": { + "description": "Alternate human-readable names for a thing", + "items": { + "type": "string" + }, + "type": "array" + }, "type": { "items": { "type": "string" @@ -7951,6 +8378,13 @@ "rights": { "type": "string" }, + "synonym": { + "description": "Alternate human-readable names for a thing", + "items": { + "type": "string" + }, + "type": "array" + }, "type": { "items": { "type": "string" @@ -8018,6 +8452,13 @@ }, "type": "array" }, + "synonym": { + "description": "Alternate human-readable names for a thing", + "items": { + "type": "string" + }, + "type": "array" + }, "type": { "items": { "type": "string" @@ -8085,6 +8526,13 @@ }, "type": "array" }, + "synonym": { + "description": "Alternate human-readable names for a thing", + "items": { + "type": "string" + }, + "type": "array" + }, "type": { "items": { "type": "string" @@ -8184,6 +8632,13 @@ }, "type": "array" }, + "synonym": { + "description": "Alternate human-readable names for a thing", + "items": { + "type": "string" + }, + "type": "array" + }, "type": { "items": { "type": "string" @@ -8262,6 +8717,13 @@ }, "type": "array" }, + "synonym": { + "description": "Alternate human-readable names for a thing", + "items": { + "type": "string" + }, + "type": "array" + }, "type": { "items": { "type": "string" @@ -8344,6 +8806,13 @@ }, "type": "array" }, + "synonym": { + "description": "Alternate human-readable names for a thing", + "items": { + "type": "string" + }, + "type": "array" + }, "timepoint": { "description": "a point in time", "format": "time", @@ -9148,35 +9617,63 @@ "title": "DiseaseToPhenotypicFeatureAssociation", "type": "object" }, - "Drug": { + "DissociatedCellSample": { "additionalProperties": false, - "description": "A substance intended for use in the diagnosis, cure, mitigation, treatment, or prevention of disease", + "description": "", "properties": { - "available_from": { - "description": "", - "items": { - "$ref": "#/$defs/DrugAvailabilityEnum" - }, - "type": "array" + "cell_prep_type": { + "type": "string" + }, + "created_by_process_id": { + "description": "The id of the process that created this object.", + "type": "string" + }, + "created_by_process_type": { + "description": "The type of process that created this object.", + "type": "string" + }, + "facs_population_plan": { + "type": "string" + }, + "label": { + "description": "The name of the object.", + "type": "string" + } + }, + "title": "DissociatedCellSample", + "type": "object" + }, + "Donor": { + "additionalProperties": false, + "description": "A person or organism that is the source of a biological sample.", + "properties": { + "age_at_death": { + "description": "The age of the donor at the time of death.", + "type": "integer" }, "category": { "description": "Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class.\n * In a neo4j database this MAY correspond to the neo4j label tag.\n * In an RDF database it should be a biolink model class URI.\nThis field is multi-valued. It should include values for ancestors of the biolink class; for example, a protein such as Shh would have category values `biolink:Protein`, `biolink:GeneProduct`, `biolink:MolecularEntity`, ...\nIn an RDF database, nodes will typically have an rdf:type triples. This can be to the most specific biolink class, or potentially to a class more specific than something in biolink. For example, a sequence feature `f` may have a rdf:type assertion to a SO class such as TF_binding_site, which is more specific than anything in biolink. Here we would have categories {biolink:GenomicEntity, biolink:MolecularEntity, biolink:NamedThing}", "items": { - "pattern": "^biolink:[A-Z][A-Za-z]+$", "type": "string" }, "type": "array" }, - "description": { - "description": "a human-readable description of an entity", + "date_of_birth": { + "description": "The date of birth of the donor.", + "format": "date", "type": "string" }, - "drug_regulatory_status_world_wide": { - "description": "An agglomeration of drug regulatory status worldwide. Not specific to FDA.", + "date_of_death": { + "description": "The date of death of the donor.", + "format": "date", "type": "string" }, - "full_name": { - "description": "a long-form human readable name for a thing", + "description": { + "description": "a human-readable description of an entity", + "type": "string" + }, + "full_genotype": { + "description": "The full genotype of the donor.", "type": "string" }, "has_attribute": { @@ -9186,56 +9683,144 @@ }, "type": "array" }, - "has_chemical_role": { - "description": "A role is particular behaviour which a chemical entity may exhibit.", + "id": { + "description": "A unique identifier for an entity. Must be either a CURIE shorthand for a URI or a complete URI", + "type": "string" + }, + "in_taxon": { + "description": "connects an entity to its taxonomic classification. Only certain kinds of entities can be taxonomically classified; see 'thing with taxon'", "items": { "type": "string" }, "type": "array" }, - "highest_FDA_approval_status": { - "description": "Should be the highest level of FDA approval this chemical entity or device has, regardless of which disease, condition or phenotype it is currently being reviewed to treat. For specific levels of FDA approval for a specific condition, disease, phenotype, etc., see the association slot, 'FDA approval status.'", - "type": "string" - }, - "id": { - "description": "A unique identifier for an entity. Must be either a CURIE shorthand for a URI or a complete URI", + "in_taxon_label": { + "description": "The human readable scientific name for the taxon of the entity.", "type": "string" }, "iri": { "description": "An IRI for an entity. This is determined by the id using expansion rules.", "type": "string" }, - "is_supplement": { - "description": "", - "type": "string" - }, - "is_toxic": { - "description": "", - "type": "boolean" - }, - "max_tolerated_dose": { - "description": "The highest dose of a drug or treatment that does not cause unacceptable side effects. The maximum tolerated dose is determined in clinical trials by testing increasing doses on different groups of people until the highest dose with acceptable side effects is found. Also called MTD.", + "label": { + "description": "The name of the object.", "type": "string" }, "name": { "description": "A human-readable name for an attribute or entity.", "type": "string" }, - "provided_by": { - "description": "The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.", - "items": { - "type": "string" - }, - "type": "array" + "sex": { + "$ref": "#/$defs/SexType" }, - "routes_of_delivery": { - "description": "the method or process of administering a pharmaceutical compound to achieve a therapeutic effect in humans or animals.", + "type": { "items": { - "$ref": "#/$defs/DrugDeliveryEnum" + "type": "string" }, "type": "array" - }, - "trade_name": { + } + }, + "required": [ + "id" + ], + "title": "Donor", + "type": "object" + }, + "Drug": { + "additionalProperties": false, + "description": "A substance intended for use in the diagnosis, cure, mitigation, treatment, or prevention of disease", + "properties": { + "available_from": { + "description": "", + "items": { + "$ref": "#/$defs/DrugAvailabilityEnum" + }, + "type": "array" + }, + "category": { + "description": "Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class.\n * In a neo4j database this MAY correspond to the neo4j label tag.\n * In an RDF database it should be a biolink model class URI.\nThis field is multi-valued. It should include values for ancestors of the biolink class; for example, a protein such as Shh would have category values `biolink:Protein`, `biolink:GeneProduct`, `biolink:MolecularEntity`, ...\nIn an RDF database, nodes will typically have an rdf:type triples. This can be to the most specific biolink class, or potentially to a class more specific than something in biolink. For example, a sequence feature `f` may have a rdf:type assertion to a SO class such as TF_binding_site, which is more specific than anything in biolink. Here we would have categories {biolink:GenomicEntity, biolink:MolecularEntity, biolink:NamedThing}", + "items": { + "pattern": "^biolink:[A-Z][A-Za-z]+$", + "type": "string" + }, + "type": "array" + }, + "description": { + "description": "a human-readable description of an entity", + "type": "string" + }, + "drug_regulatory_status_world_wide": { + "description": "An agglomeration of drug regulatory status worldwide. Not specific to FDA.", + "type": "string" + }, + "full_name": { + "description": "a long-form human readable name for a thing", + "type": "string" + }, + "has_attribute": { + "description": "connects any entity to an attribute", + "items": { + "type": "string" + }, + "type": "array" + }, + "has_chemical_role": { + "description": "A role is particular behaviour which a chemical entity may exhibit.", + "items": { + "type": "string" + }, + "type": "array" + }, + "highest_FDA_approval_status": { + "description": "Should be the highest level of FDA approval this chemical entity or device has, regardless of which disease, condition or phenotype it is currently being reviewed to treat. For specific levels of FDA approval for a specific condition, disease, phenotype, etc., see the association slot, 'FDA approval status.'", + "type": "string" + }, + "id": { + "description": "A unique identifier for an entity. Must be either a CURIE shorthand for a URI or a complete URI", + "type": "string" + }, + "iri": { + "description": "An IRI for an entity. This is determined by the id using expansion rules.", + "type": "string" + }, + "is_supplement": { + "description": "", + "type": "string" + }, + "is_toxic": { + "description": "", + "type": "boolean" + }, + "max_tolerated_dose": { + "description": "The highest dose of a drug or treatment that does not cause unacceptable side effects. The maximum tolerated dose is determined in clinical trials by testing increasing doses on different groups of people until the highest dose with acceptable side effects is found. Also called MTD.", + "type": "string" + }, + "name": { + "description": "A human-readable name for an attribute or entity.", + "type": "string" + }, + "provided_by": { + "description": "The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.", + "items": { + "type": "string" + }, + "type": "array" + }, + "routes_of_delivery": { + "description": "the method or process of administering a pharmaceutical compound to achieve a therapeutic effect in humans or animals.", + "items": { + "$ref": "#/$defs/DrugDeliveryEnum" + }, + "type": "array" + }, + "synonym": { + "description": "Alternate human-readable names for a thing", + "items": { + "type": "string" + }, + "type": "array" + }, + "trade_name": { "description": "", "type": "string" }, @@ -9341,6 +9926,13 @@ }, "type": "array" }, + "synonym": { + "description": "Alternate human-readable names for a thing", + "items": { + "type": "string" + }, + "type": "array" + }, "timepoint": { "description": "a point in time", "format": "time", @@ -9460,6 +10052,13 @@ "description": "executive summary of a publication", "type": "string" }, + "synonym": { + "description": "Alternate human-readable names for a thing", + "items": { + "type": "string" + }, + "type": "array" + }, "type": { "items": { "type": "string" @@ -9734,6 +10333,13 @@ }, "type": "array" }, + "synonym": { + "description": "Alternate human-readable names for a thing", + "items": { + "type": "string" + }, + "type": "array" + }, "timepoint": { "description": "a point in time", "format": "time", @@ -9994,6 +10600,12 @@ "title": "DruggableGeneToDiseaseAssociation", "type": "object" }, + "EnrichedCellSample": { + "additionalProperties": false, + "description": "", + "title": "EnrichedCellSample", + "type": "object" + }, "EntityToDiseaseAssociation": { "additionalProperties": false, "description": "", @@ -10433,6 +11045,13 @@ }, "type": "array" }, + "synonym": { + "description": "Alternate human-readable names for a thing", + "items": { + "type": "string" + }, + "type": "array" + }, "timepoint": { "description": "a point in time", "format": "time", @@ -10506,6 +11125,13 @@ }, "type": "array" }, + "synonym": { + "description": "Alternate human-readable names for a thing", + "items": { + "type": "string" + }, + "type": "array" + }, "type": { "items": { "type": "string" @@ -10595,6 +11221,13 @@ }, "type": "array" }, + "synonym": { + "description": "Alternate human-readable names for a thing", + "items": { + "type": "string" + }, + "type": "array" + }, "trade_name": { "description": "", "type": "string" @@ -10666,6 +11299,13 @@ }, "type": "array" }, + "synonym": { + "description": "Alternate human-readable names for a thing", + "items": { + "type": "string" + }, + "type": "array" + }, "type": { "items": { "type": "string" @@ -10739,6 +11379,13 @@ }, "type": "array" }, + "synonym": { + "description": "Alternate human-readable names for a thing", + "items": { + "type": "string" + }, + "type": "array" + }, "type": { "items": { "type": "string" @@ -10820,6 +11467,13 @@ "rights": { "type": "string" }, + "synonym": { + "description": "Alternate human-readable names for a thing", + "items": { + "type": "string" + }, + "type": "array" + }, "type": { "items": { "type": "string" @@ -10928,6 +11582,13 @@ }, "type": "array" }, + "synonym": { + "description": "Alternate human-readable names for a thing", + "items": { + "type": "string" + }, + "type": "array" + }, "trade_name": { "description": "", "type": "string" @@ -11668,6 +12329,13 @@ }, "type": "array" }, + "synonym": { + "description": "Alternate human-readable names for a thing", + "items": { + "type": "string" + }, + "type": "array" + }, "trade_name": { "description": "", "type": "string" @@ -11761,6 +12429,13 @@ }, "type": "array" }, + "synonym": { + "description": "Alternate human-readable names for a thing", + "items": { + "type": "string" + }, + "type": "array" + }, "trade_name": { "description": "", "type": "string" @@ -12028,6 +12703,13 @@ }, "type": "array" }, + "synonym": { + "description": "Alternate human-readable names for a thing", + "items": { + "type": "string" + }, + "type": "array" + }, "type": { "items": { "type": "string" @@ -12531,6 +13213,13 @@ }, "type": "array" }, + "synonym": { + "description": "Alternate human-readable names for a thing", + "items": { + "type": "string" + }, + "type": "array" + }, "type": { "items": { "type": "string" @@ -14888,6 +15577,13 @@ }, "type": "array" }, + "synonym": { + "description": "Alternate human-readable names for a thing", + "items": { + "type": "string" + }, + "type": "array" + }, "type": { "items": { "type": "string" @@ -14970,6 +15666,13 @@ }, "type": "array" }, + "synonym": { + "description": "Alternate human-readable names for a thing", + "items": { + "type": "string" + }, + "type": "array" + }, "type": { "items": { "type": "string" @@ -14995,6 +15698,10 @@ "additionalProperties": false, "description": "Location and nomenclature of genes and all of the coding regions in a genome assembly and the classification of genes and transcripts into types.", "properties": { + "authority": { + "description": "The organization responsible for publishing the data.", + "type": "string" + }, "category": { "description": "Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class.\n * In a neo4j database this MAY correspond to the neo4j label tag.\n * In an RDF database it should be a biolink model class URI.\nThis field is multi-valued. It should include values for ancestors of the biolink class; for example, a protein such as Shh would have category values `biolink:Protein`, `biolink:GeneProduct`, `biolink:MolecularEntity`, ...\nIn an RDF database, nodes will typically have an rdf:type triples. This can be to the most specific biolink class, or potentially to a class more specific than something in biolink. For example, a sequence feature `f` may have a rdf:type assertion to a SO class such as TF_binding_site, which is more specific than anything in biolink. Here we would have categories {biolink:GenomicEntity, biolink:MolecularEntity, biolink:NamedThing}", "items": { @@ -15014,6 +15721,7 @@ "type": "string" }, "digest": { + "description": "Stores checksum information.", "items": { "type": "string" }, @@ -15067,6 +15775,13 @@ "reference_assembly": { "type": "string" }, + "synonym": { + "description": "Alternate human-readable names for a thing", + "items": { + "type": "string" + }, + "type": "array" + }, "type": { "items": { "type": "string" @@ -15096,22 +15811,91 @@ "additionalProperties": false, "description": "Genome assembly to contain version and label information", "properties": { + "category": { + "description": "Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class.\n * In a neo4j database this MAY correspond to the neo4j label tag.\n * In an RDF database it should be a biolink model class URI.\nThis field is multi-valued. It should include values for ancestors of the biolink class; for example, a protein such as Shh would have category values `biolink:Protein`, `biolink:GeneProduct`, `biolink:MolecularEntity`, ...\nIn an RDF database, nodes will typically have an rdf:type triples. This can be to the most specific biolink class, or potentially to a class more specific than something in biolink. For example, a sequence feature `f` may have a rdf:type assertion to a SO class such as TF_binding_site, which is more specific than anything in biolink. Here we would have categories {biolink:GenomicEntity, biolink:MolecularEntity, biolink:NamedThing}", + "items": { + "pattern": "^biolink:[A-Z][A-Za-z]+$", + "type": "string" + }, + "type": "array" + }, "description": { + "description": "a human-readable description of an entity", + "type": "string" + }, + "full_name": { + "description": "a long-form human readable name for a thing", "type": "string" }, + "has_attribute": { + "description": "connects any entity to an attribute", + "items": { + "type": "string" + }, + "type": "array" + }, "id": { + "description": "A unique identifier for an entity. Must be either a CURIE shorthand for a URI or a complete URI", "type": "string" }, - "label": { + "in_taxon": { + "description": "connects an entity to its taxonomic classification. Only certain kinds of entities can be taxonomically classified; see 'thing with taxon'", + "items": { + "type": "string" + }, + "type": "array" + }, + "in_taxon_label": { + "description": "The human readable scientific name for the taxon of the entity.", + "type": "string" + }, + "iri": { + "description": "An IRI for an entity. This is determined by the id using expansion rules.", "type": "string" }, - "taxon": { + "name": { + "description": "A human-readable name for an attribute or entity.", "type": "string" }, + "provided_by": { + "description": "The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.", + "items": { + "type": "string" + }, + "type": "array" + }, + "strain": { + "description": "The genetic variant or subtype of a species or organism.", + "type": "string" + }, + "synonym": { + "description": "Alternate human-readable names for a thing", + "items": { + "type": "string" + }, + "type": "array" + }, + "type": { + "items": { + "type": "string" + }, + "type": "array" + }, "version": { "type": "string" + }, + "xref": { + "description": "A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.", + "items": { + "type": "string" + }, + "type": "array" } }, + "required": [ + "id", + "category" + ], "title": "GenomeAssembly", "type": "object" }, @@ -15198,6 +15982,13 @@ }, "type": "array" }, + "synonym": { + "description": "Alternate human-readable names for a thing", + "items": { + "type": "string" + }, + "type": "array" + }, "timepoint": { "description": "a point in time", "format": "time", @@ -15494,6 +16285,13 @@ }, "type": "array" }, + "synonym": { + "description": "Alternate human-readable names for a thing", + "items": { + "type": "string" + }, + "type": "array" + }, "type": { "items": { "type": "string" @@ -16741,6 +17539,13 @@ }, "type": "array" }, + "synonym": { + "description": "Alternate human-readable names for a thing", + "items": { + "type": "string" + }, + "type": "array" + }, "type": { "items": { "type": "string" @@ -16824,6 +17629,13 @@ }, "type": "array" }, + "synonym": { + "description": "Alternate human-readable names for a thing", + "items": { + "type": "string" + }, + "type": "array" + }, "timepoint": { "description": "a point in time", "format": "time", @@ -16905,6 +17717,13 @@ }, "type": "array" }, + "synonym": { + "description": "Alternate human-readable names for a thing", + "items": { + "type": "string" + }, + "type": "array" + }, "type": { "items": { "type": "string" @@ -16980,6 +17799,13 @@ }, "type": "array" }, + "synonym": { + "description": "Alternate human-readable names for a thing", + "items": { + "type": "string" + }, + "type": "array" + }, "timepoint": { "description": "a point in time", "format": "time", @@ -17063,6 +17889,13 @@ }, "type": "array" }, + "synonym": { + "description": "Alternate human-readable names for a thing", + "items": { + "type": "string" + }, + "type": "array" + }, "type": { "items": { "type": "string" @@ -17145,6 +17978,13 @@ }, "type": "array" }, + "synonym": { + "description": "Alternate human-readable names for a thing", + "items": { + "type": "string" + }, + "type": "array" + }, "type": { "items": { "type": "string" @@ -17212,6 +18052,13 @@ }, "type": "array" }, + "synonym": { + "description": "Alternate human-readable names for a thing", + "items": { + "type": "string" + }, + "type": "array" + }, "type": { "items": { "type": "string" @@ -17296,6 +18143,13 @@ }, "type": "array" }, + "synonym": { + "description": "Alternate human-readable names for a thing", + "items": { + "type": "string" + }, + "type": "array" + }, "type": { "items": { "type": "string" @@ -17374,6 +18228,13 @@ }, "type": "array" }, + "synonym": { + "description": "Alternate human-readable names for a thing", + "items": { + "type": "string" + }, + "type": "array" + }, "type": { "items": { "type": "string" @@ -17637,6 +18498,13 @@ }, "type": "array" }, + "synonym": { + "description": "Alternate human-readable names for a thing", + "items": { + "type": "string" + }, + "type": "array" + }, "type": { "items": { "type": "string" @@ -17755,37 +18623,158 @@ "description": "The enclosing parent serial containing the article should have industry-standard identifier from ISSN.", "type": "string" }, - "rights": { + "rights": { + "type": "string" + }, + "summary": { + "description": "executive summary of a publication", + "type": "string" + }, + "synonym": { + "description": "Alternate human-readable names for a thing", + "items": { + "type": "string" + }, + "type": "array" + }, + "type": { + "items": { + "type": "string" + }, + "type": "array" + }, + "volume": { + "description": "volume of a book or music release in a collection/series or a published collection of journal issues in a serial publication", + "type": "string" + }, + "xref": { + "description": "A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "required": [ + "published_in", + "id", + "category" + ], + "title": "JournalArticle", + "type": "object" + }, + "Library": { + "additionalProperties": false, + "description": "", + "properties": { + "avg_size": { + "description": "The average size (bp) of the library fragments. bp stands for base pairs.", + "type": "integer" + }, + "created_by_process_id": { + "description": "The id of the process that created this object.", + "type": "string" + }, + "created_by_process_type": { + "description": "The type of process that created this object.", + "type": "string" + }, + "creation_date": { + "description": "The date and time the object was created.", + "format": "date-time", + "type": "string" + }, + "input_amount": { + "description": "The amount of input material (ng) used to create the library.", + "type": "number" + }, + "label": { + "description": "The name of the object.", + "type": "string" + }, + "library_prep_pass": { + "type": "string" + }, + "method": { + "type": "string" + }, + "quantification_fmol": { + "type": "number" + }, + "quantification_ng": { + "type": "number" + }, + "quantification_nm": { + "type": "number" + }, + "r1_index": { + "type": "string" + }, + "r1_sequence": { + "type": "string" + }, + "r2_index": { + "type": "string" + }, + "r2_sequence": { + "type": "string" + } + }, + "title": "Library", + "type": "object" + }, + "LibraryAliquot": { + "additionalProperties": false, + "description": "", + "properties": { + "created_by_process_id": { + "description": "The id of the process that created this object.", + "type": "string" + }, + "created_by_process_type": { + "description": "The type of process that created this object.", + "type": "string" + }, + "input_quantity": { + "description": "The amount of input material (fmol) used to create the library aliquot.", + "type": "integer" + }, + "label": { + "description": "The name of the object.", + "type": "string" + } + }, + "title": "LibraryAliquot", + "type": "object" + }, + "LibraryPool": { + "additionalProperties": false, + "description": "", + "properties": { + "created_by_process_id": { + "description": "The id of the process that created this object.", + "type": "string" + }, + "created_by_process_type": { + "description": "The type of process that created this object.", + "type": "string" + }, + "label": { + "description": "The name of the object.", "type": "string" }, - "summary": { - "description": "executive summary of a publication", + "tube_avg_size": { "type": "string" }, - "type": { - "items": { - "type": "string" - }, - "type": "array" + "tube_contents": { + "description": "The content concentration (nm).", + "type": "number" }, - "volume": { - "description": "volume of a book or music release in a collection/series or a published collection of journal issues in a serial publication", + "tube_internal_label": { "type": "string" - }, - "xref": { - "description": "A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.", - "items": { - "type": "string" - }, - "type": "array" } }, - "required": [ - "published_in", - "id", - "category" - ], - "title": "JournalArticle", + "title": "LibraryPool", "type": "object" }, "LifeStage": { @@ -17845,6 +18834,13 @@ }, "type": "array" }, + "synonym": { + "description": "Alternate human-readable names for a thing", + "items": { + "type": "string" + }, + "type": "array" + }, "type": { "items": { "type": "string" @@ -17926,6 +18922,13 @@ "rights": { "type": "string" }, + "synonym": { + "description": "Alternate human-readable names for a thing", + "items": { + "type": "string" + }, + "type": "array" + }, "type": { "items": { "type": "string" @@ -18014,6 +19017,13 @@ }, "type": "array" }, + "synonym": { + "description": "Alternate human-readable names for a thing", + "items": { + "type": "string" + }, + "type": "array" + }, "type": { "items": { "type": "string" @@ -18647,6 +19657,13 @@ }, "type": "array" }, + "synonym": { + "description": "Alternate human-readable names for a thing", + "items": { + "type": "string" + }, + "type": "array" + }, "type": { "items": { "type": "string" @@ -18668,54 +19685,6 @@ "title": "Mammal", "type": "object" }, - "Mapping": { - "additionalProperties": false, - "description": "text", - "properties": { - "access_date": { - "type": "string" - }, - "authority": { - "type": "string" - }, - "creation_date": { - "type": "string" - }, - "gene_identifier_1": { - "type": "string" - }, - "gene_identifier_2": { - "type": "string" - }, - "member_of": { - "description": "Defines a mereological relation between a item and a collection.", - "items": { - "type": "string" - }, - "type": "array" - }, - "method": { - "type": "string" - } - }, - "title": "Mapping", - "type": "object" - }, - "Mappings": { - "additionalProperties": false, - "description": "A collection of mappings between identifiers", - "properties": { - "has_member": { - "description": "Defines a mereological relation between a collection and an item.", - "items": { - "type": "string" - }, - "type": "array" - } - }, - "title": "Mappings", - "type": "object" - }, "MaterialSample": { "additionalProperties": false, "description": "A sample is a limited quantity of something (e.g. an individual or set of individuals from a population, or a portion of a substance) to be used for testing, analysis, inspection, investigation, demonstration, or trial use. [SIO]", @@ -18762,6 +19731,13 @@ }, "type": "array" }, + "synonym": { + "description": "Alternate human-readable names for a thing", + "items": { + "type": "string" + }, + "type": "array" + }, "type": { "items": { "type": "string" @@ -19350,6 +20326,13 @@ }, "type": "array" }, + "synonym": { + "description": "Alternate human-readable names for a thing", + "items": { + "type": "string" + }, + "type": "array" + }, "type": { "items": { "type": "string" @@ -19998,6 +20981,13 @@ }, "type": "array" }, + "synonym": { + "description": "Alternate human-readable names for a thing", + "items": { + "type": "string" + }, + "type": "array" + }, "trade_name": { "description": "", "type": "string" @@ -20110,6 +21100,13 @@ }, "type": "array" }, + "synonym": { + "description": "Alternate human-readable names for a thing", + "items": { + "type": "string" + }, + "type": "array" + }, "trade_name": { "description": "", "type": "string" @@ -20187,6 +21184,13 @@ }, "type": "array" }, + "synonym": { + "description": "Alternate human-readable names for a thing", + "items": { + "type": "string" + }, + "type": "array" + }, "type": { "items": { "type": "string" @@ -20599,6 +21603,13 @@ }, "type": "array" }, + "synonym": { + "description": "Alternate human-readable names for a thing", + "items": { + "type": "string" + }, + "type": "array" + }, "trade_name": { "description": "", "type": "string" @@ -20681,6 +21692,13 @@ }, "type": "array" }, + "synonym": { + "description": "Alternate human-readable names for a thing", + "items": { + "type": "string" + }, + "type": "array" + }, "type": { "items": { "type": "string" @@ -20851,6 +21869,13 @@ "rights": { "type": "string" }, + "synonym": { + "description": "Alternate human-readable names for a thing", + "items": { + "type": "string" + }, + "type": "array" + }, "type": { "items": { "type": "string" @@ -20933,6 +21958,13 @@ }, "type": "array" }, + "synonym": { + "description": "Alternate human-readable names for a thing", + "items": { + "type": "string" + }, + "type": "array" + }, "type": { "items": { "type": "string" @@ -21016,6 +22048,13 @@ }, "type": "array" }, + "synonym": { + "description": "Alternate human-readable names for a thing", + "items": { + "type": "string" + }, + "type": "array" + }, "type": { "items": { "type": "string" @@ -21084,6 +22123,13 @@ }, "type": "array" }, + "synonym": { + "description": "Alternate human-readable names for a thing", + "items": { + "type": "string" + }, + "type": "array" + }, "type": { "items": { "type": "string" @@ -22326,6 +23372,13 @@ "description": "executive summary of a publication", "type": "string" }, + "synonym": { + "description": "Alternate human-readable names for a thing", + "items": { + "type": "string" + }, + "type": "array" + }, "type": { "items": { "type": "string" @@ -22408,6 +23461,13 @@ }, "type": "array" }, + "synonym": { + "description": "Alternate human-readable names for a thing", + "items": { + "type": "string" + }, + "type": "array" + }, "timepoint": { "description": "a point in time", "format": "time", @@ -22498,6 +23558,13 @@ }, "type": "array" }, + "synonym": { + "description": "Alternate human-readable names for a thing", + "items": { + "type": "string" + }, + "type": "array" + }, "type": { "items": { "type": "string" @@ -22597,6 +23664,13 @@ }, "type": "array" }, + "synonym": { + "description": "Alternate human-readable names for a thing", + "items": { + "type": "string" + }, + "type": "array" + }, "type": { "items": { "type": "string" @@ -22679,6 +23753,13 @@ }, "type": "array" }, + "synonym": { + "description": "Alternate human-readable names for a thing", + "items": { + "type": "string" + }, + "type": "array" + }, "timepoint": { "description": "a point in time", "format": "time", @@ -22790,6 +23871,13 @@ }, "type": "array" }, + "synonym": { + "description": "Alternate human-readable names for a thing", + "items": { + "type": "string" + }, + "type": "array" + }, "type": { "items": { "type": "string" @@ -22867,6 +23955,13 @@ }, "type": "array" }, + "synonym": { + "description": "Alternate human-readable names for a thing", + "items": { + "type": "string" + }, + "type": "array" + }, "type": { "items": { "type": "string" @@ -22945,6 +24040,13 @@ }, "type": "array" }, + "synonym": { + "description": "Alternate human-readable names for a thing", + "items": { + "type": "string" + }, + "type": "array" + }, "type": { "items": { "type": "string" @@ -23027,6 +24129,13 @@ }, "type": "array" }, + "synonym": { + "description": "Alternate human-readable names for a thing", + "items": { + "type": "string" + }, + "type": "array" + }, "type": { "items": { "type": "string" @@ -23110,6 +24219,13 @@ }, "type": "array" }, + "synonym": { + "description": "Alternate human-readable names for a thing", + "items": { + "type": "string" + }, + "type": "array" + }, "type": { "items": { "type": "string" @@ -23178,6 +24294,13 @@ }, "type": "array" }, + "synonym": { + "description": "Alternate human-readable names for a thing", + "items": { + "type": "string" + }, + "type": "array" + }, "type": { "items": { "type": "string" @@ -23277,6 +24400,13 @@ }, "type": "array" }, + "synonym": { + "description": "Alternate human-readable names for a thing", + "items": { + "type": "string" + }, + "type": "array" + }, "type": { "items": { "type": "string" @@ -23337,8 +24467,15 @@ "description": "A human-readable name for an attribute or entity.", "type": "string" }, - "provided_by": { - "description": "The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.", + "provided_by": { + "description": "The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.", + "items": { + "type": "string" + }, + "type": "array" + }, + "synonym": { + "description": "Alternate human-readable names for a thing", "items": { "type": "string" }, @@ -23422,6 +24559,13 @@ }, "type": "array" }, + "synonym": { + "description": "Alternate human-readable names for a thing", + "items": { + "type": "string" + }, + "type": "array" + }, "type": { "items": { "type": "string" @@ -23500,6 +24644,13 @@ }, "type": "array" }, + "synonym": { + "description": "Alternate human-readable names for a thing", + "items": { + "type": "string" + }, + "type": "array" + }, "type": { "items": { "type": "string" @@ -23578,6 +24729,13 @@ }, "type": "array" }, + "synonym": { + "description": "Alternate human-readable names for a thing", + "items": { + "type": "string" + }, + "type": "array" + }, "type": { "items": { "type": "string" @@ -24053,6 +25211,13 @@ "description": "executive summary of a publication", "type": "string" }, + "synonym": { + "description": "Alternate human-readable names for a thing", + "items": { + "type": "string" + }, + "type": "array" + }, "type": { "items": { "type": "string" @@ -24120,6 +25285,13 @@ }, "type": "array" }, + "synonym": { + "description": "Alternate human-readable names for a thing", + "items": { + "type": "string" + }, + "type": "array" + }, "type": { "items": { "type": "string" @@ -24141,6 +25313,26 @@ "title": "Procedure", "type": "object" }, + "ProcessOutput": { + "additionalProperties": false, + "description": "The output of a process.", + "properties": { + "created_by_process_id": { + "description": "The id of the process that created this object.", + "type": "string" + }, + "created_by_process_type": { + "description": "The type of process that created this object.", + "type": "string" + }, + "label": { + "description": "The name of the object.", + "type": "string" + } + }, + "title": "ProcessOutput", + "type": "object" + }, "ProcessedMaterial": { "additionalProperties": false, "description": "A chemical entity (often a mixture) processed for consumption for nutritional, medical or technical use. Is a material entity that is created or changed during material processing.", @@ -24228,6 +25420,13 @@ }, "type": "array" }, + "synonym": { + "description": "Alternate human-readable names for a thing", + "items": { + "type": "string" + }, + "type": "array" + }, "trade_name": { "description": "", "type": "string" @@ -24402,6 +25601,13 @@ }, "type": "array" }, + "synonym": { + "description": "Alternate human-readable names for a thing", + "items": { + "type": "string" + }, + "type": "array" + }, "type": { "items": { "type": "string" @@ -24487,6 +25693,13 @@ }, "type": "array" }, + "synonym": { + "description": "Alternate human-readable names for a thing", + "items": { + "type": "string" + }, + "type": "array" + }, "type": { "items": { "type": "string" @@ -24685,6 +25898,13 @@ "description": "executive summary of a publication", "type": "string" }, + "synonym": { + "description": "Alternate human-readable names for a thing", + "items": { + "type": "string" + }, + "type": "array" + }, "type": { "items": { "type": "string" @@ -25435,6 +26655,13 @@ }, "type": "array" }, + "synonym": { + "description": "Alternate human-readable names for a thing", + "items": { + "type": "string" + }, + "type": "array" + }, "type": { "items": { "type": "string" @@ -25517,6 +26744,13 @@ }, "type": "array" }, + "synonym": { + "description": "Alternate human-readable names for a thing", + "items": { + "type": "string" + }, + "type": "array" + }, "type": { "items": { "type": "string" @@ -25613,6 +26847,13 @@ "rights": { "type": "string" }, + "synonym": { + "description": "Alternate human-readable names for a thing", + "items": { + "type": "string" + }, + "type": "array" + }, "type": { "items": { "type": "string" @@ -25712,6 +26953,13 @@ "rights": { "type": "string" }, + "synonym": { + "description": "Alternate human-readable names for a thing", + "items": { + "type": "string" + }, + "type": "array" + }, "type": { "items": { "type": "string" @@ -26186,6 +27434,13 @@ }, "type": "array" }, + "synonym": { + "description": "Alternate human-readable names for a thing", + "items": { + "type": "string" + }, + "type": "array" + }, "type": { "items": { "type": "string" @@ -26307,6 +27562,13 @@ "description": "executive summary of a publication", "type": "string" }, + "synonym": { + "description": "Alternate human-readable names for a thing", + "items": { + "type": "string" + }, + "type": "array" + }, "type": { "description": "Should generally be set to an ontology class defined term for 'serial' or 'journal'.", "items": { @@ -26394,6 +27656,13 @@ }, "type": "array" }, + "synonym": { + "description": "Alternate human-readable names for a thing", + "items": { + "type": "string" + }, + "type": "array" + }, "type": { "items": { "type": "string" @@ -26416,6 +27685,15 @@ "title": "SeverityValue", "type": "object" }, + "SexType": { + "description": "", + "enum": [ + "female", + "male" + ], + "title": "SexType", + "type": "string" + }, "SiRNA": { "additionalProperties": false, "description": "A small RNA molecule that is the product of a longer exogenous or endogenous dsRNA, which is either a bimolecular duplex or very long hairpin, processed (via the Dicer pathway) such that numerous siRNAs accumulate from both strands of the dsRNA. SRNAs trigger the cleavage of their target molecules.", @@ -26607,6 +27885,13 @@ }, "type": "array" }, + "synonym": { + "description": "Alternate human-readable names for a thing", + "items": { + "type": "string" + }, + "type": "array" + }, "trade_name": { "description": "", "type": "string" @@ -26700,6 +27985,13 @@ }, "type": "array" }, + "synonym": { + "description": "Alternate human-readable names for a thing", + "items": { + "type": "string" + }, + "type": "array" + }, "type": { "items": { "type": "string" @@ -26782,6 +28074,13 @@ }, "type": "array" }, + "synonym": { + "description": "Alternate human-readable names for a thing", + "items": { + "type": "string" + }, + "type": "array" + }, "type": { "items": { "type": "string" @@ -26865,6 +28164,13 @@ }, "type": "array" }, + "synonym": { + "description": "Alternate human-readable names for a thing", + "items": { + "type": "string" + }, + "type": "array" + }, "timepoint": { "description": "a point in time", "format": "time", @@ -26956,6 +28262,13 @@ }, "type": "array" }, + "synonym": { + "description": "Alternate human-readable names for a thing", + "items": { + "type": "string" + }, + "type": "array" + }, "type": { "items": { "type": "string" @@ -27034,6 +28347,13 @@ }, "type": "array" }, + "synonym": { + "description": "Alternate human-readable names for a thing", + "items": { + "type": "string" + }, + "type": "array" + }, "type": { "items": { "type": "string" @@ -27115,6 +28435,13 @@ "rights": { "type": "string" }, + "synonym": { + "description": "Alternate human-readable names for a thing", + "items": { + "type": "string" + }, + "type": "array" + }, "type": { "items": { "type": "string" @@ -27405,6 +28732,13 @@ "rights": { "type": "string" }, + "synonym": { + "description": "Alternate human-readable names for a thing", + "items": { + "type": "string" + }, + "type": "array" + }, "type": { "items": { "type": "string" @@ -27426,6 +28760,33 @@ "title": "TextMiningResult", "type": "object" }, + "TissueSample": { + "additionalProperties": false, + "description": "", + "properties": { + "created_by_process_id": { + "description": "The id of the process that created this object.", + "type": "string" + }, + "created_by_process_type": { + "description": "The type of process that created this object.", + "type": "string" + }, + "label": { + "description": "The name of the object.", + "type": "string" + }, + "region_of_interest_label": { + "description": "The label of the region of interest.", + "type": "string" + }, + "roi_plan": { + "type": "string" + } + }, + "title": "TissueSample", + "type": "object" + }, "Transcript": { "additionalProperties": false, "description": "An RNA synthesized on a DNA or RNA template by an RNA polymerase.", @@ -27513,6 +28874,13 @@ }, "type": "array" }, + "synonym": { + "description": "Alternate human-readable names for a thing", + "items": { + "type": "string" + }, + "type": "array" + }, "trade_name": { "description": "", "type": "string" @@ -27784,6 +29152,13 @@ }, "type": "array" }, + "synonym": { + "description": "Alternate human-readable names for a thing", + "items": { + "type": "string" + }, + "type": "array" + }, "type": { "items": { "type": "string" @@ -27872,6 +29247,13 @@ }, "type": "array" }, + "synonym": { + "description": "Alternate human-readable names for a thing", + "items": { + "type": "string" + }, + "type": "array" + }, "timepoint": { "description": "a point in time", "format": "time", @@ -29156,6 +30538,13 @@ }, "type": "array" }, + "synonym": { + "description": "Alternate human-readable names for a thing", + "items": { + "type": "string" + }, + "type": "array" + }, "type": { "items": { "type": "string" @@ -29234,6 +30623,13 @@ }, "type": "array" }, + "synonym": { + "description": "Alternate human-readable names for a thing", + "items": { + "type": "string" + }, + "type": "array" + }, "type": { "items": { "type": "string" @@ -29347,6 +30743,13 @@ "description": "executive summary of a publication", "type": "string" }, + "synonym": { + "description": "Alternate human-readable names for a thing", + "items": { + "type": "string" + }, + "type": "array" + }, "type": { "items": { "type": "string" @@ -29429,6 +30832,13 @@ }, "type": "array" }, + "synonym": { + "description": "Alternate human-readable names for a thing", + "items": { + "type": "string" + }, + "type": "array" + }, "type": { "items": { "type": "string" diff --git a/jsonld-context-autogen/kbmodel.context.jsonld b/jsonld-context-autogen/kbmodel.context.jsonld index 4de624af..aa638055 100644 --- a/jsonld-context-autogen/kbmodel.context.jsonld +++ b/jsonld-context-autogen/kbmodel.context.jsonld @@ -280,6 +280,7 @@ "@prefix": true }, "NBO-PROPERTY": "http://purl.obolibrary.org/obo/nbo#", + "NCBIAssembly": "https://www.ncbi.nlm.nih.gov/assembly/", "NCBIGene": "http://identifiers.org/ncbigene/", "NCBITaxon": { "@id": "http://purl.obolibrary.org/obo/NCBITaxon_", @@ -626,6 +627,9 @@ "@type": "@id", "@id": "biolink:affiliation" }, + "age_at_death": { + "@type": "xsd:integer" + }, "id": "@id", "aggregate_statistic": { "@id": "biolink:aggregate_statistic" @@ -645,6 +649,9 @@ "@type": "@id", "@id": "biolink:amount_or_activity_increased_by" }, + "amplified_quantity": { + "@type": "xsd:float" + }, "anatomical_context_qualifier": { "@id": "biolink:anatomical_context_qualifier" }, @@ -715,6 +722,9 @@ }, "@id": "biolink:available_from" }, + "barcode": { + "@id": "schema:identifier" + }, "base_coordinate": { "@type": "xsd:integer", "@id": "biolink:base_coordinate" @@ -734,6 +744,9 @@ "@type": "xsd:float", "@id": "biolink:bonferonni_adjusted_p_value" }, + "ordinal": { + "@type": "xsd:integer" + }, "broad_match": { "@type": "@id", "@id": "biolink:broad_match" @@ -899,6 +912,12 @@ "dataset_download_url": { "@id": "dcat:downloadURL" }, + "date_of_birth": { + "@type": "xsd:date" + }, + "date_of_death": { + "@type": "xsd:date" + }, "decreased_amount_in": { "@type": "@id", "@id": "biolink:decreased_amount_in" @@ -1080,12 +1099,6 @@ "@type": "@id", "@id": "biolink:gene_fusion_with" }, - "gene_identifier_1": { - "@type": "@id" - }, - "gene_identifier_2": { - "@type": "@id" - }, "genetic_association": { "@type": "@id", "@id": "biolink:genetic_association" @@ -1599,6 +1612,9 @@ "knowledge_source": { "@id": "biolink:knowledge_source" }, + "label": { + "@id": "schema:name" + }, "lacks_part": { "@type": "@id", "@id": "biolink:lacks_part" @@ -1607,6 +1623,27 @@ "@type": "xsd:float", "@id": "biolink:latitude" }, + "avg_size": { + "@type": "xsd:integer" + }, + "input_amount": { + "@type": "xsd:float" + }, + "quantification_fmol": { + "@type": "xsd:float" + }, + "quantification_ng": { + "@type": "xsd:float" + }, + "quantification_nm": { + "@type": "xsd:float" + }, + "input_quantity": { + "@type": "xsd:integer" + }, + "tube_contents": { + "@type": "xsd:float" + }, "license": { "@id": "biolink:license" }, @@ -1685,6 +1722,9 @@ "@type": "@id", "@id": "biolink:mesh_terms" }, + "method": { + "@id": "schema:name" + }, "missing_from": { "@type": "@id", "@id": "biolink:missing_from" @@ -2090,6 +2130,10 @@ "@type": "@id", "@id": "biolink:same_as" }, + "semmed_agreement_count": { + "@type": "xsd:integer", + "@id": "biolink:semmed_agreement_count" + }, "sensitivity_associated_with": { "@type": "@id", "@id": "biolink:sensitivity_associated_with" @@ -2109,6 +2153,14 @@ "@type": "@id", "@id": "biolink:severity_qualifier" }, + "sex": { + "@context": { + "@vocab": "@null", + "text": "skos:notation", + "description": "skos:prefLabel", + "meaning": "@id" + } + }, "sex_qualifier": { "@type": "@id", "@id": "biolink:sex_qualifier" diff --git a/models_py-autogen/kbmodel.py b/models_py-autogen/kbmodel.py index 52afde16..adfa90e6 100644 --- a/models_py-autogen/kbmodel.py +++ b/models_py-autogen/kbmodel.py @@ -38,6 +38,15 @@ class DigestType(str, Enum): +class SexType(str, Enum): + + + female = "female" + + male = "male" + + + class BioType(str, Enum): @@ -426,46 +435,130 @@ class FDAIDAAdverseEventEnum(str, Enum): -class GenomeAssembly(ConfiguredBaseModel): - """ - Genome assembly to contain version and label information - """ - id: Optional[str] = Field(None) - taxon: Optional[str] = Field(None) - version: Optional[str] = Field(None) - label: Optional[str] = Field(None) - description: Optional[str] = Field(None) +class AnnotationCollection(ConfiguredBaseModel): + + annotations: Optional[List[GeneAnnotation]] = Field(default_factory=list) + genome_annotations: Optional[List[GenomeAnnotation]] = Field(default_factory=list) + genome_assemblies: Optional[List[GenomeAssembly]] = Field(default_factory=list) -class Mapping(ConfiguredBaseModel): +class ProcessOutput(ConfiguredBaseModel): """ - text + The output of a process. """ - gene_identifier_1: Optional[str] = Field(None) - gene_identifier_2: Optional[str] = Field(None) - authority: Optional[str] = Field(None) + label: Optional[str] = Field(None, description="""The name of the object.""") + created_by_process_id: Optional[str] = Field(None, description="""The id of the process that created this object.""") + created_by_process_type: Optional[str] = Field(None, description="""The type of process that created this object.""") + + + +class BrainSegment(ProcessOutput): + + barcode: Optional[str] = Field(None, description="""The unique identifier of the object.""") + anatomical_division: Optional[str] = Field(None) + label: Optional[str] = Field(None, description="""The name of the object.""") + created_by_process_id: Optional[str] = Field(None, description="""The id of the process that created this object.""") + created_by_process_type: Optional[str] = Field(None, description="""The type of process that created this object.""") + + + +class BrainSection(ProcessOutput): + + barcode: Optional[str] = Field(None, description="""The unique identifier of the object.""") + ordinal: Optional[int] = Field(None, description="""The ordinal number of the section.""") + label: Optional[str] = Field(None, description="""The name of the object.""") + created_by_process_id: Optional[str] = Field(None, description="""The id of the process that created this object.""") + created_by_process_type: Optional[str] = Field(None, description="""The type of process that created this object.""") + + + +class TissueSample(ProcessOutput): + + roi_plan: Optional[str] = Field(None) + region_of_interest_label: Optional[str] = Field(None, description="""The label of the region of interest.""") + label: Optional[str] = Field(None, description="""The name of the object.""") + created_by_process_id: Optional[str] = Field(None, description="""The id of the process that created this object.""") + created_by_process_type: Optional[str] = Field(None, description="""The type of process that created this object.""") + + + +class DissociatedCellSample(ProcessOutput): + + cell_prep_type: Optional[str] = Field(None) + facs_population_plan: Optional[str] = Field(None) + label: Optional[str] = Field(None, description="""The name of the object.""") + created_by_process_id: Optional[str] = Field(None, description="""The id of the process that created this object.""") + created_by_process_type: Optional[str] = Field(None, description="""The type of process that created this object.""") + + + +class EnrichedCellSample(ConfiguredBaseModel): + + None + + + +class BarcodedCellSample(ProcessOutput): + + port_well: Optional[str] = Field(None) + sample_quallity_count: Optional[str] = Field(None) + label: Optional[str] = Field(None, description="""The name of the object.""") + created_by_process_id: Optional[str] = Field(None, description="""The id of the process that created this object.""") + created_by_process_type: Optional[str] = Field(None, description="""The type of process that created this object.""") + + + +class AmplifiedCdna(ProcessOutput): + method: Optional[str] = Field(None) - creation_date: Optional[str] = Field(None) - access_date: Optional[str] = Field(None) - member_of: Optional[List[str]] = Field(None, description="""Defines a mereological relation between a item and a collection.""") + amplified_quantity: Optional[float] = Field(None, description="""Amount of cDNA amplified (ng).""") + pcr_cycles: Optional[str] = Field(None) + percent_cdna_longer_than_400bp: Optional[str] = Field(None) + rna_amplification_pass_fail: Optional[str] = Field(None) + label: Optional[str] = Field(None, description="""The name of the object.""") + created_by_process_id: Optional[str] = Field(None, description="""The id of the process that created this object.""") + created_by_process_type: Optional[str] = Field(None, description="""The type of process that created this object.""") -class Mappings(ConfiguredBaseModel): - """ - A collection of mappings between identifiers +class Library(ProcessOutput): + + method: Optional[str] = Field(None) + creation_date: Optional[datetime ] = Field(None, description="""The date and time the object was created.""") + avg_size: Optional[int] = Field(None, description="""The average size (bp) of the library fragments. bp stands for base pairs.""") + input_amount: Optional[float] = Field(None, description="""The amount of input material (ng) used to create the library.""") + library_prep_pass: Optional[str] = Field(None) + quantification_fmol: Optional[float] = Field(None) + quantification_ng: Optional[float] = Field(None) + quantification_nm: Optional[float] = Field(None) + r1_index: Optional[str] = Field(None) + r1_sequence: Optional[str] = Field(None) + r2_index: Optional[str] = Field(None) + r2_sequence: Optional[str] = Field(None) + label: Optional[str] = Field(None, description="""The name of the object.""") + created_by_process_id: Optional[str] = Field(None, description="""The id of the process that created this object.""") + created_by_process_type: Optional[str] = Field(None, description="""The type of process that created this object.""") + - """ - has_member: Optional[List[str]] = Field(None, description="""Defines a mereological relation between a collection and an item.""") + +class LibraryAliquot(ProcessOutput): + + input_quantity: Optional[int] = Field(None, description="""The amount of input material (fmol) used to create the library aliquot.""") + label: Optional[str] = Field(None, description="""The name of the object.""") + created_by_process_id: Optional[str] = Field(None, description="""The id of the process that created this object.""") + created_by_process_type: Optional[str] = Field(None, description="""The type of process that created this object.""") -class AnnotationCollection(ConfiguredBaseModel): +class LibraryPool(ProcessOutput): - annotations: Optional[List[GeneAnnotation]] = Field(default_factory=list) - genome_annotations: Optional[List[GenomeAnnotation]] = Field(default_factory=list) - genome_assemblies: Optional[List[GenomeAssembly]] = Field(default_factory=list) + tube_avg_size: Optional[str] = Field(None) + tube_contents: Optional[float] = Field(None, description="""The content concentration (nm).""") + tube_internal_label: Optional[str] = Field(None) + label: Optional[str] = Field(None, description="""The name of the object.""") + created_by_process_id: Optional[str] = Field(None, description="""The id of the process that created this object.""") + created_by_process_type: Optional[str] = Field(None, description="""The type of process that created this object.""") @@ -593,8 +686,8 @@ class Checksum(Entity): """ Checksum values associated with digital entities. """ - checksum_algorithm: Optional[DigestType] = Field(None) - value: Optional[str] = Field(None) + checksum_algorithm: Optional[DigestType] = Field(None, description="""The type of cryptographic hash function used to calculate the checksum value.""") + value: Optional[str] = Field(None, description="""The checksum value obtained from a specific cryotographic hash function.""") id: str = Field(..., description="""A unique identifier for an entity. Must be either a CURIE shorthand for a URI or a complete URI""") iri: Optional[str] = Field(None, description="""An IRI for an entity. This is determined by the id using expansion rules.""") category: List[Literal["https://identifiers.org/brain-bican/vocab/Checksum","bican:Checksum"]] = Field(["bican:Checksum"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. @@ -616,6 +709,7 @@ class NamedThing(Entity): provided_by: Optional[List[str]] = Field(None, description="""The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.""") xref: Optional[List[str]] = Field(default_factory=list, description="""A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.""") full_name: Optional[str] = Field(None, description="""a long-form human readable name for a thing""") + synonym: Optional[List[str]] = Field(default_factory=list, description="""Alternate human-readable names for a thing""") id: str = Field(..., description="""A unique identifier for an entity. Must be either a CURIE shorthand for a URI or a complete URI""") iri: Optional[str] = Field(None, description="""An IRI for an entity. This is determined by the id using expansion rules.""") category: List[Literal["https://w3id.org/biolink/vocab/NamedThing","biolink:NamedThing"]] = Field(["biolink:NamedThing"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. @@ -643,6 +737,7 @@ class Attribute(NamedThing, OntologyClass): provided_by: Optional[List[str]] = Field(None, description="""The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.""") xref: Optional[List[str]] = Field(default_factory=list, description="""A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.""") full_name: Optional[str] = Field(None, description="""a long-form human readable name for a thing""") + synonym: Optional[List[str]] = Field(default_factory=list, description="""Alternate human-readable names for a thing""") category: List[Literal["https://w3id.org/biolink/vocab/Attribute","biolink:Attribute"]] = Field(["biolink:Attribute"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. * In a neo4j database this MAY correspond to the neo4j label tag. * In an RDF database it should be a biolink model class URI. @@ -667,6 +762,7 @@ class ChemicalRole(Attribute): provided_by: Optional[List[str]] = Field(None, description="""The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.""") xref: Optional[List[str]] = Field(default_factory=list, description="""A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.""") full_name: Optional[str] = Field(None, description="""a long-form human readable name for a thing""") + synonym: Optional[List[str]] = Field(default_factory=list, description="""Alternate human-readable names for a thing""") category: List[Literal["https://w3id.org/biolink/vocab/ChemicalRole","biolink:ChemicalRole"]] = Field(["biolink:ChemicalRole"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. * In a neo4j database this MAY correspond to the neo4j label tag. * In an RDF database it should be a biolink model class URI. @@ -689,6 +785,7 @@ class BiologicalSex(Attribute): provided_by: Optional[List[str]] = Field(None, description="""The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.""") xref: Optional[List[str]] = Field(default_factory=list, description="""A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.""") full_name: Optional[str] = Field(None, description="""a long-form human readable name for a thing""") + synonym: Optional[List[str]] = Field(default_factory=list, description="""Alternate human-readable names for a thing""") category: List[Literal["https://w3id.org/biolink/vocab/BiologicalSex","biolink:BiologicalSex"]] = Field(["biolink:BiologicalSex"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. * In a neo4j database this MAY correspond to the neo4j label tag. * In an RDF database it should be a biolink model class URI. @@ -713,6 +810,7 @@ class PhenotypicSex(BiologicalSex): provided_by: Optional[List[str]] = Field(None, description="""The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.""") xref: Optional[List[str]] = Field(default_factory=list, description="""A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.""") full_name: Optional[str] = Field(None, description="""a long-form human readable name for a thing""") + synonym: Optional[List[str]] = Field(default_factory=list, description="""Alternate human-readable names for a thing""") category: List[Literal["https://w3id.org/biolink/vocab/PhenotypicSex","biolink:PhenotypicSex"]] = Field(["biolink:PhenotypicSex"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. * In a neo4j database this MAY correspond to the neo4j label tag. * In an RDF database it should be a biolink model class URI. @@ -737,6 +835,7 @@ class GenotypicSex(BiologicalSex): provided_by: Optional[List[str]] = Field(None, description="""The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.""") xref: Optional[List[str]] = Field(default_factory=list, description="""A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.""") full_name: Optional[str] = Field(None, description="""a long-form human readable name for a thing""") + synonym: Optional[List[str]] = Field(default_factory=list, description="""Alternate human-readable names for a thing""") category: List[Literal["https://w3id.org/biolink/vocab/GenotypicSex","biolink:GenotypicSex"]] = Field(["biolink:GenotypicSex"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. * In a neo4j database this MAY correspond to the neo4j label tag. * In an RDF database it should be a biolink model class URI. @@ -761,6 +860,7 @@ class SeverityValue(Attribute): provided_by: Optional[List[str]] = Field(None, description="""The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.""") xref: Optional[List[str]] = Field(default_factory=list, description="""A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.""") full_name: Optional[str] = Field(None, description="""a long-form human readable name for a thing""") + synonym: Optional[List[str]] = Field(default_factory=list, description="""Alternate human-readable names for a thing""") category: List[Literal["https://w3id.org/biolink/vocab/SeverityValue","biolink:SeverityValue"]] = Field(["biolink:SeverityValue"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. * In a neo4j database this MAY correspond to the neo4j label tag. * In an RDF database it should be a biolink model class URI. @@ -795,6 +895,7 @@ class OrganismTaxon(NamedThing): provided_by: Optional[List[str]] = Field(None, description="""The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.""") xref: Optional[List[str]] = Field(default_factory=list, description="""A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.""") full_name: Optional[str] = Field(None, description="""a long-form human readable name for a thing""") + synonym: Optional[List[str]] = Field(default_factory=list, description="""Alternate human-readable names for a thing""") id: str = Field(..., description="""A unique identifier for an entity. Must be either a CURIE shorthand for a URI or a complete URI""") iri: Optional[str] = Field(None, description="""An IRI for an entity. This is determined by the id using expansion rules.""") category: List[Literal["https://w3id.org/biolink/vocab/OrganismTaxon","biolink:OrganismTaxon"]] = Field(["biolink:OrganismTaxon"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. @@ -816,6 +917,7 @@ class Event(NamedThing): provided_by: Optional[List[str]] = Field(None, description="""The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.""") xref: Optional[List[str]] = Field(default_factory=list, description="""A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.""") full_name: Optional[str] = Field(None, description="""a long-form human readable name for a thing""") + synonym: Optional[List[str]] = Field(default_factory=list, description="""Alternate human-readable names for a thing""") id: str = Field(..., description="""A unique identifier for an entity. Must be either a CURIE shorthand for a URI or a complete URI""") iri: Optional[str] = Field(None, description="""An IRI for an entity. This is determined by the id using expansion rules.""") category: List[Literal["https://w3id.org/biolink/vocab/Event","biolink:Event"]] = Field(["biolink:Event"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. @@ -835,6 +937,7 @@ class AdministrativeEntity(NamedThing): provided_by: Optional[List[str]] = Field(None, description="""The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.""") xref: Optional[List[str]] = Field(default_factory=list, description="""A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.""") full_name: Optional[str] = Field(None, description="""a long-form human readable name for a thing""") + synonym: Optional[List[str]] = Field(default_factory=list, description="""Alternate human-readable names for a thing""") id: str = Field(..., description="""A unique identifier for an entity. Must be either a CURIE shorthand for a URI or a complete URI""") iri: Optional[str] = Field(None, description="""An IRI for an entity. This is determined by the id using expansion rules.""") category: List[Literal["https://w3id.org/biolink/vocab/AdministrativeEntity","biolink:AdministrativeEntity"]] = Field(["biolink:AdministrativeEntity"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. @@ -858,6 +961,7 @@ class Agent(AdministrativeEntity): provided_by: Optional[List[str]] = Field(None, description="""The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.""") xref: Optional[List[str]] = Field(default_factory=list, description="""A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.""") full_name: Optional[str] = Field(None, description="""a long-form human readable name for a thing""") + synonym: Optional[List[str]] = Field(default_factory=list, description="""Alternate human-readable names for a thing""") id: str = Field(..., description="""Different classes of agents have distinct preferred identifiers. For publishers, use the ISBN publisher code. See https://grp.isbn-international.org/ for publisher code lookups. For editors, authors and individual providers, use the individual's ORCID if available; Otherwise, a ScopusID, ResearchID or Google Scholar ID ('GSID') may be used if the author ORCID is unknown. Institutional agents could be identified by an International Standard Name Identifier ('ISNI') code.""") iri: Optional[str] = Field(None, description="""An IRI for an entity. This is determined by the id using expansion rules.""") category: List[Literal["https://w3id.org/biolink/vocab/Agent","biolink:Agent"]] = Field(["biolink:Agent"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. @@ -883,6 +987,7 @@ class InformationContentEntity(NamedThing): provided_by: Optional[List[str]] = Field(None, description="""The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.""") xref: Optional[List[str]] = Field(default_factory=list, description="""A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.""") full_name: Optional[str] = Field(None, description="""a long-form human readable name for a thing""") + synonym: Optional[List[str]] = Field(default_factory=list, description="""Alternate human-readable names for a thing""") id: str = Field(..., description="""A unique identifier for an entity. Must be either a CURIE shorthand for a URI or a complete URI""") iri: Optional[str] = Field(None, description="""An IRI for an entity. This is determined by the id using expansion rules.""") category: List[Literal["https://w3id.org/biolink/vocab/InformationContentEntity","biolink:InformationContentEntity"]] = Field(["biolink:InformationContentEntity"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. @@ -908,6 +1013,7 @@ class StudyResult(InformationContentEntity): provided_by: Optional[List[str]] = Field(None, description="""The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.""") xref: Optional[List[str]] = Field(default_factory=list, description="""A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.""") full_name: Optional[str] = Field(None, description="""a long-form human readable name for a thing""") + synonym: Optional[List[str]] = Field(default_factory=list, description="""Alternate human-readable names for a thing""") id: str = Field(..., description="""A unique identifier for an entity. Must be either a CURIE shorthand for a URI or a complete URI""") iri: Optional[str] = Field(None, description="""An IRI for an entity. This is determined by the id using expansion rules.""") category: List[Literal["https://w3id.org/biolink/vocab/StudyResult","biolink:StudyResult"]] = Field(["biolink:StudyResult"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. @@ -933,6 +1039,7 @@ class StudyVariable(InformationContentEntity): provided_by: Optional[List[str]] = Field(None, description="""The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.""") xref: Optional[List[str]] = Field(default_factory=list, description="""A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.""") full_name: Optional[str] = Field(None, description="""a long-form human readable name for a thing""") + synonym: Optional[List[str]] = Field(default_factory=list, description="""Alternate human-readable names for a thing""") id: str = Field(..., description="""A unique identifier for an entity. Must be either a CURIE shorthand for a URI or a complete URI""") iri: Optional[str] = Field(None, description="""An IRI for an entity. This is determined by the id using expansion rules.""") category: List[Literal["https://w3id.org/biolink/vocab/StudyVariable","biolink:StudyVariable"]] = Field(["biolink:StudyVariable"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. @@ -958,6 +1065,7 @@ class CommonDataElement(InformationContentEntity): provided_by: Optional[List[str]] = Field(None, description="""The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.""") xref: Optional[List[str]] = Field(default_factory=list, description="""A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.""") full_name: Optional[str] = Field(None, description="""a long-form human readable name for a thing""") + synonym: Optional[List[str]] = Field(default_factory=list, description="""Alternate human-readable names for a thing""") id: str = Field(..., description="""A unique identifier for an entity. Must be either a CURIE shorthand for a URI or a complete URI""") iri: Optional[str] = Field(None, description="""An IRI for an entity. This is determined by the id using expansion rules.""") category: List[Literal["https://w3id.org/biolink/vocab/CommonDataElement","biolink:CommonDataElement"]] = Field(["biolink:CommonDataElement"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. @@ -983,6 +1091,7 @@ class ConceptCountAnalysisResult(StudyResult): provided_by: Optional[List[str]] = Field(None, description="""The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.""") xref: Optional[List[str]] = Field(default_factory=list, description="""A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.""") full_name: Optional[str] = Field(None, description="""a long-form human readable name for a thing""") + synonym: Optional[List[str]] = Field(default_factory=list, description="""Alternate human-readable names for a thing""") id: str = Field(..., description="""A unique identifier for an entity. Must be either a CURIE shorthand for a URI or a complete URI""") iri: Optional[str] = Field(None, description="""An IRI for an entity. This is determined by the id using expansion rules.""") category: List[Literal["https://w3id.org/biolink/vocab/ConceptCountAnalysisResult","biolink:ConceptCountAnalysisResult"]] = Field(["biolink:ConceptCountAnalysisResult"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. @@ -1008,6 +1117,7 @@ class ObservedExpectedFrequencyAnalysisResult(StudyResult): provided_by: Optional[List[str]] = Field(None, description="""The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.""") xref: Optional[List[str]] = Field(default_factory=list, description="""A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.""") full_name: Optional[str] = Field(None, description="""a long-form human readable name for a thing""") + synonym: Optional[List[str]] = Field(default_factory=list, description="""Alternate human-readable names for a thing""") id: str = Field(..., description="""A unique identifier for an entity. Must be either a CURIE shorthand for a URI or a complete URI""") iri: Optional[str] = Field(None, description="""An IRI for an entity. This is determined by the id using expansion rules.""") category: List[Literal["https://w3id.org/biolink/vocab/ObservedExpectedFrequencyAnalysisResult","biolink:ObservedExpectedFrequencyAnalysisResult"]] = Field(["biolink:ObservedExpectedFrequencyAnalysisResult"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. @@ -1033,6 +1143,7 @@ class RelativeFrequencyAnalysisResult(StudyResult): provided_by: Optional[List[str]] = Field(None, description="""The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.""") xref: Optional[List[str]] = Field(default_factory=list, description="""A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.""") full_name: Optional[str] = Field(None, description="""a long-form human readable name for a thing""") + synonym: Optional[List[str]] = Field(default_factory=list, description="""Alternate human-readable names for a thing""") id: str = Field(..., description="""A unique identifier for an entity. Must be either a CURIE shorthand for a URI or a complete URI""") iri: Optional[str] = Field(None, description="""An IRI for an entity. This is determined by the id using expansion rules.""") category: List[Literal["https://w3id.org/biolink/vocab/RelativeFrequencyAnalysisResult","biolink:RelativeFrequencyAnalysisResult"]] = Field(["biolink:RelativeFrequencyAnalysisResult"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. @@ -1058,6 +1169,7 @@ class TextMiningResult(StudyResult): provided_by: Optional[List[str]] = Field(None, description="""The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.""") xref: Optional[List[str]] = Field(default_factory=list, description="""A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.""") full_name: Optional[str] = Field(None, description="""a long-form human readable name for a thing""") + synonym: Optional[List[str]] = Field(default_factory=list, description="""Alternate human-readable names for a thing""") id: str = Field(..., description="""A unique identifier for an entity. Must be either a CURIE shorthand for a URI or a complete URI""") iri: Optional[str] = Field(None, description="""An IRI for an entity. This is determined by the id using expansion rules.""") category: List[Literal["https://w3id.org/biolink/vocab/TextMiningResult","biolink:TextMiningResult"]] = Field(["biolink:TextMiningResult"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. @@ -1083,6 +1195,7 @@ class ChiSquaredAnalysisResult(StudyResult): provided_by: Optional[List[str]] = Field(None, description="""The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.""") xref: Optional[List[str]] = Field(default_factory=list, description="""A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.""") full_name: Optional[str] = Field(None, description="""a long-form human readable name for a thing""") + synonym: Optional[List[str]] = Field(default_factory=list, description="""Alternate human-readable names for a thing""") id: str = Field(..., description="""A unique identifier for an entity. Must be either a CURIE shorthand for a URI or a complete URI""") iri: Optional[str] = Field(None, description="""An IRI for an entity. This is determined by the id using expansion rules.""") category: List[Literal["https://w3id.org/biolink/vocab/ChiSquaredAnalysisResult","biolink:ChiSquaredAnalysisResult"]] = Field(["biolink:ChiSquaredAnalysisResult"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. @@ -1108,6 +1221,7 @@ class LogOddsAnalysisResult(StudyResult): provided_by: Optional[List[str]] = Field(None, description="""The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.""") xref: Optional[List[str]] = Field(default_factory=list, description="""A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.""") full_name: Optional[str] = Field(None, description="""a long-form human readable name for a thing""") + synonym: Optional[List[str]] = Field(default_factory=list, description="""Alternate human-readable names for a thing""") id: str = Field(..., description="""A unique identifier for an entity. Must be either a CURIE shorthand for a URI or a complete URI""") iri: Optional[str] = Field(None, description="""An IRI for an entity. This is determined by the id using expansion rules.""") category: List[Literal["https://w3id.org/biolink/vocab/LogOddsAnalysisResult","biolink:LogOddsAnalysisResult"]] = Field(["biolink:LogOddsAnalysisResult"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. @@ -1133,6 +1247,7 @@ class Dataset(InformationContentEntity): provided_by: Optional[List[str]] = Field(None, description="""The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.""") xref: Optional[List[str]] = Field(default_factory=list, description="""A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.""") full_name: Optional[str] = Field(None, description="""a long-form human readable name for a thing""") + synonym: Optional[List[str]] = Field(default_factory=list, description="""Alternate human-readable names for a thing""") id: str = Field(..., description="""A unique identifier for an entity. Must be either a CURIE shorthand for a URI or a complete URI""") iri: Optional[str] = Field(None, description="""An IRI for an entity. This is determined by the id using expansion rules.""") category: List[Literal["https://w3id.org/biolink/vocab/Dataset","biolink:Dataset"]] = Field(["biolink:Dataset"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. @@ -1159,6 +1274,7 @@ class DatasetDistribution(InformationContentEntity): provided_by: Optional[List[str]] = Field(None, description="""The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.""") xref: Optional[List[str]] = Field(default_factory=list, description="""A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.""") full_name: Optional[str] = Field(None, description="""a long-form human readable name for a thing""") + synonym: Optional[List[str]] = Field(default_factory=list, description="""Alternate human-readable names for a thing""") id: str = Field(..., description="""A unique identifier for an entity. Must be either a CURIE shorthand for a URI or a complete URI""") iri: Optional[str] = Field(None, description="""An IRI for an entity. This is determined by the id using expansion rules.""") category: List[Literal["https://w3id.org/biolink/vocab/DatasetDistribution","biolink:DatasetDistribution"]] = Field(["biolink:DatasetDistribution"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. @@ -1187,6 +1303,7 @@ class DatasetVersion(InformationContentEntity): provided_by: Optional[List[str]] = Field(None, description="""The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.""") xref: Optional[List[str]] = Field(default_factory=list, description="""A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.""") full_name: Optional[str] = Field(None, description="""a long-form human readable name for a thing""") + synonym: Optional[List[str]] = Field(default_factory=list, description="""Alternate human-readable names for a thing""") id: str = Field(..., description="""A unique identifier for an entity. Must be either a CURIE shorthand for a URI or a complete URI""") iri: Optional[str] = Field(None, description="""An IRI for an entity. This is determined by the id using expansion rules.""") category: List[Literal["https://w3id.org/biolink/vocab/DatasetVersion","biolink:DatasetVersion"]] = Field(["biolink:DatasetVersion"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. @@ -1214,6 +1331,7 @@ class DatasetSummary(InformationContentEntity): provided_by: Optional[List[str]] = Field(None, description="""The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.""") xref: Optional[List[str]] = Field(default_factory=list, description="""A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.""") full_name: Optional[str] = Field(None, description="""a long-form human readable name for a thing""") + synonym: Optional[List[str]] = Field(default_factory=list, description="""Alternate human-readable names for a thing""") id: str = Field(..., description="""A unique identifier for an entity. Must be either a CURIE shorthand for a URI or a complete URI""") iri: Optional[str] = Field(None, description="""An IRI for an entity. This is determined by the id using expansion rules.""") category: List[Literal["https://w3id.org/biolink/vocab/DatasetSummary","biolink:DatasetSummary"]] = Field(["biolink:DatasetSummary"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. @@ -1239,6 +1357,7 @@ class ConfidenceLevel(InformationContentEntity): provided_by: Optional[List[str]] = Field(None, description="""The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.""") xref: Optional[List[str]] = Field(default_factory=list, description="""A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.""") full_name: Optional[str] = Field(None, description="""a long-form human readable name for a thing""") + synonym: Optional[List[str]] = Field(default_factory=list, description="""Alternate human-readable names for a thing""") id: str = Field(..., description="""A unique identifier for an entity. Must be either a CURIE shorthand for a URI or a complete URI""") iri: Optional[str] = Field(None, description="""An IRI for an entity. This is determined by the id using expansion rules.""") category: List[Literal["https://w3id.org/biolink/vocab/ConfidenceLevel","biolink:ConfidenceLevel"]] = Field(["biolink:ConfidenceLevel"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. @@ -1264,6 +1383,7 @@ class EvidenceType(InformationContentEntity): provided_by: Optional[List[str]] = Field(None, description="""The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.""") xref: Optional[List[str]] = Field(default_factory=list, description="""A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.""") full_name: Optional[str] = Field(None, description="""a long-form human readable name for a thing""") + synonym: Optional[List[str]] = Field(default_factory=list, description="""Alternate human-readable names for a thing""") id: str = Field(..., description="""A unique identifier for an entity. Must be either a CURIE shorthand for a URI or a complete URI""") iri: Optional[str] = Field(None, description="""An IRI for an entity. This is determined by the id using expansion rules.""") category: List[Literal["https://w3id.org/biolink/vocab/EvidenceType","biolink:EvidenceType"]] = Field(["biolink:EvidenceType"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. @@ -1294,6 +1414,7 @@ class Publication(InformationContentEntity): creation_date: Optional[date] = Field(None, description="""date on which an entity was created. This can be applied to nodes or edges""") provided_by: Optional[List[str]] = Field(None, description="""The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.""") full_name: Optional[str] = Field(None, description="""a long-form human readable name for a thing""") + synonym: Optional[List[str]] = Field(default_factory=list, description="""Alternate human-readable names for a thing""") id: str = Field(..., description="""Different kinds of publication subtypes will have different preferred identifiers (curies when feasible). Precedence of identifiers for scientific articles is as follows: PMID if available; DOI if not; actual alternate CURIE otherwise. Enclosing publications (i.e. referenced by 'published in' node property) such as books and journals, should have industry-standard identifier such as from ISBN and ISSN.""") iri: Optional[str] = Field(None, description="""An IRI for an entity. This is determined by the id using expansion rules.""") category: List[Literal["https://w3id.org/biolink/vocab/Publication","biolink:Publication"]] = Field(["biolink:Publication"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. @@ -1324,6 +1445,7 @@ class Book(Publication): creation_date: Optional[date] = Field(None, description="""date on which an entity was created. This can be applied to nodes or edges""") provided_by: Optional[List[str]] = Field(None, description="""The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.""") full_name: Optional[str] = Field(None, description="""a long-form human readable name for a thing""") + synonym: Optional[List[str]] = Field(default_factory=list, description="""Alternate human-readable names for a thing""") id: str = Field(..., description="""Books should have industry-standard identifier such as from ISBN.""") iri: Optional[str] = Field(None, description="""An IRI for an entity. This is determined by the id using expansion rules.""") category: List[Literal["https://w3id.org/biolink/vocab/Book","biolink:Book"]] = Field(["biolink:Book"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. @@ -1355,6 +1477,7 @@ class BookChapter(Publication): creation_date: Optional[date] = Field(None, description="""date on which an entity was created. This can be applied to nodes or edges""") provided_by: Optional[List[str]] = Field(None, description="""The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.""") full_name: Optional[str] = Field(None, description="""a long-form human readable name for a thing""") + synonym: Optional[List[str]] = Field(default_factory=list, description="""Alternate human-readable names for a thing""") id: str = Field(..., description="""Different kinds of publication subtypes will have different preferred identifiers (curies when feasible). Precedence of identifiers for scientific articles is as follows: PMID if available; DOI if not; actual alternate CURIE otherwise. Enclosing publications (i.e. referenced by 'published in' node property) such as books and journals, should have industry-standard identifier such as from ISBN and ISSN.""") iri: Optional[str] = Field(None, description="""An IRI for an entity. This is determined by the id using expansion rules.""") category: List[Literal["https://w3id.org/biolink/vocab/BookChapter","biolink:BookChapter"]] = Field(["biolink:BookChapter"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. @@ -1388,6 +1511,7 @@ class Serial(Publication): creation_date: Optional[date] = Field(None, description="""date on which an entity was created. This can be applied to nodes or edges""") provided_by: Optional[List[str]] = Field(None, description="""The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.""") full_name: Optional[str] = Field(None, description="""a long-form human readable name for a thing""") + synonym: Optional[List[str]] = Field(default_factory=list, description="""Alternate human-readable names for a thing""") id: str = Field(..., description="""Serials (journals) should have industry-standard identifier such as from ISSN.""") iri: Optional[str] = Field(None, description="""An IRI for an entity. This is determined by the id using expansion rules.""") category: List[Literal["https://w3id.org/biolink/vocab/Serial","biolink:Serial"]] = Field(["biolink:Serial"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. @@ -1422,6 +1546,7 @@ class Article(Publication): creation_date: Optional[date] = Field(None, description="""date on which an entity was created. This can be applied to nodes or edges""") provided_by: Optional[List[str]] = Field(None, description="""The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.""") full_name: Optional[str] = Field(None, description="""a long-form human readable name for a thing""") + synonym: Optional[List[str]] = Field(default_factory=list, description="""Alternate human-readable names for a thing""") id: str = Field(..., description="""Different kinds of publication subtypes will have different preferred identifiers (curies when feasible). Precedence of identifiers for scientific articles is as follows: PMID if available; DOI if not; actual alternate CURIE otherwise. Enclosing publications (i.e. referenced by 'published in' node property) such as books and journals, should have industry-standard identifier such as from ISBN and ISSN.""") iri: Optional[str] = Field(None, description="""An IRI for an entity. This is determined by the id using expansion rules.""") category: List[Literal["https://w3id.org/biolink/vocab/Article","biolink:Article"]] = Field(["biolink:Article"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. @@ -1456,6 +1581,7 @@ class JournalArticle(Article): creation_date: Optional[date] = Field(None, description="""date on which an entity was created. This can be applied to nodes or edges""") provided_by: Optional[List[str]] = Field(None, description="""The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.""") full_name: Optional[str] = Field(None, description="""a long-form human readable name for a thing""") + synonym: Optional[List[str]] = Field(default_factory=list, description="""Alternate human-readable names for a thing""") id: str = Field(..., description="""Different kinds of publication subtypes will have different preferred identifiers (curies when feasible). Precedence of identifiers for scientific articles is as follows: PMID if available; DOI if not; actual alternate CURIE otherwise. Enclosing publications (i.e. referenced by 'published in' node property) such as books and journals, should have industry-standard identifier such as from ISBN and ISSN.""") iri: Optional[str] = Field(None, description="""An IRI for an entity. This is determined by the id using expansion rules.""") category: List[Literal["https://w3id.org/biolink/vocab/JournalArticle","biolink:JournalArticle"]] = Field(["biolink:JournalArticle"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. @@ -1486,6 +1612,7 @@ class Patent(Publication): creation_date: Optional[date] = Field(None, description="""date on which an entity was created. This can be applied to nodes or edges""") provided_by: Optional[List[str]] = Field(None, description="""The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.""") full_name: Optional[str] = Field(None, description="""a long-form human readable name for a thing""") + synonym: Optional[List[str]] = Field(default_factory=list, description="""Alternate human-readable names for a thing""") id: str = Field(..., description="""Different kinds of publication subtypes will have different preferred identifiers (curies when feasible). Precedence of identifiers for scientific articles is as follows: PMID if available; DOI if not; actual alternate CURIE otherwise. Enclosing publications (i.e. referenced by 'published in' node property) such as books and journals, should have industry-standard identifier such as from ISBN and ISSN.""") iri: Optional[str] = Field(None, description="""An IRI for an entity. This is determined by the id using expansion rules.""") category: List[Literal["https://w3id.org/biolink/vocab/Patent","biolink:Patent"]] = Field(["biolink:Patent"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. @@ -1516,6 +1643,7 @@ class WebPage(Publication): creation_date: Optional[date] = Field(None, description="""date on which an entity was created. This can be applied to nodes or edges""") provided_by: Optional[List[str]] = Field(None, description="""The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.""") full_name: Optional[str] = Field(None, description="""a long-form human readable name for a thing""") + synonym: Optional[List[str]] = Field(default_factory=list, description="""Alternate human-readable names for a thing""") id: str = Field(..., description="""Different kinds of publication subtypes will have different preferred identifiers (curies when feasible). Precedence of identifiers for scientific articles is as follows: PMID if available; DOI if not; actual alternate CURIE otherwise. Enclosing publications (i.e. referenced by 'published in' node property) such as books and journals, should have industry-standard identifier such as from ISBN and ISSN.""") iri: Optional[str] = Field(None, description="""An IRI for an entity. This is determined by the id using expansion rules.""") category: List[Literal["https://w3id.org/biolink/vocab/WebPage","biolink:WebPage"]] = Field(["biolink:WebPage"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. @@ -1546,6 +1674,7 @@ class PreprintPublication(Publication): creation_date: Optional[date] = Field(None, description="""date on which an entity was created. This can be applied to nodes or edges""") provided_by: Optional[List[str]] = Field(None, description="""The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.""") full_name: Optional[str] = Field(None, description="""a long-form human readable name for a thing""") + synonym: Optional[List[str]] = Field(default_factory=list, description="""Alternate human-readable names for a thing""") id: str = Field(..., description="""Different kinds of publication subtypes will have different preferred identifiers (curies when feasible). Precedence of identifiers for scientific articles is as follows: PMID if available; DOI if not; actual alternate CURIE otherwise. Enclosing publications (i.e. referenced by 'published in' node property) such as books and journals, should have industry-standard identifier such as from ISBN and ISSN.""") iri: Optional[str] = Field(None, description="""An IRI for an entity. This is determined by the id using expansion rules.""") category: List[Literal["https://w3id.org/biolink/vocab/PreprintPublication","biolink:PreprintPublication"]] = Field(["biolink:PreprintPublication"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. @@ -1576,6 +1705,7 @@ class DrugLabel(Publication): creation_date: Optional[date] = Field(None, description="""date on which an entity was created. This can be applied to nodes or edges""") provided_by: Optional[List[str]] = Field(None, description="""The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.""") full_name: Optional[str] = Field(None, description="""a long-form human readable name for a thing""") + synonym: Optional[List[str]] = Field(default_factory=list, description="""Alternate human-readable names for a thing""") id: str = Field(..., description="""Different kinds of publication subtypes will have different preferred identifiers (curies when feasible). Precedence of identifiers for scientific articles is as follows: PMID if available; DOI if not; actual alternate CURIE otherwise. Enclosing publications (i.e. referenced by 'published in' node property) such as books and journals, should have industry-standard identifier such as from ISBN and ISSN.""") iri: Optional[str] = Field(None, description="""An IRI for an entity. This is determined by the id using expansion rules.""") category: List[Literal["https://w3id.org/biolink/vocab/DrugLabel","biolink:DrugLabel"]] = Field(["biolink:DrugLabel"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. @@ -1604,6 +1734,7 @@ class RetrievalSource(InformationContentEntity): creation_date: Optional[date] = Field(None, description="""date on which an entity was created. This can be applied to nodes or edges""") provided_by: Optional[List[str]] = Field(None, description="""The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.""") full_name: Optional[str] = Field(None, description="""a long-form human readable name for a thing""") + synonym: Optional[List[str]] = Field(default_factory=list, description="""Alternate human-readable names for a thing""") id: str = Field(..., description="""A unique identifier for an entity. Must be either a CURIE shorthand for a URI or a complete URI""") iri: Optional[str] = Field(None, description="""An IRI for an entity. This is determined by the id using expansion rules.""") category: List[Literal["https://w3id.org/biolink/vocab/RetrievalSource","biolink:RetrievalSource"]] = Field(["biolink:RetrievalSource"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. @@ -1641,6 +1772,7 @@ class PhysicalEntity(PhysicalEssence, NamedThing): provided_by: Optional[List[str]] = Field(None, description="""The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.""") xref: Optional[List[str]] = Field(default_factory=list, description="""A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.""") full_name: Optional[str] = Field(None, description="""a long-form human readable name for a thing""") + synonym: Optional[List[str]] = Field(default_factory=list, description="""Alternate human-readable names for a thing""") id: str = Field(..., description="""A unique identifier for an entity. Must be either a CURIE shorthand for a URI or a complete URI""") iri: Optional[str] = Field(None, description="""An IRI for an entity. This is determined by the id using expansion rules.""") category: List[Literal["https://w3id.org/biolink/vocab/PhysicalEntity","biolink:PhysicalEntity"]] = Field(["biolink:PhysicalEntity"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. @@ -1678,6 +1810,7 @@ class Activity(ActivityAndBehavior, NamedThing): provided_by: Optional[List[str]] = Field(None, description="""The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.""") xref: Optional[List[str]] = Field(default_factory=list, description="""A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.""") full_name: Optional[str] = Field(None, description="""a long-form human readable name for a thing""") + synonym: Optional[List[str]] = Field(default_factory=list, description="""Alternate human-readable names for a thing""") id: str = Field(..., description="""A unique identifier for an entity. Must be either a CURIE shorthand for a URI or a complete URI""") iri: Optional[str] = Field(None, description="""An IRI for an entity. This is determined by the id using expansion rules.""") category: List[Literal["https://w3id.org/biolink/vocab/Activity","biolink:Activity"]] = Field(["biolink:Activity"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. @@ -1699,6 +1832,7 @@ class Study(Activity): provided_by: Optional[List[str]] = Field(None, description="""The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.""") xref: Optional[List[str]] = Field(default_factory=list, description="""A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.""") full_name: Optional[str] = Field(None, description="""a long-form human readable name for a thing""") + synonym: Optional[List[str]] = Field(default_factory=list, description="""Alternate human-readable names for a thing""") id: str = Field(..., description="""A unique identifier for an entity. Must be either a CURIE shorthand for a URI or a complete URI""") iri: Optional[str] = Field(None, description="""An IRI for an entity. This is determined by the id using expansion rules.""") category: List[Literal["https://w3id.org/biolink/vocab/Study","biolink:Study"]] = Field(["biolink:Study"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. @@ -1720,6 +1854,7 @@ class Procedure(ActivityAndBehavior, NamedThing): provided_by: Optional[List[str]] = Field(None, description="""The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.""") xref: Optional[List[str]] = Field(default_factory=list, description="""A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.""") full_name: Optional[str] = Field(None, description="""a long-form human readable name for a thing""") + synonym: Optional[List[str]] = Field(default_factory=list, description="""Alternate human-readable names for a thing""") id: str = Field(..., description="""A unique identifier for an entity. Must be either a CURIE shorthand for a URI or a complete URI""") iri: Optional[str] = Field(None, description="""An IRI for an entity. This is determined by the id using expansion rules.""") category: List[Literal["https://w3id.org/biolink/vocab/Procedure","biolink:Procedure"]] = Field(["biolink:Procedure"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. @@ -1741,6 +1876,7 @@ class Phenomenon(Occurrent, NamedThing): provided_by: Optional[List[str]] = Field(None, description="""The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.""") xref: Optional[List[str]] = Field(default_factory=list, description="""A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.""") full_name: Optional[str] = Field(None, description="""a long-form human readable name for a thing""") + synonym: Optional[List[str]] = Field(default_factory=list, description="""Alternate human-readable names for a thing""") id: str = Field(..., description="""A unique identifier for an entity. Must be either a CURIE shorthand for a URI or a complete URI""") iri: Optional[str] = Field(None, description="""An IRI for an entity. This is determined by the id using expansion rules.""") category: List[Literal["https://w3id.org/biolink/vocab/Phenomenon","biolink:Phenomenon"]] = Field(["biolink:Phenomenon"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. @@ -1762,6 +1898,7 @@ class Device(NamedThing): provided_by: Optional[List[str]] = Field(None, description="""The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.""") xref: Optional[List[str]] = Field(default_factory=list, description="""A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.""") full_name: Optional[str] = Field(None, description="""a long-form human readable name for a thing""") + synonym: Optional[List[str]] = Field(default_factory=list, description="""Alternate human-readable names for a thing""") id: str = Field(..., description="""A unique identifier for an entity. Must be either a CURIE shorthand for a URI or a complete URI""") iri: Optional[str] = Field(None, description="""An IRI for an entity. This is determined by the id using expansion rules.""") category: List[Literal["https://w3id.org/biolink/vocab/Device","biolink:Device"]] = Field(["biolink:Device"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. @@ -1783,6 +1920,7 @@ class DiagnosticAid(NamedThing): provided_by: Optional[List[str]] = Field(None, description="""The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.""") xref: Optional[List[str]] = Field(default_factory=list, description="""A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.""") full_name: Optional[str] = Field(None, description="""a long-form human readable name for a thing""") + synonym: Optional[List[str]] = Field(default_factory=list, description="""Alternate human-readable names for a thing""") id: str = Field(..., description="""A unique identifier for an entity. Must be either a CURIE shorthand for a URI or a complete URI""") iri: Optional[str] = Field(None, description="""An IRI for an entity. This is determined by the id using expansion rules.""") category: List[Literal["https://w3id.org/biolink/vocab/DiagnosticAid","biolink:DiagnosticAid"]] = Field(["biolink:DiagnosticAid"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. @@ -1812,6 +1950,7 @@ class MaterialSample(SubjectOfInvestigation, PhysicalEntity): provided_by: Optional[List[str]] = Field(None, description="""The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.""") xref: Optional[List[str]] = Field(default_factory=list, description="""A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.""") full_name: Optional[str] = Field(None, description="""a long-form human readable name for a thing""") + synonym: Optional[List[str]] = Field(default_factory=list, description="""Alternate human-readable names for a thing""") id: str = Field(..., description="""A unique identifier for an entity. Must be either a CURIE shorthand for a URI or a complete URI""") iri: Optional[str] = Field(None, description="""An IRI for an entity. This is determined by the id using expansion rules.""") category: List[Literal["https://w3id.org/biolink/vocab/MaterialSample","biolink:MaterialSample"]] = Field(["biolink:MaterialSample"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. @@ -1833,6 +1972,7 @@ class PlanetaryEntity(NamedThing): provided_by: Optional[List[str]] = Field(None, description="""The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.""") xref: Optional[List[str]] = Field(default_factory=list, description="""A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.""") full_name: Optional[str] = Field(None, description="""a long-form human readable name for a thing""") + synonym: Optional[List[str]] = Field(default_factory=list, description="""Alternate human-readable names for a thing""") id: str = Field(..., description="""A unique identifier for an entity. Must be either a CURIE shorthand for a URI or a complete URI""") iri: Optional[str] = Field(None, description="""An IRI for an entity. This is determined by the id using expansion rules.""") category: List[Literal["https://w3id.org/biolink/vocab/PlanetaryEntity","biolink:PlanetaryEntity"]] = Field(["biolink:PlanetaryEntity"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. @@ -1852,6 +1992,7 @@ class EnvironmentalProcess(PlanetaryEntity, Occurrent): provided_by: Optional[List[str]] = Field(None, description="""The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.""") xref: Optional[List[str]] = Field(default_factory=list, description="""A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.""") full_name: Optional[str] = Field(None, description="""a long-form human readable name for a thing""") + synonym: Optional[List[str]] = Field(default_factory=list, description="""Alternate human-readable names for a thing""") id: str = Field(..., description="""A unique identifier for an entity. Must be either a CURIE shorthand for a URI or a complete URI""") iri: Optional[str] = Field(None, description="""An IRI for an entity. This is determined by the id using expansion rules.""") category: List[Literal["https://w3id.org/biolink/vocab/EnvironmentalProcess","biolink:EnvironmentalProcess"]] = Field(["biolink:EnvironmentalProcess"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. @@ -1871,6 +2012,7 @@ class EnvironmentalFeature(PlanetaryEntity): provided_by: Optional[List[str]] = Field(None, description="""The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.""") xref: Optional[List[str]] = Field(default_factory=list, description="""A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.""") full_name: Optional[str] = Field(None, description="""a long-form human readable name for a thing""") + synonym: Optional[List[str]] = Field(default_factory=list, description="""Alternate human-readable names for a thing""") id: str = Field(..., description="""A unique identifier for an entity. Must be either a CURIE shorthand for a URI or a complete URI""") iri: Optional[str] = Field(None, description="""An IRI for an entity. This is determined by the id using expansion rules.""") category: List[Literal["https://w3id.org/biolink/vocab/EnvironmentalFeature","biolink:EnvironmentalFeature"]] = Field(["biolink:EnvironmentalFeature"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. @@ -1894,6 +2036,7 @@ class GeographicLocation(PlanetaryEntity): provided_by: Optional[List[str]] = Field(None, description="""The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.""") xref: Optional[List[str]] = Field(default_factory=list, description="""A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.""") full_name: Optional[str] = Field(None, description="""a long-form human readable name for a thing""") + synonym: Optional[List[str]] = Field(default_factory=list, description="""Alternate human-readable names for a thing""") id: str = Field(..., description="""A unique identifier for an entity. Must be either a CURIE shorthand for a URI or a complete URI""") iri: Optional[str] = Field(None, description="""An IRI for an entity. This is determined by the id using expansion rules.""") category: List[Literal["https://w3id.org/biolink/vocab/GeographicLocation","biolink:GeographicLocation"]] = Field(["biolink:GeographicLocation"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. @@ -1918,6 +2061,7 @@ class GeographicLocationAtTime(GeographicLocation): provided_by: Optional[List[str]] = Field(None, description="""The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.""") xref: Optional[List[str]] = Field(default_factory=list, description="""A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.""") full_name: Optional[str] = Field(None, description="""a long-form human readable name for a thing""") + synonym: Optional[List[str]] = Field(default_factory=list, description="""Alternate human-readable names for a thing""") id: str = Field(..., description="""A unique identifier for an entity. Must be either a CURIE shorthand for a URI or a complete URI""") iri: Optional[str] = Field(None, description="""An IRI for an entity. This is determined by the id using expansion rules.""") category: List[Literal["https://w3id.org/biolink/vocab/GeographicLocationAtTime","biolink:GeographicLocationAtTime"]] = Field(["biolink:GeographicLocationAtTime"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. @@ -1941,6 +2085,58 @@ class ThingWithTaxon(ConfiguredBaseModel): +class GenomeAssembly(ThingWithTaxon, NamedThing): + """ + Genome assembly to contain version and label information + """ + version: Optional[str] = Field(None) + strain: Optional[str] = Field(None, description="""The genetic variant or subtype of a species or organism.""") + in_taxon: Optional[List[str]] = Field(None, description="""connects an entity to its taxonomic classification. Only certain kinds of entities can be taxonomically classified; see 'thing with taxon'""") + in_taxon_label: Optional[str] = Field(None, description="""The human readable scientific name for the taxon of the entity.""") + provided_by: Optional[List[str]] = Field(None, description="""The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.""") + xref: Optional[List[str]] = Field(default_factory=list, description="""A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.""") + full_name: Optional[str] = Field(None, description="""a long-form human readable name for a thing""") + synonym: Optional[List[str]] = Field(default_factory=list, description="""Alternate human-readable names for a thing""") + id: str = Field(..., description="""A unique identifier for an entity. Must be either a CURIE shorthand for a URI or a complete URI""") + iri: Optional[str] = Field(None, description="""An IRI for an entity. This is determined by the id using expansion rules.""") + category: List[Literal["https://identifiers.org/brain-bican/vocab/GenomeAssembly","bican:GenomeAssembly"]] = Field(["bican:GenomeAssembly"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. + * In a neo4j database this MAY correspond to the neo4j label tag. + * In an RDF database it should be a biolink model class URI. +This field is multi-valued. It should include values for ancestors of the biolink class; for example, a protein such as Shh would have category values `biolink:Protein`, `biolink:GeneProduct`, `biolink:MolecularEntity`, ... +In an RDF database, nodes will typically have an rdf:type triples. This can be to the most specific biolink class, or potentially to a class more specific than something in biolink. For example, a sequence feature `f` may have a rdf:type assertion to a SO class such as TF_binding_site, which is more specific than anything in biolink. Here we would have categories {biolink:GenomicEntity, biolink:MolecularEntity, biolink:NamedThing}""") + type: Optional[List[str]] = Field(default_factory=list) + name: Optional[str] = Field(None, description="""A human-readable name for an attribute or entity.""") + description: Optional[str] = Field(None, description="""a human-readable description of an entity""") + has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") + + + +class Donor(ThingWithTaxon, Entity): + """ + A person or organism that is the source of a biological sample. + """ + label: Optional[str] = Field(None, description="""The name of the object.""") + sex: Optional[SexType] = Field(None) + date_of_birth: Optional[date] = Field(None, description="""The date of birth of the donor.""") + date_of_death: Optional[date] = Field(None, description="""The date of death of the donor.""") + age_at_death: Optional[int] = Field(None, description="""The age of the donor at the time of death.""") + full_genotype: Optional[str] = Field(None, description="""The full genotype of the donor.""") + in_taxon: Optional[List[str]] = Field(None, description="""connects an entity to its taxonomic classification. Only certain kinds of entities can be taxonomically classified; see 'thing with taxon'""") + in_taxon_label: Optional[str] = Field(None, description="""The human readable scientific name for the taxon of the entity.""") + id: str = Field(..., description="""A unique identifier for an entity. Must be either a CURIE shorthand for a URI or a complete URI""") + iri: Optional[str] = Field(None, description="""An IRI for an entity. This is determined by the id using expansion rules.""") + category: List[Literal["https://identifiers.org/brain-bican/vocab/Donor","bican:Donor"]] = Field(["bican:Donor"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. + * In a neo4j database this MAY correspond to the neo4j label tag. + * In an RDF database it should be a biolink model class URI. +This field is multi-valued. It should include values for ancestors of the biolink class; for example, a protein such as Shh would have category values `biolink:Protein`, `biolink:GeneProduct`, `biolink:MolecularEntity`, ... +In an RDF database, nodes will typically have an rdf:type triples. This can be to the most specific biolink class, or potentially to a class more specific than something in biolink. For example, a sequence feature `f` may have a rdf:type assertion to a SO class such as TF_binding_site, which is more specific than anything in biolink. Here we would have categories {biolink:GenomicEntity, biolink:MolecularEntity, biolink:NamedThing}""") + type: Optional[List[str]] = Field(default_factory=list) + name: Optional[str] = Field(None, description="""A human-readable name for an attribute or entity.""") + description: Optional[str] = Field(None, description="""a human-readable description of an entity""") + has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") + + + class BiologicalEntity(ThingWithTaxon, NamedThing): in_taxon: Optional[List[str]] = Field(None, description="""connects an entity to its taxonomic classification. Only certain kinds of entities can be taxonomically classified; see 'thing with taxon'""") @@ -1948,6 +2144,7 @@ class BiologicalEntity(ThingWithTaxon, NamedThing): provided_by: Optional[List[str]] = Field(None, description="""The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.""") xref: Optional[List[str]] = Field(default_factory=list, description="""A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.""") full_name: Optional[str] = Field(None, description="""a long-form human readable name for a thing""") + synonym: Optional[List[str]] = Field(default_factory=list, description="""Alternate human-readable names for a thing""") id: str = Field(..., description="""A unique identifier for an entity. Must be either a CURIE shorthand for a URI or a complete URI""") iri: Optional[str] = Field(None, description="""An IRI for an entity. This is determined by the id using expansion rules.""") category: List[Literal["https://w3id.org/biolink/vocab/BiologicalEntity","biolink:BiologicalEntity"]] = Field(["biolink:BiologicalEntity"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. @@ -1987,6 +2184,7 @@ class BiologicalProcessOrActivity(BiologicalEntity, Occurrent, OntologyClass): provided_by: Optional[List[str]] = Field(None, description="""The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.""") xref: Optional[List[str]] = Field(default_factory=list, description="""A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.""") full_name: Optional[str] = Field(None, description="""a long-form human readable name for a thing""") + synonym: Optional[List[str]] = Field(default_factory=list, description="""Alternate human-readable names for a thing""") iri: Optional[str] = Field(None, description="""An IRI for an entity. This is determined by the id using expansion rules.""") category: List[Literal["https://w3id.org/biolink/vocab/BiologicalProcessOrActivity","biolink:BiologicalProcessOrActivity"]] = Field(["biolink:BiologicalProcessOrActivity"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. * In a neo4j database this MAY correspond to the neo4j label tag. @@ -2013,6 +2211,7 @@ class MolecularActivity(BiologicalProcessOrActivity, Occurrent, OntologyClass): provided_by: Optional[List[str]] = Field(None, description="""The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.""") xref: Optional[List[str]] = Field(default_factory=list, description="""A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.""") full_name: Optional[str] = Field(None, description="""a long-form human readable name for a thing""") + synonym: Optional[List[str]] = Field(default_factory=list, description="""Alternate human-readable names for a thing""") iri: Optional[str] = Field(None, description="""An IRI for an entity. This is determined by the id using expansion rules.""") category: List[Literal["https://w3id.org/biolink/vocab/MolecularActivity","biolink:MolecularActivity"]] = Field(["biolink:MolecularActivity"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. * In a neo4j database this MAY correspond to the neo4j label tag. @@ -2039,6 +2238,7 @@ class BiologicalProcess(BiologicalProcessOrActivity, Occurrent, OntologyClass): provided_by: Optional[List[str]] = Field(None, description="""The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.""") xref: Optional[List[str]] = Field(default_factory=list, description="""A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.""") full_name: Optional[str] = Field(None, description="""a long-form human readable name for a thing""") + synonym: Optional[List[str]] = Field(default_factory=list, description="""Alternate human-readable names for a thing""") iri: Optional[str] = Field(None, description="""An IRI for an entity. This is determined by the id using expansion rules.""") category: List[Literal["https://w3id.org/biolink/vocab/BiologicalProcess","biolink:BiologicalProcess"]] = Field(["biolink:BiologicalProcess"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. * In a neo4j database this MAY correspond to the neo4j label tag. @@ -2063,6 +2263,7 @@ class Pathway(BiologicalProcess, OntologyClass): provided_by: Optional[List[str]] = Field(None, description="""The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.""") xref: Optional[List[str]] = Field(default_factory=list, description="""A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.""") full_name: Optional[str] = Field(None, description="""a long-form human readable name for a thing""") + synonym: Optional[List[str]] = Field(default_factory=list, description="""Alternate human-readable names for a thing""") iri: Optional[str] = Field(None, description="""An IRI for an entity. This is determined by the id using expansion rules.""") category: List[Literal["https://w3id.org/biolink/vocab/Pathway","biolink:Pathway"]] = Field(["biolink:Pathway"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. * In a neo4j database this MAY correspond to the neo4j label tag. @@ -2087,6 +2288,7 @@ class PhysiologicalProcess(BiologicalProcess, OntologyClass): provided_by: Optional[List[str]] = Field(None, description="""The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.""") xref: Optional[List[str]] = Field(default_factory=list, description="""A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.""") full_name: Optional[str] = Field(None, description="""a long-form human readable name for a thing""") + synonym: Optional[List[str]] = Field(default_factory=list, description="""Alternate human-readable names for a thing""") iri: Optional[str] = Field(None, description="""An IRI for an entity. This is determined by the id using expansion rules.""") category: List[Literal["https://w3id.org/biolink/vocab/PhysiologicalProcess","biolink:PhysiologicalProcess"]] = Field(["biolink:PhysiologicalProcess"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. * In a neo4j database this MAY correspond to the neo4j label tag. @@ -2111,6 +2313,7 @@ class Behavior(BiologicalProcess, ActivityAndBehavior, OntologyClass): provided_by: Optional[List[str]] = Field(None, description="""The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.""") xref: Optional[List[str]] = Field(default_factory=list, description="""A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.""") full_name: Optional[str] = Field(None, description="""a long-form human readable name for a thing""") + synonym: Optional[List[str]] = Field(default_factory=list, description="""Alternate human-readable names for a thing""") iri: Optional[str] = Field(None, description="""An IRI for an entity. This is determined by the id using expansion rules.""") category: List[Literal["https://w3id.org/biolink/vocab/Behavior","biolink:Behavior"]] = Field(["biolink:Behavior"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. * In a neo4j database this MAY correspond to the neo4j label tag. @@ -2137,6 +2340,7 @@ class OrganismAttribute(Attribute): provided_by: Optional[List[str]] = Field(None, description="""The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.""") xref: Optional[List[str]] = Field(default_factory=list, description="""A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.""") full_name: Optional[str] = Field(None, description="""a long-form human readable name for a thing""") + synonym: Optional[List[str]] = Field(default_factory=list, description="""Alternate human-readable names for a thing""") category: List[Literal["https://w3id.org/biolink/vocab/OrganismAttribute","biolink:OrganismAttribute"]] = Field(["biolink:OrganismAttribute"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. * In a neo4j database this MAY correspond to the neo4j label tag. * In an RDF database it should be a biolink model class URI. @@ -2161,6 +2365,7 @@ class PhenotypicQuality(OrganismAttribute): provided_by: Optional[List[str]] = Field(None, description="""The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.""") xref: Optional[List[str]] = Field(default_factory=list, description="""A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.""") full_name: Optional[str] = Field(None, description="""a long-form human readable name for a thing""") + synonym: Optional[List[str]] = Field(default_factory=list, description="""Alternate human-readable names for a thing""") category: List[Literal["https://w3id.org/biolink/vocab/PhenotypicQuality","biolink:PhenotypicQuality"]] = Field(["biolink:PhenotypicQuality"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. * In a neo4j database this MAY correspond to the neo4j label tag. * In an RDF database it should be a biolink model class URI. @@ -2181,6 +2386,7 @@ class GeneticInheritance(BiologicalEntity): provided_by: Optional[List[str]] = Field(None, description="""The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.""") xref: Optional[List[str]] = Field(default_factory=list, description="""A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.""") full_name: Optional[str] = Field(None, description="""a long-form human readable name for a thing""") + synonym: Optional[List[str]] = Field(default_factory=list, description="""Alternate human-readable names for a thing""") id: str = Field(..., description="""A unique identifier for an entity. Must be either a CURIE shorthand for a URI or a complete URI""") iri: Optional[str] = Field(None, description="""An IRI for an entity. This is determined by the id using expansion rules.""") category: List[Literal["https://w3id.org/biolink/vocab/GeneticInheritance","biolink:GeneticInheritance"]] = Field(["biolink:GeneticInheritance"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. @@ -2204,6 +2410,7 @@ class OrganismalEntity(BiologicalEntity, SubjectOfInvestigation): provided_by: Optional[List[str]] = Field(None, description="""The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.""") xref: Optional[List[str]] = Field(default_factory=list, description="""A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.""") full_name: Optional[str] = Field(None, description="""a long-form human readable name for a thing""") + synonym: Optional[List[str]] = Field(default_factory=list, description="""Alternate human-readable names for a thing""") id: str = Field(..., description="""A unique identifier for an entity. Must be either a CURIE shorthand for a URI or a complete URI""") iri: Optional[str] = Field(None, description="""An IRI for an entity. This is determined by the id using expansion rules.""") category: List[Literal["https://w3id.org/biolink/vocab/OrganismalEntity","biolink:OrganismalEntity"]] = Field(["biolink:OrganismalEntity"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. @@ -2227,6 +2434,7 @@ class Bacterium(OrganismalEntity): provided_by: Optional[List[str]] = Field(None, description="""The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.""") xref: Optional[List[str]] = Field(default_factory=list, description="""A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.""") full_name: Optional[str] = Field(None, description="""a long-form human readable name for a thing""") + synonym: Optional[List[str]] = Field(default_factory=list, description="""Alternate human-readable names for a thing""") id: str = Field(..., description="""A unique identifier for an entity. Must be either a CURIE shorthand for a URI or a complete URI""") iri: Optional[str] = Field(None, description="""An IRI for an entity. This is determined by the id using expansion rules.""") category: List[Literal["https://w3id.org/biolink/vocab/Bacterium","biolink:Bacterium"]] = Field(["biolink:Bacterium"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. @@ -2250,6 +2458,7 @@ class Virus(OrganismalEntity, SubjectOfInvestigation): provided_by: Optional[List[str]] = Field(None, description="""The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.""") xref: Optional[List[str]] = Field(default_factory=list, description="""A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.""") full_name: Optional[str] = Field(None, description="""a long-form human readable name for a thing""") + synonym: Optional[List[str]] = Field(default_factory=list, description="""Alternate human-readable names for a thing""") id: str = Field(..., description="""A unique identifier for an entity. Must be either a CURIE shorthand for a URI or a complete URI""") iri: Optional[str] = Field(None, description="""An IRI for an entity. This is determined by the id using expansion rules.""") category: List[Literal["https://w3id.org/biolink/vocab/Virus","biolink:Virus"]] = Field(["biolink:Virus"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. @@ -2271,6 +2480,7 @@ class CellularOrganism(OrganismalEntity, SubjectOfInvestigation): provided_by: Optional[List[str]] = Field(None, description="""The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.""") xref: Optional[List[str]] = Field(default_factory=list, description="""A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.""") full_name: Optional[str] = Field(None, description="""a long-form human readable name for a thing""") + synonym: Optional[List[str]] = Field(default_factory=list, description="""Alternate human-readable names for a thing""") id: str = Field(..., description="""A unique identifier for an entity. Must be either a CURIE shorthand for a URI or a complete URI""") iri: Optional[str] = Field(None, description="""An IRI for an entity. This is determined by the id using expansion rules.""") category: List[Literal["https://w3id.org/biolink/vocab/CellularOrganism","biolink:CellularOrganism"]] = Field(["biolink:CellularOrganism"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. @@ -2294,6 +2504,7 @@ class Mammal(CellularOrganism, SubjectOfInvestigation): provided_by: Optional[List[str]] = Field(None, description="""The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.""") xref: Optional[List[str]] = Field(default_factory=list, description="""A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.""") full_name: Optional[str] = Field(None, description="""a long-form human readable name for a thing""") + synonym: Optional[List[str]] = Field(default_factory=list, description="""Alternate human-readable names for a thing""") id: str = Field(..., description="""A unique identifier for an entity. Must be either a CURIE shorthand for a URI or a complete URI""") iri: Optional[str] = Field(None, description="""An IRI for an entity. This is determined by the id using expansion rules.""") category: List[Literal["https://w3id.org/biolink/vocab/Mammal","biolink:Mammal"]] = Field(["biolink:Mammal"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. @@ -2317,6 +2528,7 @@ class Human(Mammal, SubjectOfInvestigation): provided_by: Optional[List[str]] = Field(None, description="""The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.""") xref: Optional[List[str]] = Field(default_factory=list, description="""A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.""") full_name: Optional[str] = Field(None, description="""a long-form human readable name for a thing""") + synonym: Optional[List[str]] = Field(default_factory=list, description="""Alternate human-readable names for a thing""") id: str = Field(..., description="""A unique identifier for an entity. Must be either a CURIE shorthand for a URI or a complete URI""") iri: Optional[str] = Field(None, description="""An IRI for an entity. This is determined by the id using expansion rules.""") category: List[Literal["https://w3id.org/biolink/vocab/Human","biolink:Human"]] = Field(["biolink:Human"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. @@ -2338,6 +2550,7 @@ class Plant(CellularOrganism): provided_by: Optional[List[str]] = Field(None, description="""The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.""") xref: Optional[List[str]] = Field(default_factory=list, description="""A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.""") full_name: Optional[str] = Field(None, description="""a long-form human readable name for a thing""") + synonym: Optional[List[str]] = Field(default_factory=list, description="""Alternate human-readable names for a thing""") id: str = Field(..., description="""A unique identifier for an entity. Must be either a CURIE shorthand for a URI or a complete URI""") iri: Optional[str] = Field(None, description="""An IRI for an entity. This is determined by the id using expansion rules.""") category: List[Literal["https://w3id.org/biolink/vocab/Plant","biolink:Plant"]] = Field(["biolink:Plant"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. @@ -2361,6 +2574,7 @@ class Invertebrate(CellularOrganism): provided_by: Optional[List[str]] = Field(None, description="""The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.""") xref: Optional[List[str]] = Field(default_factory=list, description="""A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.""") full_name: Optional[str] = Field(None, description="""a long-form human readable name for a thing""") + synonym: Optional[List[str]] = Field(default_factory=list, description="""Alternate human-readable names for a thing""") id: str = Field(..., description="""A unique identifier for an entity. Must be either a CURIE shorthand for a URI or a complete URI""") iri: Optional[str] = Field(None, description="""An IRI for an entity. This is determined by the id using expansion rules.""") category: List[Literal["https://w3id.org/biolink/vocab/Invertebrate","biolink:Invertebrate"]] = Field(["biolink:Invertebrate"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. @@ -2384,6 +2598,7 @@ class Vertebrate(CellularOrganism): provided_by: Optional[List[str]] = Field(None, description="""The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.""") xref: Optional[List[str]] = Field(default_factory=list, description="""A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.""") full_name: Optional[str] = Field(None, description="""a long-form human readable name for a thing""") + synonym: Optional[List[str]] = Field(default_factory=list, description="""Alternate human-readable names for a thing""") id: str = Field(..., description="""A unique identifier for an entity. Must be either a CURIE shorthand for a URI or a complete URI""") iri: Optional[str] = Field(None, description="""An IRI for an entity. This is determined by the id using expansion rules.""") category: List[Literal["https://w3id.org/biolink/vocab/Vertebrate","biolink:Vertebrate"]] = Field(["biolink:Vertebrate"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. @@ -2407,6 +2622,7 @@ class Fungus(CellularOrganism): provided_by: Optional[List[str]] = Field(None, description="""The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.""") xref: Optional[List[str]] = Field(default_factory=list, description="""A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.""") full_name: Optional[str] = Field(None, description="""a long-form human readable name for a thing""") + synonym: Optional[List[str]] = Field(default_factory=list, description="""Alternate human-readable names for a thing""") id: str = Field(..., description="""A unique identifier for an entity. Must be either a CURIE shorthand for a URI or a complete URI""") iri: Optional[str] = Field(None, description="""An IRI for an entity. This is determined by the id using expansion rules.""") category: List[Literal["https://w3id.org/biolink/vocab/Fungus","biolink:Fungus"]] = Field(["biolink:Fungus"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. @@ -2430,6 +2646,7 @@ class LifeStage(OrganismalEntity): provided_by: Optional[List[str]] = Field(None, description="""The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.""") xref: Optional[List[str]] = Field(default_factory=list, description="""A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.""") full_name: Optional[str] = Field(None, description="""a long-form human readable name for a thing""") + synonym: Optional[List[str]] = Field(default_factory=list, description="""Alternate human-readable names for a thing""") id: str = Field(..., description="""A unique identifier for an entity. Must be either a CURIE shorthand for a URI or a complete URI""") iri: Optional[str] = Field(None, description="""An IRI for an entity. This is determined by the id using expansion rules.""") category: List[Literal["https://w3id.org/biolink/vocab/LifeStage","biolink:LifeStage"]] = Field(["biolink:LifeStage"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. @@ -2453,6 +2670,7 @@ class IndividualOrganism(OrganismalEntity, SubjectOfInvestigation): provided_by: Optional[List[str]] = Field(None, description="""The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.""") xref: Optional[List[str]] = Field(default_factory=list, description="""A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.""") full_name: Optional[str] = Field(None, description="""a long-form human readable name for a thing""") + synonym: Optional[List[str]] = Field(default_factory=list, description="""Alternate human-readable names for a thing""") id: str = Field(..., description="""A unique identifier for an entity. Must be either a CURIE shorthand for a URI or a complete URI""") iri: Optional[str] = Field(None, description="""An IRI for an entity. This is determined by the id using expansion rules.""") category: List[Literal["https://w3id.org/biolink/vocab/IndividualOrganism","biolink:IndividualOrganism"]] = Field(["biolink:IndividualOrganism"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. @@ -2476,6 +2694,7 @@ class PopulationOfIndividualOrganisms(OrganismalEntity, SubjectOfInvestigation): provided_by: Optional[List[str]] = Field(None, description="""The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.""") xref: Optional[List[str]] = Field(default_factory=list, description="""A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.""") full_name: Optional[str] = Field(None, description="""a long-form human readable name for a thing""") + synonym: Optional[List[str]] = Field(default_factory=list, description="""Alternate human-readable names for a thing""") id: str = Field(..., description="""A unique identifier for an entity. Must be either a CURIE shorthand for a URI or a complete URI""") iri: Optional[str] = Field(None, description="""An IRI for an entity. This is determined by the id using expansion rules.""") category: List[Literal["https://w3id.org/biolink/vocab/PopulationOfIndividualOrganisms","biolink:PopulationOfIndividualOrganisms"]] = Field(["biolink:PopulationOfIndividualOrganisms"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. @@ -2499,6 +2718,7 @@ class StudyPopulation(PopulationOfIndividualOrganisms): provided_by: Optional[List[str]] = Field(None, description="""The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.""") xref: Optional[List[str]] = Field(default_factory=list, description="""A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.""") full_name: Optional[str] = Field(None, description="""a long-form human readable name for a thing""") + synonym: Optional[List[str]] = Field(default_factory=list, description="""Alternate human-readable names for a thing""") id: str = Field(..., description="""A unique identifier for an entity. Must be either a CURIE shorthand for a URI or a complete URI""") iri: Optional[str] = Field(None, description="""An IRI for an entity. This is determined by the id using expansion rules.""") category: List[Literal["https://w3id.org/biolink/vocab/StudyPopulation","biolink:StudyPopulation"]] = Field(["biolink:StudyPopulation"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. @@ -2522,6 +2742,7 @@ class DiseaseOrPhenotypicFeature(BiologicalEntity): provided_by: Optional[List[str]] = Field(None, description="""The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.""") xref: Optional[List[str]] = Field(default_factory=list, description="""A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.""") full_name: Optional[str] = Field(None, description="""a long-form human readable name for a thing""") + synonym: Optional[List[str]] = Field(default_factory=list, description="""Alternate human-readable names for a thing""") id: str = Field(..., description="""A unique identifier for an entity. Must be either a CURIE shorthand for a URI or a complete URI""") iri: Optional[str] = Field(None, description="""An IRI for an entity. This is determined by the id using expansion rules.""") category: List[Literal["https://w3id.org/biolink/vocab/DiseaseOrPhenotypicFeature","biolink:DiseaseOrPhenotypicFeature"]] = Field(["biolink:DiseaseOrPhenotypicFeature"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. @@ -2545,6 +2766,7 @@ class Disease(DiseaseOrPhenotypicFeature): provided_by: Optional[List[str]] = Field(None, description="""The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.""") xref: Optional[List[str]] = Field(default_factory=list, description="""A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.""") full_name: Optional[str] = Field(None, description="""a long-form human readable name for a thing""") + synonym: Optional[List[str]] = Field(default_factory=list, description="""Alternate human-readable names for a thing""") id: str = Field(..., description="""A unique identifier for an entity. Must be either a CURIE shorthand for a URI or a complete URI""") iri: Optional[str] = Field(None, description="""An IRI for an entity. This is determined by the id using expansion rules.""") category: List[Literal["https://w3id.org/biolink/vocab/Disease","biolink:Disease"]] = Field(["biolink:Disease"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. @@ -2568,6 +2790,7 @@ class PhenotypicFeature(DiseaseOrPhenotypicFeature): provided_by: Optional[List[str]] = Field(None, description="""The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.""") xref: Optional[List[str]] = Field(default_factory=list, description="""A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.""") full_name: Optional[str] = Field(None, description="""a long-form human readable name for a thing""") + synonym: Optional[List[str]] = Field(default_factory=list, description="""Alternate human-readable names for a thing""") id: str = Field(..., description="""A unique identifier for an entity. Must be either a CURIE shorthand for a URI or a complete URI""") iri: Optional[str] = Field(None, description="""An IRI for an entity. This is determined by the id using expansion rules.""") category: List[Literal["https://w3id.org/biolink/vocab/PhenotypicFeature","biolink:PhenotypicFeature"]] = Field(["biolink:PhenotypicFeature"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. @@ -2591,6 +2814,7 @@ class BehavioralFeature(PhenotypicFeature): provided_by: Optional[List[str]] = Field(None, description="""The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.""") xref: Optional[List[str]] = Field(default_factory=list, description="""A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.""") full_name: Optional[str] = Field(None, description="""a long-form human readable name for a thing""") + synonym: Optional[List[str]] = Field(default_factory=list, description="""Alternate human-readable names for a thing""") id: str = Field(..., description="""A unique identifier for an entity. Must be either a CURIE shorthand for a URI or a complete URI""") iri: Optional[str] = Field(None, description="""An IRI for an entity. This is determined by the id using expansion rules.""") category: List[Literal["https://w3id.org/biolink/vocab/BehavioralFeature","biolink:BehavioralFeature"]] = Field(["biolink:BehavioralFeature"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. @@ -2614,6 +2838,7 @@ class AnatomicalEntity(OrganismalEntity, PhysicalEssence): provided_by: Optional[List[str]] = Field(None, description="""The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.""") xref: Optional[List[str]] = Field(default_factory=list, description="""A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.""") full_name: Optional[str] = Field(None, description="""a long-form human readable name for a thing""") + synonym: Optional[List[str]] = Field(default_factory=list, description="""Alternate human-readable names for a thing""") id: str = Field(..., description="""A unique identifier for an entity. Must be either a CURIE shorthand for a URI or a complete URI""") iri: Optional[str] = Field(None, description="""An IRI for an entity. This is determined by the id using expansion rules.""") category: List[Literal["https://w3id.org/biolink/vocab/AnatomicalEntity","biolink:AnatomicalEntity"]] = Field(["biolink:AnatomicalEntity"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. @@ -2637,6 +2862,7 @@ class CellularComponent(AnatomicalEntity): provided_by: Optional[List[str]] = Field(None, description="""The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.""") xref: Optional[List[str]] = Field(default_factory=list, description="""A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.""") full_name: Optional[str] = Field(None, description="""a long-form human readable name for a thing""") + synonym: Optional[List[str]] = Field(default_factory=list, description="""Alternate human-readable names for a thing""") id: str = Field(..., description="""A unique identifier for an entity. Must be either a CURIE shorthand for a URI or a complete URI""") iri: Optional[str] = Field(None, description="""An IRI for an entity. This is determined by the id using expansion rules.""") category: List[Literal["https://w3id.org/biolink/vocab/CellularComponent","biolink:CellularComponent"]] = Field(["biolink:CellularComponent"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. @@ -2658,6 +2884,7 @@ class Cell(AnatomicalEntity): provided_by: Optional[List[str]] = Field(None, description="""The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.""") xref: Optional[List[str]] = Field(default_factory=list, description="""A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.""") full_name: Optional[str] = Field(None, description="""a long-form human readable name for a thing""") + synonym: Optional[List[str]] = Field(default_factory=list, description="""Alternate human-readable names for a thing""") id: str = Field(..., description="""A unique identifier for an entity. Must be either a CURIE shorthand for a URI or a complete URI""") iri: Optional[str] = Field(None, description="""An IRI for an entity. This is determined by the id using expansion rules.""") category: List[Literal["https://w3id.org/biolink/vocab/Cell","biolink:Cell"]] = Field(["biolink:Cell"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. @@ -2679,6 +2906,7 @@ class CellLine(OrganismalEntity, SubjectOfInvestigation): provided_by: Optional[List[str]] = Field(None, description="""The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.""") xref: Optional[List[str]] = Field(default_factory=list, description="""A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.""") full_name: Optional[str] = Field(None, description="""a long-form human readable name for a thing""") + synonym: Optional[List[str]] = Field(default_factory=list, description="""Alternate human-readable names for a thing""") id: str = Field(..., description="""A unique identifier for an entity. Must be either a CURIE shorthand for a URI or a complete URI""") iri: Optional[str] = Field(None, description="""An IRI for an entity. This is determined by the id using expansion rules.""") category: List[Literal["https://w3id.org/biolink/vocab/CellLine","biolink:CellLine"]] = Field(["biolink:CellLine"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. @@ -2700,6 +2928,7 @@ class GrossAnatomicalStructure(AnatomicalEntity): provided_by: Optional[List[str]] = Field(None, description="""The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.""") xref: Optional[List[str]] = Field(default_factory=list, description="""A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.""") full_name: Optional[str] = Field(None, description="""a long-form human readable name for a thing""") + synonym: Optional[List[str]] = Field(default_factory=list, description="""Alternate human-readable names for a thing""") id: str = Field(..., description="""A unique identifier for an entity. Must be either a CURIE shorthand for a URI or a complete URI""") iri: Optional[str] = Field(None, description="""An IRI for an entity. This is determined by the id using expansion rules.""") category: List[Literal["https://w3id.org/biolink/vocab/GrossAnatomicalStructure","biolink:GrossAnatomicalStructure"]] = Field(["biolink:GrossAnatomicalStructure"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. @@ -2733,6 +2962,7 @@ class RegulatoryRegion(ChemicalEntityOrGeneOrGeneProduct, GenomicEntity, Biologi provided_by: Optional[List[str]] = Field(None, description="""The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.""") xref: Optional[List[str]] = Field(default_factory=list, description="""A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.""") full_name: Optional[str] = Field(None, description="""a long-form human readable name for a thing""") + synonym: Optional[List[str]] = Field(default_factory=list, description="""Alternate human-readable names for a thing""") iri: Optional[str] = Field(None, description="""An IRI for an entity. This is determined by the id using expansion rules.""") category: List[Literal["https://w3id.org/biolink/vocab/RegulatoryRegion","biolink:RegulatoryRegion"]] = Field(["biolink:RegulatoryRegion"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. * In a neo4j database this MAY correspond to the neo4j label tag. @@ -2757,6 +2987,7 @@ class AccessibleDnaRegion(RegulatoryRegion, ChemicalEntityOrGeneOrGeneProduct, G provided_by: Optional[List[str]] = Field(None, description="""The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.""") xref: Optional[List[str]] = Field(default_factory=list, description="""A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.""") full_name: Optional[str] = Field(None, description="""a long-form human readable name for a thing""") + synonym: Optional[List[str]] = Field(default_factory=list, description="""Alternate human-readable names for a thing""") iri: Optional[str] = Field(None, description="""An IRI for an entity. This is determined by the id using expansion rules.""") category: List[Literal["https://w3id.org/biolink/vocab/AccessibleDnaRegion","biolink:AccessibleDnaRegion"]] = Field(["biolink:AccessibleDnaRegion"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. * In a neo4j database this MAY correspond to the neo4j label tag. @@ -2781,6 +3012,7 @@ class TranscriptionFactorBindingSite(RegulatoryRegion, ChemicalEntityOrGeneOrGen provided_by: Optional[List[str]] = Field(None, description="""The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.""") xref: Optional[List[str]] = Field(default_factory=list, description="""A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.""") full_name: Optional[str] = Field(None, description="""a long-form human readable name for a thing""") + synonym: Optional[List[str]] = Field(default_factory=list, description="""Alternate human-readable names for a thing""") iri: Optional[str] = Field(None, description="""An IRI for an entity. This is determined by the id using expansion rules.""") category: List[Literal["https://w3id.org/biolink/vocab/TranscriptionFactorBindingSite","biolink:TranscriptionFactorBindingSite"]] = Field(["biolink:TranscriptionFactorBindingSite"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. * In a neo4j database this MAY correspond to the neo4j label tag. @@ -2814,6 +3046,7 @@ class ChemicalEntity(ChemicalEntityOrProteinOrPolypeptide, ChemicalEntityOrGeneO provided_by: Optional[List[str]] = Field(None, description="""The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.""") xref: Optional[List[str]] = Field(default_factory=list, description="""A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.""") full_name: Optional[str] = Field(None, description="""a long-form human readable name for a thing""") + synonym: Optional[List[str]] = Field(default_factory=list, description="""Alternate human-readable names for a thing""") id: str = Field(..., description="""A unique identifier for an entity. Must be either a CURIE shorthand for a URI or a complete URI""") iri: Optional[str] = Field(None, description="""An IRI for an entity. This is determined by the id using expansion rules.""") category: List[Literal["https://w3id.org/biolink/vocab/ChemicalEntity","biolink:ChemicalEntity"]] = Field(["biolink:ChemicalEntity"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. @@ -2841,6 +3074,7 @@ class MolecularEntity(ChemicalEntity): provided_by: Optional[List[str]] = Field(None, description="""The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.""") xref: Optional[List[str]] = Field(default_factory=list, description="""A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.""") full_name: Optional[str] = Field(None, description="""a long-form human readable name for a thing""") + synonym: Optional[List[str]] = Field(default_factory=list, description="""Alternate human-readable names for a thing""") id: str = Field(..., description="""A unique identifier for an entity. Must be either a CURIE shorthand for a URI or a complete URI""") iri: Optional[str] = Field(None, description="""An IRI for an entity. This is determined by the id using expansion rules.""") category: List[Literal["https://w3id.org/biolink/vocab/MolecularEntity","biolink:MolecularEntity"]] = Field(["biolink:MolecularEntity"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. @@ -2868,6 +3102,7 @@ class SmallMolecule(MolecularEntity): provided_by: Optional[List[str]] = Field(None, description="""The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.""") xref: Optional[List[str]] = Field(default_factory=list, description="""A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.""") full_name: Optional[str] = Field(None, description="""a long-form human readable name for a thing""") + synonym: Optional[List[str]] = Field(default_factory=list, description="""Alternate human-readable names for a thing""") id: str = Field(..., description="""A unique identifier for an entity. Must be either a CURIE shorthand for a URI or a complete URI""") iri: Optional[str] = Field(None, description="""An IRI for an entity. This is determined by the id using expansion rules.""") category: List[Literal["https://w3id.org/biolink/vocab/SmallMolecule","biolink:SmallMolecule"]] = Field(["biolink:SmallMolecule"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. @@ -2898,6 +3133,7 @@ class ChemicalMixture(ChemicalEntity): provided_by: Optional[List[str]] = Field(None, description="""The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.""") xref: Optional[List[str]] = Field(default_factory=list, description="""A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.""") full_name: Optional[str] = Field(None, description="""a long-form human readable name for a thing""") + synonym: Optional[List[str]] = Field(default_factory=list, description="""Alternate human-readable names for a thing""") id: str = Field(..., description="""A unique identifier for an entity. Must be either a CURIE shorthand for a URI or a complete URI""") iri: Optional[str] = Field(None, description="""An IRI for an entity. This is determined by the id using expansion rules.""") category: List[Literal["https://w3id.org/biolink/vocab/ChemicalMixture","biolink:ChemicalMixture"]] = Field(["biolink:ChemicalMixture"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. @@ -2929,6 +3165,7 @@ class NucleicAcidEntity(MolecularEntity, GenomicEntity, ThingWithTaxon, Physical provided_by: Optional[List[str]] = Field(None, description="""The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.""") xref: Optional[List[str]] = Field(default_factory=list, description="""A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.""") full_name: Optional[str] = Field(None, description="""a long-form human readable name for a thing""") + synonym: Optional[List[str]] = Field(default_factory=list, description="""Alternate human-readable names for a thing""") iri: Optional[str] = Field(None, description="""An IRI for an entity. This is determined by the id using expansion rules.""") category: List[Literal["https://w3id.org/biolink/vocab/NucleicAcidEntity","biolink:NucleicAcidEntity"]] = Field(["biolink:NucleicAcidEntity"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. * In a neo4j database this MAY correspond to the neo4j label tag. @@ -2958,6 +3195,7 @@ class MolecularMixture(ChemicalMixture): provided_by: Optional[List[str]] = Field(None, description="""The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.""") xref: Optional[List[str]] = Field(default_factory=list, description="""A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.""") full_name: Optional[str] = Field(None, description="""a long-form human readable name for a thing""") + synonym: Optional[List[str]] = Field(default_factory=list, description="""Alternate human-readable names for a thing""") id: str = Field(..., description="""A unique identifier for an entity. Must be either a CURIE shorthand for a URI or a complete URI""") iri: Optional[str] = Field(None, description="""An IRI for an entity. This is determined by the id using expansion rules.""") category: List[Literal["https://w3id.org/biolink/vocab/MolecularMixture","biolink:MolecularMixture"]] = Field(["biolink:MolecularMixture"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. @@ -2988,6 +3226,7 @@ class ComplexMolecularMixture(ChemicalMixture): provided_by: Optional[List[str]] = Field(None, description="""The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.""") xref: Optional[List[str]] = Field(default_factory=list, description="""A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.""") full_name: Optional[str] = Field(None, description="""a long-form human readable name for a thing""") + synonym: Optional[List[str]] = Field(default_factory=list, description="""Alternate human-readable names for a thing""") id: str = Field(..., description="""A unique identifier for an entity. Must be either a CURIE shorthand for a URI or a complete URI""") iri: Optional[str] = Field(None, description="""An IRI for an entity. This is determined by the id using expansion rules.""") category: List[Literal["https://w3id.org/biolink/vocab/ComplexMolecularMixture","biolink:ComplexMolecularMixture"]] = Field(["biolink:ComplexMolecularMixture"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. @@ -3018,6 +3257,7 @@ class ProcessedMaterial(ChemicalMixture): provided_by: Optional[List[str]] = Field(None, description="""The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.""") xref: Optional[List[str]] = Field(default_factory=list, description="""A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.""") full_name: Optional[str] = Field(None, description="""a long-form human readable name for a thing""") + synonym: Optional[List[str]] = Field(default_factory=list, description="""Alternate human-readable names for a thing""") id: str = Field(..., description="""A unique identifier for an entity. Must be either a CURIE shorthand for a URI or a complete URI""") iri: Optional[str] = Field(None, description="""An IRI for an entity. This is determined by the id using expansion rules.""") category: List[Literal["https://w3id.org/biolink/vocab/ProcessedMaterial","biolink:ProcessedMaterial"]] = Field(["biolink:ProcessedMaterial"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. @@ -3049,6 +3289,7 @@ class Drug(MolecularMixture, ChemicalOrDrugOrTreatment, OntologyClass): provided_by: Optional[List[str]] = Field(None, description="""The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.""") xref: Optional[List[str]] = Field(default_factory=list, description="""A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.""") full_name: Optional[str] = Field(None, description="""a long-form human readable name for a thing""") + synonym: Optional[List[str]] = Field(default_factory=list, description="""Alternate human-readable names for a thing""") iri: Optional[str] = Field(None, description="""An IRI for an entity. This is determined by the id using expansion rules.""") category: List[Literal["https://w3id.org/biolink/vocab/Drug","biolink:Drug"]] = Field(["biolink:Drug"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. * In a neo4j database this MAY correspond to the neo4j label tag. @@ -3072,6 +3313,7 @@ class EnvironmentalFoodContaminant(ChemicalEntity): provided_by: Optional[List[str]] = Field(None, description="""The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.""") xref: Optional[List[str]] = Field(default_factory=list, description="""A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.""") full_name: Optional[str] = Field(None, description="""a long-form human readable name for a thing""") + synonym: Optional[List[str]] = Field(default_factory=list, description="""Alternate human-readable names for a thing""") id: str = Field(..., description="""A unique identifier for an entity. Must be either a CURIE shorthand for a URI or a complete URI""") iri: Optional[str] = Field(None, description="""An IRI for an entity. This is determined by the id using expansion rules.""") category: List[Literal["https://w3id.org/biolink/vocab/EnvironmentalFoodContaminant","biolink:EnvironmentalFoodContaminant"]] = Field(["biolink:EnvironmentalFoodContaminant"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. @@ -3096,6 +3338,7 @@ class FoodAdditive(ChemicalEntity): provided_by: Optional[List[str]] = Field(None, description="""The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.""") xref: Optional[List[str]] = Field(default_factory=list, description="""A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.""") full_name: Optional[str] = Field(None, description="""a long-form human readable name for a thing""") + synonym: Optional[List[str]] = Field(default_factory=list, description="""Alternate human-readable names for a thing""") id: str = Field(..., description="""A unique identifier for an entity. Must be either a CURIE shorthand for a URI or a complete URI""") iri: Optional[str] = Field(None, description="""An IRI for an entity. This is determined by the id using expansion rules.""") category: List[Literal["https://w3id.org/biolink/vocab/FoodAdditive","biolink:FoodAdditive"]] = Field(["biolink:FoodAdditive"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. @@ -3126,6 +3369,7 @@ class Food(ChemicalMixture): provided_by: Optional[List[str]] = Field(None, description="""The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.""") xref: Optional[List[str]] = Field(default_factory=list, description="""A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.""") full_name: Optional[str] = Field(None, description="""a long-form human readable name for a thing""") + synonym: Optional[List[str]] = Field(default_factory=list, description="""Alternate human-readable names for a thing""") id: str = Field(..., description="""A unique identifier for an entity. Must be either a CURIE shorthand for a URI or a complete URI""") iri: Optional[str] = Field(None, description="""An IRI for an entity. This is determined by the id using expansion rules.""") category: List[Literal["https://w3id.org/biolink/vocab/Food","biolink:Food"]] = Field(["biolink:Food"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. @@ -3161,7 +3405,6 @@ class Gene(GeneOrGeneProduct, ChemicalEntityOrGeneOrGeneProduct, GenomicEntity, A region (or regions) that includes all of the sequence elements necessary to encode a functional transcript. A gene locus may include regulatory regions, transcribed regions and/or other functional sequence regions. """ symbol: Optional[str] = Field(None, description="""Symbol for a particular thing""") - synonym: Optional[List[str]] = Field(default_factory=list, description="""Alternate human-readable names for a thing""") xref: Optional[List[str]] = Field(default_factory=list, description="""A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.""") has_biological_sequence: Optional[str] = Field(None, description="""connects a genomic feature to its sequence""") id: str = Field(..., description="""A unique identifier for an entity. Must be either a CURIE shorthand for a URI or a complete URI""") @@ -3169,6 +3412,7 @@ class Gene(GeneOrGeneProduct, ChemicalEntityOrGeneOrGeneProduct, GenomicEntity, in_taxon_label: Optional[str] = Field(None, description="""The human readable scientific name for the taxon of the entity.""") provided_by: Optional[List[str]] = Field(None, description="""The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.""") full_name: Optional[str] = Field(None, description="""a long-form human readable name for a thing""") + synonym: Optional[List[str]] = Field(default_factory=list, description="""Alternate human-readable names for a thing""") iri: Optional[str] = Field(None, description="""An IRI for an entity. This is determined by the id using expansion rules.""") category: List[Literal["https://w3id.org/biolink/vocab/Gene","biolink:Gene"]] = Field(["biolink:Gene"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. * In a neo4j database this MAY correspond to the neo4j label tag. @@ -3190,7 +3434,6 @@ class GeneAnnotation(Gene): molecular_type: Optional[BioType] = Field(None) source_id: Optional[str] = Field(None, description="""The authority specific identifier.""") symbol: Optional[str] = Field(None, description="""Symbol for a particular thing""") - synonym: Optional[List[str]] = Field(default_factory=list, description="""Alternate human-readable names for a thing""") xref: Optional[List[str]] = Field(default_factory=list, description="""A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.""") has_biological_sequence: Optional[str] = Field(None, description="""connects a genomic feature to its sequence""") id: str = Field(..., description="""A unique identifier for an entity. Must be either a CURIE shorthand for a URI or a complete URI""") @@ -3198,6 +3441,7 @@ class GeneAnnotation(Gene): in_taxon_label: Optional[str] = Field(None, description="""The human readable scientific name for the taxon of the entity.""") provided_by: Optional[List[str]] = Field(None, description="""The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.""") full_name: Optional[str] = Field(None, description="""a long-form human readable name for a thing""") + synonym: Optional[List[str]] = Field(default_factory=list, description="""Alternate human-readable names for a thing""") iri: Optional[str] = Field(None, description="""An IRI for an entity. This is determined by the id using expansion rules.""") category: List[Literal["https://identifiers.org/brain-bican/vocab/GeneAnnotation","bican:GeneAnnotation"]] = Field(["bican:GeneAnnotation"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. * In a neo4j database this MAY correspond to the neo4j label tag. @@ -3241,6 +3485,7 @@ class MacromolecularComplex(MacromolecularMachineMixin, BiologicalEntity): provided_by: Optional[List[str]] = Field(None, description="""The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.""") xref: Optional[List[str]] = Field(default_factory=list, description="""A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.""") full_name: Optional[str] = Field(None, description="""a long-form human readable name for a thing""") + synonym: Optional[List[str]] = Field(default_factory=list, description="""Alternate human-readable names for a thing""") id: str = Field(..., description="""A unique identifier for an entity. Must be either a CURIE shorthand for a URI or a complete URI""") iri: Optional[str] = Field(None, description="""An IRI for an entity. This is determined by the id using expansion rules.""") category: List[Literal["https://w3id.org/biolink/vocab/MacromolecularComplex","biolink:MacromolecularComplex"]] = Field(["biolink:MacromolecularComplex"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. @@ -3264,6 +3509,7 @@ class NucleosomeModification(GeneProductIsoformMixin, EpigenomicEntity, GenomicE provided_by: Optional[List[str]] = Field(None, description="""The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.""") xref: Optional[List[str]] = Field(default_factory=list, description="""A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.""") full_name: Optional[str] = Field(None, description="""a long-form human readable name for a thing""") + synonym: Optional[List[str]] = Field(default_factory=list, description="""Alternate human-readable names for a thing""") id: str = Field(..., description="""A unique identifier for an entity. Must be either a CURIE shorthand for a URI or a complete URI""") iri: Optional[str] = Field(None, description="""An IRI for an entity. This is determined by the id using expansion rules.""") category: List[Literal["https://w3id.org/biolink/vocab/NucleosomeModification","biolink:NucleosomeModification"]] = Field(["biolink:NucleosomeModification"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. @@ -3275,7 +3521,6 @@ class NucleosomeModification(GeneProductIsoformMixin, EpigenomicEntity, GenomicE name: Optional[str] = Field(None, description="""genes are typically designated by a short symbol and a full name. We map the symbol to the default display name and use an additional slot for full name""") description: Optional[str] = Field(None, description="""a human-readable description of an entity""") has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - synonym: Optional[List[str]] = Field(default_factory=list, description="""Alternate human-readable names for a thing""") @@ -3290,6 +3535,7 @@ class Genome(GenomicEntity, BiologicalEntity, PhysicalEssence, OntologyClass): provided_by: Optional[List[str]] = Field(None, description="""The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.""") xref: Optional[List[str]] = Field(default_factory=list, description="""A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.""") full_name: Optional[str] = Field(None, description="""a long-form human readable name for a thing""") + synonym: Optional[List[str]] = Field(default_factory=list, description="""Alternate human-readable names for a thing""") iri: Optional[str] = Field(None, description="""An IRI for an entity. This is determined by the id using expansion rules.""") category: List[Literal["https://w3id.org/biolink/vocab/Genome","biolink:Genome"]] = Field(["biolink:Genome"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. * In a neo4j database this MAY correspond to the neo4j label tag. @@ -3309,8 +3555,9 @@ class GenomeAnnotation(Genome): """ reference_assembly: Optional[str] = Field(None) version: Optional[str] = Field(None) - digest: List[str] = Field(default_factory=list) + digest: List[str] = Field(default_factory=list, description="""Stores checksum information.""") content_url: Optional[List[str]] = Field(default_factory=list) + authority: Optional[str] = Field(None, description="""The organization responsible for publishing the data.""") has_biological_sequence: Optional[str] = Field(None, description="""connects a genomic feature to its sequence""") id: str = Field(..., description="""A unique identifier for an entity. Must be either a CURIE shorthand for a URI or a complete URI""") in_taxon: Optional[List[str]] = Field(None, description="""connects an entity to its taxonomic classification. Only certain kinds of entities can be taxonomically classified; see 'thing with taxon'""") @@ -3318,6 +3565,7 @@ class GenomeAnnotation(Genome): provided_by: Optional[List[str]] = Field(None, description="""The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.""") xref: Optional[List[str]] = Field(default_factory=list, description="""A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.""") full_name: Optional[str] = Field(None, description="""a long-form human readable name for a thing""") + synonym: Optional[List[str]] = Field(default_factory=list, description="""Alternate human-readable names for a thing""") iri: Optional[str] = Field(None, description="""An IRI for an entity. This is determined by the id using expansion rules.""") category: List[Literal["https://identifiers.org/brain-bican/vocab/GenomeAnnotation","bican:GenomeAnnotation"]] = Field(["bican:GenomeAnnotation"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. * In a neo4j database this MAY correspond to the neo4j label tag. @@ -3348,6 +3596,7 @@ class Exon(NucleicAcidEntity): provided_by: Optional[List[str]] = Field(None, description="""The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.""") xref: Optional[List[str]] = Field(default_factory=list, description="""A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.""") full_name: Optional[str] = Field(None, description="""a long-form human readable name for a thing""") + synonym: Optional[List[str]] = Field(default_factory=list, description="""Alternate human-readable names for a thing""") iri: Optional[str] = Field(None, description="""An IRI for an entity. This is determined by the id using expansion rules.""") category: List[Literal["https://w3id.org/biolink/vocab/Exon","biolink:Exon"]] = Field(["biolink:Exon"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. * In a neo4j database this MAY correspond to the neo4j label tag. @@ -3378,6 +3627,7 @@ class Transcript(NucleicAcidEntity): provided_by: Optional[List[str]] = Field(None, description="""The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.""") xref: Optional[List[str]] = Field(default_factory=list, description="""A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.""") full_name: Optional[str] = Field(None, description="""a long-form human readable name for a thing""") + synonym: Optional[List[str]] = Field(default_factory=list, description="""Alternate human-readable names for a thing""") iri: Optional[str] = Field(None, description="""An IRI for an entity. This is determined by the id using expansion rules.""") category: List[Literal["https://w3id.org/biolink/vocab/Transcript","biolink:Transcript"]] = Field(["biolink:Transcript"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. * In a neo4j database this MAY correspond to the neo4j label tag. @@ -3406,6 +3656,7 @@ class CodingSequence(NucleicAcidEntity): provided_by: Optional[List[str]] = Field(None, description="""The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.""") xref: Optional[List[str]] = Field(default_factory=list, description="""A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.""") full_name: Optional[str] = Field(None, description="""a long-form human readable name for a thing""") + synonym: Optional[List[str]] = Field(default_factory=list, description="""Alternate human-readable names for a thing""") iri: Optional[str] = Field(None, description="""An IRI for an entity. This is determined by the id using expansion rules.""") category: List[Literal["https://w3id.org/biolink/vocab/CodingSequence","biolink:CodingSequence"]] = Field(["biolink:CodingSequence"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. * In a neo4j database this MAY correspond to the neo4j label tag. @@ -3428,6 +3679,7 @@ class Polypeptide(ChemicalEntityOrProteinOrPolypeptide, ChemicalEntityOrGeneOrGe provided_by: Optional[List[str]] = Field(None, description="""The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.""") xref: Optional[List[str]] = Field(default_factory=list, description="""A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.""") full_name: Optional[str] = Field(None, description="""a long-form human readable name for a thing""") + synonym: Optional[List[str]] = Field(default_factory=list, description="""Alternate human-readable names for a thing""") id: str = Field(..., description="""A unique identifier for an entity. Must be either a CURIE shorthand for a URI or a complete URI""") iri: Optional[str] = Field(None, description="""An IRI for an entity. This is determined by the id using expansion rules.""") category: List[Literal["https://w3id.org/biolink/vocab/Polypeptide","biolink:Polypeptide"]] = Field(["biolink:Polypeptide"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. @@ -3499,6 +3751,7 @@ class PosttranslationalModification(GeneProductIsoformMixin, BiologicalEntity): provided_by: Optional[List[str]] = Field(None, description="""The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.""") xref: Optional[List[str]] = Field(default_factory=list, description="""A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.""") full_name: Optional[str] = Field(None, description="""a long-form human readable name for a thing""") + synonym: Optional[List[str]] = Field(default_factory=list, description="""Alternate human-readable names for a thing""") id: str = Field(..., description="""A unique identifier for an entity. Must be either a CURIE shorthand for a URI or a complete URI""") iri: Optional[str] = Field(None, description="""An IRI for an entity. This is determined by the id using expansion rules.""") category: List[Literal["https://w3id.org/biolink/vocab/PosttranslationalModification","biolink:PosttranslationalModification"]] = Field(["biolink:PosttranslationalModification"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. @@ -3510,7 +3763,6 @@ class PosttranslationalModification(GeneProductIsoformMixin, BiologicalEntity): name: Optional[str] = Field(None, description="""genes are typically designated by a short symbol and a full name. We map the symbol to the default display name and use an additional slot for full name""") description: Optional[str] = Field(None, description="""a human-readable description of an entity""") has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - synonym: Optional[List[str]] = Field(default_factory=list, description="""Alternate human-readable names for a thing""") @@ -3523,6 +3775,7 @@ class NucleicAcidSequenceMotif(BiologicalEntity): provided_by: Optional[List[str]] = Field(None, description="""The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.""") xref: Optional[List[str]] = Field(default_factory=list, description="""A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.""") full_name: Optional[str] = Field(None, description="""a long-form human readable name for a thing""") + synonym: Optional[List[str]] = Field(default_factory=list, description="""Alternate human-readable names for a thing""") id: str = Field(..., description="""A unique identifier for an entity. Must be either a CURIE shorthand for a URI or a complete URI""") iri: Optional[str] = Field(None, description="""An IRI for an entity. This is determined by the id using expansion rules.""") category: List[Literal["https://w3id.org/biolink/vocab/NucleicAcidSequenceMotif","biolink:NucleicAcidSequenceMotif"]] = Field(["biolink:NucleicAcidSequenceMotif"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. @@ -3704,6 +3957,7 @@ class ProteinDomain(GeneGroupingMixin, ChemicalEntityOrGeneOrGeneProduct, Biolog provided_by: Optional[List[str]] = Field(None, description="""The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.""") xref: Optional[List[str]] = Field(default_factory=list, description="""A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.""") full_name: Optional[str] = Field(None, description="""a long-form human readable name for a thing""") + synonym: Optional[List[str]] = Field(default_factory=list, description="""Alternate human-readable names for a thing""") id: str = Field(..., description="""A unique identifier for an entity. Must be either a CURIE shorthand for a URI or a complete URI""") iri: Optional[str] = Field(None, description="""An IRI for an entity. This is determined by the id using expansion rules.""") category: List[Literal["https://w3id.org/biolink/vocab/ProteinDomain","biolink:ProteinDomain"]] = Field(["biolink:ProteinDomain"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. @@ -3726,6 +3980,7 @@ class ProteinFamily(GeneGroupingMixin, ChemicalEntityOrGeneOrGeneProduct, Biolog provided_by: Optional[List[str]] = Field(None, description="""The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.""") xref: Optional[List[str]] = Field(default_factory=list, description="""A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.""") full_name: Optional[str] = Field(None, description="""a long-form human readable name for a thing""") + synonym: Optional[List[str]] = Field(default_factory=list, description="""Alternate human-readable names for a thing""") id: str = Field(..., description="""A unique identifier for an entity. Must be either a CURIE shorthand for a URI or a complete URI""") iri: Optional[str] = Field(None, description="""An IRI for an entity. This is determined by the id using expansion rules.""") category: List[Literal["https://w3id.org/biolink/vocab/ProteinFamily","biolink:ProteinFamily"]] = Field(["biolink:ProteinFamily"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. @@ -3750,6 +4005,7 @@ class GeneFamily(GeneGroupingMixin, ChemicalEntityOrGeneOrGeneProduct, Biologica provided_by: Optional[List[str]] = Field(None, description="""The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.""") xref: Optional[List[str]] = Field(default_factory=list, description="""A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.""") full_name: Optional[str] = Field(None, description="""a long-form human readable name for a thing""") + synonym: Optional[List[str]] = Field(default_factory=list, description="""Alternate human-readable names for a thing""") id: str = Field(..., description="""A unique identifier for an entity. Must be either a CURIE shorthand for a URI or a complete URI""") iri: Optional[str] = Field(None, description="""An IRI for an entity. This is determined by the id using expansion rules.""") category: List[Literal["https://w3id.org/biolink/vocab/GeneFamily","biolink:GeneFamily"]] = Field(["biolink:GeneFamily"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. @@ -3775,6 +4031,7 @@ class Zygosity(Attribute): provided_by: Optional[List[str]] = Field(None, description="""The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.""") xref: Optional[List[str]] = Field(default_factory=list, description="""A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.""") full_name: Optional[str] = Field(None, description="""a long-form human readable name for a thing""") + synonym: Optional[List[str]] = Field(default_factory=list, description="""Alternate human-readable names for a thing""") category: List[Literal["https://w3id.org/biolink/vocab/Zygosity","biolink:Zygosity"]] = Field(["biolink:Zygosity"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. * In a neo4j database this MAY correspond to the neo4j label tag. * In an RDF database it should be a biolink model class URI. @@ -3798,6 +4055,7 @@ class Genotype(GenomicEntity, BiologicalEntity, PhysicalEssence, OntologyClass): provided_by: Optional[List[str]] = Field(None, description="""The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.""") xref: Optional[List[str]] = Field(default_factory=list, description="""A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.""") full_name: Optional[str] = Field(None, description="""a long-form human readable name for a thing""") + synonym: Optional[List[str]] = Field(default_factory=list, description="""Alternate human-readable names for a thing""") iri: Optional[str] = Field(None, description="""An IRI for an entity. This is determined by the id using expansion rules.""") category: List[Literal["https://w3id.org/biolink/vocab/Genotype","biolink:Genotype"]] = Field(["biolink:Genotype"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. * In a neo4j database this MAY correspond to the neo4j label tag. @@ -3822,6 +4080,7 @@ class Haplotype(GenomicEntity, BiologicalEntity, PhysicalEssence, OntologyClass) provided_by: Optional[List[str]] = Field(None, description="""The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.""") xref: Optional[List[str]] = Field(default_factory=list, description="""A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.""") full_name: Optional[str] = Field(None, description="""a long-form human readable name for a thing""") + synonym: Optional[List[str]] = Field(default_factory=list, description="""Alternate human-readable names for a thing""") iri: Optional[str] = Field(None, description="""An IRI for an entity. This is determined by the id using expansion rules.""") category: List[Literal["https://w3id.org/biolink/vocab/Haplotype","biolink:Haplotype"]] = Field(["biolink:Haplotype"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. * In a neo4j database this MAY correspond to the neo4j label tag. @@ -3847,6 +4106,7 @@ class SequenceVariant(GenomicEntity, BiologicalEntity, PhysicalEssence, Ontology provided_by: Optional[List[str]] = Field(None, description="""The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.""") xref: Optional[List[str]] = Field(default_factory=list, description="""A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.""") full_name: Optional[str] = Field(None, description="""a long-form human readable name for a thing""") + synonym: Optional[List[str]] = Field(default_factory=list, description="""Alternate human-readable names for a thing""") iri: Optional[str] = Field(None, description="""An IRI for an entity. This is determined by the id using expansion rules.""") category: List[Literal["https://w3id.org/biolink/vocab/SequenceVariant","biolink:SequenceVariant"]] = Field(["biolink:SequenceVariant"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. * In a neo4j database this MAY correspond to the neo4j label tag. @@ -3872,6 +4132,7 @@ class Snv(SequenceVariant): provided_by: Optional[List[str]] = Field(None, description="""The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.""") xref: Optional[List[str]] = Field(default_factory=list, description="""A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.""") full_name: Optional[str] = Field(None, description="""a long-form human readable name for a thing""") + synonym: Optional[List[str]] = Field(default_factory=list, description="""Alternate human-readable names for a thing""") iri: Optional[str] = Field(None, description="""An IRI for an entity. This is determined by the id using expansion rules.""") category: List[Literal["https://w3id.org/biolink/vocab/Snv","biolink:Snv"]] = Field(["biolink:Snv"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. * In a neo4j database this MAY correspond to the neo4j label tag. @@ -3896,6 +4157,7 @@ class ReagentTargetedGene(GenomicEntity, BiologicalEntity, PhysicalEssence, Onto provided_by: Optional[List[str]] = Field(None, description="""The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.""") xref: Optional[List[str]] = Field(default_factory=list, description="""A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.""") full_name: Optional[str] = Field(None, description="""a long-form human readable name for a thing""") + synonym: Optional[List[str]] = Field(default_factory=list, description="""Alternate human-readable names for a thing""") iri: Optional[str] = Field(None, description="""An IRI for an entity. This is determined by the id using expansion rules.""") category: List[Literal["https://w3id.org/biolink/vocab/ReagentTargetedGene","biolink:ReagentTargetedGene"]] = Field(["biolink:ReagentTargetedGene"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. * In a neo4j database this MAY correspond to the neo4j label tag. @@ -3922,6 +4184,7 @@ class ClinicalAttribute(Attribute): provided_by: Optional[List[str]] = Field(None, description="""The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.""") xref: Optional[List[str]] = Field(default_factory=list, description="""A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.""") full_name: Optional[str] = Field(None, description="""a long-form human readable name for a thing""") + synonym: Optional[List[str]] = Field(default_factory=list, description="""Alternate human-readable names for a thing""") category: List[Literal["https://w3id.org/biolink/vocab/ClinicalAttribute","biolink:ClinicalAttribute"]] = Field(["biolink:ClinicalAttribute"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. * In a neo4j database this MAY correspond to the neo4j label tag. * In an RDF database it should be a biolink model class URI. @@ -3946,6 +4209,7 @@ class ClinicalMeasurement(ClinicalAttribute): provided_by: Optional[List[str]] = Field(None, description="""The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.""") xref: Optional[List[str]] = Field(default_factory=list, description="""A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.""") full_name: Optional[str] = Field(None, description="""a long-form human readable name for a thing""") + synonym: Optional[List[str]] = Field(default_factory=list, description="""Alternate human-readable names for a thing""") category: List[Literal["https://w3id.org/biolink/vocab/ClinicalMeasurement","biolink:ClinicalMeasurement"]] = Field(["biolink:ClinicalMeasurement"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. * In a neo4j database this MAY correspond to the neo4j label tag. * In an RDF database it should be a biolink model class URI. @@ -3970,6 +4234,7 @@ class ClinicalModifier(ClinicalAttribute): provided_by: Optional[List[str]] = Field(None, description="""The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.""") xref: Optional[List[str]] = Field(default_factory=list, description="""A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.""") full_name: Optional[str] = Field(None, description="""a long-form human readable name for a thing""") + synonym: Optional[List[str]] = Field(default_factory=list, description="""Alternate human-readable names for a thing""") category: List[Literal["https://w3id.org/biolink/vocab/ClinicalModifier","biolink:ClinicalModifier"]] = Field(["biolink:ClinicalModifier"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. * In a neo4j database this MAY correspond to the neo4j label tag. * In an RDF database it should be a biolink model class URI. @@ -3994,6 +4259,7 @@ class ClinicalCourse(ClinicalAttribute): provided_by: Optional[List[str]] = Field(None, description="""The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.""") xref: Optional[List[str]] = Field(default_factory=list, description="""A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.""") full_name: Optional[str] = Field(None, description="""a long-form human readable name for a thing""") + synonym: Optional[List[str]] = Field(default_factory=list, description="""Alternate human-readable names for a thing""") category: List[Literal["https://w3id.org/biolink/vocab/ClinicalCourse","biolink:ClinicalCourse"]] = Field(["biolink:ClinicalCourse"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. * In a neo4j database this MAY correspond to the neo4j label tag. * In an RDF database it should be a biolink model class URI. @@ -4018,6 +4284,7 @@ class Onset(ClinicalCourse): provided_by: Optional[List[str]] = Field(None, description="""The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.""") xref: Optional[List[str]] = Field(default_factory=list, description="""A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.""") full_name: Optional[str] = Field(None, description="""a long-form human readable name for a thing""") + synonym: Optional[List[str]] = Field(default_factory=list, description="""Alternate human-readable names for a thing""") category: List[Literal["https://w3id.org/biolink/vocab/Onset","biolink:Onset"]] = Field(["biolink:Onset"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. * In a neo4j database this MAY correspond to the neo4j label tag. * In an RDF database it should be a biolink model class URI. @@ -4036,6 +4303,7 @@ class ClinicalEntity(NamedThing): provided_by: Optional[List[str]] = Field(None, description="""The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.""") xref: Optional[List[str]] = Field(default_factory=list, description="""A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.""") full_name: Optional[str] = Field(None, description="""a long-form human readable name for a thing""") + synonym: Optional[List[str]] = Field(default_factory=list, description="""Alternate human-readable names for a thing""") id: str = Field(..., description="""A unique identifier for an entity. Must be either a CURIE shorthand for a URI or a complete URI""") iri: Optional[str] = Field(None, description="""An IRI for an entity. This is determined by the id using expansion rules.""") category: List[Literal["https://w3id.org/biolink/vocab/ClinicalEntity","biolink:ClinicalEntity"]] = Field(["biolink:ClinicalEntity"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. @@ -4055,6 +4323,7 @@ class ClinicalTrial(ClinicalEntity): provided_by: Optional[List[str]] = Field(None, description="""The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.""") xref: Optional[List[str]] = Field(default_factory=list, description="""A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.""") full_name: Optional[str] = Field(None, description="""a long-form human readable name for a thing""") + synonym: Optional[List[str]] = Field(default_factory=list, description="""Alternate human-readable names for a thing""") id: str = Field(..., description="""A unique identifier for an entity. Must be either a CURIE shorthand for a URI or a complete URI""") iri: Optional[str] = Field(None, description="""An IRI for an entity. This is determined by the id using expansion rules.""") category: List[Literal["https://w3id.org/biolink/vocab/ClinicalTrial","biolink:ClinicalTrial"]] = Field(["biolink:ClinicalTrial"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. @@ -4074,6 +4343,7 @@ class ClinicalIntervention(ClinicalEntity): provided_by: Optional[List[str]] = Field(None, description="""The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.""") xref: Optional[List[str]] = Field(default_factory=list, description="""A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.""") full_name: Optional[str] = Field(None, description="""a long-form human readable name for a thing""") + synonym: Optional[List[str]] = Field(default_factory=list, description="""Alternate human-readable names for a thing""") id: str = Field(..., description="""A unique identifier for an entity. Must be either a CURIE shorthand for a URI or a complete URI""") iri: Optional[str] = Field(None, description="""An IRI for an entity. This is determined by the id using expansion rules.""") category: List[Literal["https://w3id.org/biolink/vocab/ClinicalIntervention","biolink:ClinicalIntervention"]] = Field(["biolink:ClinicalIntervention"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. @@ -4097,6 +4367,7 @@ class ClinicalFinding(PhenotypicFeature): provided_by: Optional[List[str]] = Field(None, description="""The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.""") xref: Optional[List[str]] = Field(default_factory=list, description="""A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.""") full_name: Optional[str] = Field(None, description="""a long-form human readable name for a thing""") + synonym: Optional[List[str]] = Field(default_factory=list, description="""Alternate human-readable names for a thing""") id: str = Field(..., description="""A unique identifier for an entity. Must be either a CURIE shorthand for a URI or a complete URI""") iri: Optional[str] = Field(None, description="""An IRI for an entity. This is determined by the id using expansion rules.""") category: List[Literal["https://w3id.org/biolink/vocab/ClinicalFinding","biolink:ClinicalFinding"]] = Field(["biolink:ClinicalFinding"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. @@ -4116,6 +4387,7 @@ class Hospitalization(ClinicalIntervention): provided_by: Optional[List[str]] = Field(None, description="""The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.""") xref: Optional[List[str]] = Field(default_factory=list, description="""A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.""") full_name: Optional[str] = Field(None, description="""a long-form human readable name for a thing""") + synonym: Optional[List[str]] = Field(default_factory=list, description="""Alternate human-readable names for a thing""") id: str = Field(..., description="""A unique identifier for an entity. Must be either a CURIE shorthand for a URI or a complete URI""") iri: Optional[str] = Field(None, description="""An IRI for an entity. This is determined by the id using expansion rules.""") category: List[Literal["https://w3id.org/biolink/vocab/Hospitalization","biolink:Hospitalization"]] = Field(["biolink:Hospitalization"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. @@ -4143,6 +4415,7 @@ class SocioeconomicAttribute(Attribute): provided_by: Optional[List[str]] = Field(None, description="""The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.""") xref: Optional[List[str]] = Field(default_factory=list, description="""A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.""") full_name: Optional[str] = Field(None, description="""a long-form human readable name for a thing""") + synonym: Optional[List[str]] = Field(default_factory=list, description="""Alternate human-readable names for a thing""") category: List[Literal["https://w3id.org/biolink/vocab/SocioeconomicAttribute","biolink:SocioeconomicAttribute"]] = Field(["biolink:SocioeconomicAttribute"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. * In a neo4j database this MAY correspond to the neo4j label tag. * In an RDF database it should be a biolink model class URI. @@ -4163,6 +4436,7 @@ class Case(IndividualOrganism, SubjectOfInvestigation): provided_by: Optional[List[str]] = Field(None, description="""The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.""") xref: Optional[List[str]] = Field(default_factory=list, description="""A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.""") full_name: Optional[str] = Field(None, description="""a long-form human readable name for a thing""") + synonym: Optional[List[str]] = Field(default_factory=list, description="""Alternate human-readable names for a thing""") id: str = Field(..., description="""A unique identifier for an entity. Must be either a CURIE shorthand for a URI or a complete URI""") iri: Optional[str] = Field(None, description="""An IRI for an entity. This is determined by the id using expansion rules.""") category: List[Literal["https://w3id.org/biolink/vocab/Case","biolink:Case"]] = Field(["biolink:Case"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. @@ -4186,6 +4460,7 @@ class Cohort(StudyPopulation, SubjectOfInvestigation): provided_by: Optional[List[str]] = Field(None, description="""The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.""") xref: Optional[List[str]] = Field(default_factory=list, description="""A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.""") full_name: Optional[str] = Field(None, description="""a long-form human readable name for a thing""") + synonym: Optional[List[str]] = Field(default_factory=list, description="""Alternate human-readable names for a thing""") id: str = Field(..., description="""A unique identifier for an entity. Must be either a CURIE shorthand for a URI or a complete URI""") iri: Optional[str] = Field(None, description="""An IRI for an entity. This is determined by the id using expansion rules.""") category: List[Literal["https://w3id.org/biolink/vocab/Cohort","biolink:Cohort"]] = Field(["biolink:Cohort"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. @@ -4227,6 +4502,7 @@ class GenomicBackgroundExposure(ExposureEvent, GeneGroupingMixin, GenomicEntity, provided_by: Optional[List[str]] = Field(None, description="""The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.""") xref: Optional[List[str]] = Field(default_factory=list, description="""A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.""") full_name: Optional[str] = Field(None, description="""a long-form human readable name for a thing""") + synonym: Optional[List[str]] = Field(default_factory=list, description="""Alternate human-readable names for a thing""") category: List[Literal["https://w3id.org/biolink/vocab/GenomicBackgroundExposure","biolink:GenomicBackgroundExposure"]] = Field(["biolink:GenomicBackgroundExposure"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. * In a neo4j database this MAY correspond to the neo4j label tag. * In an RDF database it should be a biolink model class URI. @@ -4259,6 +4535,7 @@ class PathologicalProcess(PathologicalEntityMixin, BiologicalProcess): provided_by: Optional[List[str]] = Field(None, description="""The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.""") xref: Optional[List[str]] = Field(default_factory=list, description="""A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.""") full_name: Optional[str] = Field(None, description="""a long-form human readable name for a thing""") + synonym: Optional[List[str]] = Field(default_factory=list, description="""Alternate human-readable names for a thing""") iri: Optional[str] = Field(None, description="""An IRI for an entity. This is determined by the id using expansion rules.""") category: List[Literal["https://w3id.org/biolink/vocab/PathologicalProcess","biolink:PathologicalProcess"]] = Field(["biolink:PathologicalProcess"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. * In a neo4j database this MAY correspond to the neo4j label tag. @@ -4286,6 +4563,7 @@ class PathologicalProcessExposure(ExposureEvent, Attribute): provided_by: Optional[List[str]] = Field(None, description="""The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.""") xref: Optional[List[str]] = Field(default_factory=list, description="""A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.""") full_name: Optional[str] = Field(None, description="""a long-form human readable name for a thing""") + synonym: Optional[List[str]] = Field(default_factory=list, description="""Alternate human-readable names for a thing""") category: List[Literal["https://w3id.org/biolink/vocab/PathologicalProcessExposure","biolink:PathologicalProcessExposure"]] = Field(["biolink:PathologicalProcessExposure"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. * In a neo4j database this MAY correspond to the neo4j label tag. * In an RDF database it should be a biolink model class URI. @@ -4306,6 +4584,7 @@ class PathologicalAnatomicalStructure(PathologicalEntityMixin, AnatomicalEntity) provided_by: Optional[List[str]] = Field(None, description="""The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.""") xref: Optional[List[str]] = Field(default_factory=list, description="""A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.""") full_name: Optional[str] = Field(None, description="""a long-form human readable name for a thing""") + synonym: Optional[List[str]] = Field(default_factory=list, description="""Alternate human-readable names for a thing""") id: str = Field(..., description="""A unique identifier for an entity. Must be either a CURIE shorthand for a URI or a complete URI""") iri: Optional[str] = Field(None, description="""An IRI for an entity. This is determined by the id using expansion rules.""") category: List[Literal["https://w3id.org/biolink/vocab/PathologicalAnatomicalStructure","biolink:PathologicalAnatomicalStructure"]] = Field(["biolink:PathologicalAnatomicalStructure"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. @@ -4334,6 +4613,7 @@ class PathologicalAnatomicalExposure(ExposureEvent, Attribute): provided_by: Optional[List[str]] = Field(None, description="""The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.""") xref: Optional[List[str]] = Field(default_factory=list, description="""A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.""") full_name: Optional[str] = Field(None, description="""a long-form human readable name for a thing""") + synonym: Optional[List[str]] = Field(default_factory=list, description="""Alternate human-readable names for a thing""") category: List[Literal["https://w3id.org/biolink/vocab/PathologicalAnatomicalExposure","biolink:PathologicalAnatomicalExposure"]] = Field(["biolink:PathologicalAnatomicalExposure"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. * In a neo4j database this MAY correspond to the neo4j label tag. * In an RDF database it should be a biolink model class URI. @@ -4359,6 +4639,7 @@ class DiseaseOrPhenotypicFeatureExposure(PathologicalEntityMixin, ExposureEvent, provided_by: Optional[List[str]] = Field(None, description="""The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.""") xref: Optional[List[str]] = Field(default_factory=list, description="""A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.""") full_name: Optional[str] = Field(None, description="""a long-form human readable name for a thing""") + synonym: Optional[List[str]] = Field(default_factory=list, description="""Alternate human-readable names for a thing""") category: List[Literal["https://w3id.org/biolink/vocab/DiseaseOrPhenotypicFeatureExposure","biolink:DiseaseOrPhenotypicFeatureExposure"]] = Field(["biolink:DiseaseOrPhenotypicFeatureExposure"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. * In a neo4j database this MAY correspond to the neo4j label tag. * In an RDF database it should be a biolink model class URI. @@ -4384,6 +4665,7 @@ class ChemicalExposure(ExposureEvent, Attribute): provided_by: Optional[List[str]] = Field(None, description="""The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.""") xref: Optional[List[str]] = Field(default_factory=list, description="""A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.""") full_name: Optional[str] = Field(None, description="""a long-form human readable name for a thing""") + synonym: Optional[List[str]] = Field(default_factory=list, description="""Alternate human-readable names for a thing""") category: List[Literal["https://w3id.org/biolink/vocab/ChemicalExposure","biolink:ChemicalExposure"]] = Field(["biolink:ChemicalExposure"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. * In a neo4j database this MAY correspond to the neo4j label tag. * In an RDF database it should be a biolink model class URI. @@ -4408,6 +4690,7 @@ class ComplexChemicalExposure(Attribute): provided_by: Optional[List[str]] = Field(None, description="""The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.""") xref: Optional[List[str]] = Field(default_factory=list, description="""A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.""") full_name: Optional[str] = Field(None, description="""a long-form human readable name for a thing""") + synonym: Optional[List[str]] = Field(default_factory=list, description="""Alternate human-readable names for a thing""") category: List[Literal["https://w3id.org/biolink/vocab/ComplexChemicalExposure","biolink:ComplexChemicalExposure"]] = Field(["biolink:ComplexChemicalExposure"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. * In a neo4j database this MAY correspond to the neo4j label tag. * In an RDF database it should be a biolink model class URI. @@ -4433,6 +4716,7 @@ class DrugExposure(ChemicalExposure, ExposureEvent): provided_by: Optional[List[str]] = Field(None, description="""The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.""") xref: Optional[List[str]] = Field(default_factory=list, description="""A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.""") full_name: Optional[str] = Field(None, description="""a long-form human readable name for a thing""") + synonym: Optional[List[str]] = Field(default_factory=list, description="""Alternate human-readable names for a thing""") category: List[Literal["https://w3id.org/biolink/vocab/DrugExposure","biolink:DrugExposure"]] = Field(["biolink:DrugExposure"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. * In a neo4j database this MAY correspond to the neo4j label tag. * In an RDF database it should be a biolink model class URI. @@ -4459,6 +4743,7 @@ class DrugToGeneInteractionExposure(DrugExposure, GeneGroupingMixin): provided_by: Optional[List[str]] = Field(None, description="""The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.""") xref: Optional[List[str]] = Field(default_factory=list, description="""A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.""") full_name: Optional[str] = Field(None, description="""a long-form human readable name for a thing""") + synonym: Optional[List[str]] = Field(default_factory=list, description="""Alternate human-readable names for a thing""") category: List[Literal["https://w3id.org/biolink/vocab/DrugToGeneInteractionExposure","biolink:DrugToGeneInteractionExposure"]] = Field(["biolink:DrugToGeneInteractionExposure"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. * In a neo4j database this MAY correspond to the neo4j label tag. * In an RDF database it should be a biolink model class URI. @@ -4481,6 +4766,7 @@ class Treatment(ExposureEvent, NamedThing, ChemicalOrDrugOrTreatment): provided_by: Optional[List[str]] = Field(None, description="""The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.""") xref: Optional[List[str]] = Field(default_factory=list, description="""A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.""") full_name: Optional[str] = Field(None, description="""a long-form human readable name for a thing""") + synonym: Optional[List[str]] = Field(default_factory=list, description="""Alternate human-readable names for a thing""") id: str = Field(..., description="""A unique identifier for an entity. Must be either a CURIE shorthand for a URI or a complete URI""") iri: Optional[str] = Field(None, description="""An IRI for an entity. This is determined by the id using expansion rules.""") category: List[Literal["https://w3id.org/biolink/vocab/Treatment","biolink:Treatment"]] = Field(["biolink:Treatment"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. @@ -4509,6 +4795,7 @@ class BioticExposure(ExposureEvent, Attribute): provided_by: Optional[List[str]] = Field(None, description="""The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.""") xref: Optional[List[str]] = Field(default_factory=list, description="""A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.""") full_name: Optional[str] = Field(None, description="""a long-form human readable name for a thing""") + synonym: Optional[List[str]] = Field(default_factory=list, description="""Alternate human-readable names for a thing""") category: List[Literal["https://w3id.org/biolink/vocab/BioticExposure","biolink:BioticExposure"]] = Field(["biolink:BioticExposure"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. * In a neo4j database this MAY correspond to the neo4j label tag. * In an RDF database it should be a biolink model class URI. @@ -4534,6 +4821,7 @@ class EnvironmentalExposure(ExposureEvent, Attribute): provided_by: Optional[List[str]] = Field(None, description="""The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.""") xref: Optional[List[str]] = Field(default_factory=list, description="""A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.""") full_name: Optional[str] = Field(None, description="""a long-form human readable name for a thing""") + synonym: Optional[List[str]] = Field(default_factory=list, description="""Alternate human-readable names for a thing""") category: List[Literal["https://w3id.org/biolink/vocab/EnvironmentalExposure","biolink:EnvironmentalExposure"]] = Field(["biolink:EnvironmentalExposure"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. * In a neo4j database this MAY correspond to the neo4j label tag. * In an RDF database it should be a biolink model class URI. @@ -4559,6 +4847,7 @@ class GeographicExposure(EnvironmentalExposure, ExposureEvent): provided_by: Optional[List[str]] = Field(None, description="""The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.""") xref: Optional[List[str]] = Field(default_factory=list, description="""A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.""") full_name: Optional[str] = Field(None, description="""a long-form human readable name for a thing""") + synonym: Optional[List[str]] = Field(default_factory=list, description="""Alternate human-readable names for a thing""") category: List[Literal["https://w3id.org/biolink/vocab/GeographicExposure","biolink:GeographicExposure"]] = Field(["biolink:GeographicExposure"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. * In a neo4j database this MAY correspond to the neo4j label tag. * In an RDF database it should be a biolink model class URI. @@ -4584,6 +4873,7 @@ class BehavioralExposure(ExposureEvent, Attribute): provided_by: Optional[List[str]] = Field(None, description="""The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.""") xref: Optional[List[str]] = Field(default_factory=list, description="""A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.""") full_name: Optional[str] = Field(None, description="""a long-form human readable name for a thing""") + synonym: Optional[List[str]] = Field(default_factory=list, description="""Alternate human-readable names for a thing""") category: List[Literal["https://w3id.org/biolink/vocab/BehavioralExposure","biolink:BehavioralExposure"]] = Field(["biolink:BehavioralExposure"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. * In a neo4j database this MAY correspond to the neo4j label tag. * In an RDF database it should be a biolink model class URI. @@ -4609,6 +4899,7 @@ class SocioeconomicExposure(ExposureEvent, Attribute): provided_by: Optional[List[str]] = Field(None, description="""The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.""") xref: Optional[List[str]] = Field(default_factory=list, description="""A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.""") full_name: Optional[str] = Field(None, description="""a long-form human readable name for a thing""") + synonym: Optional[List[str]] = Field(default_factory=list, description="""Alternate human-readable names for a thing""") category: List[Literal["https://w3id.org/biolink/vocab/SocioeconomicExposure","biolink:SocioeconomicExposure"]] = Field(["biolink:SocioeconomicExposure"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. * In a neo4j database this MAY correspond to the neo4j label tag. * In an RDF database it should be a biolink model class URI. @@ -5629,12 +5920,12 @@ class ChemicalAffectsGeneAssociation(Association): subject_form_or_variant_qualifier: Optional[ChemicalOrGeneOrGeneProductFormOrVariantEnum] = Field(None) subject_part_qualifier: Optional[GeneOrGeneProductOrChemicalPartQualifierEnum] = Field(None) subject_derivative_qualifier: Optional[ChemicalEntityDerivativeEnum] = Field(None) - subject_aspect_qualifier: Optional[GeneOrGeneProductOrChemicalPartQualifierEnum] = Field(None) + subject_aspect_qualifier: Optional[GeneOrGeneProductOrChemicalEntityAspectEnum] = Field(None) subject_context_qualifier: Optional[str] = Field(None) subject_direction_qualifier: Optional[DirectionQualifierEnum] = Field(None) object_form_or_variant_qualifier: Optional[ChemicalOrGeneOrGeneProductFormOrVariantEnum] = Field(None) object_part_qualifier: Optional[GeneOrGeneProductOrChemicalPartQualifierEnum] = Field(None) - object_aspect_qualifier: Optional[GeneOrGeneProductOrChemicalPartQualifierEnum] = Field(None) + object_aspect_qualifier: Optional[GeneOrGeneProductOrChemicalEntityAspectEnum] = Field(None) object_context_qualifier: Optional[str] = Field(None) causal_mechanism_qualifier: Optional[CausalMechanismQualifierEnum] = Field(None, description="""A statement qualifier representing a type of molecular control mechanism through which an effect of a chemical on a gene or gene product is mediated (e.g. 'agonism', 'inhibition', 'allosteric modulation', 'channel blocker')""") anatomical_context_qualifier: Optional[str] = Field(None, description="""A statement qualifier representing an anatomical location where an relationship expressed in an association took place (can be a tissue, cell type, or sub-cellular location).""") @@ -8685,10 +8976,18 @@ class OrganismTaxonToEnvironmentAssociation(OrganismTaxonToEntityAssociation, As # Update forward refs # see https://pydantic-docs.helpmanual.io/usage/postponed_annotations/ -GenomeAssembly.update_forward_refs() -Mapping.update_forward_refs() -Mappings.update_forward_refs() AnnotationCollection.update_forward_refs() +ProcessOutput.update_forward_refs() +BrainSegment.update_forward_refs() +BrainSection.update_forward_refs() +TissueSample.update_forward_refs() +DissociatedCellSample.update_forward_refs() +EnrichedCellSample.update_forward_refs() +BarcodedCellSample.update_forward_refs() +AmplifiedCdna.update_forward_refs() +Library.update_forward_refs() +LibraryAliquot.update_forward_refs() +LibraryPool.update_forward_refs() MappingCollection.update_forward_refs() PredicateMapping.update_forward_refs() OntologyClass.update_forward_refs() @@ -8761,6 +9060,8 @@ class OrganismTaxonToEnvironmentAssociation(OrganismTaxonToEntityAssociation, As GeographicLocation.update_forward_refs() GeographicLocationAtTime.update_forward_refs() ThingWithTaxon.update_forward_refs() +GenomeAssembly.update_forward_refs() +Donor.update_forward_refs() BiologicalEntity.update_forward_refs() GenomicEntity.update_forward_refs() EpigenomicEntity.update_forward_refs() From f687b6983d3b1814d0356be0d1ffcc9a60565a9c Mon Sep 17 00:00:00 2001 From: Puja Trivedi Date: Sun, 13 Aug 2023 22:03:23 -0700 Subject: [PATCH 10/17] added classes to represent orange boxes and modified a few purple box classes based off of comments --- linkml-schema/kbmodel.yaml | 259 +++++++++++++++++++++++++++++++++---- 1 file changed, 233 insertions(+), 26 deletions(-) diff --git a/linkml-schema/kbmodel.yaml b/linkml-schema/kbmodel.yaml index 9883d53d..5b5a316c 100644 --- a/linkml-schema/kbmodel.yaml +++ b/linkml-schema/kbmodel.yaml @@ -78,18 +78,138 @@ classes: inlined_as_list: true range: genome assembly - process output: + process: description: >- - The output of a process. + A process that takes input entities and produces output entities. slots: - - label + - input entity + - output entity + - process id + + + brain extraction: + description: >- + A process that takes a brain sample from a donor and produces a brain segment. + #is_a: process + #slot usage: attributes: - created by process id: - description: >- - The id of the process that created this object. - created by process type: - description: >- - The type of process that created this object. + input entity: + range: donor + output entity: + range: brain segment + + brain segment sectioning: + description: >- + A process that takes a brain segment and produces a brain section. + #is_a: process + #slot usage: + attributes: + input entity: + range: brain segment + output entity: + range: brain section + + tissue dissecting: + description: >- + A process that takes a brain section and produces a tissue sample. + #is_a: process + #slot usage: + attributes: + input entity: + range: brain section + output entity: + range: tissue sample + + cell dissociation: + description: >- + A process that takes a tissue sample and produces a dissociated cell sample. + #is_a: process + #slot usage: + attributes: + input entity: + range: tissue sample + output entity: + range: dissociated cell sample + + cell enrichment: + description: >- + A process that takes a dissociated cell sample and produces an enriched cell sample. + #is_a: process + #slot usage: + attributes: + input entity: + range: dissociated cell sample + output entity: + range: enriched cell sample + + cell barcoding: + description: >- + A process that takes an enriched cell sample and produces a barcoded cell sample. + #is_a: process + #slot usage: + attributes: + input entity: + range: enriched cell sample + output entity: + range: barcoded cell sample + + cdna amplification: + description: >- + A process that takes a barcoded cell sample and produces an amplified cDNA sample. + #is_a: process + #slot usage: + attributes: + input entity: + range: barcoded cell sample + output entity: + range: amplified cdna + + library construction: + description: >- + A process that takes an amplified cDNA sample and produces a library. + #is_a: process + #slot usage: + attributes: + input entity: + range: amplified cdna + output entity: + range: library + + library aliquoting: + description: >- + A process that takes a library and produces an library aliquot. + #is_a: process + #slot usage: + attributes: + input entity: + range: library + output entity: + range: library aliquot + + library pooling: + description: >- + A process that takes a library aliquot and produces a library pool. + #is_a: process + #slot usage: + attributes: + input entity: + range: library aliquot + output entity: + range: library pool + + + # # process output: + # # description: >- + # # The output of a process. + # # slots: + # # - label + # # attributes: + # # created by process id: + # # description: >- + # # The id of the process that created this object. + # # created by process type: + # # description: >- + # # The type of process that created this object. # 028 - donors.ipynb donor: @@ -107,75 +227,132 @@ classes: - full genotype + # 027 - brain_extraction.ipynb brain segment: - is_a: process output + #is_a: process output slots: + - label - barcode + # - created by process attributes: anatomical division: + #slot usage: + created by process: + range: brain extraction + # 026 - brain_segment_sectioning.ipynb brain section: - is_a: process output + #is_a: process output slots: + - label - barcode + # - created by process attributes: ordinal: description: >- The ordinal number of the section. range: integer + #slot usage: + created by process: + range: brain segment sectioning # 025b - tissue_dissectioning.ipynb tissue sample: - is_a: process output + #is_a: process output + slots: + - label + # - created by process attributes: roi plan: region of interest label: description: >- The label of the region of interest. + #slot usage: + created by process: + range: tissue dissecting # 024 - cell_dissociation.ipynb dissociated cell sample: - is_a: process output + #is_a: process output + slots: + - label + # - created by process attributes: cell prep type: facs population plan: + number of cells collected: + range: integer + #slot usage: + created by process: + range: cell dissociation - #TODO: + #TODO: Add addtional attributes and slots to this class. enriched cell sample: + slots: + - label + # - created by process + # slot usage: + attributes: + created by process: + range: cell enrichment # 023 - cell_barcoding.ipynb barcoded cell sample: - is_a: process output + #is_a: process output + slots: + - label + # - created by process attributes: port well: sample quallity count: + # slot usage: + created by process: + range: cell barcoding # 022 - cnda_amplification.ipynb amplified cdna: - is_a: process output + # is_a: process output + slots: + - method + - label + # - created by process attributes: amplified quantity: description: >- Amount of cDNA amplified (ng). range: float pcr cycles: + description: >- + Number of PCR cycles used to amplify the cDNA. + range: integer percent cdna longer than 400bp: - rna amplification pass fail: - slots: - - method + description: >- + The percentage of cDNA fragments that are longer than 400bp. + range: float + rna amplification pass: + range: boolean + # slot usage: + created by process: + range: cdna amplification + # 021 - library_constructions.ipynb library: - is_a: process output + # is_a: process output + slots: + - method + - creation date + - label + # - created by process attributes: avg size: description: The average size (bp) of the library fragments. bp stands for base pairs. @@ -184,6 +361,7 @@ classes: description: The amount of input material (ng) used to create the library. range: float library prep pass: + range: boolean quantification fmol: range: float quantification ng: @@ -194,9 +372,8 @@ classes: r1 sequence: r2 index: r2 sequence: - slots: - - method - - creation date + created by process: + range: library construction slot_usage: creation date: description: The date and time the object was created. @@ -205,22 +382,36 @@ classes: # 020 - aliquoting_and_pooling.ipynb library aliquot: - is_a: process output + # is_a: process output + slots: + - label + # - created by process attributes: input quantity: description: The amount of input material (fmol) used to create the library aliquot. range: integer + # slot_usage: + created by process: + range: library aliquoting # 020 - aliquoting_and_pooling.ipynb library pool: - is_a: process output + # is_a: process output + slots: + - label + # - created by process attributes: tube avg size: + description: The average size (bp) of the library fragments in the tube. + range: integer tube contents: description: The content concentration (nm). range: float tube internal label: + # slot usage: + created by process: + range: library pooling slots: @@ -274,7 +465,7 @@ slots: age at death: description: The age of the donor at the time of death. - range: integer + range: string full genotype: description: The full genotype of the donor. @@ -288,6 +479,22 @@ slots: description: slot_uri: schema:name + input entity: + description: The input entity of the process. + + output entity: + description: The output entity of the process. + + process id: + description: The id of the process. + range: string + + created by process: + description: The process that created the object. + + + + # SLOTS IMPORTED FROM BIOLINK # # creation date: # version: From 082f120c7ced35f28aa879f7e4e5de8b8e4af1e3 Mon Sep 17 00:00:00 2001 From: GitHub Action Date: Mon, 14 Aug 2023 05:12:07 +0000 Subject: [PATCH 11/17] generate another formats --- erdiagram-autogen/kbmodel.md | 117 +++++--- json-schema-autogen/kbmodel.json | 268 ++++++++++++------ jsonld-context-autogen/kbmodel.context.jsonld | 30 +- models_py-autogen/kbmodel.py | 191 +++++++++---- 4 files changed, 438 insertions(+), 168 deletions(-) diff --git a/erdiagram-autogen/kbmodel.md b/erdiagram-autogen/kbmodel.md index 1081d4b9..7dad61a9 100644 --- a/erdiagram-autogen/kbmodel.md +++ b/erdiagram-autogen/kbmodel.md @@ -1,25 +1,28 @@ ```mermaid erDiagram LibraryPool { - string tube_avg_size + string label + integer tube_avg_size float tube_contents string tube_internal_label - string label - string created_by_process_id - string created_by_process_type +} +LibraryPooling { + } LibraryAliquot { - integer input_quantity string label - string created_by_process_id - string created_by_process_type + integer input_quantity +} +LibraryAliquoting { + } Library { string method datetime creation_date + string label integer avg_size float input_amount - string library_prep_pass + boolean library_prep_pass float quantification_fmol float quantification_ng float quantification_nm @@ -27,64 +30,74 @@ Library { string r1_sequence string r2_index string r2_sequence - string label - string created_by_process_id - string created_by_process_type +} +LibraryConstruction { + } AmplifiedCdna { string method - float amplified_quantity - string pcr_cycles - string percent_cdna_longer_than_400bp - string rna_amplification_pass_fail string label - string created_by_process_id - string created_by_process_type + float amplified_quantity + integer pcr_cycles + float percent_cdna_longer_than_400bp + boolean rna_amplification_pass +} +CdnaAmplification { + } BarcodedCellSample { + string label string port_well string sample_quallity_count - string label - string created_by_process_id - string created_by_process_type +} +CellBarcoding { + } EnrichedCellSample { + string label +} +CellEnrichment { } DissociatedCellSample { + string label string cell_prep_type string facs_population_plan - string label - string created_by_process_id - string created_by_process_type + integer number_of_cells_collected +} +CellDissociation { + } TissueSample { + string label string roi_plan string region_of_interest_label - string label - string created_by_process_id - string created_by_process_type +} +TissueDissecting { + } BrainSection { + string label string barcode integer ordinal - string label - string created_by_process_id - string created_by_process_type +} +BrainSegmentSectioning { + } BrainSegment { + string label string barcode string anatomical_division - string label - string created_by_process_id - string created_by_process_type +} +BrainExtraction { + } Donor { string label SexType sex date date_of_birth date date_of_death - integer age_at_death + string age_at_death string full_genotype label_type in_taxon_label string id @@ -94,10 +107,10 @@ Donor { label_type name narrative_text description } -ProcessOutput { - string label - string created_by_process_id - string created_by_process_type +Process { + string input_entity + string output_entity + string process_id } AnnotationCollection { @@ -163,6 +176,36 @@ Checksum { narrative_text description } +LibraryPool ||--|o LibraryPooling : "created by process" +LibraryPooling ||--|o LibraryAliquot : "input entity" +LibraryPooling ||--|o LibraryPool : "output entity" +LibraryAliquot ||--|o LibraryAliquoting : "created by process" +LibraryAliquoting ||--|o Library : "input entity" +LibraryAliquoting ||--|o LibraryAliquot : "output entity" +Library ||--|o LibraryConstruction : "created by process" +LibraryConstruction ||--|o AmplifiedCdna : "input entity" +LibraryConstruction ||--|o Library : "output entity" +AmplifiedCdna ||--|o CdnaAmplification : "created by process" +CdnaAmplification ||--|o BarcodedCellSample : "input entity" +CdnaAmplification ||--|o AmplifiedCdna : "output entity" +BarcodedCellSample ||--|o CellBarcoding : "created by process" +CellBarcoding ||--|o EnrichedCellSample : "input entity" +CellBarcoding ||--|o BarcodedCellSample : "output entity" +EnrichedCellSample ||--|o CellEnrichment : "created by process" +CellEnrichment ||--|o DissociatedCellSample : "input entity" +CellEnrichment ||--|o EnrichedCellSample : "output entity" +DissociatedCellSample ||--|o CellDissociation : "created by process" +CellDissociation ||--|o TissueSample : "input entity" +CellDissociation ||--|o DissociatedCellSample : "output entity" +TissueSample ||--|o TissueDissecting : "created by process" +TissueDissecting ||--|o BrainSection : "input entity" +TissueDissecting ||--|o TissueSample : "output entity" +BrainSection ||--|o BrainSegmentSectioning : "created by process" +BrainSegmentSectioning ||--|o BrainSegment : "input entity" +BrainSegmentSectioning ||--|o BrainSection : "output entity" +BrainSegment ||--|o BrainExtraction : "created by process" +BrainExtraction ||--|o Donor : "input entity" +BrainExtraction ||--|o BrainSegment : "output entity" Donor ||--}o OrganismTaxon : "in taxon" Donor ||--}o Attribute : "has attribute" AnnotationCollection ||--}o GeneAnnotation : "annotations" diff --git a/json-schema-autogen/kbmodel.json b/json-schema-autogen/kbmodel.json index be0f89a6..ba070ea5 100644 --- a/json-schema-autogen/kbmodel.json +++ b/json-schema-autogen/kbmodel.json @@ -256,13 +256,8 @@ "description": "Amount of cDNA amplified (ng).", "type": "number" }, - "created_by_process_id": { - "description": "The id of the process that created this object.", - "type": "string" - }, - "created_by_process_type": { - "description": "The type of process that created this object.", - "type": "string" + "created_by_process": { + "$ref": "#/$defs/CdnaAmplification" }, "label": { "description": "The name of the object.", @@ -272,13 +267,15 @@ "type": "string" }, "pcr_cycles": { - "type": "string" + "description": "Number of PCR cycles used to amplify the cDNA.", + "type": "integer" }, "percent_cdna_longer_than_400bp": { - "type": "string" + "description": "The percentage of cDNA fragments that are longer than 400bp.", + "type": "number" }, - "rna_amplification_pass_fail": { - "type": "string" + "rna_amplification_pass": { + "type": "boolean" } }, "title": "AmplifiedCdna", @@ -1266,13 +1263,8 @@ "additionalProperties": false, "description": "", "properties": { - "created_by_process_id": { - "description": "The id of the process that created this object.", - "type": "string" - }, - "created_by_process_type": { - "description": "The type of process that created this object.", - "type": "string" + "created_by_process": { + "$ref": "#/$defs/CellBarcoding" }, "label": { "description": "The name of the object.", @@ -2456,6 +2448,20 @@ "title": "BookChapter", "type": "object" }, + "BrainExtraction": { + "additionalProperties": false, + "description": "A process that takes a brain sample from a donor and produces a brain segment.", + "properties": { + "input_entity": { + "type": "string" + }, + "output_entity": { + "$ref": "#/$defs/BrainSegment" + } + }, + "title": "BrainExtraction", + "type": "object" + }, "BrainSection": { "additionalProperties": false, "description": "", @@ -2464,13 +2470,8 @@ "description": "The unique identifier of the object.", "type": "string" }, - "created_by_process_id": { - "description": "The id of the process that created this object.", - "type": "string" - }, - "created_by_process_type": { - "description": "The type of process that created this object.", - "type": "string" + "created_by_process": { + "$ref": "#/$defs/BrainSegmentSectioning" }, "label": { "description": "The name of the object.", @@ -2495,13 +2496,8 @@ "description": "The unique identifier of the object.", "type": "string" }, - "created_by_process_id": { - "description": "The id of the process that created this object.", - "type": "string" - }, - "created_by_process_type": { - "description": "The type of process that created this object.", - "type": "string" + "created_by_process": { + "$ref": "#/$defs/BrainExtraction" }, "label": { "description": "The name of the object.", @@ -2511,6 +2507,20 @@ "title": "BrainSegment", "type": "object" }, + "BrainSegmentSectioning": { + "additionalProperties": false, + "description": "A process that takes a brain segment and produces a brain section.", + "properties": { + "input_entity": { + "$ref": "#/$defs/BrainSegment" + }, + "output_entity": { + "$ref": "#/$defs/BrainSection" + } + }, + "title": "BrainSegmentSectioning", + "type": "object" + }, "Case": { "additionalProperties": false, "description": "An individual (human) organism that has a patient role in some clinical context.", @@ -3059,6 +3069,20 @@ "title": "CausalMechanismQualifierEnum", "type": "string" }, + "CdnaAmplification": { + "additionalProperties": false, + "description": "A process that takes a barcoded cell sample and produces an amplified cDNA sample.", + "properties": { + "input_entity": { + "$ref": "#/$defs/BarcodedCellSample" + }, + "output_entity": { + "$ref": "#/$defs/AmplifiedCdna" + } + }, + "title": "CdnaAmplification", + "type": "object" + }, "Cell": { "additionalProperties": false, "description": "", @@ -3144,6 +3168,48 @@ "title": "Cell", "type": "object" }, + "CellBarcoding": { + "additionalProperties": false, + "description": "A process that takes an enriched cell sample and produces a barcoded cell sample.", + "properties": { + "input_entity": { + "$ref": "#/$defs/EnrichedCellSample" + }, + "output_entity": { + "$ref": "#/$defs/BarcodedCellSample" + } + }, + "title": "CellBarcoding", + "type": "object" + }, + "CellDissociation": { + "additionalProperties": false, + "description": "A process that takes a tissue sample and produces a dissociated cell sample.", + "properties": { + "input_entity": { + "$ref": "#/$defs/TissueSample" + }, + "output_entity": { + "$ref": "#/$defs/DissociatedCellSample" + } + }, + "title": "CellDissociation", + "type": "object" + }, + "CellEnrichment": { + "additionalProperties": false, + "description": "A process that takes a dissociated cell sample and produces an enriched cell sample.", + "properties": { + "input_entity": { + "$ref": "#/$defs/DissociatedCellSample" + }, + "output_entity": { + "$ref": "#/$defs/EnrichedCellSample" + } + }, + "title": "CellEnrichment", + "type": "object" + }, "CellLine": { "additionalProperties": false, "description": "", @@ -9624,13 +9690,8 @@ "cell_prep_type": { "type": "string" }, - "created_by_process_id": { - "description": "The id of the process that created this object.", - "type": "string" - }, - "created_by_process_type": { - "description": "The type of process that created this object.", - "type": "string" + "created_by_process": { + "$ref": "#/$defs/CellDissociation" }, "facs_population_plan": { "type": "string" @@ -9638,6 +9699,9 @@ "label": { "description": "The name of the object.", "type": "string" + }, + "number_of_cells_collected": { + "type": "integer" } }, "title": "DissociatedCellSample", @@ -9649,7 +9713,7 @@ "properties": { "age_at_death": { "description": "The age of the donor at the time of death.", - "type": "integer" + "type": "string" }, "category": { "description": "Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class.\n * In a neo4j database this MAY correspond to the neo4j label tag.\n * In an RDF database it should be a biolink model class URI.\nThis field is multi-valued. It should include values for ancestors of the biolink class; for example, a protein such as Shh would have category values `biolink:Protein`, `biolink:GeneProduct`, `biolink:MolecularEntity`, ...\nIn an RDF database, nodes will typically have an rdf:type triples. This can be to the most specific biolink class, or potentially to a class more specific than something in biolink. For example, a sequence feature `f` may have a rdf:type assertion to a SO class such as TF_binding_site, which is more specific than anything in biolink. Here we would have categories {biolink:GenomicEntity, biolink:MolecularEntity, biolink:NamedThing}", @@ -10603,6 +10667,15 @@ "EnrichedCellSample": { "additionalProperties": false, "description": "", + "properties": { + "created_by_process": { + "$ref": "#/$defs/CellEnrichment" + }, + "label": { + "description": "The name of the object.", + "type": "string" + } + }, "title": "EnrichedCellSample", "type": "object" }, @@ -18671,13 +18744,8 @@ "description": "The average size (bp) of the library fragments. bp stands for base pairs.", "type": "integer" }, - "created_by_process_id": { - "description": "The id of the process that created this object.", - "type": "string" - }, - "created_by_process_type": { - "description": "The type of process that created this object.", - "type": "string" + "created_by_process": { + "$ref": "#/$defs/LibraryConstruction" }, "creation_date": { "description": "The date and time the object was created.", @@ -18693,7 +18761,7 @@ "type": "string" }, "library_prep_pass": { - "type": "string" + "type": "boolean" }, "method": { "type": "string" @@ -18727,13 +18795,8 @@ "additionalProperties": false, "description": "", "properties": { - "created_by_process_id": { - "description": "The id of the process that created this object.", - "type": "string" - }, - "created_by_process_type": { - "description": "The type of process that created this object.", - "type": "string" + "created_by_process": { + "$ref": "#/$defs/LibraryAliquoting" }, "input_quantity": { "description": "The amount of input material (fmol) used to create the library aliquot.", @@ -18747,24 +18810,48 @@ "title": "LibraryAliquot", "type": "object" }, + "LibraryAliquoting": { + "additionalProperties": false, + "description": "A process that takes a library and produces an library aliquot.", + "properties": { + "input_entity": { + "$ref": "#/$defs/Library" + }, + "output_entity": { + "$ref": "#/$defs/LibraryAliquot" + } + }, + "title": "LibraryAliquoting", + "type": "object" + }, + "LibraryConstruction": { + "additionalProperties": false, + "description": "A process that takes an amplified cDNA sample and produces a library.", + "properties": { + "input_entity": { + "$ref": "#/$defs/AmplifiedCdna" + }, + "output_entity": { + "$ref": "#/$defs/Library" + } + }, + "title": "LibraryConstruction", + "type": "object" + }, "LibraryPool": { "additionalProperties": false, "description": "", "properties": { - "created_by_process_id": { - "description": "The id of the process that created this object.", - "type": "string" - }, - "created_by_process_type": { - "description": "The type of process that created this object.", - "type": "string" + "created_by_process": { + "$ref": "#/$defs/LibraryPooling" }, "label": { "description": "The name of the object.", "type": "string" }, "tube_avg_size": { - "type": "string" + "description": "The average size (bp) of the library fragments in the tube.", + "type": "integer" }, "tube_contents": { "description": "The content concentration (nm).", @@ -18777,6 +18864,20 @@ "title": "LibraryPool", "type": "object" }, + "LibraryPooling": { + "additionalProperties": false, + "description": "A process that takes a library aliquot and produces a library pool.", + "properties": { + "input_entity": { + "$ref": "#/$defs/LibraryAliquot" + }, + "output_entity": { + "$ref": "#/$defs/LibraryPool" + } + }, + "title": "LibraryPooling", + "type": "object" + }, "LifeStage": { "additionalProperties": false, "description": "A stage of development or growth of an organism, including post-natal adult stages", @@ -25313,24 +25414,24 @@ "title": "Procedure", "type": "object" }, - "ProcessOutput": { + "Process": { "additionalProperties": false, - "description": "The output of a process.", + "description": "A process that takes input entities and produces output entities.", "properties": { - "created_by_process_id": { - "description": "The id of the process that created this object.", + "input_entity": { + "description": "The input entity of the process.", "type": "string" }, - "created_by_process_type": { - "description": "The type of process that created this object.", + "output_entity": { + "description": "The output entity of the process.", "type": "string" }, - "label": { - "description": "The name of the object.", + "process_id": { + "description": "The id of the process.", "type": "string" } }, - "title": "ProcessOutput", + "title": "Process", "type": "object" }, "ProcessedMaterial": { @@ -28760,17 +28861,26 @@ "title": "TextMiningResult", "type": "object" }, + "TissueDissecting": { + "additionalProperties": false, + "description": "A process that takes a brain section and produces a tissue sample.", + "properties": { + "input_entity": { + "$ref": "#/$defs/BrainSection" + }, + "output_entity": { + "$ref": "#/$defs/TissueSample" + } + }, + "title": "TissueDissecting", + "type": "object" + }, "TissueSample": { "additionalProperties": false, "description": "", "properties": { - "created_by_process_id": { - "description": "The id of the process that created this object.", - "type": "string" - }, - "created_by_process_type": { - "description": "The type of process that created this object.", - "type": "string" + "created_by_process": { + "$ref": "#/$defs/TissueDissecting" }, "label": { "description": "The name of the object.", diff --git a/jsonld-context-autogen/kbmodel.context.jsonld b/jsonld-context-autogen/kbmodel.context.jsonld index aa638055..e3cd4cbe 100644 --- a/jsonld-context-autogen/kbmodel.context.jsonld +++ b/jsonld-context-autogen/kbmodel.context.jsonld @@ -627,9 +627,6 @@ "@type": "@id", "@id": "biolink:affiliation" }, - "age_at_death": { - "@type": "xsd:integer" - }, "id": "@id", "aggregate_statistic": { "@id": "biolink:aggregate_statistic" @@ -652,6 +649,18 @@ "amplified_quantity": { "@type": "xsd:float" }, + "created_by_process": { + "@type": "@id" + }, + "pcr_cycles": { + "@type": "xsd:integer" + }, + "percent_cdna_longer_than_400bp": { + "@type": "xsd:float" + }, + "rna_amplification_pass": { + "@type": "xsd:boolean" + }, "anatomical_context_qualifier": { "@id": "biolink:anatomical_context_qualifier" }, @@ -744,6 +753,12 @@ "@type": "xsd:float", "@id": "biolink:bonferonni_adjusted_p_value" }, + "input_entity": { + "@type": "@id" + }, + "output_entity": { + "@type": "@id" + }, "ordinal": { "@type": "xsd:integer" }, @@ -986,6 +1001,9 @@ "@type": "@id", "@id": "biolink:disrupts" }, + "number_of_cells_collected": { + "@type": "xsd:integer" + }, "distribution_download_url": { "@id": "biolink:distribution_download_url" }, @@ -1629,6 +1647,9 @@ "input_amount": { "@type": "xsd:float" }, + "library_prep_pass": { + "@type": "xsd:boolean" + }, "quantification_fmol": { "@type": "xsd:float" }, @@ -1641,6 +1662,9 @@ "input_quantity": { "@type": "xsd:integer" }, + "tube_avg_size": { + "@type": "xsd:integer" + }, "tube_contents": { "@type": "xsd:float" }, diff --git a/models_py-autogen/kbmodel.py b/models_py-autogen/kbmodel.py index adfa90e6..346694d7 100644 --- a/models_py-autogen/kbmodel.py +++ b/models_py-autogen/kbmodel.py @@ -443,92 +443,179 @@ class AnnotationCollection(ConfiguredBaseModel): -class ProcessOutput(ConfiguredBaseModel): +class Process(ConfiguredBaseModel): """ - The output of a process. + A process that takes input entities and produces output entities. """ - label: Optional[str] = Field(None, description="""The name of the object.""") - created_by_process_id: Optional[str] = Field(None, description="""The id of the process that created this object.""") - created_by_process_type: Optional[str] = Field(None, description="""The type of process that created this object.""") + input_entity: Optional[str] = Field(None, description="""The input entity of the process.""") + output_entity: Optional[str] = Field(None, description="""The output entity of the process.""") + process_id: Optional[str] = Field(None, description="""The id of the process.""") + + + +class BrainExtraction(ConfiguredBaseModel): + """ + A process that takes a brain sample from a donor and produces a brain segment. + """ + input_entity: Optional[str] = Field(None) + output_entity: Optional[BrainSegment] = Field(None) + + + +class BrainSegmentSectioning(ConfiguredBaseModel): + """ + A process that takes a brain segment and produces a brain section. + """ + input_entity: Optional[BrainSegment] = Field(None) + output_entity: Optional[BrainSection] = Field(None) + + + +class TissueDissecting(ConfiguredBaseModel): + """ + A process that takes a brain section and produces a tissue sample. + """ + input_entity: Optional[BrainSection] = Field(None) + output_entity: Optional[TissueSample] = Field(None) + + + +class CellDissociation(ConfiguredBaseModel): + """ + A process that takes a tissue sample and produces a dissociated cell sample. + """ + input_entity: Optional[TissueSample] = Field(None) + output_entity: Optional[DissociatedCellSample] = Field(None) + + + +class CellEnrichment(ConfiguredBaseModel): + """ + A process that takes a dissociated cell sample and produces an enriched cell sample. + """ + input_entity: Optional[DissociatedCellSample] = Field(None) + output_entity: Optional[EnrichedCellSample] = Field(None) + + + +class CellBarcoding(ConfiguredBaseModel): + """ + A process that takes an enriched cell sample and produces a barcoded cell sample. + """ + input_entity: Optional[EnrichedCellSample] = Field(None) + output_entity: Optional[BarcodedCellSample] = Field(None) -class BrainSegment(ProcessOutput): +class CdnaAmplification(ConfiguredBaseModel): + """ + A process that takes a barcoded cell sample and produces an amplified cDNA sample. + """ + input_entity: Optional[BarcodedCellSample] = Field(None) + output_entity: Optional[AmplifiedCdna] = Field(None) + + +class LibraryConstruction(ConfiguredBaseModel): + """ + A process that takes an amplified cDNA sample and produces a library. + """ + input_entity: Optional[AmplifiedCdna] = Field(None) + output_entity: Optional[Library] = Field(None) + + + +class LibraryAliquoting(ConfiguredBaseModel): + """ + A process that takes a library and produces an library aliquot. + """ + input_entity: Optional[Library] = Field(None) + output_entity: Optional[LibraryAliquot] = Field(None) + + + +class LibraryPooling(ConfiguredBaseModel): + """ + A process that takes a library aliquot and produces a library pool. + """ + input_entity: Optional[LibraryAliquot] = Field(None) + output_entity: Optional[LibraryPool] = Field(None) + + + +class BrainSegment(ConfiguredBaseModel): + + label: Optional[str] = Field(None, description="""The name of the object.""") barcode: Optional[str] = Field(None, description="""The unique identifier of the object.""") anatomical_division: Optional[str] = Field(None) - label: Optional[str] = Field(None, description="""The name of the object.""") - created_by_process_id: Optional[str] = Field(None, description="""The id of the process that created this object.""") - created_by_process_type: Optional[str] = Field(None, description="""The type of process that created this object.""") + created_by_process: Optional[BrainExtraction] = Field(None) -class BrainSection(ProcessOutput): +class BrainSection(ConfiguredBaseModel): + label: Optional[str] = Field(None, description="""The name of the object.""") barcode: Optional[str] = Field(None, description="""The unique identifier of the object.""") ordinal: Optional[int] = Field(None, description="""The ordinal number of the section.""") - label: Optional[str] = Field(None, description="""The name of the object.""") - created_by_process_id: Optional[str] = Field(None, description="""The id of the process that created this object.""") - created_by_process_type: Optional[str] = Field(None, description="""The type of process that created this object.""") + created_by_process: Optional[BrainSegmentSectioning] = Field(None) -class TissueSample(ProcessOutput): +class TissueSample(ConfiguredBaseModel): + label: Optional[str] = Field(None, description="""The name of the object.""") roi_plan: Optional[str] = Field(None) region_of_interest_label: Optional[str] = Field(None, description="""The label of the region of interest.""") - label: Optional[str] = Field(None, description="""The name of the object.""") - created_by_process_id: Optional[str] = Field(None, description="""The id of the process that created this object.""") - created_by_process_type: Optional[str] = Field(None, description="""The type of process that created this object.""") + created_by_process: Optional[TissueDissecting] = Field(None) -class DissociatedCellSample(ProcessOutput): +class DissociatedCellSample(ConfiguredBaseModel): + label: Optional[str] = Field(None, description="""The name of the object.""") cell_prep_type: Optional[str] = Field(None) facs_population_plan: Optional[str] = Field(None) - label: Optional[str] = Field(None, description="""The name of the object.""") - created_by_process_id: Optional[str] = Field(None, description="""The id of the process that created this object.""") - created_by_process_type: Optional[str] = Field(None, description="""The type of process that created this object.""") + number_of_cells_collected: Optional[int] = Field(None) + created_by_process: Optional[CellDissociation] = Field(None) class EnrichedCellSample(ConfiguredBaseModel): - None + label: Optional[str] = Field(None, description="""The name of the object.""") + created_by_process: Optional[CellEnrichment] = Field(None) -class BarcodedCellSample(ProcessOutput): +class BarcodedCellSample(ConfiguredBaseModel): + label: Optional[str] = Field(None, description="""The name of the object.""") port_well: Optional[str] = Field(None) sample_quallity_count: Optional[str] = Field(None) - label: Optional[str] = Field(None, description="""The name of the object.""") - created_by_process_id: Optional[str] = Field(None, description="""The id of the process that created this object.""") - created_by_process_type: Optional[str] = Field(None, description="""The type of process that created this object.""") + created_by_process: Optional[CellBarcoding] = Field(None) -class AmplifiedCdna(ProcessOutput): +class AmplifiedCdna(ConfiguredBaseModel): method: Optional[str] = Field(None) - amplified_quantity: Optional[float] = Field(None, description="""Amount of cDNA amplified (ng).""") - pcr_cycles: Optional[str] = Field(None) - percent_cdna_longer_than_400bp: Optional[str] = Field(None) - rna_amplification_pass_fail: Optional[str] = Field(None) label: Optional[str] = Field(None, description="""The name of the object.""") - created_by_process_id: Optional[str] = Field(None, description="""The id of the process that created this object.""") - created_by_process_type: Optional[str] = Field(None, description="""The type of process that created this object.""") + amplified_quantity: Optional[float] = Field(None, description="""Amount of cDNA amplified (ng).""") + pcr_cycles: Optional[int] = Field(None, description="""Number of PCR cycles used to amplify the cDNA.""") + percent_cdna_longer_than_400bp: Optional[float] = Field(None, description="""The percentage of cDNA fragments that are longer than 400bp.""") + rna_amplification_pass: Optional[bool] = Field(None) + created_by_process: Optional[CdnaAmplification] = Field(None) -class Library(ProcessOutput): +class Library(ConfiguredBaseModel): method: Optional[str] = Field(None) creation_date: Optional[datetime ] = Field(None, description="""The date and time the object was created.""") + label: Optional[str] = Field(None, description="""The name of the object.""") avg_size: Optional[int] = Field(None, description="""The average size (bp) of the library fragments. bp stands for base pairs.""") input_amount: Optional[float] = Field(None, description="""The amount of input material (ng) used to create the library.""") - library_prep_pass: Optional[str] = Field(None) + library_prep_pass: Optional[bool] = Field(None) quantification_fmol: Optional[float] = Field(None) quantification_ng: Optional[float] = Field(None) quantification_nm: Optional[float] = Field(None) @@ -536,29 +623,25 @@ class Library(ProcessOutput): r1_sequence: Optional[str] = Field(None) r2_index: Optional[str] = Field(None) r2_sequence: Optional[str] = Field(None) - label: Optional[str] = Field(None, description="""The name of the object.""") - created_by_process_id: Optional[str] = Field(None, description="""The id of the process that created this object.""") - created_by_process_type: Optional[str] = Field(None, description="""The type of process that created this object.""") + created_by_process: Optional[LibraryConstruction] = Field(None) -class LibraryAliquot(ProcessOutput): +class LibraryAliquot(ConfiguredBaseModel): - input_quantity: Optional[int] = Field(None, description="""The amount of input material (fmol) used to create the library aliquot.""") label: Optional[str] = Field(None, description="""The name of the object.""") - created_by_process_id: Optional[str] = Field(None, description="""The id of the process that created this object.""") - created_by_process_type: Optional[str] = Field(None, description="""The type of process that created this object.""") + input_quantity: Optional[int] = Field(None, description="""The amount of input material (fmol) used to create the library aliquot.""") + created_by_process: Optional[LibraryAliquoting] = Field(None) -class LibraryPool(ProcessOutput): +class LibraryPool(ConfiguredBaseModel): - tube_avg_size: Optional[str] = Field(None) + label: Optional[str] = Field(None, description="""The name of the object.""") + tube_avg_size: Optional[int] = Field(None, description="""The average size (bp) of the library fragments in the tube.""") tube_contents: Optional[float] = Field(None, description="""The content concentration (nm).""") tube_internal_label: Optional[str] = Field(None) - label: Optional[str] = Field(None, description="""The name of the object.""") - created_by_process_id: Optional[str] = Field(None, description="""The id of the process that created this object.""") - created_by_process_type: Optional[str] = Field(None, description="""The type of process that created this object.""") + created_by_process: Optional[LibraryPooling] = Field(None) @@ -2119,7 +2202,7 @@ class Donor(ThingWithTaxon, Entity): sex: Optional[SexType] = Field(None) date_of_birth: Optional[date] = Field(None, description="""The date of birth of the donor.""") date_of_death: Optional[date] = Field(None, description="""The date of death of the donor.""") - age_at_death: Optional[int] = Field(None, description="""The age of the donor at the time of death.""") + age_at_death: Optional[str] = Field(None, description="""The age of the donor at the time of death.""") full_genotype: Optional[str] = Field(None, description="""The full genotype of the donor.""") in_taxon: Optional[List[str]] = Field(None, description="""connects an entity to its taxonomic classification. Only certain kinds of entities can be taxonomically classified; see 'thing with taxon'""") in_taxon_label: Optional[str] = Field(None, description="""The human readable scientific name for the taxon of the entity.""") @@ -8977,7 +9060,17 @@ class OrganismTaxonToEnvironmentAssociation(OrganismTaxonToEntityAssociation, As # Update forward refs # see https://pydantic-docs.helpmanual.io/usage/postponed_annotations/ AnnotationCollection.update_forward_refs() -ProcessOutput.update_forward_refs() +Process.update_forward_refs() +BrainExtraction.update_forward_refs() +BrainSegmentSectioning.update_forward_refs() +TissueDissecting.update_forward_refs() +CellDissociation.update_forward_refs() +CellEnrichment.update_forward_refs() +CellBarcoding.update_forward_refs() +CdnaAmplification.update_forward_refs() +LibraryConstruction.update_forward_refs() +LibraryAliquoting.update_forward_refs() +LibraryPooling.update_forward_refs() BrainSegment.update_forward_refs() BrainSection.update_forward_refs() TissueSample.update_forward_refs() From 8836648d1f968de357b36df8e60e5314d1f4fc11 Mon Sep 17 00:00:00 2001 From: Puja Trivedi Date: Mon, 14 Aug 2023 11:27:38 -0700 Subject: [PATCH 12/17] Fixed slot_usage error --- linkml-schema/kbmodel.yaml | 137 +++++++++++++------------------------ 1 file changed, 49 insertions(+), 88 deletions(-) diff --git a/linkml-schema/kbmodel.yaml b/linkml-schema/kbmodel.yaml index 5b5a316c..2457a7ba 100644 --- a/linkml-schema/kbmodel.yaml +++ b/linkml-schema/kbmodel.yaml @@ -90,9 +90,8 @@ classes: brain extraction: description: >- A process that takes a brain sample from a donor and produces a brain segment. - #is_a: process - #slot usage: - attributes: + is_a: process + slot_usage: input entity: range: donor output entity: @@ -101,9 +100,8 @@ classes: brain segment sectioning: description: >- A process that takes a brain segment and produces a brain section. - #is_a: process - #slot usage: - attributes: + is_a: process + slot_usage: input entity: range: brain segment output entity: @@ -112,9 +110,8 @@ classes: tissue dissecting: description: >- A process that takes a brain section and produces a tissue sample. - #is_a: process - #slot usage: - attributes: + is_a: process + slot_usage: input entity: range: brain section output entity: @@ -123,9 +120,8 @@ classes: cell dissociation: description: >- A process that takes a tissue sample and produces a dissociated cell sample. - #is_a: process - #slot usage: - attributes: + is_a: process + slot_usage: input entity: range: tissue sample output entity: @@ -134,9 +130,8 @@ classes: cell enrichment: description: >- A process that takes a dissociated cell sample and produces an enriched cell sample. - #is_a: process - #slot usage: - attributes: + is_a: process + slot_usage: input entity: range: dissociated cell sample output entity: @@ -145,9 +140,8 @@ classes: cell barcoding: description: >- A process that takes an enriched cell sample and produces a barcoded cell sample. - #is_a: process - #slot usage: - attributes: + is_a: process + slot_usage: input entity: range: enriched cell sample output entity: @@ -156,9 +150,8 @@ classes: cdna amplification: description: >- A process that takes a barcoded cell sample and produces an amplified cDNA sample. - #is_a: process - #slot usage: - attributes: + is_a: process + slot_usage: input entity: range: barcoded cell sample output entity: @@ -167,9 +160,8 @@ classes: library construction: description: >- A process that takes an amplified cDNA sample and produces a library. - #is_a: process - #slot usage: - attributes: + is_a: process + slot_usage: input entity: range: amplified cdna output entity: @@ -178,9 +170,8 @@ classes: library aliquoting: description: >- A process that takes a library and produces an library aliquot. - #is_a: process - #slot usage: - attributes: + is_a: process + slot_usage: input entity: range: library output entity: @@ -189,27 +180,21 @@ classes: library pooling: description: >- A process that takes a library aliquot and produces a library pool. - #is_a: process - #slot usage: - attributes: + is_a: process + slot_usage: input entity: range: library aliquot output entity: range: library pool - # # process output: - # # description: >- - # # The output of a process. - # # slots: - # # - label - # # attributes: - # # created by process id: - # # description: >- - # # The id of the process that created this object. - # # created by process type: - # # description: >- - # # The type of process that created this object. + process output: + description: >- + The output of a process. + slots: + - label + - created by process + # 028 - donors.ipynb donor: @@ -230,14 +215,12 @@ classes: # 027 - brain_extraction.ipynb brain segment: - #is_a: process output + is_a: process output slots: - - label - barcode - # - created by process attributes: anatomical division: - #slot usage: + slot_usage: created by process: range: brain extraction @@ -245,85 +228,69 @@ classes: # 026 - brain_segment_sectioning.ipynb brain section: - #is_a: process output + is_a: process output slots: - - label - barcode - # - created by process attributes: ordinal: description: >- The ordinal number of the section. range: integer - #slot usage: + slot_usage: created by process: range: brain segment sectioning # 025b - tissue_dissectioning.ipynb tissue sample: - #is_a: process output - slots: - - label - # - created by process + is_a: process output attributes: roi plan: region of interest label: description: >- The label of the region of interest. - #slot usage: + slot_usage: created by process: range: tissue dissecting # 024 - cell_dissociation.ipynb dissociated cell sample: - #is_a: process output - slots: - - label - # - created by process + is_a: process output attributes: cell prep type: facs population plan: number of cells collected: range: integer - #slot usage: + slot_usage: created by process: range: cell dissociation #TODO: Add addtional attributes and slots to this class. enriched cell sample: - slots: - - label - # - created by process - # slot usage: - attributes: + is_a: process output + slot_usage: created by process: range: cell enrichment # 023 - cell_barcoding.ipynb barcoded cell sample: - #is_a: process output - slots: - - label - # - created by process + is_a: process output attributes: port well: - sample quallity count: - # slot usage: + sample quality count: + slot_usage: created by process: range: cell barcoding # 022 - cnda_amplification.ipynb amplified cdna: - # is_a: process output + is_a: process output slots: - method - - label - # - created by process attributes: amplified quantity: description: >- @@ -339,7 +306,7 @@ classes: range: float rna amplification pass: range: boolean - # slot usage: + slot_usage: created by process: range: cdna amplification @@ -347,12 +314,10 @@ classes: # 021 - library_constructions.ipynb library: - # is_a: process output + is_a: process output slots: - method - creation date - - label - # - created by process attributes: avg size: description: The average size (bp) of the library fragments. bp stands for base pairs. @@ -378,29 +343,25 @@ classes: creation date: description: The date and time the object was created. range: datetime + created by process: + range: library construction # 020 - aliquoting_and_pooling.ipynb library aliquot: - # is_a: process output - slots: - - label - # - created by process + is_a: process output attributes: input quantity: description: The amount of input material (fmol) used to create the library aliquot. range: integer - # slot_usage: + slot_usage: created by process: range: library aliquoting # 020 - aliquoting_and_pooling.ipynb library pool: - # is_a: process output - slots: - - label - # - created by process + is_a: process output attributes: tube avg size: description: The average size (bp) of the library fragments in the tube. @@ -409,7 +370,7 @@ classes: description: The content concentration (nm). range: float tube internal label: - # slot usage: + slot_usage: created by process: range: library pooling From e168016673082d2f66110ad7b6d26f25f099a757 Mon Sep 17 00:00:00 2001 From: GitHub Action Date: Mon, 14 Aug 2023 18:31:00 +0000 Subject: [PATCH 13/17] generate another formats --- erdiagram-autogen/kbmodel.md | 44 +++--- json-schema-autogen/kbmodel.json | 143 ++++++++++++++---- jsonld-context-autogen/kbmodel.context.jsonld | 12 +- models_py-autogen/kbmodel.py | 138 +++++++++-------- 4 files changed, 220 insertions(+), 117 deletions(-) diff --git a/erdiagram-autogen/kbmodel.md b/erdiagram-autogen/kbmodel.md index 7dad61a9..a1ea3f38 100644 --- a/erdiagram-autogen/kbmodel.md +++ b/erdiagram-autogen/kbmodel.md @@ -1,25 +1,24 @@ ```mermaid erDiagram LibraryPool { - string label integer tube_avg_size float tube_contents string tube_internal_label + string label } LibraryPooling { - + string process_id } LibraryAliquot { - string label integer input_quantity + string label } LibraryAliquoting { - + string process_id } Library { string method datetime creation_date - string label integer avg_size float input_amount boolean library_prep_pass @@ -30,67 +29,68 @@ Library { string r1_sequence string r2_index string r2_sequence + string label } LibraryConstruction { - + string process_id } AmplifiedCdna { string method - string label float amplified_quantity integer pcr_cycles float percent_cdna_longer_than_400bp boolean rna_amplification_pass + string label } CdnaAmplification { - + string process_id } BarcodedCellSample { - string label string port_well - string sample_quallity_count + string sample_quality_count + string label } CellBarcoding { - + string process_id } EnrichedCellSample { string label } CellEnrichment { - + string process_id } DissociatedCellSample { - string label string cell_prep_type string facs_population_plan integer number_of_cells_collected + string label } CellDissociation { - + string process_id } TissueSample { - string label string roi_plan string region_of_interest_label + string label } TissueDissecting { - + string process_id } BrainSection { - string label string barcode integer ordinal + string label } BrainSegmentSectioning { - + string process_id } BrainSegment { - string label string barcode string anatomical_division + string label } BrainExtraction { - + string process_id } Donor { string label @@ -107,6 +107,10 @@ Donor { label_type name narrative_text description } +ProcessOutput { + string label + string created_by_process +} Process { string input_entity string output_entity diff --git a/json-schema-autogen/kbmodel.json b/json-schema-autogen/kbmodel.json index ba070ea5..6c85b272 100644 --- a/json-schema-autogen/kbmodel.json +++ b/json-schema-autogen/kbmodel.json @@ -257,7 +257,8 @@ "type": "number" }, "created_by_process": { - "$ref": "#/$defs/CdnaAmplification" + "$ref": "#/$defs/CdnaAmplification", + "description": "The process that created the object." }, "label": { "description": "The name of the object.", @@ -1264,7 +1265,8 @@ "description": "", "properties": { "created_by_process": { - "$ref": "#/$defs/CellBarcoding" + "$ref": "#/$defs/CellBarcoding", + "description": "The process that created the object." }, "label": { "description": "The name of the object.", @@ -1273,7 +1275,7 @@ "port_well": { "type": "string" }, - "sample_quallity_count": { + "sample_quality_count": { "type": "string" } }, @@ -2453,10 +2455,16 @@ "description": "A process that takes a brain sample from a donor and produces a brain segment.", "properties": { "input_entity": { + "description": "The input entity of the process.", "type": "string" }, "output_entity": { - "$ref": "#/$defs/BrainSegment" + "$ref": "#/$defs/BrainSegment", + "description": "The output entity of the process." + }, + "process_id": { + "description": "The id of the process.", + "type": "string" } }, "title": "BrainExtraction", @@ -2471,7 +2479,8 @@ "type": "string" }, "created_by_process": { - "$ref": "#/$defs/BrainSegmentSectioning" + "$ref": "#/$defs/BrainSegmentSectioning", + "description": "The process that created the object." }, "label": { "description": "The name of the object.", @@ -2497,7 +2506,8 @@ "type": "string" }, "created_by_process": { - "$ref": "#/$defs/BrainExtraction" + "$ref": "#/$defs/BrainExtraction", + "description": "The process that created the object." }, "label": { "description": "The name of the object.", @@ -2512,10 +2522,16 @@ "description": "A process that takes a brain segment and produces a brain section.", "properties": { "input_entity": { - "$ref": "#/$defs/BrainSegment" + "$ref": "#/$defs/BrainSegment", + "description": "The input entity of the process." }, "output_entity": { - "$ref": "#/$defs/BrainSection" + "$ref": "#/$defs/BrainSection", + "description": "The output entity of the process." + }, + "process_id": { + "description": "The id of the process.", + "type": "string" } }, "title": "BrainSegmentSectioning", @@ -3074,10 +3090,16 @@ "description": "A process that takes a barcoded cell sample and produces an amplified cDNA sample.", "properties": { "input_entity": { - "$ref": "#/$defs/BarcodedCellSample" + "$ref": "#/$defs/BarcodedCellSample", + "description": "The input entity of the process." }, "output_entity": { - "$ref": "#/$defs/AmplifiedCdna" + "$ref": "#/$defs/AmplifiedCdna", + "description": "The output entity of the process." + }, + "process_id": { + "description": "The id of the process.", + "type": "string" } }, "title": "CdnaAmplification", @@ -3173,10 +3195,16 @@ "description": "A process that takes an enriched cell sample and produces a barcoded cell sample.", "properties": { "input_entity": { - "$ref": "#/$defs/EnrichedCellSample" + "$ref": "#/$defs/EnrichedCellSample", + "description": "The input entity of the process." }, "output_entity": { - "$ref": "#/$defs/BarcodedCellSample" + "$ref": "#/$defs/BarcodedCellSample", + "description": "The output entity of the process." + }, + "process_id": { + "description": "The id of the process.", + "type": "string" } }, "title": "CellBarcoding", @@ -3187,10 +3215,16 @@ "description": "A process that takes a tissue sample and produces a dissociated cell sample.", "properties": { "input_entity": { - "$ref": "#/$defs/TissueSample" + "$ref": "#/$defs/TissueSample", + "description": "The input entity of the process." }, "output_entity": { - "$ref": "#/$defs/DissociatedCellSample" + "$ref": "#/$defs/DissociatedCellSample", + "description": "The output entity of the process." + }, + "process_id": { + "description": "The id of the process.", + "type": "string" } }, "title": "CellDissociation", @@ -3201,10 +3235,16 @@ "description": "A process that takes a dissociated cell sample and produces an enriched cell sample.", "properties": { "input_entity": { - "$ref": "#/$defs/DissociatedCellSample" + "$ref": "#/$defs/DissociatedCellSample", + "description": "The input entity of the process." }, "output_entity": { - "$ref": "#/$defs/EnrichedCellSample" + "$ref": "#/$defs/EnrichedCellSample", + "description": "The output entity of the process." + }, + "process_id": { + "description": "The id of the process.", + "type": "string" } }, "title": "CellEnrichment", @@ -9691,7 +9731,8 @@ "type": "string" }, "created_by_process": { - "$ref": "#/$defs/CellDissociation" + "$ref": "#/$defs/CellDissociation", + "description": "The process that created the object." }, "facs_population_plan": { "type": "string" @@ -10669,7 +10710,8 @@ "description": "", "properties": { "created_by_process": { - "$ref": "#/$defs/CellEnrichment" + "$ref": "#/$defs/CellEnrichment", + "description": "The process that created the object." }, "label": { "description": "The name of the object.", @@ -18796,7 +18838,8 @@ "description": "", "properties": { "created_by_process": { - "$ref": "#/$defs/LibraryAliquoting" + "$ref": "#/$defs/LibraryAliquoting", + "description": "The process that created the object." }, "input_quantity": { "description": "The amount of input material (fmol) used to create the library aliquot.", @@ -18815,10 +18858,16 @@ "description": "A process that takes a library and produces an library aliquot.", "properties": { "input_entity": { - "$ref": "#/$defs/Library" + "$ref": "#/$defs/Library", + "description": "The input entity of the process." }, "output_entity": { - "$ref": "#/$defs/LibraryAliquot" + "$ref": "#/$defs/LibraryAliquot", + "description": "The output entity of the process." + }, + "process_id": { + "description": "The id of the process.", + "type": "string" } }, "title": "LibraryAliquoting", @@ -18829,10 +18878,16 @@ "description": "A process that takes an amplified cDNA sample and produces a library.", "properties": { "input_entity": { - "$ref": "#/$defs/AmplifiedCdna" + "$ref": "#/$defs/AmplifiedCdna", + "description": "The input entity of the process." }, "output_entity": { - "$ref": "#/$defs/Library" + "$ref": "#/$defs/Library", + "description": "The output entity of the process." + }, + "process_id": { + "description": "The id of the process.", + "type": "string" } }, "title": "LibraryConstruction", @@ -18843,7 +18898,8 @@ "description": "", "properties": { "created_by_process": { - "$ref": "#/$defs/LibraryPooling" + "$ref": "#/$defs/LibraryPooling", + "description": "The process that created the object." }, "label": { "description": "The name of the object.", @@ -18869,10 +18925,16 @@ "description": "A process that takes a library aliquot and produces a library pool.", "properties": { "input_entity": { - "$ref": "#/$defs/LibraryAliquot" + "$ref": "#/$defs/LibraryAliquot", + "description": "The input entity of the process." }, "output_entity": { - "$ref": "#/$defs/LibraryPool" + "$ref": "#/$defs/LibraryPool", + "description": "The output entity of the process." + }, + "process_id": { + "description": "The id of the process.", + "type": "string" } }, "title": "LibraryPooling", @@ -25434,6 +25496,22 @@ "title": "Process", "type": "object" }, + "ProcessOutput": { + "additionalProperties": false, + "description": "The output of a process.", + "properties": { + "created_by_process": { + "description": "The process that created the object.", + "type": "string" + }, + "label": { + "description": "The name of the object.", + "type": "string" + } + }, + "title": "ProcessOutput", + "type": "object" + }, "ProcessedMaterial": { "additionalProperties": false, "description": "A chemical entity (often a mixture) processed for consumption for nutritional, medical or technical use. Is a material entity that is created or changed during material processing.", @@ -28866,10 +28944,16 @@ "description": "A process that takes a brain section and produces a tissue sample.", "properties": { "input_entity": { - "$ref": "#/$defs/BrainSection" + "$ref": "#/$defs/BrainSection", + "description": "The input entity of the process." }, "output_entity": { - "$ref": "#/$defs/TissueSample" + "$ref": "#/$defs/TissueSample", + "description": "The output entity of the process." + }, + "process_id": { + "description": "The id of the process.", + "type": "string" } }, "title": "TissueDissecting", @@ -28880,7 +28964,8 @@ "description": "", "properties": { "created_by_process": { - "$ref": "#/$defs/TissueDissecting" + "$ref": "#/$defs/TissueDissecting", + "description": "The process that created the object." }, "label": { "description": "The name of the object.", diff --git a/jsonld-context-autogen/kbmodel.context.jsonld b/jsonld-context-autogen/kbmodel.context.jsonld index e3cd4cbe..83984c97 100644 --- a/jsonld-context-autogen/kbmodel.context.jsonld +++ b/jsonld-context-autogen/kbmodel.context.jsonld @@ -649,9 +649,6 @@ "amplified_quantity": { "@type": "xsd:float" }, - "created_by_process": { - "@type": "@id" - }, "pcr_cycles": { "@type": "xsd:integer" }, @@ -753,12 +750,6 @@ "@type": "xsd:float", "@id": "biolink:bonferonni_adjusted_p_value" }, - "input_entity": { - "@type": "@id" - }, - "output_entity": { - "@type": "@id" - }, "ordinal": { "@type": "xsd:integer" }, @@ -1644,6 +1635,9 @@ "avg_size": { "@type": "xsd:integer" }, + "created_by_process": { + "@type": "@id" + }, "input_amount": { "@type": "xsd:float" }, diff --git a/models_py-autogen/kbmodel.py b/models_py-autogen/kbmodel.py index 346694d7..73bf2bb1 100644 --- a/models_py-autogen/kbmodel.py +++ b/models_py-autogen/kbmodel.py @@ -453,166 +453,184 @@ class Process(ConfiguredBaseModel): -class BrainExtraction(ConfiguredBaseModel): +class BrainExtraction(Process): """ A process that takes a brain sample from a donor and produces a brain segment. """ - input_entity: Optional[str] = Field(None) - output_entity: Optional[BrainSegment] = Field(None) + input_entity: Optional[str] = Field(None, description="""The input entity of the process.""") + output_entity: Optional[BrainSegment] = Field(None, description="""The output entity of the process.""") + process_id: Optional[str] = Field(None, description="""The id of the process.""") -class BrainSegmentSectioning(ConfiguredBaseModel): +class BrainSegmentSectioning(Process): """ A process that takes a brain segment and produces a brain section. """ - input_entity: Optional[BrainSegment] = Field(None) - output_entity: Optional[BrainSection] = Field(None) + input_entity: Optional[BrainSegment] = Field(None, description="""The input entity of the process.""") + output_entity: Optional[BrainSection] = Field(None, description="""The output entity of the process.""") + process_id: Optional[str] = Field(None, description="""The id of the process.""") -class TissueDissecting(ConfiguredBaseModel): +class TissueDissecting(Process): """ A process that takes a brain section and produces a tissue sample. """ - input_entity: Optional[BrainSection] = Field(None) - output_entity: Optional[TissueSample] = Field(None) + input_entity: Optional[BrainSection] = Field(None, description="""The input entity of the process.""") + output_entity: Optional[TissueSample] = Field(None, description="""The output entity of the process.""") + process_id: Optional[str] = Field(None, description="""The id of the process.""") -class CellDissociation(ConfiguredBaseModel): +class CellDissociation(Process): """ A process that takes a tissue sample and produces a dissociated cell sample. """ - input_entity: Optional[TissueSample] = Field(None) - output_entity: Optional[DissociatedCellSample] = Field(None) + input_entity: Optional[TissueSample] = Field(None, description="""The input entity of the process.""") + output_entity: Optional[DissociatedCellSample] = Field(None, description="""The output entity of the process.""") + process_id: Optional[str] = Field(None, description="""The id of the process.""") -class CellEnrichment(ConfiguredBaseModel): +class CellEnrichment(Process): """ A process that takes a dissociated cell sample and produces an enriched cell sample. """ - input_entity: Optional[DissociatedCellSample] = Field(None) - output_entity: Optional[EnrichedCellSample] = Field(None) + input_entity: Optional[DissociatedCellSample] = Field(None, description="""The input entity of the process.""") + output_entity: Optional[EnrichedCellSample] = Field(None, description="""The output entity of the process.""") + process_id: Optional[str] = Field(None, description="""The id of the process.""") -class CellBarcoding(ConfiguredBaseModel): +class CellBarcoding(Process): """ A process that takes an enriched cell sample and produces a barcoded cell sample. """ - input_entity: Optional[EnrichedCellSample] = Field(None) - output_entity: Optional[BarcodedCellSample] = Field(None) + input_entity: Optional[EnrichedCellSample] = Field(None, description="""The input entity of the process.""") + output_entity: Optional[BarcodedCellSample] = Field(None, description="""The output entity of the process.""") + process_id: Optional[str] = Field(None, description="""The id of the process.""") -class CdnaAmplification(ConfiguredBaseModel): +class CdnaAmplification(Process): """ A process that takes a barcoded cell sample and produces an amplified cDNA sample. """ - input_entity: Optional[BarcodedCellSample] = Field(None) - output_entity: Optional[AmplifiedCdna] = Field(None) + input_entity: Optional[BarcodedCellSample] = Field(None, description="""The input entity of the process.""") + output_entity: Optional[AmplifiedCdna] = Field(None, description="""The output entity of the process.""") + process_id: Optional[str] = Field(None, description="""The id of the process.""") -class LibraryConstruction(ConfiguredBaseModel): +class LibraryConstruction(Process): """ A process that takes an amplified cDNA sample and produces a library. """ - input_entity: Optional[AmplifiedCdna] = Field(None) - output_entity: Optional[Library] = Field(None) + input_entity: Optional[AmplifiedCdna] = Field(None, description="""The input entity of the process.""") + output_entity: Optional[Library] = Field(None, description="""The output entity of the process.""") + process_id: Optional[str] = Field(None, description="""The id of the process.""") -class LibraryAliquoting(ConfiguredBaseModel): +class LibraryAliquoting(Process): """ A process that takes a library and produces an library aliquot. """ - input_entity: Optional[Library] = Field(None) - output_entity: Optional[LibraryAliquot] = Field(None) + input_entity: Optional[Library] = Field(None, description="""The input entity of the process.""") + output_entity: Optional[LibraryAliquot] = Field(None, description="""The output entity of the process.""") + process_id: Optional[str] = Field(None, description="""The id of the process.""") -class LibraryPooling(ConfiguredBaseModel): +class LibraryPooling(Process): """ A process that takes a library aliquot and produces a library pool. """ - input_entity: Optional[LibraryAliquot] = Field(None) - output_entity: Optional[LibraryPool] = Field(None) + input_entity: Optional[LibraryAliquot] = Field(None, description="""The input entity of the process.""") + output_entity: Optional[LibraryPool] = Field(None, description="""The output entity of the process.""") + process_id: Optional[str] = Field(None, description="""The id of the process.""") -class BrainSegment(ConfiguredBaseModel): - +class ProcessOutput(ConfiguredBaseModel): + """ + The output of a process. + """ label: Optional[str] = Field(None, description="""The name of the object.""") + created_by_process: Optional[str] = Field(None, description="""The process that created the object.""") + + + +class BrainSegment(ProcessOutput): + barcode: Optional[str] = Field(None, description="""The unique identifier of the object.""") anatomical_division: Optional[str] = Field(None) - created_by_process: Optional[BrainExtraction] = Field(None) + label: Optional[str] = Field(None, description="""The name of the object.""") + created_by_process: Optional[BrainExtraction] = Field(None, description="""The process that created the object.""") -class BrainSection(ConfiguredBaseModel): +class BrainSection(ProcessOutput): - label: Optional[str] = Field(None, description="""The name of the object.""") barcode: Optional[str] = Field(None, description="""The unique identifier of the object.""") ordinal: Optional[int] = Field(None, description="""The ordinal number of the section.""") - created_by_process: Optional[BrainSegmentSectioning] = Field(None) + label: Optional[str] = Field(None, description="""The name of the object.""") + created_by_process: Optional[BrainSegmentSectioning] = Field(None, description="""The process that created the object.""") -class TissueSample(ConfiguredBaseModel): +class TissueSample(ProcessOutput): - label: Optional[str] = Field(None, description="""The name of the object.""") roi_plan: Optional[str] = Field(None) region_of_interest_label: Optional[str] = Field(None, description="""The label of the region of interest.""") - created_by_process: Optional[TissueDissecting] = Field(None) + label: Optional[str] = Field(None, description="""The name of the object.""") + created_by_process: Optional[TissueDissecting] = Field(None, description="""The process that created the object.""") -class DissociatedCellSample(ConfiguredBaseModel): +class DissociatedCellSample(ProcessOutput): - label: Optional[str] = Field(None, description="""The name of the object.""") cell_prep_type: Optional[str] = Field(None) facs_population_plan: Optional[str] = Field(None) number_of_cells_collected: Optional[int] = Field(None) - created_by_process: Optional[CellDissociation] = Field(None) + label: Optional[str] = Field(None, description="""The name of the object.""") + created_by_process: Optional[CellDissociation] = Field(None, description="""The process that created the object.""") -class EnrichedCellSample(ConfiguredBaseModel): +class EnrichedCellSample(ProcessOutput): label: Optional[str] = Field(None, description="""The name of the object.""") - created_by_process: Optional[CellEnrichment] = Field(None) + created_by_process: Optional[CellEnrichment] = Field(None, description="""The process that created the object.""") -class BarcodedCellSample(ConfiguredBaseModel): +class BarcodedCellSample(ProcessOutput): - label: Optional[str] = Field(None, description="""The name of the object.""") port_well: Optional[str] = Field(None) - sample_quallity_count: Optional[str] = Field(None) - created_by_process: Optional[CellBarcoding] = Field(None) + sample_quality_count: Optional[str] = Field(None) + label: Optional[str] = Field(None, description="""The name of the object.""") + created_by_process: Optional[CellBarcoding] = Field(None, description="""The process that created the object.""") -class AmplifiedCdna(ConfiguredBaseModel): +class AmplifiedCdna(ProcessOutput): method: Optional[str] = Field(None) - label: Optional[str] = Field(None, description="""The name of the object.""") amplified_quantity: Optional[float] = Field(None, description="""Amount of cDNA amplified (ng).""") pcr_cycles: Optional[int] = Field(None, description="""Number of PCR cycles used to amplify the cDNA.""") percent_cdna_longer_than_400bp: Optional[float] = Field(None, description="""The percentage of cDNA fragments that are longer than 400bp.""") rna_amplification_pass: Optional[bool] = Field(None) - created_by_process: Optional[CdnaAmplification] = Field(None) + label: Optional[str] = Field(None, description="""The name of the object.""") + created_by_process: Optional[CdnaAmplification] = Field(None, description="""The process that created the object.""") -class Library(ConfiguredBaseModel): +class Library(ProcessOutput): method: Optional[str] = Field(None) creation_date: Optional[datetime ] = Field(None, description="""The date and time the object was created.""") - label: Optional[str] = Field(None, description="""The name of the object.""") avg_size: Optional[int] = Field(None, description="""The average size (bp) of the library fragments. bp stands for base pairs.""") input_amount: Optional[float] = Field(None, description="""The amount of input material (ng) used to create the library.""") library_prep_pass: Optional[bool] = Field(None) @@ -624,24 +642,25 @@ class Library(ConfiguredBaseModel): r2_index: Optional[str] = Field(None) r2_sequence: Optional[str] = Field(None) created_by_process: Optional[LibraryConstruction] = Field(None) + label: Optional[str] = Field(None, description="""The name of the object.""") -class LibraryAliquot(ConfiguredBaseModel): +class LibraryAliquot(ProcessOutput): - label: Optional[str] = Field(None, description="""The name of the object.""") input_quantity: Optional[int] = Field(None, description="""The amount of input material (fmol) used to create the library aliquot.""") - created_by_process: Optional[LibraryAliquoting] = Field(None) + label: Optional[str] = Field(None, description="""The name of the object.""") + created_by_process: Optional[LibraryAliquoting] = Field(None, description="""The process that created the object.""") -class LibraryPool(ConfiguredBaseModel): +class LibraryPool(ProcessOutput): - label: Optional[str] = Field(None, description="""The name of the object.""") tube_avg_size: Optional[int] = Field(None, description="""The average size (bp) of the library fragments in the tube.""") tube_contents: Optional[float] = Field(None, description="""The content concentration (nm).""") tube_internal_label: Optional[str] = Field(None) - created_by_process: Optional[LibraryPooling] = Field(None) + label: Optional[str] = Field(None, description="""The name of the object.""") + created_by_process: Optional[LibraryPooling] = Field(None, description="""The process that created the object.""") @@ -9071,6 +9090,7 @@ class OrganismTaxonToEnvironmentAssociation(OrganismTaxonToEntityAssociation, As LibraryConstruction.update_forward_refs() LibraryAliquoting.update_forward_refs() LibraryPooling.update_forward_refs() +ProcessOutput.update_forward_refs() BrainSegment.update_forward_refs() BrainSection.update_forward_refs() TissueSample.update_forward_refs() From de7a589cf7ffb867fd207a286b5194a9d7eff4c0 Mon Sep 17 00:00:00 2001 From: Puja Trivedi Date: Tue, 5 Sep 2023 15:29:25 -0700 Subject: [PATCH 14/17] Added prov 'edges' to model by creating new classes 'prov entity' and 'prov activity'. Also made sure purple and orange boxes inherit from biolink:entity and biolink:activity' --- linkml-schema/kbmodel.yaml | 225 ++++++++++++++++++++++++------------- 1 file changed, 150 insertions(+), 75 deletions(-) diff --git a/linkml-schema/kbmodel.yaml b/linkml-schema/kbmodel.yaml index 2457a7ba..9075f2ea 100644 --- a/linkml-schema/kbmodel.yaml +++ b/linkml-schema/kbmodel.yaml @@ -8,6 +8,8 @@ prefixes: schema: http://schema.org/ ncbi: https://www.ncbi.nlm.nih.gov/Taxonomy/Browser/wwwtax.cgi?mode=Info&id= NCBIAssembly: https://www.ncbi.nlm.nih.gov/assembly/ + prov: http://www.w3.org/ns/prov# + imports: - linkml:types @@ -78,122 +80,140 @@ classes: inlined_as_list: true range: genome assembly - process: + prov activity: description: >- - A process that takes input entities and produces output entities. + Based off prov:Activity; an activity is something that occurs over a period of time and acts upon or with entities; it may include consuming, processing, transforming, modifying, relocating, using, or generating entities. slots: - - input entity - - output entity - - process id - + - used + - generated brain extraction: description: >- A process that takes a brain sample from a donor and produces a brain segment. - is_a: process + is_a: activity + mixins: + - prov activity slot_usage: - input entity: + used: range: donor - output entity: + generated: range: brain segment brain segment sectioning: description: >- A process that takes a brain segment and produces a brain section. - is_a: process + is_a: activity + mixins: + - prov activity slot_usage: - input entity: + used: range: brain segment - output entity: + generated: range: brain section tissue dissecting: description: >- A process that takes a brain section and produces a tissue sample. - is_a: process + is_a: activity + mixins: + - prov activity slot_usage: - input entity: + used: range: brain section - output entity: + generated: range: tissue sample cell dissociation: description: >- A process that takes a tissue sample and produces a dissociated cell sample. - is_a: process + is_a: activity + mixins: + - prov activity slot_usage: - input entity: + used: range: tissue sample - output entity: + generated: range: dissociated cell sample cell enrichment: description: >- A process that takes a dissociated cell sample and produces an enriched cell sample. - is_a: process + is_a: activity + mixins: + - prov activity slot_usage: - input entity: + used: range: dissociated cell sample - output entity: + generated: range: enriched cell sample cell barcoding: description: >- A process that takes an enriched cell sample and produces a barcoded cell sample. - is_a: process + is_a: activity + mixins: + - prov activity slot_usage: - input entity: + used: range: enriched cell sample - output entity: + generated: range: barcoded cell sample cdna amplification: description: >- A process that takes a barcoded cell sample and produces an amplified cDNA sample. - is_a: process + is_a: activity + mixins: + - prov activity slot_usage: - input entity: + used: range: barcoded cell sample - output entity: + generated: range: amplified cdna library construction: description: >- A process that takes an amplified cDNA sample and produces a library. - is_a: process + is_a: activity + mixins: + - prov activity slot_usage: - input entity: + used: range: amplified cdna - output entity: + generated: range: library library aliquoting: description: >- A process that takes a library and produces an library aliquot. - is_a: process + is_a: activity + mixins: + - prov activity slot_usage: - input entity: + used: range: library - output entity: + generated: range: library aliquot library pooling: description: >- A process that takes a library aliquot and produces a library pool. - is_a: process + is_a: activity + mixins: + - prov activity slot_usage: - input entity: + used: range: library aliquot - output entity: + generated: range: library pool - process output: + prov entity: description: >- - The output of a process. + Based off prov:Entity; an entity is a physical, digital, conceptual, or other kind of thing with some fixed aspects; entities may be real or imaginary. slots: - - label - - created by process + - wasDerivedFrom + - wasGeneratedBy # 028 - donors.ipynb @@ -201,10 +221,10 @@ classes: is_a: entity mixins: - thing with taxon + - prov entity description: >- A person or organism that is the source of a biological sample. slots: - - label - sex - date of birth - date of death @@ -215,20 +235,26 @@ classes: # 027 - brain_extraction.ipynb brain segment: - is_a: process output + is_a: entity + mixins: + - prov entity slots: - barcode attributes: anatomical division: slot_usage: - created by process: + wasGeneratedBy: range: brain extraction + wasDerivedFrom: + range: donor # 026 - brain_segment_sectioning.ipynb brain section: - is_a: process output + is_a: entity + mixins: + - prov entity slots: - barcode attributes: @@ -237,58 +263,78 @@ classes: The ordinal number of the section. range: integer slot_usage: - created by process: + wasGeneratedBy: range: brain segment sectioning + wasDerivedFrom: + range: brain segment # 025b - tissue_dissectioning.ipynb tissue sample: - is_a: process output + is_a: entity + mixins: + - prov entity attributes: roi plan: region of interest label: description: >- The label of the region of interest. slot_usage: - created by process: + wasGeneratedBy: range: tissue dissecting + wasDerivedFrom: + range: brain section # 024 - cell_dissociation.ipynb dissociated cell sample: - is_a: process output + is_a: entity + mixins: + - prov entity attributes: cell prep type: facs population plan: number of cells collected: range: integer slot_usage: - created by process: + wasGeneratedBy: range: cell dissociation + wasDerivedFrom: + range: tissue sample #TODO: Add addtional attributes and slots to this class. enriched cell sample: - is_a: process output + is_a: entity + mixins: + - prov entity slot_usage: - created by process: + wasGeneratedBy: range: cell enrichment + wasDerivedFrom: + range: dissociated cell sample # 023 - cell_barcoding.ipynb barcoded cell sample: - is_a: process output + is_a: entity + mixins: + - prov entity attributes: port well: sample quality count: slot_usage: - created by process: + wasGeneratedBy: range: cell barcoding + wasDerivedFrom: + range: enriched cell sample # 022 - cnda_amplification.ipynb amplified cdna: - is_a: process output + is_a: entity + mixins: + - prov entity slots: - method attributes: @@ -307,14 +353,18 @@ classes: rna amplification pass: range: boolean slot_usage: - created by process: + wasGeneratedBy: range: cdna amplification + wasDerivedFrom: + range: barcoded cell sample # 021 - library_constructions.ipynb library: - is_a: process output + is_a: entity + mixins: + - prov entity slots: - method - creation date @@ -337,31 +387,37 @@ classes: r1 sequence: r2 index: r2 sequence: - created by process: - range: library construction slot_usage: creation date: description: The date and time the object was created. range: datetime - created by process: + wasGeneratedBy: range: library construction + wasDerivedFrom: + range: amplified cdna # 020 - aliquoting_and_pooling.ipynb library aliquot: - is_a: process output + is_a: entity + mixins: + - prov entity attributes: input quantity: description: The amount of input material (fmol) used to create the library aliquot. range: integer slot_usage: - created by process: + wasGeneratedBy: range: library aliquoting + wasDerivedFrom: + range: library # 020 - aliquoting_and_pooling.ipynb library pool: - is_a: process output + is_a: entity + mixins: + - prov entity attributes: tube avg size: description: The average size (bp) of the library fragments in the tube. @@ -371,11 +427,41 @@ classes: range: float tube internal label: slot_usage: - created by process: + wasGeneratedBy: range: library pooling + wasDerivedFrom: + range: library aliquot slots: + used: + slot_uri: prov:used + domain: activity + range: entity + multivalued: true + inlined_as_list: true + + generated: + slot_uri: prov:generated + domain: activity + range: entity + multivalued: true + inlined_as_list: true + + wasGeneratedBy: + slot_uri: prov:wasGeneratedBy + domain: entity + range: activity + multivalued: true + inlined_as_list: true + + wasDerivedFrom: + slot_uri: prov:wasDerivedFrom + domain: entity + range: entity + multivalued: true + inlined_as_list: true + referenced in: range: genome annotation @@ -440,22 +526,11 @@ slots: description: slot_uri: schema:name - input entity: - description: The input entity of the process. - - output entity: - description: The output entity of the process. - process id: description: The id of the process. range: string - - created by process: - description: The process that created the object. - - - + # SLOTS IMPORTED FROM BIOLINK # # creation date: # version: From a59a559b455612e3dc50e88c7253b9da4f410dfa Mon Sep 17 00:00:00 2001 From: GitHub Action Date: Tue, 5 Sep 2023 22:33:37 +0000 Subject: [PATCH 15/17] generate another formats --- erdiagram-autogen/kbmodel.md | 310 ++- json-schema-autogen/kbmodel.json | 2063 +++++++++++++---- jsonld-context-autogen/kbmodel.context.jsonld | 19 +- models_py-autogen/ccn2.py | 5 - models_py-autogen/figure1.py | 10 - models_py-autogen/kbmodel.py | 1010 ++++---- 6 files changed, 2319 insertions(+), 1098 deletions(-) diff --git a/erdiagram-autogen/kbmodel.md b/erdiagram-autogen/kbmodel.md index a1ea3f38..2e9df27d 100644 --- a/erdiagram-autogen/kbmodel.md +++ b/erdiagram-autogen/kbmodel.md @@ -4,17 +4,45 @@ LibraryPool { integer tube_avg_size float tube_contents string tube_internal_label - string label + string id + iri_type iri + category_typeList category + stringList type + label_type name + narrative_text description } LibraryPooling { - string process_id + stringList provided_by + uriorcurieList xref + label_type full_name + label_typeList synonym + string id + iri_type iri + category_typeList category + stringList type + label_type name + narrative_text description } LibraryAliquot { integer input_quantity - string label + string id + iri_type iri + category_typeList category + stringList type + label_type name + narrative_text description } LibraryAliquoting { - string process_id + stringList provided_by + uriorcurieList xref + label_type full_name + label_typeList synonym + string id + iri_type iri + category_typeList category + stringList type + label_type name + narrative_text description } Library { string method @@ -29,10 +57,24 @@ Library { string r1_sequence string r2_index string r2_sequence - string label + string id + iri_type iri + category_typeList category + stringList type + label_type name + narrative_text description } LibraryConstruction { - string process_id + stringList provided_by + uriorcurieList xref + label_type full_name + label_typeList synonym + string id + iri_type iri + category_typeList category + stringList type + label_type name + narrative_text description } AmplifiedCdna { string method @@ -40,60 +82,157 @@ AmplifiedCdna { integer pcr_cycles float percent_cdna_longer_than_400bp boolean rna_amplification_pass - string label + string id + iri_type iri + category_typeList category + stringList type + label_type name + narrative_text description } CdnaAmplification { - string process_id + stringList provided_by + uriorcurieList xref + label_type full_name + label_typeList synonym + string id + iri_type iri + category_typeList category + stringList type + label_type name + narrative_text description } BarcodedCellSample { string port_well string sample_quality_count - string label + string id + iri_type iri + category_typeList category + stringList type + label_type name + narrative_text description } CellBarcoding { - string process_id + stringList provided_by + uriorcurieList xref + label_type full_name + label_typeList synonym + string id + iri_type iri + category_typeList category + stringList type + label_type name + narrative_text description } EnrichedCellSample { - string label + string id + iri_type iri + category_typeList category + stringList type + label_type name + narrative_text description } CellEnrichment { - string process_id + stringList provided_by + uriorcurieList xref + label_type full_name + label_typeList synonym + string id + iri_type iri + category_typeList category + stringList type + label_type name + narrative_text description } DissociatedCellSample { string cell_prep_type string facs_population_plan integer number_of_cells_collected - string label + string id + iri_type iri + category_typeList category + stringList type + label_type name + narrative_text description } CellDissociation { - string process_id + stringList provided_by + uriorcurieList xref + label_type full_name + label_typeList synonym + string id + iri_type iri + category_typeList category + stringList type + label_type name + narrative_text description } TissueSample { string roi_plan string region_of_interest_label - string label + string id + iri_type iri + category_typeList category + stringList type + label_type name + narrative_text description } TissueDissecting { - string process_id + stringList provided_by + uriorcurieList xref + label_type full_name + label_typeList synonym + string id + iri_type iri + category_typeList category + stringList type + label_type name + narrative_text description } BrainSection { string barcode integer ordinal - string label + string id + iri_type iri + category_typeList category + stringList type + label_type name + narrative_text description } BrainSegmentSectioning { - string process_id + stringList provided_by + uriorcurieList xref + label_type full_name + label_typeList synonym + string id + iri_type iri + category_typeList category + stringList type + label_type name + narrative_text description } BrainSegment { string barcode string anatomical_division - string label + string id + iri_type iri + category_typeList category + stringList type + label_type name + narrative_text description } BrainExtraction { - string process_id + stringList provided_by + uriorcurieList xref + label_type full_name + label_typeList synonym + string id + iri_type iri + category_typeList category + stringList type + label_type name + narrative_text description } Donor { - string label SexType sex date date_of_birth date date_of_death @@ -107,14 +246,31 @@ Donor { label_type name narrative_text description } -ProcessOutput { - string label - string created_by_process +Activity { + stringList provided_by + uriorcurieList xref + label_type full_name + label_typeList synonym + string id + iri_type iri + category_typeList category + stringList type + label_type name + narrative_text description +} +Entity { + string id + iri_type iri + category_typeList category + stringList type + label_type name + narrative_text description } -Process { - string input_entity - string output_entity - string process_id +ProvEntity { + +} +ProvActivity { + } AnnotationCollection { @@ -180,38 +336,76 @@ Checksum { narrative_text description } -LibraryPool ||--|o LibraryPooling : "created by process" -LibraryPooling ||--|o LibraryAliquot : "input entity" -LibraryPooling ||--|o LibraryPool : "output entity" -LibraryAliquot ||--|o LibraryAliquoting : "created by process" -LibraryAliquoting ||--|o Library : "input entity" -LibraryAliquoting ||--|o LibraryAliquot : "output entity" -Library ||--|o LibraryConstruction : "created by process" -LibraryConstruction ||--|o AmplifiedCdna : "input entity" -LibraryConstruction ||--|o Library : "output entity" -AmplifiedCdna ||--|o CdnaAmplification : "created by process" -CdnaAmplification ||--|o BarcodedCellSample : "input entity" -CdnaAmplification ||--|o AmplifiedCdna : "output entity" -BarcodedCellSample ||--|o CellBarcoding : "created by process" -CellBarcoding ||--|o EnrichedCellSample : "input entity" -CellBarcoding ||--|o BarcodedCellSample : "output entity" -EnrichedCellSample ||--|o CellEnrichment : "created by process" -CellEnrichment ||--|o DissociatedCellSample : "input entity" -CellEnrichment ||--|o EnrichedCellSample : "output entity" -DissociatedCellSample ||--|o CellDissociation : "created by process" -CellDissociation ||--|o TissueSample : "input entity" -CellDissociation ||--|o DissociatedCellSample : "output entity" -TissueSample ||--|o TissueDissecting : "created by process" -TissueDissecting ||--|o BrainSection : "input entity" -TissueDissecting ||--|o TissueSample : "output entity" -BrainSection ||--|o BrainSegmentSectioning : "created by process" -BrainSegmentSectioning ||--|o BrainSegment : "input entity" -BrainSegmentSectioning ||--|o BrainSection : "output entity" -BrainSegment ||--|o BrainExtraction : "created by process" -BrainExtraction ||--|o Donor : "input entity" -BrainExtraction ||--|o BrainSegment : "output entity" +LibraryPool ||--}o LibraryAliquot : "wasDerivedFrom" +LibraryPool ||--}o LibraryPooling : "wasGeneratedBy" +LibraryPool ||--}o Attribute : "has attribute" +LibraryPooling ||--}o LibraryAliquot : "used" +LibraryPooling ||--}o LibraryPool : "generated" +LibraryPooling ||--}o Attribute : "has attribute" +LibraryAliquot ||--}o Library : "wasDerivedFrom" +LibraryAliquot ||--}o LibraryAliquoting : "wasGeneratedBy" +LibraryAliquot ||--}o Attribute : "has attribute" +LibraryAliquoting ||--}o Library : "used" +LibraryAliquoting ||--}o LibraryAliquot : "generated" +LibraryAliquoting ||--}o Attribute : "has attribute" +Library ||--}o AmplifiedCdna : "wasDerivedFrom" +Library ||--}o LibraryConstruction : "wasGeneratedBy" +Library ||--}o Attribute : "has attribute" +LibraryConstruction ||--}o AmplifiedCdna : "used" +LibraryConstruction ||--}o Library : "generated" +LibraryConstruction ||--}o Attribute : "has attribute" +AmplifiedCdna ||--}o BarcodedCellSample : "wasDerivedFrom" +AmplifiedCdna ||--}o CdnaAmplification : "wasGeneratedBy" +AmplifiedCdna ||--}o Attribute : "has attribute" +CdnaAmplification ||--}o BarcodedCellSample : "used" +CdnaAmplification ||--}o AmplifiedCdna : "generated" +CdnaAmplification ||--}o Attribute : "has attribute" +BarcodedCellSample ||--}o EnrichedCellSample : "wasDerivedFrom" +BarcodedCellSample ||--}o CellBarcoding : "wasGeneratedBy" +BarcodedCellSample ||--}o Attribute : "has attribute" +CellBarcoding ||--}o EnrichedCellSample : "used" +CellBarcoding ||--}o BarcodedCellSample : "generated" +CellBarcoding ||--}o Attribute : "has attribute" +EnrichedCellSample ||--}o DissociatedCellSample : "wasDerivedFrom" +EnrichedCellSample ||--}o CellEnrichment : "wasGeneratedBy" +EnrichedCellSample ||--}o Attribute : "has attribute" +CellEnrichment ||--}o DissociatedCellSample : "used" +CellEnrichment ||--}o EnrichedCellSample : "generated" +CellEnrichment ||--}o Attribute : "has attribute" +DissociatedCellSample ||--}o TissueSample : "wasDerivedFrom" +DissociatedCellSample ||--}o CellDissociation : "wasGeneratedBy" +DissociatedCellSample ||--}o Attribute : "has attribute" +CellDissociation ||--}o TissueSample : "used" +CellDissociation ||--}o DissociatedCellSample : "generated" +CellDissociation ||--}o Attribute : "has attribute" +TissueSample ||--}o BrainSection : "wasDerivedFrom" +TissueSample ||--}o TissueDissecting : "wasGeneratedBy" +TissueSample ||--}o Attribute : "has attribute" +TissueDissecting ||--}o BrainSection : "used" +TissueDissecting ||--}o TissueSample : "generated" +TissueDissecting ||--}o Attribute : "has attribute" +BrainSection ||--}o BrainSegment : "wasDerivedFrom" +BrainSection ||--}o BrainSegmentSectioning : "wasGeneratedBy" +BrainSection ||--}o Attribute : "has attribute" +BrainSegmentSectioning ||--}o BrainSegment : "used" +BrainSegmentSectioning ||--}o BrainSection : "generated" +BrainSegmentSectioning ||--}o Attribute : "has attribute" +BrainSegment ||--}o Donor : "wasDerivedFrom" +BrainSegment ||--}o BrainExtraction : "wasGeneratedBy" +BrainSegment ||--}o Attribute : "has attribute" +BrainExtraction ||--}o Donor : "used" +BrainExtraction ||--}o BrainSegment : "generated" +BrainExtraction ||--}o Attribute : "has attribute" Donor ||--}o OrganismTaxon : "in taxon" +Donor ||--}o Entity : "wasDerivedFrom" +Donor ||--}o Activity : "wasGeneratedBy" Donor ||--}o Attribute : "has attribute" +Activity ||--}o Attribute : "has attribute" +Entity ||--}o Attribute : "has attribute" +ProvEntity ||--}o Entity : "wasDerivedFrom" +ProvEntity ||--}o Activity : "wasGeneratedBy" +ProvActivity ||--}o Entity : "used" +ProvActivity ||--}o Entity : "generated" AnnotationCollection ||--}o GeneAnnotation : "annotations" AnnotationCollection ||--}o GenomeAnnotation : "genome_annotations" AnnotationCollection ||--}o GenomeAssembly : "genome_assemblies" diff --git a/json-schema-autogen/kbmodel.json b/json-schema-autogen/kbmodel.json index 6c85b272..2db0e351 100644 --- a/json-schema-autogen/kbmodel.json +++ b/json-schema-autogen/kbmodel.json @@ -256,17 +256,39 @@ "description": "Amount of cDNA amplified (ng).", "type": "number" }, - "created_by_process": { - "$ref": "#/$defs/CdnaAmplification", - "description": "The process that created the object." + "category": { + "description": "Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class.\n * In a neo4j database this MAY correspond to the neo4j label tag.\n * In an RDF database it should be a biolink model class URI.\nThis field is multi-valued. It should include values for ancestors of the biolink class; for example, a protein such as Shh would have category values `biolink:Protein`, `biolink:GeneProduct`, `biolink:MolecularEntity`, ...\nIn an RDF database, nodes will typically have an rdf:type triples. This can be to the most specific biolink class, or potentially to a class more specific than something in biolink. For example, a sequence feature `f` may have a rdf:type assertion to a SO class such as TF_binding_site, which is more specific than anything in biolink. Here we would have categories {biolink:GenomicEntity, biolink:MolecularEntity, biolink:NamedThing}", + "items": { + "type": "string" + }, + "type": "array" + }, + "description": { + "description": "a human-readable description of an entity", + "type": "string" + }, + "has_attribute": { + "description": "connects any entity to an attribute", + "items": { + "type": "string" + }, + "type": "array" + }, + "id": { + "description": "A unique identifier for an entity. Must be either a CURIE shorthand for a URI or a complete URI", + "type": "string" }, - "label": { - "description": "The name of the object.", + "iri": { + "description": "An IRI for an entity. This is determined by the id using expansion rules.", "type": "string" }, "method": { "type": "string" }, + "name": { + "description": "A human-readable name for an attribute or entity.", + "type": "string" + }, "pcr_cycles": { "description": "Number of PCR cycles used to amplify the cDNA.", "type": "integer" @@ -277,8 +299,29 @@ }, "rna_amplification_pass": { "type": "boolean" + }, + "type": { + "items": { + "type": "string" + }, + "type": "array" + }, + "wasDerivedFrom": { + "items": { + "$ref": "#/$defs/BarcodedCellSample" + }, + "type": "array" + }, + "wasGeneratedBy": { + "items": { + "$ref": "#/$defs/CdnaAmplification" + }, + "type": "array" } }, + "required": [ + "id" + ], "title": "AmplifiedCdna", "type": "object" }, @@ -1264,12 +1307,34 @@ "additionalProperties": false, "description": "", "properties": { - "created_by_process": { - "$ref": "#/$defs/CellBarcoding", - "description": "The process that created the object." + "category": { + "description": "Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class.\n * In a neo4j database this MAY correspond to the neo4j label tag.\n * In an RDF database it should be a biolink model class URI.\nThis field is multi-valued. It should include values for ancestors of the biolink class; for example, a protein such as Shh would have category values `biolink:Protein`, `biolink:GeneProduct`, `biolink:MolecularEntity`, ...\nIn an RDF database, nodes will typically have an rdf:type triples. This can be to the most specific biolink class, or potentially to a class more specific than something in biolink. For example, a sequence feature `f` may have a rdf:type assertion to a SO class such as TF_binding_site, which is more specific than anything in biolink. Here we would have categories {biolink:GenomicEntity, biolink:MolecularEntity, biolink:NamedThing}", + "items": { + "type": "string" + }, + "type": "array" + }, + "description": { + "description": "a human-readable description of an entity", + "type": "string" + }, + "has_attribute": { + "description": "connects any entity to an attribute", + "items": { + "type": "string" + }, + "type": "array" + }, + "id": { + "description": "A unique identifier for an entity. Must be either a CURIE shorthand for a URI or a complete URI", + "type": "string" + }, + "iri": { + "description": "An IRI for an entity. This is determined by the id using expansion rules.", + "type": "string" }, - "label": { - "description": "The name of the object.", + "name": { + "description": "A human-readable name for an attribute or entity.", "type": "string" }, "port_well": { @@ -1277,8 +1342,29 @@ }, "sample_quality_count": { "type": "string" + }, + "type": { + "items": { + "type": "string" + }, + "type": "array" + }, + "wasDerivedFrom": { + "items": { + "$ref": "#/$defs/EnrichedCellSample" + }, + "type": "array" + }, + "wasGeneratedBy": { + "items": { + "$ref": "#/$defs/CellBarcoding" + }, + "type": "array" } }, + "required": [ + "id" + ], "title": "BarcodedCellSample", "type": "object" }, @@ -2453,93 +2539,6 @@ "BrainExtraction": { "additionalProperties": false, "description": "A process that takes a brain sample from a donor and produces a brain segment.", - "properties": { - "input_entity": { - "description": "The input entity of the process.", - "type": "string" - }, - "output_entity": { - "$ref": "#/$defs/BrainSegment", - "description": "The output entity of the process." - }, - "process_id": { - "description": "The id of the process.", - "type": "string" - } - }, - "title": "BrainExtraction", - "type": "object" - }, - "BrainSection": { - "additionalProperties": false, - "description": "", - "properties": { - "barcode": { - "description": "The unique identifier of the object.", - "type": "string" - }, - "created_by_process": { - "$ref": "#/$defs/BrainSegmentSectioning", - "description": "The process that created the object." - }, - "label": { - "description": "The name of the object.", - "type": "string" - }, - "ordinal": { - "description": "The ordinal number of the section.", - "type": "integer" - } - }, - "title": "BrainSection", - "type": "object" - }, - "BrainSegment": { - "additionalProperties": false, - "description": "", - "properties": { - "anatomical_division": { - "type": "string" - }, - "barcode": { - "description": "The unique identifier of the object.", - "type": "string" - }, - "created_by_process": { - "$ref": "#/$defs/BrainExtraction", - "description": "The process that created the object." - }, - "label": { - "description": "The name of the object.", - "type": "string" - } - }, - "title": "BrainSegment", - "type": "object" - }, - "BrainSegmentSectioning": { - "additionalProperties": false, - "description": "A process that takes a brain segment and produces a brain section.", - "properties": { - "input_entity": { - "$ref": "#/$defs/BrainSegment", - "description": "The input entity of the process." - }, - "output_entity": { - "$ref": "#/$defs/BrainSection", - "description": "The output entity of the process." - }, - "process_id": { - "description": "The id of the process.", - "type": "string" - } - }, - "title": "BrainSegmentSectioning", - "type": "object" - }, - "Case": { - "additionalProperties": false, - "description": "An individual (human) organism that has a patient role in some clinical context.", "properties": { "category": { "description": "Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class.\n * In a neo4j database this MAY correspond to the neo4j label tag.\n * In an RDF database it should be a biolink model class URI.\nThis field is multi-valued. It should include values for ancestors of the biolink class; for example, a protein such as Shh would have category values `biolink:Protein`, `biolink:GeneProduct`, `biolink:MolecularEntity`, ...\nIn an RDF database, nodes will typically have an rdf:type triples. This can be to the most specific biolink class, or potentially to a class more specific than something in biolink. For example, a sequence feature `f` may have a rdf:type assertion to a SO class such as TF_binding_site, which is more specific than anything in biolink. Here we would have categories {biolink:GenomicEntity, biolink:MolecularEntity, biolink:NamedThing}", @@ -2557,26 +2556,21 @@ "description": "a long-form human readable name for a thing", "type": "string" }, - "has_attribute": { - "description": "may often be an organism attribute", + "generated": { "items": { - "type": "string" + "$ref": "#/$defs/BrainSegment" }, "type": "array" }, - "id": { - "description": "A unique identifier for an entity. Must be either a CURIE shorthand for a URI or a complete URI", - "type": "string" - }, - "in_taxon": { - "description": "connects an entity to its taxonomic classification. Only certain kinds of entities can be taxonomically classified; see 'thing with taxon'", + "has_attribute": { + "description": "connects any entity to an attribute", "items": { "type": "string" }, "type": "array" }, - "in_taxon_label": { - "description": "The human readable scientific name for the taxon of the entity.", + "id": { + "description": "A unique identifier for an entity. Must be either a CURIE shorthand for a URI or a complete URI", "type": "string" }, "iri": { @@ -2607,6 +2601,12 @@ }, "type": "array" }, + "used": { + "items": { + "$ref": "#/$defs/Donor" + }, + "type": "array" + }, "xref": { "description": "A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.", "items": { @@ -2619,19 +2619,16 @@ "id", "category" ], - "title": "Case", + "title": "BrainExtraction", "type": "object" }, - "CaseToPhenotypicFeatureAssociation": { + "BrainSection": { "additionalProperties": false, - "description": "An association between a case (e.g. individual patient) and a phenotypic feature in which the individual has or has had the phenotype.", + "description": "", "properties": { - "aggregator_knowledge_source": { - "description": "An intermediate aggregator resource from which knowledge expressed in an Association was retrieved downstream of the original source, on its path to its current serialized form.", - "items": { - "type": "string" - }, - "type": "array" + "barcode": { + "description": "The unique identifier of the object.", + "type": "string" }, "category": { "description": "Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class.\n * In a neo4j database this MAY correspond to the neo4j label tag.\n * In an RDF database it should be a biolink model class URI.\nThis field is multi-valued. It should include values for ancestors of the biolink class; for example, a protein such as Shh would have category values `biolink:Protein`, `biolink:GeneProduct`, `biolink:MolecularEntity`, ...\nIn an RDF database, nodes will typically have an rdf:type triples. This can be to the most specific biolink class, or potentially to a class more specific than something in biolink. For example, a sequence feature `f` may have a rdf:type assertion to a SO class such as TF_binding_site, which is more specific than anything in biolink. Here we would have categories {biolink:GenomicEntity, biolink:MolecularEntity, biolink:NamedThing}", @@ -2644,10 +2641,6 @@ "description": "a human-readable description of an entity", "type": "string" }, - "frequency_qualifier": { - "description": "a qualifier used in a phenotypic association to state how frequent the phenotype is observed in the subject", - "type": "string" - }, "has_attribute": { "description": "connects any entity to an attribute", "items": { @@ -2655,28 +2648,6 @@ }, "type": "array" }, - "has_count": { - "description": "number of things with a particular property", - "type": "integer" - }, - "has_evidence": { - "description": "connects an association to an instance of supporting evidence", - "items": { - "type": "string" - }, - "type": "array" - }, - "has_percentage": { - "description": "equivalent to has quotient multiplied by 100", - "type": "number" - }, - "has_quotient": { - "type": "number" - }, - "has_total": { - "description": "total number of things in a particular reference set", - "type": "integer" - }, "id": { "description": "A unique identifier for an entity. Must be either a CURIE shorthand for a URI or a complete URI", "type": "string" @@ -2685,144 +2656,263 @@ "description": "An IRI for an entity. This is determined by the id using expansion rules.", "type": "string" }, - "knowledge_source": { - "description": "An Information Resource from which the knowledge expressed in an Association was retrieved, directly or indirectly. This can be any resource through which the knowledge passed on its way to its currently serialized form. In practice, implementers should use one of the more specific subtypes of this generic property.", - "type": "string" - }, "name": { "description": "A human-readable name for an attribute or entity.", "type": "string" }, - "negated": { - "description": "if set to true, then the association is negated i.e. is not true", - "type": "boolean" - }, - "object": { - "description": "connects an association to the object of the association. For example, in a gene-to-phenotype association, the gene is subject and phenotype is object.", - "type": "string" - }, - "object_category": { - "description": "Used to hold the biolink class/category of an association. This is a denormalized field used primarily in the SQL serialization of a knowledge graph via KGX.", - "type": "string" + "ordinal": { + "description": "The ordinal number of the section.", + "type": "integer" }, - "object_category_closure": { - "description": "Used to hold the object category closure of an association. This is a denormalized field used primarily in the SQL serialization of a knowledge graph via KGX.", + "type": { "items": { "type": "string" }, "type": "array" }, - "object_closure": { - "description": "Used to hold the object closure of an association. This is a denormalized field used primarily in the SQL serialization of a knowledge graph via KGX.", + "wasDerivedFrom": { "items": { - "type": "string" + "$ref": "#/$defs/BrainSegment" }, "type": "array" }, - "object_label_closure": { - "description": "Used to hold the object label closure of an association. This is a denormalized field used primarily in the SQL serialization of a knowledge graph via KGX.", + "wasGeneratedBy": { "items": { - "type": "string" + "$ref": "#/$defs/BrainSegmentSectioning" }, "type": "array" + } + }, + "required": [ + "id" + ], + "title": "BrainSection", + "type": "object" + }, + "BrainSegment": { + "additionalProperties": false, + "description": "", + "properties": { + "anatomical_division": { + "type": "string" }, - "object_namespace": { - "description": "Used to hold the object namespace of an association. This is a denormalized field used primarily in the SQL serialization of a knowledge graph via KGX.", + "barcode": { + "description": "The unique identifier of the object.", "type": "string" }, - "onset_qualifier": { - "description": "a qualifier used in a phenotypic association to state when the phenotype appears is in the subject", - "type": "string" + "category": { + "description": "Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class.\n * In a neo4j database this MAY correspond to the neo4j label tag.\n * In an RDF database it should be a biolink model class URI.\nThis field is multi-valued. It should include values for ancestors of the biolink class; for example, a protein such as Shh would have category values `biolink:Protein`, `biolink:GeneProduct`, `biolink:MolecularEntity`, ...\nIn an RDF database, nodes will typically have an rdf:type triples. This can be to the most specific biolink class, or potentially to a class more specific than something in biolink. For example, a sequence feature `f` may have a rdf:type assertion to a SO class such as TF_binding_site, which is more specific than anything in biolink. Here we would have categories {biolink:GenomicEntity, biolink:MolecularEntity, biolink:NamedThing}", + "items": { + "type": "string" + }, + "type": "array" }, - "original_object": { - "description": "used to hold the original object of a relation (or predicate) that an external knowledge source uses before transformation to match the biolink-model specification.", + "description": { + "description": "a human-readable description of an entity", "type": "string" }, - "original_predicate": { - "description": "used to hold the original relation/predicate that an external knowledge source uses before transformation to match the biolink-model specification.", - "type": "string" + "has_attribute": { + "description": "connects any entity to an attribute", + "items": { + "type": "string" + }, + "type": "array" }, - "original_subject": { - "description": "used to hold the original subject of a relation (or predicate) that an external knowledge source uses before transformation to match the biolink-model specification.", + "id": { + "description": "A unique identifier for an entity. Must be either a CURIE shorthand for a URI or a complete URI", "type": "string" }, - "predicate": { - "description": "A high-level grouping for the relationship type. AKA minimal predicate. This is analogous to category for nodes.", + "iri": { + "description": "An IRI for an entity. This is determined by the id using expansion rules.", "type": "string" }, - "primary_knowledge_source": { - "description": "The most upstream source of the knowledge expressed in an Association that an implementer can identify. Performing a rigorous analysis of upstream data providers is expected; every effort is made to catalog the most upstream source of data in this property. Only one data source should be declared primary in any association. \"aggregator knowledge source\" can be used to capture non-primary sources.", + "name": { + "description": "A human-readable name for an attribute or entity.", "type": "string" }, - "publications": { - "description": "One or more publications that report the statement expressed in an Association, or provide information used as evidence supporting this statement.", + "type": { "items": { "type": "string" }, "type": "array" }, - "qualifiers": { - "description": "connects an association to qualifiers that modify or qualify the meaning of that association", + "wasDerivedFrom": { "items": { - "type": "string" + "$ref": "#/$defs/Donor" }, "type": "array" }, - "retrieval_source_ids": { - "description": "A list of retrieval sources that served as a source of knowledge expressed in an Edge, or a source of data used to generate this knowledge.", + "wasGeneratedBy": { + "items": { + "$ref": "#/$defs/BrainExtraction" + }, + "type": "array" + } + }, + "required": [ + "id" + ], + "title": "BrainSegment", + "type": "object" + }, + "BrainSegmentSectioning": { + "additionalProperties": false, + "description": "A process that takes a brain segment and produces a brain section.", + "properties": { + "category": { + "description": "Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class.\n * In a neo4j database this MAY correspond to the neo4j label tag.\n * In an RDF database it should be a biolink model class URI.\nThis field is multi-valued. It should include values for ancestors of the biolink class; for example, a protein such as Shh would have category values `biolink:Protein`, `biolink:GeneProduct`, `biolink:MolecularEntity`, ...\nIn an RDF database, nodes will typically have an rdf:type triples. This can be to the most specific biolink class, or potentially to a class more specific than something in biolink. For example, a sequence feature `f` may have a rdf:type assertion to a SO class such as TF_binding_site, which is more specific than anything in biolink. Here we would have categories {biolink:GenomicEntity, biolink:MolecularEntity, biolink:NamedThing}", "items": { + "pattern": "^biolink:[A-Z][A-Za-z]+$", "type": "string" }, "type": "array" }, - "severity_qualifier": { - "description": "a qualifier used in a phenotypic association to state how severe the phenotype is in the subject", + "description": { + "description": "a human-readable description of an entity", "type": "string" }, - "sex_qualifier": { - "description": "a qualifier used in a phenotypic association to state whether the association is specific to a particular sex.", + "full_name": { + "description": "a long-form human readable name for a thing", "type": "string" }, - "subject": { - "description": "the case (e.g. patient) that has the property", + "generated": { + "items": { + "$ref": "#/$defs/BrainSection" + }, + "type": "array" + }, + "has_attribute": { + "description": "connects any entity to an attribute", + "items": { + "type": "string" + }, + "type": "array" + }, + "id": { + "description": "A unique identifier for an entity. Must be either a CURIE shorthand for a URI or a complete URI", "type": "string" }, - "subject_category": { - "description": "Used to hold the biolink class/category of an association. This is a denormalized field used primarily in the SQL serialization of a knowledge graph via KGX.", + "iri": { + "description": "An IRI for an entity. This is determined by the id using expansion rules.", "type": "string" }, - "subject_category_closure": { - "description": "Used to hold the subject category closure of an association. This is a denormalized field used primarily in the SQL serialization of a knowledge graph via KGX.", + "name": { + "description": "A human-readable name for an attribute or entity.", + "type": "string" + }, + "provided_by": { + "description": "The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.", "items": { "type": "string" }, "type": "array" }, - "subject_closure": { - "description": "Used to hold the subject closure of an association. This is a denormalized field used primarily in the SQL serialization of a knowledge graph via KGX.", + "synonym": { + "description": "Alternate human-readable names for a thing", "items": { "type": "string" }, "type": "array" }, - "subject_label_closure": { - "description": "Used to hold the subject label closure of an association. This is a denormalized field used primarily in the SQL serialization of a knowledge graph via KGX.", + "type": { "items": { "type": "string" }, "type": "array" }, - "subject_namespace": { - "description": "Used to hold the subject namespace of an association. This is a denormalized field used primarily in the SQL serialization of a knowledge graph via KGX.", + "used": { + "items": { + "$ref": "#/$defs/BrainSegment" + }, + "type": "array" + }, + "xref": { + "description": "A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "required": [ + "id", + "category" + ], + "title": "BrainSegmentSectioning", + "type": "object" + }, + "Case": { + "additionalProperties": false, + "description": "An individual (human) organism that has a patient role in some clinical context.", + "properties": { + "category": { + "description": "Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class.\n * In a neo4j database this MAY correspond to the neo4j label tag.\n * In an RDF database it should be a biolink model class URI.\nThis field is multi-valued. It should include values for ancestors of the biolink class; for example, a protein such as Shh would have category values `biolink:Protein`, `biolink:GeneProduct`, `biolink:MolecularEntity`, ...\nIn an RDF database, nodes will typically have an rdf:type triples. This can be to the most specific biolink class, or potentially to a class more specific than something in biolink. For example, a sequence feature `f` may have a rdf:type assertion to a SO class such as TF_binding_site, which is more specific than anything in biolink. Here we would have categories {biolink:GenomicEntity, biolink:MolecularEntity, biolink:NamedThing}", + "items": { + "pattern": "^biolink:[A-Z][A-Za-z]+$", + "type": "string" + }, + "type": "array" + }, + "description": { + "description": "a human-readable description of an entity", "type": "string" }, - "timepoint": { - "description": "a point in time", - "format": "time", + "full_name": { + "description": "a long-form human readable name for a thing", + "type": "string" + }, + "has_attribute": { + "description": "may often be an organism attribute", + "items": { + "type": "string" + }, + "type": "array" + }, + "id": { + "description": "A unique identifier for an entity. Must be either a CURIE shorthand for a URI or a complete URI", + "type": "string" + }, + "in_taxon": { + "description": "connects an entity to its taxonomic classification. Only certain kinds of entities can be taxonomically classified; see 'thing with taxon'", + "items": { + "type": "string" + }, + "type": "array" + }, + "in_taxon_label": { + "description": "The human readable scientific name for the taxon of the entity.", + "type": "string" + }, + "iri": { + "description": "An IRI for an entity. This is determined by the id using expansion rules.", + "type": "string" + }, + "name": { + "description": "A human-readable name for an attribute or entity.", "type": "string" }, + "provided_by": { + "description": "The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.", + "items": { + "type": "string" + }, + "type": "array" + }, + "synonym": { + "description": "Alternate human-readable names for a thing", + "items": { + "type": "string" + }, + "type": "array" + }, "type": { - "description": "rdf:type of biolink:Association should be fixed at rdf:Statement", + "items": { + "type": "string" + }, + "type": "array" + }, + "xref": { + "description": "A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.", "items": { "type": "string" }, @@ -2830,17 +2920,15 @@ } }, "required": [ - "subject", - "predicate", - "object", - "id" + "id", + "category" ], - "title": "CaseToPhenotypicFeatureAssociation", + "title": "Case", "type": "object" }, - "CausalGeneToDiseaseAssociation": { + "CaseToPhenotypicFeatureAssociation": { "additionalProperties": false, - "description": "", + "description": "An association between a case (e.g. individual patient) and a phenotypic feature in which the individual has or has had the phenotype.", "properties": { "aggregator_knowledge_source": { "description": "An intermediate aggregator resource from which knowledge expressed in an Association was retrieved downstream of the original source, on its path to its current serialized form.", @@ -2914,7 +3002,7 @@ "type": "boolean" }, "object": { - "description": "disease", + "description": "connects an association to the object of the association. For example, in a gene-to-phenotype association, the gene is subject and phenotype is object.", "type": "string" }, "object_category": { @@ -2935,9 +3023,6 @@ }, "type": "array" }, - "object_direction_qualifier": { - "$ref": "#/$defs/DirectionQualifierEnum" - }, "object_label_closure": { "description": "Used to hold the object label closure of an association. This is a denormalized field used primarily in the SQL serialization of a knowledge graph via KGX.", "items": { @@ -2980,71 +3065,660 @@ }, "type": "array" }, - "qualifiers": { - "description": "connects an association to qualifiers that modify or qualify the meaning of that association", + "qualifiers": { + "description": "connects an association to qualifiers that modify or qualify the meaning of that association", + "items": { + "type": "string" + }, + "type": "array" + }, + "retrieval_source_ids": { + "description": "A list of retrieval sources that served as a source of knowledge expressed in an Edge, or a source of data used to generate this knowledge.", + "items": { + "type": "string" + }, + "type": "array" + }, + "severity_qualifier": { + "description": "a qualifier used in a phenotypic association to state how severe the phenotype is in the subject", + "type": "string" + }, + "sex_qualifier": { + "description": "a qualifier used in a phenotypic association to state whether the association is specific to a particular sex.", + "type": "string" + }, + "subject": { + "description": "the case (e.g. patient) that has the property", + "type": "string" + }, + "subject_category": { + "description": "Used to hold the biolink class/category of an association. This is a denormalized field used primarily in the SQL serialization of a knowledge graph via KGX.", + "type": "string" + }, + "subject_category_closure": { + "description": "Used to hold the subject category closure of an association. This is a denormalized field used primarily in the SQL serialization of a knowledge graph via KGX.", + "items": { + "type": "string" + }, + "type": "array" + }, + "subject_closure": { + "description": "Used to hold the subject closure of an association. This is a denormalized field used primarily in the SQL serialization of a knowledge graph via KGX.", + "items": { + "type": "string" + }, + "type": "array" + }, + "subject_label_closure": { + "description": "Used to hold the subject label closure of an association. This is a denormalized field used primarily in the SQL serialization of a knowledge graph via KGX.", + "items": { + "type": "string" + }, + "type": "array" + }, + "subject_namespace": { + "description": "Used to hold the subject namespace of an association. This is a denormalized field used primarily in the SQL serialization of a knowledge graph via KGX.", + "type": "string" + }, + "timepoint": { + "description": "a point in time", + "format": "time", + "type": "string" + }, + "type": { + "description": "rdf:type of biolink:Association should be fixed at rdf:Statement", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "required": [ + "subject", + "predicate", + "object", + "id" + ], + "title": "CaseToPhenotypicFeatureAssociation", + "type": "object" + }, + "CausalGeneToDiseaseAssociation": { + "additionalProperties": false, + "description": "", + "properties": { + "aggregator_knowledge_source": { + "description": "An intermediate aggregator resource from which knowledge expressed in an Association was retrieved downstream of the original source, on its path to its current serialized form.", + "items": { + "type": "string" + }, + "type": "array" + }, + "category": { + "description": "Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class.\n * In a neo4j database this MAY correspond to the neo4j label tag.\n * In an RDF database it should be a biolink model class URI.\nThis field is multi-valued. It should include values for ancestors of the biolink class; for example, a protein such as Shh would have category values `biolink:Protein`, `biolink:GeneProduct`, `biolink:MolecularEntity`, ...\nIn an RDF database, nodes will typically have an rdf:type triples. This can be to the most specific biolink class, or potentially to a class more specific than something in biolink. For example, a sequence feature `f` may have a rdf:type assertion to a SO class such as TF_binding_site, which is more specific than anything in biolink. Here we would have categories {biolink:GenomicEntity, biolink:MolecularEntity, biolink:NamedThing}", + "items": { + "type": "string" + }, + "type": "array" + }, + "description": { + "description": "a human-readable description of an entity", + "type": "string" + }, + "frequency_qualifier": { + "description": "a qualifier used in a phenotypic association to state how frequent the phenotype is observed in the subject", + "type": "string" + }, + "has_attribute": { + "description": "connects any entity to an attribute", + "items": { + "type": "string" + }, + "type": "array" + }, + "has_count": { + "description": "number of things with a particular property", + "type": "integer" + }, + "has_evidence": { + "description": "connects an association to an instance of supporting evidence", + "items": { + "type": "string" + }, + "type": "array" + }, + "has_percentage": { + "description": "equivalent to has quotient multiplied by 100", + "type": "number" + }, + "has_quotient": { + "type": "number" + }, + "has_total": { + "description": "total number of things in a particular reference set", + "type": "integer" + }, + "id": { + "description": "A unique identifier for an entity. Must be either a CURIE shorthand for a URI or a complete URI", + "type": "string" + }, + "iri": { + "description": "An IRI for an entity. This is determined by the id using expansion rules.", + "type": "string" + }, + "knowledge_source": { + "description": "An Information Resource from which the knowledge expressed in an Association was retrieved, directly or indirectly. This can be any resource through which the knowledge passed on its way to its currently serialized form. In practice, implementers should use one of the more specific subtypes of this generic property.", + "type": "string" + }, + "name": { + "description": "A human-readable name for an attribute or entity.", + "type": "string" + }, + "negated": { + "description": "if set to true, then the association is negated i.e. is not true", + "type": "boolean" + }, + "object": { + "description": "disease", + "type": "string" + }, + "object_category": { + "description": "Used to hold the biolink class/category of an association. This is a denormalized field used primarily in the SQL serialization of a knowledge graph via KGX.", + "type": "string" + }, + "object_category_closure": { + "description": "Used to hold the object category closure of an association. This is a denormalized field used primarily in the SQL serialization of a knowledge graph via KGX.", + "items": { + "type": "string" + }, + "type": "array" + }, + "object_closure": { + "description": "Used to hold the object closure of an association. This is a denormalized field used primarily in the SQL serialization of a knowledge graph via KGX.", + "items": { + "type": "string" + }, + "type": "array" + }, + "object_direction_qualifier": { + "$ref": "#/$defs/DirectionQualifierEnum" + }, + "object_label_closure": { + "description": "Used to hold the object label closure of an association. This is a denormalized field used primarily in the SQL serialization of a knowledge graph via KGX.", + "items": { + "type": "string" + }, + "type": "array" + }, + "object_namespace": { + "description": "Used to hold the object namespace of an association. This is a denormalized field used primarily in the SQL serialization of a knowledge graph via KGX.", + "type": "string" + }, + "onset_qualifier": { + "description": "a qualifier used in a phenotypic association to state when the phenotype appears is in the subject", + "type": "string" + }, + "original_object": { + "description": "used to hold the original object of a relation (or predicate) that an external knowledge source uses before transformation to match the biolink-model specification.", + "type": "string" + }, + "original_predicate": { + "description": "used to hold the original relation/predicate that an external knowledge source uses before transformation to match the biolink-model specification.", + "type": "string" + }, + "original_subject": { + "description": "used to hold the original subject of a relation (or predicate) that an external knowledge source uses before transformation to match the biolink-model specification.", + "type": "string" + }, + "predicate": { + "description": "A high-level grouping for the relationship type. AKA minimal predicate. This is analogous to category for nodes.", + "type": "string" + }, + "primary_knowledge_source": { + "description": "The most upstream source of the knowledge expressed in an Association that an implementer can identify. Performing a rigorous analysis of upstream data providers is expected; every effort is made to catalog the most upstream source of data in this property. Only one data source should be declared primary in any association. \"aggregator knowledge source\" can be used to capture non-primary sources.", + "type": "string" + }, + "publications": { + "description": "One or more publications that report the statement expressed in an Association, or provide information used as evidence supporting this statement.", + "items": { + "type": "string" + }, + "type": "array" + }, + "qualifiers": { + "description": "connects an association to qualifiers that modify or qualify the meaning of that association", + "items": { + "type": "string" + }, + "type": "array" + }, + "retrieval_source_ids": { + "description": "A list of retrieval sources that served as a source of knowledge expressed in an Edge, or a source of data used to generate this knowledge.", + "items": { + "type": "string" + }, + "type": "array" + }, + "severity_qualifier": { + "description": "a qualifier used in a phenotypic association to state how severe the phenotype is in the subject", + "type": "string" + }, + "sex_qualifier": { + "description": "a qualifier used in a phenotypic association to state whether the association is specific to a particular sex.", + "type": "string" + }, + "subject": { + "$ref": "#/$defs/GeneOrGeneProduct", + "description": "gene in which variation is shown to cause the disease." + }, + "subject_aspect_qualifier": { + "$ref": "#/$defs/GeneOrGeneProductOrChemicalEntityAspectEnum" + }, + "subject_category": { + "description": "Used to hold the biolink class/category of an association. This is a denormalized field used primarily in the SQL serialization of a knowledge graph via KGX.", + "type": "string" + }, + "subject_category_closure": { + "description": "Used to hold the subject category closure of an association. This is a denormalized field used primarily in the SQL serialization of a knowledge graph via KGX.", + "items": { + "type": "string" + }, + "type": "array" + }, + "subject_closure": { + "description": "Used to hold the subject closure of an association. This is a denormalized field used primarily in the SQL serialization of a knowledge graph via KGX.", + "items": { + "type": "string" + }, + "type": "array" + }, + "subject_label_closure": { + "description": "Used to hold the subject label closure of an association. This is a denormalized field used primarily in the SQL serialization of a knowledge graph via KGX.", + "items": { + "type": "string" + }, + "type": "array" + }, + "subject_namespace": { + "description": "Used to hold the subject namespace of an association. This is a denormalized field used primarily in the SQL serialization of a knowledge graph via KGX.", + "type": "string" + }, + "timepoint": { + "description": "a point in time", + "format": "time", + "type": "string" + }, + "type": { + "description": "rdf:type of biolink:Association should be fixed at rdf:Statement", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "required": [ + "subject", + "predicate", + "object", + "id" + ], + "title": "CausalGeneToDiseaseAssociation", + "type": "object" + }, + "CausalMechanismQualifierEnum": { + "description": "", + "enum": [ + "binding", + "inhibition", + "antibody_inhibition", + "antagonism", + "molecular_channel_blockage", + "inverse_agonism", + "negative_allosteric_modulation", + "agonism", + "molecular_channel_opening", + "positive_allosteric_modulation", + "potentiation", + "activation", + "inducer", + "transcriptional_regulation", + "signaling_mediated_control", + "stabilization", + "stimulation", + "releasing_activity" + ], + "title": "CausalMechanismQualifierEnum", + "type": "string" + }, + "CdnaAmplification": { + "additionalProperties": false, + "description": "A process that takes a barcoded cell sample and produces an amplified cDNA sample.", + "properties": { + "category": { + "description": "Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class.\n * In a neo4j database this MAY correspond to the neo4j label tag.\n * In an RDF database it should be a biolink model class URI.\nThis field is multi-valued. It should include values for ancestors of the biolink class; for example, a protein such as Shh would have category values `biolink:Protein`, `biolink:GeneProduct`, `biolink:MolecularEntity`, ...\nIn an RDF database, nodes will typically have an rdf:type triples. This can be to the most specific biolink class, or potentially to a class more specific than something in biolink. For example, a sequence feature `f` may have a rdf:type assertion to a SO class such as TF_binding_site, which is more specific than anything in biolink. Here we would have categories {biolink:GenomicEntity, biolink:MolecularEntity, biolink:NamedThing}", + "items": { + "pattern": "^biolink:[A-Z][A-Za-z]+$", + "type": "string" + }, + "type": "array" + }, + "description": { + "description": "a human-readable description of an entity", + "type": "string" + }, + "full_name": { + "description": "a long-form human readable name for a thing", + "type": "string" + }, + "generated": { + "items": { + "$ref": "#/$defs/AmplifiedCdna" + }, + "type": "array" + }, + "has_attribute": { + "description": "connects any entity to an attribute", + "items": { + "type": "string" + }, + "type": "array" + }, + "id": { + "description": "A unique identifier for an entity. Must be either a CURIE shorthand for a URI or a complete URI", + "type": "string" + }, + "iri": { + "description": "An IRI for an entity. This is determined by the id using expansion rules.", + "type": "string" + }, + "name": { + "description": "A human-readable name for an attribute or entity.", + "type": "string" + }, + "provided_by": { + "description": "The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.", + "items": { + "type": "string" + }, + "type": "array" + }, + "synonym": { + "description": "Alternate human-readable names for a thing", + "items": { + "type": "string" + }, + "type": "array" + }, + "type": { + "items": { + "type": "string" + }, + "type": "array" + }, + "used": { + "items": { + "$ref": "#/$defs/BarcodedCellSample" + }, + "type": "array" + }, + "xref": { + "description": "A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "required": [ + "id", + "category" + ], + "title": "CdnaAmplification", + "type": "object" + }, + "Cell": { + "additionalProperties": false, + "description": "", + "properties": { + "category": { + "description": "Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class.\n * In a neo4j database this MAY correspond to the neo4j label tag.\n * In an RDF database it should be a biolink model class URI.\nThis field is multi-valued. It should include values for ancestors of the biolink class; for example, a protein such as Shh would have category values `biolink:Protein`, `biolink:GeneProduct`, `biolink:MolecularEntity`, ...\nIn an RDF database, nodes will typically have an rdf:type triples. This can be to the most specific biolink class, or potentially to a class more specific than something in biolink. For example, a sequence feature `f` may have a rdf:type assertion to a SO class such as TF_binding_site, which is more specific than anything in biolink. Here we would have categories {biolink:GenomicEntity, biolink:MolecularEntity, biolink:NamedThing}", + "items": { + "pattern": "^biolink:[A-Z][A-Za-z]+$", + "type": "string" + }, + "type": "array" + }, + "description": { + "description": "a human-readable description of an entity", + "type": "string" + }, + "full_name": { + "description": "a long-form human readable name for a thing", + "type": "string" + }, + "has_attribute": { + "description": "may often be an organism attribute", + "items": { + "type": "string" + }, + "type": "array" + }, + "id": { + "description": "A unique identifier for an entity. Must be either a CURIE shorthand for a URI or a complete URI", + "type": "string" + }, + "in_taxon": { + "description": "connects an entity to its taxonomic classification. Only certain kinds of entities can be taxonomically classified; see 'thing with taxon'", + "items": { + "type": "string" + }, + "type": "array" + }, + "in_taxon_label": { + "description": "The human readable scientific name for the taxon of the entity.", + "type": "string" + }, + "iri": { + "description": "An IRI for an entity. This is determined by the id using expansion rules.", + "type": "string" + }, + "name": { + "description": "A human-readable name for an attribute or entity.", + "type": "string" + }, + "provided_by": { + "description": "The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.", + "items": { + "type": "string" + }, + "type": "array" + }, + "synonym": { + "description": "Alternate human-readable names for a thing", + "items": { + "type": "string" + }, + "type": "array" + }, + "type": { + "items": { + "type": "string" + }, + "type": "array" + }, + "xref": { + "description": "A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "required": [ + "id", + "category" + ], + "title": "Cell", + "type": "object" + }, + "CellBarcoding": { + "additionalProperties": false, + "description": "A process that takes an enriched cell sample and produces a barcoded cell sample.", + "properties": { + "category": { + "description": "Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class.\n * In a neo4j database this MAY correspond to the neo4j label tag.\n * In an RDF database it should be a biolink model class URI.\nThis field is multi-valued. It should include values for ancestors of the biolink class; for example, a protein such as Shh would have category values `biolink:Protein`, `biolink:GeneProduct`, `biolink:MolecularEntity`, ...\nIn an RDF database, nodes will typically have an rdf:type triples. This can be to the most specific biolink class, or potentially to a class more specific than something in biolink. For example, a sequence feature `f` may have a rdf:type assertion to a SO class such as TF_binding_site, which is more specific than anything in biolink. Here we would have categories {biolink:GenomicEntity, biolink:MolecularEntity, biolink:NamedThing}", + "items": { + "pattern": "^biolink:[A-Z][A-Za-z]+$", + "type": "string" + }, + "type": "array" + }, + "description": { + "description": "a human-readable description of an entity", + "type": "string" + }, + "full_name": { + "description": "a long-form human readable name for a thing", + "type": "string" + }, + "generated": { + "items": { + "$ref": "#/$defs/BarcodedCellSample" + }, + "type": "array" + }, + "has_attribute": { + "description": "connects any entity to an attribute", + "items": { + "type": "string" + }, + "type": "array" + }, + "id": { + "description": "A unique identifier for an entity. Must be either a CURIE shorthand for a URI or a complete URI", + "type": "string" + }, + "iri": { + "description": "An IRI for an entity. This is determined by the id using expansion rules.", + "type": "string" + }, + "name": { + "description": "A human-readable name for an attribute or entity.", + "type": "string" + }, + "provided_by": { + "description": "The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.", + "items": { + "type": "string" + }, + "type": "array" + }, + "synonym": { + "description": "Alternate human-readable names for a thing", + "items": { + "type": "string" + }, + "type": "array" + }, + "type": { + "items": { + "type": "string" + }, + "type": "array" + }, + "used": { + "items": { + "$ref": "#/$defs/EnrichedCellSample" + }, + "type": "array" + }, + "xref": { + "description": "A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "required": [ + "id", + "category" + ], + "title": "CellBarcoding", + "type": "object" + }, + "CellDissociation": { + "additionalProperties": false, + "description": "A process that takes a tissue sample and produces a dissociated cell sample.", + "properties": { + "category": { + "description": "Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class.\n * In a neo4j database this MAY correspond to the neo4j label tag.\n * In an RDF database it should be a biolink model class URI.\nThis field is multi-valued. It should include values for ancestors of the biolink class; for example, a protein such as Shh would have category values `biolink:Protein`, `biolink:GeneProduct`, `biolink:MolecularEntity`, ...\nIn an RDF database, nodes will typically have an rdf:type triples. This can be to the most specific biolink class, or potentially to a class more specific than something in biolink. For example, a sequence feature `f` may have a rdf:type assertion to a SO class such as TF_binding_site, which is more specific than anything in biolink. Here we would have categories {biolink:GenomicEntity, biolink:MolecularEntity, biolink:NamedThing}", + "items": { + "pattern": "^biolink:[A-Z][A-Za-z]+$", + "type": "string" + }, + "type": "array" + }, + "description": { + "description": "a human-readable description of an entity", + "type": "string" + }, + "full_name": { + "description": "a long-form human readable name for a thing", + "type": "string" + }, + "generated": { "items": { - "type": "string" + "$ref": "#/$defs/DissociatedCellSample" }, "type": "array" }, - "retrieval_source_ids": { - "description": "A list of retrieval sources that served as a source of knowledge expressed in an Edge, or a source of data used to generate this knowledge.", + "has_attribute": { + "description": "connects any entity to an attribute", "items": { "type": "string" }, "type": "array" }, - "severity_qualifier": { - "description": "a qualifier used in a phenotypic association to state how severe the phenotype is in the subject", + "id": { + "description": "A unique identifier for an entity. Must be either a CURIE shorthand for a URI or a complete URI", "type": "string" }, - "sex_qualifier": { - "description": "a qualifier used in a phenotypic association to state whether the association is specific to a particular sex.", + "iri": { + "description": "An IRI for an entity. This is determined by the id using expansion rules.", "type": "string" }, - "subject": { - "$ref": "#/$defs/GeneOrGeneProduct", - "description": "gene in which variation is shown to cause the disease." - }, - "subject_aspect_qualifier": { - "$ref": "#/$defs/GeneOrGeneProductOrChemicalEntityAspectEnum" - }, - "subject_category": { - "description": "Used to hold the biolink class/category of an association. This is a denormalized field used primarily in the SQL serialization of a knowledge graph via KGX.", + "name": { + "description": "A human-readable name for an attribute or entity.", "type": "string" }, - "subject_category_closure": { - "description": "Used to hold the subject category closure of an association. This is a denormalized field used primarily in the SQL serialization of a knowledge graph via KGX.", + "provided_by": { + "description": "The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.", "items": { "type": "string" }, "type": "array" }, - "subject_closure": { - "description": "Used to hold the subject closure of an association. This is a denormalized field used primarily in the SQL serialization of a knowledge graph via KGX.", + "synonym": { + "description": "Alternate human-readable names for a thing", "items": { "type": "string" }, "type": "array" }, - "subject_label_closure": { - "description": "Used to hold the subject label closure of an association. This is a denormalized field used primarily in the SQL serialization of a knowledge graph via KGX.", + "type": { "items": { "type": "string" }, "type": "array" }, - "subject_namespace": { - "description": "Used to hold the subject namespace of an association. This is a denormalized field used primarily in the SQL serialization of a knowledge graph via KGX.", - "type": "string" - }, - "timepoint": { - "description": "a point in time", - "format": "time", - "type": "string" + "used": { + "items": { + "$ref": "#/$defs/TissueSample" + }, + "type": "array" }, - "type": { - "description": "rdf:type of biolink:Association should be fixed at rdf:Statement", + "xref": { + "description": "A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.", "items": { "type": "string" }, @@ -3052,62 +3726,15 @@ } }, "required": [ - "subject", - "predicate", - "object", - "id" - ], - "title": "CausalGeneToDiseaseAssociation", - "type": "object" - }, - "CausalMechanismQualifierEnum": { - "description": "", - "enum": [ - "binding", - "inhibition", - "antibody_inhibition", - "antagonism", - "molecular_channel_blockage", - "inverse_agonism", - "negative_allosteric_modulation", - "agonism", - "molecular_channel_opening", - "positive_allosteric_modulation", - "potentiation", - "activation", - "inducer", - "transcriptional_regulation", - "signaling_mediated_control", - "stabilization", - "stimulation", - "releasing_activity" + "id", + "category" ], - "title": "CausalMechanismQualifierEnum", - "type": "string" - }, - "CdnaAmplification": { - "additionalProperties": false, - "description": "A process that takes a barcoded cell sample and produces an amplified cDNA sample.", - "properties": { - "input_entity": { - "$ref": "#/$defs/BarcodedCellSample", - "description": "The input entity of the process." - }, - "output_entity": { - "$ref": "#/$defs/AmplifiedCdna", - "description": "The output entity of the process." - }, - "process_id": { - "description": "The id of the process.", - "type": "string" - } - }, - "title": "CdnaAmplification", + "title": "CellDissociation", "type": "object" }, - "Cell": { + "CellEnrichment": { "additionalProperties": false, - "description": "", + "description": "A process that takes a dissociated cell sample and produces an enriched cell sample.", "properties": { "category": { "description": "Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class.\n * In a neo4j database this MAY correspond to the neo4j label tag.\n * In an RDF database it should be a biolink model class URI.\nThis field is multi-valued. It should include values for ancestors of the biolink class; for example, a protein such as Shh would have category values `biolink:Protein`, `biolink:GeneProduct`, `biolink:MolecularEntity`, ...\nIn an RDF database, nodes will typically have an rdf:type triples. This can be to the most specific biolink class, or potentially to a class more specific than something in biolink. For example, a sequence feature `f` may have a rdf:type assertion to a SO class such as TF_binding_site, which is more specific than anything in biolink. Here we would have categories {biolink:GenomicEntity, biolink:MolecularEntity, biolink:NamedThing}", @@ -3125,26 +3752,21 @@ "description": "a long-form human readable name for a thing", "type": "string" }, - "has_attribute": { - "description": "may often be an organism attribute", + "generated": { "items": { - "type": "string" + "$ref": "#/$defs/EnrichedCellSample" }, "type": "array" }, - "id": { - "description": "A unique identifier for an entity. Must be either a CURIE shorthand for a URI or a complete URI", - "type": "string" - }, - "in_taxon": { - "description": "connects an entity to its taxonomic classification. Only certain kinds of entities can be taxonomically classified; see 'thing with taxon'", + "has_attribute": { + "description": "connects any entity to an attribute", "items": { "type": "string" }, "type": "array" }, - "in_taxon_label": { - "description": "The human readable scientific name for the taxon of the entity.", + "id": { + "description": "A unique identifier for an entity. Must be either a CURIE shorthand for a URI or a complete URI", "type": "string" }, "iri": { @@ -3175,6 +3797,12 @@ }, "type": "array" }, + "used": { + "items": { + "$ref": "#/$defs/DissociatedCellSample" + }, + "type": "array" + }, "xref": { "description": "A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.", "items": { @@ -3187,66 +3815,6 @@ "id", "category" ], - "title": "Cell", - "type": "object" - }, - "CellBarcoding": { - "additionalProperties": false, - "description": "A process that takes an enriched cell sample and produces a barcoded cell sample.", - "properties": { - "input_entity": { - "$ref": "#/$defs/EnrichedCellSample", - "description": "The input entity of the process." - }, - "output_entity": { - "$ref": "#/$defs/BarcodedCellSample", - "description": "The output entity of the process." - }, - "process_id": { - "description": "The id of the process.", - "type": "string" - } - }, - "title": "CellBarcoding", - "type": "object" - }, - "CellDissociation": { - "additionalProperties": false, - "description": "A process that takes a tissue sample and produces a dissociated cell sample.", - "properties": { - "input_entity": { - "$ref": "#/$defs/TissueSample", - "description": "The input entity of the process." - }, - "output_entity": { - "$ref": "#/$defs/DissociatedCellSample", - "description": "The output entity of the process." - }, - "process_id": { - "description": "The id of the process.", - "type": "string" - } - }, - "title": "CellDissociation", - "type": "object" - }, - "CellEnrichment": { - "additionalProperties": false, - "description": "A process that takes a dissociated cell sample and produces an enriched cell sample.", - "properties": { - "input_entity": { - "$ref": "#/$defs/DissociatedCellSample", - "description": "The input entity of the process." - }, - "output_entity": { - "$ref": "#/$defs/EnrichedCellSample", - "description": "The output entity of the process." - }, - "process_id": { - "description": "The id of the process.", - "type": "string" - } - }, "title": "CellEnrichment", "type": "object" }, @@ -9727,24 +10295,67 @@ "additionalProperties": false, "description": "", "properties": { + "category": { + "description": "Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class.\n * In a neo4j database this MAY correspond to the neo4j label tag.\n * In an RDF database it should be a biolink model class URI.\nThis field is multi-valued. It should include values for ancestors of the biolink class; for example, a protein such as Shh would have category values `biolink:Protein`, `biolink:GeneProduct`, `biolink:MolecularEntity`, ...\nIn an RDF database, nodes will typically have an rdf:type triples. This can be to the most specific biolink class, or potentially to a class more specific than something in biolink. For example, a sequence feature `f` may have a rdf:type assertion to a SO class such as TF_binding_site, which is more specific than anything in biolink. Here we would have categories {biolink:GenomicEntity, biolink:MolecularEntity, biolink:NamedThing}", + "items": { + "type": "string" + }, + "type": "array" + }, "cell_prep_type": { "type": "string" }, - "created_by_process": { - "$ref": "#/$defs/CellDissociation", - "description": "The process that created the object." + "description": { + "description": "a human-readable description of an entity", + "type": "string" }, "facs_population_plan": { "type": "string" }, - "label": { - "description": "The name of the object.", + "has_attribute": { + "description": "connects any entity to an attribute", + "items": { + "type": "string" + }, + "type": "array" + }, + "id": { + "description": "A unique identifier for an entity. Must be either a CURIE shorthand for a URI or a complete URI", + "type": "string" + }, + "iri": { + "description": "An IRI for an entity. This is determined by the id using expansion rules.", + "type": "string" + }, + "name": { + "description": "A human-readable name for an attribute or entity.", "type": "string" }, "number_of_cells_collected": { "type": "integer" + }, + "type": { + "items": { + "type": "string" + }, + "type": "array" + }, + "wasDerivedFrom": { + "items": { + "$ref": "#/$defs/TissueSample" + }, + "type": "array" + }, + "wasGeneratedBy": { + "items": { + "$ref": "#/$defs/CellDissociation" + }, + "type": "array" } }, + "required": [ + "id" + ], "title": "DissociatedCellSample", "type": "object" }, @@ -9807,10 +10418,6 @@ "description": "An IRI for an entity. This is determined by the id using expansion rules.", "type": "string" }, - "label": { - "description": "The name of the object.", - "type": "string" - }, "name": { "description": "A human-readable name for an attribute or entity.", "type": "string" @@ -9823,6 +10430,18 @@ "type": "string" }, "type": "array" + }, + "wasDerivedFrom": { + "items": { + "$ref": "#/$defs/Entity" + }, + "type": "array" + }, + "wasGeneratedBy": { + "items": { + "$ref": "#/$defs/Activity" + }, + "type": "array" } }, "required": [ @@ -10709,15 +11328,58 @@ "additionalProperties": false, "description": "", "properties": { - "created_by_process": { - "$ref": "#/$defs/CellEnrichment", - "description": "The process that created the object." + "category": { + "description": "Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class.\n * In a neo4j database this MAY correspond to the neo4j label tag.\n * In an RDF database it should be a biolink model class URI.\nThis field is multi-valued. It should include values for ancestors of the biolink class; for example, a protein such as Shh would have category values `biolink:Protein`, `biolink:GeneProduct`, `biolink:MolecularEntity`, ...\nIn an RDF database, nodes will typically have an rdf:type triples. This can be to the most specific biolink class, or potentially to a class more specific than something in biolink. For example, a sequence feature `f` may have a rdf:type assertion to a SO class such as TF_binding_site, which is more specific than anything in biolink. Here we would have categories {biolink:GenomicEntity, biolink:MolecularEntity, biolink:NamedThing}", + "items": { + "type": "string" + }, + "type": "array" + }, + "description": { + "description": "a human-readable description of an entity", + "type": "string" + }, + "has_attribute": { + "description": "connects any entity to an attribute", + "items": { + "type": "string" + }, + "type": "array" + }, + "id": { + "description": "A unique identifier for an entity. Must be either a CURIE shorthand for a URI or a complete URI", + "type": "string" + }, + "iri": { + "description": "An IRI for an entity. This is determined by the id using expansion rules.", + "type": "string" + }, + "name": { + "description": "A human-readable name for an attribute or entity.", + "type": "string" + }, + "type": { + "items": { + "type": "string" + }, + "type": "array" + }, + "wasDerivedFrom": { + "items": { + "$ref": "#/$defs/DissociatedCellSample" + }, + "type": "array" }, - "label": { - "description": "The name of the object.", - "type": "string" + "wasGeneratedBy": { + "items": { + "$ref": "#/$defs/CellEnrichment" + }, + "type": "array" } }, + "required": [ + "id" + ], "title": "EnrichedCellSample", "type": "object" }, @@ -13600,6 +14262,8 @@ "transport", "secretion", "uptake", + "splicing", + "molecular_interaction", "molecular_modification", "acetylation", "acylation", @@ -18786,20 +19450,39 @@ "description": "The average size (bp) of the library fragments. bp stands for base pairs.", "type": "integer" }, - "created_by_process": { - "$ref": "#/$defs/LibraryConstruction" + "category": { + "description": "Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class.\n * In a neo4j database this MAY correspond to the neo4j label tag.\n * In an RDF database it should be a biolink model class URI.\nThis field is multi-valued. It should include values for ancestors of the biolink class; for example, a protein such as Shh would have category values `biolink:Protein`, `biolink:GeneProduct`, `biolink:MolecularEntity`, ...\nIn an RDF database, nodes will typically have an rdf:type triples. This can be to the most specific biolink class, or potentially to a class more specific than something in biolink. For example, a sequence feature `f` may have a rdf:type assertion to a SO class such as TF_binding_site, which is more specific than anything in biolink. Here we would have categories {biolink:GenomicEntity, biolink:MolecularEntity, biolink:NamedThing}", + "items": { + "type": "string" + }, + "type": "array" }, "creation_date": { "description": "The date and time the object was created.", "format": "date-time", "type": "string" }, + "description": { + "description": "a human-readable description of an entity", + "type": "string" + }, + "has_attribute": { + "description": "connects any entity to an attribute", + "items": { + "type": "string" + }, + "type": "array" + }, + "id": { + "description": "A unique identifier for an entity. Must be either a CURIE shorthand for a URI or a complete URI", + "type": "string" + }, "input_amount": { "description": "The amount of input material (ng) used to create the library.", "type": "number" }, - "label": { - "description": "The name of the object.", + "iri": { + "description": "An IRI for an entity. This is determined by the id using expansion rules.", "type": "string" }, "library_prep_pass": { @@ -18808,6 +19491,10 @@ "method": { "type": "string" }, + "name": { + "description": "A human-readable name for an attribute or entity.", + "type": "string" + }, "quantification_fmol": { "type": "number" }, @@ -18828,8 +19515,29 @@ }, "r2_sequence": { "type": "string" + }, + "type": { + "items": { + "type": "string" + }, + "type": "array" + }, + "wasDerivedFrom": { + "items": { + "$ref": "#/$defs/AmplifiedCdna" + }, + "type": "array" + }, + "wasGeneratedBy": { + "items": { + "$ref": "#/$defs/LibraryConstruction" + }, + "type": "array" } }, + "required": [ + "id" + ], "title": "Library", "type": "object" }, @@ -18837,19 +19545,62 @@ "additionalProperties": false, "description": "", "properties": { - "created_by_process": { - "$ref": "#/$defs/LibraryAliquoting", - "description": "The process that created the object." + "category": { + "description": "Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class.\n * In a neo4j database this MAY correspond to the neo4j label tag.\n * In an RDF database it should be a biolink model class URI.\nThis field is multi-valued. It should include values for ancestors of the biolink class; for example, a protein such as Shh would have category values `biolink:Protein`, `biolink:GeneProduct`, `biolink:MolecularEntity`, ...\nIn an RDF database, nodes will typically have an rdf:type triples. This can be to the most specific biolink class, or potentially to a class more specific than something in biolink. For example, a sequence feature `f` may have a rdf:type assertion to a SO class such as TF_binding_site, which is more specific than anything in biolink. Here we would have categories {biolink:GenomicEntity, biolink:MolecularEntity, biolink:NamedThing}", + "items": { + "type": "string" + }, + "type": "array" + }, + "description": { + "description": "a human-readable description of an entity", + "type": "string" + }, + "has_attribute": { + "description": "connects any entity to an attribute", + "items": { + "type": "string" + }, + "type": "array" + }, + "id": { + "description": "A unique identifier for an entity. Must be either a CURIE shorthand for a URI or a complete URI", + "type": "string" }, "input_quantity": { "description": "The amount of input material (fmol) used to create the library aliquot.", "type": "integer" }, - "label": { - "description": "The name of the object.", + "iri": { + "description": "An IRI for an entity. This is determined by the id using expansion rules.", + "type": "string" + }, + "name": { + "description": "A human-readable name for an attribute or entity.", "type": "string" + }, + "type": { + "items": { + "type": "string" + }, + "type": "array" + }, + "wasDerivedFrom": { + "items": { + "$ref": "#/$defs/Library" + }, + "type": "array" + }, + "wasGeneratedBy": { + "items": { + "$ref": "#/$defs/LibraryAliquoting" + }, + "type": "array" } }, + "required": [ + "id" + ], "title": "LibraryAliquot", "type": "object" }, @@ -18857,19 +19608,85 @@ "additionalProperties": false, "description": "A process that takes a library and produces an library aliquot.", "properties": { - "input_entity": { - "$ref": "#/$defs/Library", - "description": "The input entity of the process." + "category": { + "description": "Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class.\n * In a neo4j database this MAY correspond to the neo4j label tag.\n * In an RDF database it should be a biolink model class URI.\nThis field is multi-valued. It should include values for ancestors of the biolink class; for example, a protein such as Shh would have category values `biolink:Protein`, `biolink:GeneProduct`, `biolink:MolecularEntity`, ...\nIn an RDF database, nodes will typically have an rdf:type triples. This can be to the most specific biolink class, or potentially to a class more specific than something in biolink. For example, a sequence feature `f` may have a rdf:type assertion to a SO class such as TF_binding_site, which is more specific than anything in biolink. Here we would have categories {biolink:GenomicEntity, biolink:MolecularEntity, biolink:NamedThing}", + "items": { + "pattern": "^biolink:[A-Z][A-Za-z]+$", + "type": "string" + }, + "type": "array" + }, + "description": { + "description": "a human-readable description of an entity", + "type": "string" + }, + "full_name": { + "description": "a long-form human readable name for a thing", + "type": "string" + }, + "generated": { + "items": { + "$ref": "#/$defs/LibraryAliquot" + }, + "type": "array" + }, + "has_attribute": { + "description": "connects any entity to an attribute", + "items": { + "type": "string" + }, + "type": "array" + }, + "id": { + "description": "A unique identifier for an entity. Must be either a CURIE shorthand for a URI or a complete URI", + "type": "string" }, - "output_entity": { - "$ref": "#/$defs/LibraryAliquot", - "description": "The output entity of the process." + "iri": { + "description": "An IRI for an entity. This is determined by the id using expansion rules.", + "type": "string" }, - "process_id": { - "description": "The id of the process.", + "name": { + "description": "A human-readable name for an attribute or entity.", "type": "string" + }, + "provided_by": { + "description": "The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.", + "items": { + "type": "string" + }, + "type": "array" + }, + "synonym": { + "description": "Alternate human-readable names for a thing", + "items": { + "type": "string" + }, + "type": "array" + }, + "type": { + "items": { + "type": "string" + }, + "type": "array" + }, + "used": { + "items": { + "$ref": "#/$defs/Library" + }, + "type": "array" + }, + "xref": { + "description": "A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.", + "items": { + "type": "string" + }, + "type": "array" } }, + "required": [ + "id", + "category" + ], "title": "LibraryAliquoting", "type": "object" }, @@ -18877,19 +19694,85 @@ "additionalProperties": false, "description": "A process that takes an amplified cDNA sample and produces a library.", "properties": { - "input_entity": { - "$ref": "#/$defs/AmplifiedCdna", - "description": "The input entity of the process." + "category": { + "description": "Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class.\n * In a neo4j database this MAY correspond to the neo4j label tag.\n * In an RDF database it should be a biolink model class URI.\nThis field is multi-valued. It should include values for ancestors of the biolink class; for example, a protein such as Shh would have category values `biolink:Protein`, `biolink:GeneProduct`, `biolink:MolecularEntity`, ...\nIn an RDF database, nodes will typically have an rdf:type triples. This can be to the most specific biolink class, or potentially to a class more specific than something in biolink. For example, a sequence feature `f` may have a rdf:type assertion to a SO class such as TF_binding_site, which is more specific than anything in biolink. Here we would have categories {biolink:GenomicEntity, biolink:MolecularEntity, biolink:NamedThing}", + "items": { + "pattern": "^biolink:[A-Z][A-Za-z]+$", + "type": "string" + }, + "type": "array" + }, + "description": { + "description": "a human-readable description of an entity", + "type": "string" + }, + "full_name": { + "description": "a long-form human readable name for a thing", + "type": "string" + }, + "generated": { + "items": { + "$ref": "#/$defs/Library" + }, + "type": "array" + }, + "has_attribute": { + "description": "connects any entity to an attribute", + "items": { + "type": "string" + }, + "type": "array" + }, + "id": { + "description": "A unique identifier for an entity. Must be either a CURIE shorthand for a URI or a complete URI", + "type": "string" }, - "output_entity": { - "$ref": "#/$defs/Library", - "description": "The output entity of the process." + "iri": { + "description": "An IRI for an entity. This is determined by the id using expansion rules.", + "type": "string" }, - "process_id": { - "description": "The id of the process.", + "name": { + "description": "A human-readable name for an attribute or entity.", "type": "string" + }, + "provided_by": { + "description": "The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.", + "items": { + "type": "string" + }, + "type": "array" + }, + "synonym": { + "description": "Alternate human-readable names for a thing", + "items": { + "type": "string" + }, + "type": "array" + }, + "type": { + "items": { + "type": "string" + }, + "type": "array" + }, + "used": { + "items": { + "$ref": "#/$defs/AmplifiedCdna" + }, + "type": "array" + }, + "xref": { + "description": "A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.", + "items": { + "type": "string" + }, + "type": "array" } }, + "required": [ + "id", + "category" + ], "title": "LibraryConstruction", "type": "object" }, @@ -18897,12 +19780,34 @@ "additionalProperties": false, "description": "", "properties": { - "created_by_process": { - "$ref": "#/$defs/LibraryPooling", - "description": "The process that created the object." + "category": { + "description": "Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class.\n * In a neo4j database this MAY correspond to the neo4j label tag.\n * In an RDF database it should be a biolink model class URI.\nThis field is multi-valued. It should include values for ancestors of the biolink class; for example, a protein such as Shh would have category values `biolink:Protein`, `biolink:GeneProduct`, `biolink:MolecularEntity`, ...\nIn an RDF database, nodes will typically have an rdf:type triples. This can be to the most specific biolink class, or potentially to a class more specific than something in biolink. For example, a sequence feature `f` may have a rdf:type assertion to a SO class such as TF_binding_site, which is more specific than anything in biolink. Here we would have categories {biolink:GenomicEntity, biolink:MolecularEntity, biolink:NamedThing}", + "items": { + "type": "string" + }, + "type": "array" + }, + "description": { + "description": "a human-readable description of an entity", + "type": "string" + }, + "has_attribute": { + "description": "connects any entity to an attribute", + "items": { + "type": "string" + }, + "type": "array" + }, + "id": { + "description": "A unique identifier for an entity. Must be either a CURIE shorthand for a URI or a complete URI", + "type": "string" + }, + "iri": { + "description": "An IRI for an entity. This is determined by the id using expansion rules.", + "type": "string" }, - "label": { - "description": "The name of the object.", + "name": { + "description": "A human-readable name for an attribute or entity.", "type": "string" }, "tube_avg_size": { @@ -18915,8 +19820,29 @@ }, "tube_internal_label": { "type": "string" + }, + "type": { + "items": { + "type": "string" + }, + "type": "array" + }, + "wasDerivedFrom": { + "items": { + "$ref": "#/$defs/LibraryAliquot" + }, + "type": "array" + }, + "wasGeneratedBy": { + "items": { + "$ref": "#/$defs/LibraryPooling" + }, + "type": "array" } }, + "required": [ + "id" + ], "title": "LibraryPool", "type": "object" }, @@ -18924,19 +19850,85 @@ "additionalProperties": false, "description": "A process that takes a library aliquot and produces a library pool.", "properties": { - "input_entity": { - "$ref": "#/$defs/LibraryAliquot", - "description": "The input entity of the process." + "category": { + "description": "Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class.\n * In a neo4j database this MAY correspond to the neo4j label tag.\n * In an RDF database it should be a biolink model class URI.\nThis field is multi-valued. It should include values for ancestors of the biolink class; for example, a protein such as Shh would have category values `biolink:Protein`, `biolink:GeneProduct`, `biolink:MolecularEntity`, ...\nIn an RDF database, nodes will typically have an rdf:type triples. This can be to the most specific biolink class, or potentially to a class more specific than something in biolink. For example, a sequence feature `f` may have a rdf:type assertion to a SO class such as TF_binding_site, which is more specific than anything in biolink. Here we would have categories {biolink:GenomicEntity, biolink:MolecularEntity, biolink:NamedThing}", + "items": { + "pattern": "^biolink:[A-Z][A-Za-z]+$", + "type": "string" + }, + "type": "array" + }, + "description": { + "description": "a human-readable description of an entity", + "type": "string" + }, + "full_name": { + "description": "a long-form human readable name for a thing", + "type": "string" + }, + "generated": { + "items": { + "$ref": "#/$defs/LibraryPool" + }, + "type": "array" + }, + "has_attribute": { + "description": "connects any entity to an attribute", + "items": { + "type": "string" + }, + "type": "array" + }, + "id": { + "description": "A unique identifier for an entity. Must be either a CURIE shorthand for a URI or a complete URI", + "type": "string" }, - "output_entity": { - "$ref": "#/$defs/LibraryPool", - "description": "The output entity of the process." + "iri": { + "description": "An IRI for an entity. This is determined by the id using expansion rules.", + "type": "string" }, - "process_id": { - "description": "The id of the process.", + "name": { + "description": "A human-readable name for an attribute or entity.", "type": "string" + }, + "provided_by": { + "description": "The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.", + "items": { + "type": "string" + }, + "type": "array" + }, + "synonym": { + "description": "Alternate human-readable names for a thing", + "items": { + "type": "string" + }, + "type": "array" + }, + "type": { + "items": { + "type": "string" + }, + "type": "array" + }, + "used": { + "items": { + "$ref": "#/$defs/LibraryAliquot" + }, + "type": "array" + }, + "xref": { + "description": "A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.", + "items": { + "type": "string" + }, + "type": "array" } }, + "required": [ + "id", + "category" + ], "title": "LibraryPooling", "type": "object" }, @@ -25476,42 +26468,6 @@ "title": "Procedure", "type": "object" }, - "Process": { - "additionalProperties": false, - "description": "A process that takes input entities and produces output entities.", - "properties": { - "input_entity": { - "description": "The input entity of the process.", - "type": "string" - }, - "output_entity": { - "description": "The output entity of the process.", - "type": "string" - }, - "process_id": { - "description": "The id of the process.", - "type": "string" - } - }, - "title": "Process", - "type": "object" - }, - "ProcessOutput": { - "additionalProperties": false, - "description": "The output of a process.", - "properties": { - "created_by_process": { - "description": "The process that created the object.", - "type": "string" - }, - "label": { - "description": "The name of the object.", - "type": "string" - } - }, - "title": "ProcessOutput", - "type": "object" - }, "ProcessedMaterial": { "additionalProperties": false, "description": "A chemical entity (often a mixture) processed for consumption for nutritional, medical or technical use. Is a material entity that is created or changed during material processing.", @@ -25985,6 +26941,46 @@ "title": "ProteinIsoform", "type": "object" }, + "ProvActivity": { + "additionalProperties": false, + "description": "Based off prov:Activity; an activity is something that occurs over a period of time and acts upon or with entities; it may include consuming, processing, transforming, modifying, relocating, using, or generating entities.", + "properties": { + "generated": { + "items": { + "$ref": "#/$defs/Entity" + }, + "type": "array" + }, + "used": { + "items": { + "$ref": "#/$defs/Entity" + }, + "type": "array" + } + }, + "title": "ProvActivity", + "type": "object" + }, + "ProvEntity": { + "additionalProperties": false, + "description": "Based off prov:Entity; an entity is a physical, digital, conceptual, or other kind of thing with some fixed aspects; entities may be real or imaginary.", + "properties": { + "wasDerivedFrom": { + "items": { + "$ref": "#/$defs/Entity" + }, + "type": "array" + }, + "wasGeneratedBy": { + "items": { + "$ref": "#/$defs/Activity" + }, + "type": "array" + } + }, + "title": "ProvEntity", + "type": "object" + }, "Publication": { "additionalProperties": false, "description": "Any \u2018published\u2019 piece of information. Publications are considered broadly to include any document or document part made available in print or on the web - which may include scientific journal issues, individual articles, and books - as well as things like pre-prints, white papers, patents, drug labels, web pages, protocol documents, and even a part of a publication if of significant knowledge scope (e.g. a figure, figure legend, or section highlighted by NLP).", @@ -28943,19 +29939,85 @@ "additionalProperties": false, "description": "A process that takes a brain section and produces a tissue sample.", "properties": { - "input_entity": { - "$ref": "#/$defs/BrainSection", - "description": "The input entity of the process." + "category": { + "description": "Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class.\n * In a neo4j database this MAY correspond to the neo4j label tag.\n * In an RDF database it should be a biolink model class URI.\nThis field is multi-valued. It should include values for ancestors of the biolink class; for example, a protein such as Shh would have category values `biolink:Protein`, `biolink:GeneProduct`, `biolink:MolecularEntity`, ...\nIn an RDF database, nodes will typically have an rdf:type triples. This can be to the most specific biolink class, or potentially to a class more specific than something in biolink. For example, a sequence feature `f` may have a rdf:type assertion to a SO class such as TF_binding_site, which is more specific than anything in biolink. Here we would have categories {biolink:GenomicEntity, biolink:MolecularEntity, biolink:NamedThing}", + "items": { + "pattern": "^biolink:[A-Z][A-Za-z]+$", + "type": "string" + }, + "type": "array" + }, + "description": { + "description": "a human-readable description of an entity", + "type": "string" + }, + "full_name": { + "description": "a long-form human readable name for a thing", + "type": "string" + }, + "generated": { + "items": { + "$ref": "#/$defs/TissueSample" + }, + "type": "array" + }, + "has_attribute": { + "description": "connects any entity to an attribute", + "items": { + "type": "string" + }, + "type": "array" }, - "output_entity": { - "$ref": "#/$defs/TissueSample", - "description": "The output entity of the process." + "id": { + "description": "A unique identifier for an entity. Must be either a CURIE shorthand for a URI or a complete URI", + "type": "string" + }, + "iri": { + "description": "An IRI for an entity. This is determined by the id using expansion rules.", + "type": "string" }, - "process_id": { - "description": "The id of the process.", + "name": { + "description": "A human-readable name for an attribute or entity.", "type": "string" + }, + "provided_by": { + "description": "The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.", + "items": { + "type": "string" + }, + "type": "array" + }, + "synonym": { + "description": "Alternate human-readable names for a thing", + "items": { + "type": "string" + }, + "type": "array" + }, + "type": { + "items": { + "type": "string" + }, + "type": "array" + }, + "used": { + "items": { + "$ref": "#/$defs/BrainSection" + }, + "type": "array" + }, + "xref": { + "description": "A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.", + "items": { + "type": "string" + }, + "type": "array" } }, + "required": [ + "id", + "category" + ], "title": "TissueDissecting", "type": "object" }, @@ -28963,12 +30025,34 @@ "additionalProperties": false, "description": "", "properties": { - "created_by_process": { - "$ref": "#/$defs/TissueDissecting", - "description": "The process that created the object." + "category": { + "description": "Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class.\n * In a neo4j database this MAY correspond to the neo4j label tag.\n * In an RDF database it should be a biolink model class URI.\nThis field is multi-valued. It should include values for ancestors of the biolink class; for example, a protein such as Shh would have category values `biolink:Protein`, `biolink:GeneProduct`, `biolink:MolecularEntity`, ...\nIn an RDF database, nodes will typically have an rdf:type triples. This can be to the most specific biolink class, or potentially to a class more specific than something in biolink. For example, a sequence feature `f` may have a rdf:type assertion to a SO class such as TF_binding_site, which is more specific than anything in biolink. Here we would have categories {biolink:GenomicEntity, biolink:MolecularEntity, biolink:NamedThing}", + "items": { + "type": "string" + }, + "type": "array" + }, + "description": { + "description": "a human-readable description of an entity", + "type": "string" + }, + "has_attribute": { + "description": "connects any entity to an attribute", + "items": { + "type": "string" + }, + "type": "array" + }, + "id": { + "description": "A unique identifier for an entity. Must be either a CURIE shorthand for a URI or a complete URI", + "type": "string" + }, + "iri": { + "description": "An IRI for an entity. This is determined by the id using expansion rules.", + "type": "string" }, - "label": { - "description": "The name of the object.", + "name": { + "description": "A human-readable name for an attribute or entity.", "type": "string" }, "region_of_interest_label": { @@ -28977,8 +30061,29 @@ }, "roi_plan": { "type": "string" + }, + "type": { + "items": { + "type": "string" + }, + "type": "array" + }, + "wasDerivedFrom": { + "items": { + "$ref": "#/$defs/BrainSection" + }, + "type": "array" + }, + "wasGeneratedBy": { + "items": { + "$ref": "#/$defs/TissueDissecting" + }, + "type": "array" } }, + "required": [ + "id" + ], "title": "TissueSample", "type": "object" }, diff --git a/jsonld-context-autogen/kbmodel.context.jsonld b/jsonld-context-autogen/kbmodel.context.jsonld index 83984c97..3d459257 100644 --- a/jsonld-context-autogen/kbmodel.context.jsonld +++ b/jsonld-context-autogen/kbmodel.context.jsonld @@ -1108,6 +1108,10 @@ "@type": "@id", "@id": "biolink:gene_fusion_with" }, + "generated": { + "@type": "@id", + "@id": "prov:generated" + }, "genetic_association": { "@type": "@id", "@id": "biolink:genetic_association" @@ -1635,9 +1639,6 @@ "avg_size": { "@type": "xsd:integer" }, - "created_by_process": { - "@type": "@id" - }, "input_amount": { "@type": "xsd:float" }, @@ -2414,6 +2415,10 @@ "@type": "@id", "@id": "biolink:upstream_resource_ids" }, + "used": { + "@type": "@id", + "@id": "prov:used" + }, "variant_part_of": { "@type": "@id", "@id": "biolink:variant_part_of" @@ -2428,6 +2433,14 @@ "volume": { "@id": "biolink:volume" }, + "wasDerivedFrom": { + "@type": "@id", + "@id": "prov:wasDerivedFrom" + }, + "wasGeneratedBy": { + "@type": "@id", + "@id": "prov:wasGeneratedBy" + }, "xenologous_to": { "@type": "@id", "@id": "biolink:xenologous_to" diff --git a/models_py-autogen/ccn2.py b/models_py-autogen/ccn2.py index 7660499f..ed41fbad 100644 --- a/models_py-autogen/ccn2.py +++ b/models_py-autogen/ccn2.py @@ -3,7 +3,6 @@ from enum import Enum from typing import List, Dict, Optional, Any, Union from pydantic import BaseModel as BaseModel, Field -from linkml_runtime.linkml_model import Decimal import sys if sys.version_info >= (3, 8): from typing import Literal @@ -53,7 +52,6 @@ class Taxonomy(ConfiguredBaseModel): rank: Optional[Rank] = Field(None, description="""Algorithmically generated hierarchical taxonomies can be complex, with many nodes between root and leaf and branches of variable depth. To simplify this for display and discussion it can be useful to assign nodes to a 3 level hierarchy, with leaf nodes at the bottom.""") - class CrossTaxonomyMapping(ConfiguredBaseModel): cell_set_accession: str = Field(..., description="""Primary identifier for cell set.""") @@ -65,7 +63,6 @@ class CrossTaxonomyMapping(ConfiguredBaseModel): provenance: Optional[str] = Field(None, description="""ORCID of the person doing the mapping using the syntax ORCID:0123-4567-890. Optionally include supporting publications using DOIs of the form doi:10.1126/journal.abj6641.""") - class LocationMapping(ConfiguredBaseModel): cell_set_accession: str = Field(..., description="""Primary identifier for cell set.""") @@ -77,7 +74,6 @@ class LocationMapping(ConfiguredBaseModel): provenance: str = Field(..., description="""ORCID of the person doing the mapping using the syntax ORCID:0123-4567-890. Optionally include supporting publications using DOIs of the form doi:10.1126/journal.abj6641.""") - class CellSetAccessionToCellMapping(ConfiguredBaseModel): sample: str = Field(..., description="""Cell sample identifier.""") @@ -85,7 +81,6 @@ class CellSetAccessionToCellMapping(ConfiguredBaseModel): - # Update forward refs # see https://pydantic-docs.helpmanual.io/usage/postponed_annotations/ Taxonomy.update_forward_refs() diff --git a/models_py-autogen/figure1.py b/models_py-autogen/figure1.py index f626122a..1c15a273 100644 --- a/models_py-autogen/figure1.py +++ b/models_py-autogen/figure1.py @@ -3,7 +3,6 @@ from enum import Enum from typing import List, Dict, Optional, Any, Union from pydantic import BaseModel as BaseModel, Field -from linkml_runtime.linkml_model import Decimal import sys if sys.version_info >= (3, 8): from typing import Literal @@ -127,7 +126,6 @@ class NamedThing(ConfiguredBaseModel): label: Optional[str] = Field(None) - class CellClass(NamedThing): """ Class division in Figure 1, also found in Supplementary Materials: Table 7 @@ -138,7 +136,6 @@ class CellClass(NamedThing): label: Optional[str] = Field(None) - class CellSubclass(NamedThing): """ Subclass division in Figure 1 @@ -150,7 +147,6 @@ class CellSubclass(NamedThing): label: Optional[str] = Field(None) - class Cluster(NamedThing): """ Cluster in Supplementary Materials: Table 7 @@ -161,7 +157,6 @@ class Cluster(NamedThing): label: Optional[str] = Field(None) - class Cell(NamedThing): """ Cell, a member of a cluster @@ -172,27 +167,23 @@ class Cell(NamedThing): label: Optional[str] = Field(None) - class Relationship(ConfiguredBaseModel): related_to: str = Field(...) - class HierarchicalRelationship(Relationship): relationship_type: Optional[HierarchicalRelationshipType] = Field(None) related_to: str = Field(...) - class GroupRelationship(Relationship): relationship_type: Optional[GroupRelationshipType] = Field(None) related_to: str = Field(...) - class Container(ConfiguredBaseModel): subclasses: Optional[List[CellSubclass]] = Field(default_factory=list) @@ -202,7 +193,6 @@ class Container(ConfiguredBaseModel): - # Update forward refs # see https://pydantic-docs.helpmanual.io/usage/postponed_annotations/ NamedThing.update_forward_refs() diff --git a/models_py-autogen/kbmodel.py b/models_py-autogen/kbmodel.py index 73bf2bb1..8b50c526 100644 --- a/models_py-autogen/kbmodel.py +++ b/models_py-autogen/kbmodel.py @@ -3,7 +3,6 @@ from enum import Enum from typing import List, Dict, Optional, Any, Union from pydantic import BaseModel as BaseModel, Field -from linkml_runtime.linkml_model import Decimal import sys if sys.version_info >= (3, 8): from typing import Literal @@ -158,6 +157,10 @@ class GeneOrGeneProductOrChemicalEntityAspectEnum(str, Enum): uptake = "uptake" + splicing = "splicing" + + molecular_interaction = "molecular_interaction" + molecular_modification = "molecular_modification" acetylation = "acetylation" @@ -442,228 +445,22 @@ class AnnotationCollection(ConfiguredBaseModel): genome_assemblies: Optional[List[GenomeAssembly]] = Field(default_factory=list) - -class Process(ConfiguredBaseModel): - """ - A process that takes input entities and produces output entities. - """ - input_entity: Optional[str] = Field(None, description="""The input entity of the process.""") - output_entity: Optional[str] = Field(None, description="""The output entity of the process.""") - process_id: Optional[str] = Field(None, description="""The id of the process.""") - - - -class BrainExtraction(Process): - """ - A process that takes a brain sample from a donor and produces a brain segment. - """ - input_entity: Optional[str] = Field(None, description="""The input entity of the process.""") - output_entity: Optional[BrainSegment] = Field(None, description="""The output entity of the process.""") - process_id: Optional[str] = Field(None, description="""The id of the process.""") - - - -class BrainSegmentSectioning(Process): - """ - A process that takes a brain segment and produces a brain section. - """ - input_entity: Optional[BrainSegment] = Field(None, description="""The input entity of the process.""") - output_entity: Optional[BrainSection] = Field(None, description="""The output entity of the process.""") - process_id: Optional[str] = Field(None, description="""The id of the process.""") - - - -class TissueDissecting(Process): - """ - A process that takes a brain section and produces a tissue sample. - """ - input_entity: Optional[BrainSection] = Field(None, description="""The input entity of the process.""") - output_entity: Optional[TissueSample] = Field(None, description="""The output entity of the process.""") - process_id: Optional[str] = Field(None, description="""The id of the process.""") - - - -class CellDissociation(Process): - """ - A process that takes a tissue sample and produces a dissociated cell sample. - """ - input_entity: Optional[TissueSample] = Field(None, description="""The input entity of the process.""") - output_entity: Optional[DissociatedCellSample] = Field(None, description="""The output entity of the process.""") - process_id: Optional[str] = Field(None, description="""The id of the process.""") - - - -class CellEnrichment(Process): - """ - A process that takes a dissociated cell sample and produces an enriched cell sample. - """ - input_entity: Optional[DissociatedCellSample] = Field(None, description="""The input entity of the process.""") - output_entity: Optional[EnrichedCellSample] = Field(None, description="""The output entity of the process.""") - process_id: Optional[str] = Field(None, description="""The id of the process.""") - - - -class CellBarcoding(Process): - """ - A process that takes an enriched cell sample and produces a barcoded cell sample. - """ - input_entity: Optional[EnrichedCellSample] = Field(None, description="""The input entity of the process.""") - output_entity: Optional[BarcodedCellSample] = Field(None, description="""The output entity of the process.""") - process_id: Optional[str] = Field(None, description="""The id of the process.""") - - - -class CdnaAmplification(Process): - """ - A process that takes a barcoded cell sample and produces an amplified cDNA sample. - """ - input_entity: Optional[BarcodedCellSample] = Field(None, description="""The input entity of the process.""") - output_entity: Optional[AmplifiedCdna] = Field(None, description="""The output entity of the process.""") - process_id: Optional[str] = Field(None, description="""The id of the process.""") - - - -class LibraryConstruction(Process): - """ - A process that takes an amplified cDNA sample and produces a library. - """ - input_entity: Optional[AmplifiedCdna] = Field(None, description="""The input entity of the process.""") - output_entity: Optional[Library] = Field(None, description="""The output entity of the process.""") - process_id: Optional[str] = Field(None, description="""The id of the process.""") - - - -class LibraryAliquoting(Process): - """ - A process that takes a library and produces an library aliquot. - """ - input_entity: Optional[Library] = Field(None, description="""The input entity of the process.""") - output_entity: Optional[LibraryAliquot] = Field(None, description="""The output entity of the process.""") - process_id: Optional[str] = Field(None, description="""The id of the process.""") - - - -class LibraryPooling(Process): +class ProvActivity(ConfiguredBaseModel): """ - A process that takes a library aliquot and produces a library pool. + Based off prov:Activity; an activity is something that occurs over a period of time and acts upon or with entities; it may include consuming, processing, transforming, modifying, relocating, using, or generating entities. """ - input_entity: Optional[LibraryAliquot] = Field(None, description="""The input entity of the process.""") - output_entity: Optional[LibraryPool] = Field(None, description="""The output entity of the process.""") - process_id: Optional[str] = Field(None, description="""The id of the process.""") + used: Optional[List[Union[Entity,Checksum,Donor,BrainSegment,BrainSection,TissueSample,DissociatedCellSample,EnrichedCellSample,BarcodedCellSample,AmplifiedCdna,Library,LibraryAliquot,LibraryPool,NamedThing,Association,ChemicalEntityAssessesNamedThingAssociation,ContributorAssociation,GenotypeToGenotypePartAssociation,GenotypeToGeneAssociation,GenotypeToVariantAssociation,GeneToGeneAssociation,GeneToGeneFamilyAssociation,CellLineToDiseaseOrPhenotypicFeatureAssociation,ChemicalToChemicalAssociation,ChemicalToDiseaseOrPhenotypicFeatureAssociation,ChemicalOrDrugOrTreatmentToDiseaseOrPhenotypicFeatureAssociation,GeneToPathwayAssociation,MolecularActivityToPathwayAssociation,ChemicalToPathwayAssociation,NamedThingAssociatedWithLikelihoodOfNamedThingAssociation,ChemicalGeneInteractionAssociation,ChemicalAffectsGeneAssociation,DrugToGeneAssociation,MaterialSampleDerivationAssociation,MaterialSampleToDiseaseOrPhenotypicFeatureAssociation,DiseaseToExposureEventAssociation,ExposureEventToOutcomeAssociation,InformationContentEntityToNamedThingAssociation,DiseaseOrPhenotypicFeatureToLocationAssociation,DiseaseOrPhenotypicFeatureToGeneticInheritanceAssociation,GenotypeToPhenotypicFeatureAssociation,ExposureEventToPhenotypicFeatureAssociation,DiseaseToPhenotypicFeatureAssociation,CaseToPhenotypicFeatureAssociation,BehaviorToBehavioralFeatureAssociation,GeneToDiseaseOrPhenotypicFeatureAssociation,VariantToGeneAssociation,VariantToPopulationAssociation,PopulationToPopulationAssociation,VariantToPhenotypicFeatureAssociation,VariantToDiseaseAssociation,GenotypeToDiseaseAssociation,OrganismalEntityAsAModelOfDiseaseAssociation,OrganismToOrganismAssociation,TaxonToTaxonAssociation,GeneToExpressionSiteAssociation,SequenceVariantModulatesTreatmentAssociation,FunctionalAssociation,MolecularActivityToChemicalEntityAssociation,MolecularActivityToMolecularActivityAssociation,EntityToDiseaseAssociation,EntityToPhenotypicFeatureAssociation,SequenceAssociation,SequenceFeatureRelationship,ChemicalEntityOrGeneOrGeneProductRegulatesGeneAssociation,AnatomicalEntityToAnatomicalEntityAssociation,OrganismTaxonToOrganismTaxonAssociation,OrganismTaxonToEnvironmentAssociation,OrganismTaxonToOrganismTaxonSpecialization,OrganismTaxonToOrganismTaxonInteraction,AnatomicalEntityToAnatomicalEntityPartOfAssociation,AnatomicalEntityToAnatomicalEntityOntogenicAssociation,TranscriptToGeneRelationship,GeneToGeneProductRelationship,ExonToTranscriptRelationship,GenomicSequenceLocalization,MacromolecularMachineToMolecularActivityAssociation,MacromolecularMachineToBiologicalProcessAssociation,MacromolecularMachineToCellularComponentAssociation,GeneToGoTermAssociation,GenotypeAsAModelOfDiseaseAssociation,VariantAsAModelOfDiseaseAssociation,VariantToGeneExpressionAssociation,GeneToPhenotypicFeatureAssociation,GeneToDiseaseAssociation,CausalGeneToDiseaseAssociation,CorrelatedGeneToDiseaseAssociation,DruggableGeneToDiseaseAssociation,GeneAsAModelOfDiseaseAssociation,GeneHasVariantThatContributesToDiseaseAssociation,ChemicalOrDrugOrTreatmentSideEffectDiseaseOrPhenotypicFeatureAssociation,ReactionToParticipantAssociation,ChemicalToChemicalDerivationAssociation,ReactionToCatalystAssociation,CellLineAsAModelOfDiseaseAssociation,GeneToGeneHomologyAssociation,GeneToGeneCoexpressionAssociation,PairwiseGeneToGeneInteraction,PairwiseMolecularInteraction,GenomeAssembly,Attribute,OrganismTaxon,Event,AdministrativeEntity,InformationContentEntity,PhysicalEntity,Activity,Procedure,Phenomenon,Device,DiagnosticAid,PlanetaryEntity,BiologicalEntity,ChemicalEntity,ClinicalEntity,Treatment,ClinicalTrial,ClinicalIntervention,Hospitalization,MolecularEntity,ChemicalMixture,EnvironmentalFoodContaminant,FoodAdditive,MolecularMixture,ComplexMolecularMixture,ProcessedMaterial,Food,Drug,SmallMolecule,NucleicAcidEntity,Exon,Transcript,CodingSequence,RNAProduct,RNAProductIsoform,NoncodingRNAProduct,MicroRNA,SiRNA,RegulatoryRegion,BiologicalProcessOrActivity,GeneticInheritance,OrganismalEntity,DiseaseOrPhenotypicFeature,Gene,MacromolecularComplex,NucleosomeModification,Genome,Polypeptide,ProteinDomain,PosttranslationalModification,ProteinFamily,NucleicAcidSequenceMotif,GeneFamily,Genotype,Haplotype,SequenceVariant,ReagentTargetedGene,Snv,Protein,ProteinIsoform,GenomeAnnotation,GeneAnnotation,Disease,PhenotypicFeature,BehavioralFeature,ClinicalFinding,Bacterium,Virus,CellularOrganism,LifeStage,IndividualOrganism,PopulationOfIndividualOrganisms,AnatomicalEntity,CellLine,CellularComponent,Cell,GrossAnatomicalStructure,PathologicalAnatomicalStructure,StudyPopulation,Cohort,Case,Mammal,Plant,Invertebrate,Vertebrate,Fungus,Human,MolecularActivity,BiologicalProcess,Pathway,PhysiologicalProcess,Behavior,PathologicalProcess,AccessibleDnaRegion,TranscriptionFactorBindingSite,EnvironmentalProcess,EnvironmentalFeature,GeographicLocation,GeographicLocationAtTime,BrainExtraction,BrainSegmentSectioning,TissueDissecting,CellDissociation,CellEnrichment,CellBarcoding,CdnaAmplification,LibraryConstruction,LibraryAliquoting,LibraryPooling,Study,MaterialSample,StudyResult,StudyVariable,CommonDataElement,Dataset,DatasetDistribution,DatasetVersion,DatasetSummary,ConfidenceLevel,EvidenceType,Publication,RetrievalSource,Book,BookChapter,Serial,Article,Patent,WebPage,PreprintPublication,DrugLabel,JournalArticle,ConceptCountAnalysisResult,ObservedExpectedFrequencyAnalysisResult,RelativeFrequencyAnalysisResult,TextMiningResult,ChiSquaredAnalysisResult,LogOddsAnalysisResult,Agent,ChemicalRole,BiologicalSex,SeverityValue,OrganismAttribute,Zygosity,ClinicalAttribute,SocioeconomicAttribute,GenomicBackgroundExposure,PathologicalProcessExposure,PathologicalAnatomicalExposure,DiseaseOrPhenotypicFeatureExposure,ChemicalExposure,ComplexChemicalExposure,BioticExposure,EnvironmentalExposure,BehavioralExposure,SocioeconomicExposure,GeographicExposure,DrugExposure,DrugToGeneInteractionExposure,ClinicalMeasurement,ClinicalModifier,ClinicalCourse,Onset,PhenotypicQuality,PhenotypicSex,GenotypicSex]]] = Field(default_factory=list) + generated: Optional[List[Union[Entity,Checksum,Donor,BrainSegment,BrainSection,TissueSample,DissociatedCellSample,EnrichedCellSample,BarcodedCellSample,AmplifiedCdna,Library,LibraryAliquot,LibraryPool,NamedThing,Association,ChemicalEntityAssessesNamedThingAssociation,ContributorAssociation,GenotypeToGenotypePartAssociation,GenotypeToGeneAssociation,GenotypeToVariantAssociation,GeneToGeneAssociation,GeneToGeneFamilyAssociation,CellLineToDiseaseOrPhenotypicFeatureAssociation,ChemicalToChemicalAssociation,ChemicalToDiseaseOrPhenotypicFeatureAssociation,ChemicalOrDrugOrTreatmentToDiseaseOrPhenotypicFeatureAssociation,GeneToPathwayAssociation,MolecularActivityToPathwayAssociation,ChemicalToPathwayAssociation,NamedThingAssociatedWithLikelihoodOfNamedThingAssociation,ChemicalGeneInteractionAssociation,ChemicalAffectsGeneAssociation,DrugToGeneAssociation,MaterialSampleDerivationAssociation,MaterialSampleToDiseaseOrPhenotypicFeatureAssociation,DiseaseToExposureEventAssociation,ExposureEventToOutcomeAssociation,InformationContentEntityToNamedThingAssociation,DiseaseOrPhenotypicFeatureToLocationAssociation,DiseaseOrPhenotypicFeatureToGeneticInheritanceAssociation,GenotypeToPhenotypicFeatureAssociation,ExposureEventToPhenotypicFeatureAssociation,DiseaseToPhenotypicFeatureAssociation,CaseToPhenotypicFeatureAssociation,BehaviorToBehavioralFeatureAssociation,GeneToDiseaseOrPhenotypicFeatureAssociation,VariantToGeneAssociation,VariantToPopulationAssociation,PopulationToPopulationAssociation,VariantToPhenotypicFeatureAssociation,VariantToDiseaseAssociation,GenotypeToDiseaseAssociation,OrganismalEntityAsAModelOfDiseaseAssociation,OrganismToOrganismAssociation,TaxonToTaxonAssociation,GeneToExpressionSiteAssociation,SequenceVariantModulatesTreatmentAssociation,FunctionalAssociation,MolecularActivityToChemicalEntityAssociation,MolecularActivityToMolecularActivityAssociation,EntityToDiseaseAssociation,EntityToPhenotypicFeatureAssociation,SequenceAssociation,SequenceFeatureRelationship,ChemicalEntityOrGeneOrGeneProductRegulatesGeneAssociation,AnatomicalEntityToAnatomicalEntityAssociation,OrganismTaxonToOrganismTaxonAssociation,OrganismTaxonToEnvironmentAssociation,OrganismTaxonToOrganismTaxonSpecialization,OrganismTaxonToOrganismTaxonInteraction,AnatomicalEntityToAnatomicalEntityPartOfAssociation,AnatomicalEntityToAnatomicalEntityOntogenicAssociation,TranscriptToGeneRelationship,GeneToGeneProductRelationship,ExonToTranscriptRelationship,GenomicSequenceLocalization,MacromolecularMachineToMolecularActivityAssociation,MacromolecularMachineToBiologicalProcessAssociation,MacromolecularMachineToCellularComponentAssociation,GeneToGoTermAssociation,GenotypeAsAModelOfDiseaseAssociation,VariantAsAModelOfDiseaseAssociation,VariantToGeneExpressionAssociation,GeneToPhenotypicFeatureAssociation,GeneToDiseaseAssociation,CausalGeneToDiseaseAssociation,CorrelatedGeneToDiseaseAssociation,DruggableGeneToDiseaseAssociation,GeneAsAModelOfDiseaseAssociation,GeneHasVariantThatContributesToDiseaseAssociation,ChemicalOrDrugOrTreatmentSideEffectDiseaseOrPhenotypicFeatureAssociation,ReactionToParticipantAssociation,ChemicalToChemicalDerivationAssociation,ReactionToCatalystAssociation,CellLineAsAModelOfDiseaseAssociation,GeneToGeneHomologyAssociation,GeneToGeneCoexpressionAssociation,PairwiseGeneToGeneInteraction,PairwiseMolecularInteraction,GenomeAssembly,Attribute,OrganismTaxon,Event,AdministrativeEntity,InformationContentEntity,PhysicalEntity,Activity,Procedure,Phenomenon,Device,DiagnosticAid,PlanetaryEntity,BiologicalEntity,ChemicalEntity,ClinicalEntity,Treatment,ClinicalTrial,ClinicalIntervention,Hospitalization,MolecularEntity,ChemicalMixture,EnvironmentalFoodContaminant,FoodAdditive,MolecularMixture,ComplexMolecularMixture,ProcessedMaterial,Food,Drug,SmallMolecule,NucleicAcidEntity,Exon,Transcript,CodingSequence,RNAProduct,RNAProductIsoform,NoncodingRNAProduct,MicroRNA,SiRNA,RegulatoryRegion,BiologicalProcessOrActivity,GeneticInheritance,OrganismalEntity,DiseaseOrPhenotypicFeature,Gene,MacromolecularComplex,NucleosomeModification,Genome,Polypeptide,ProteinDomain,PosttranslationalModification,ProteinFamily,NucleicAcidSequenceMotif,GeneFamily,Genotype,Haplotype,SequenceVariant,ReagentTargetedGene,Snv,Protein,ProteinIsoform,GenomeAnnotation,GeneAnnotation,Disease,PhenotypicFeature,BehavioralFeature,ClinicalFinding,Bacterium,Virus,CellularOrganism,LifeStage,IndividualOrganism,PopulationOfIndividualOrganisms,AnatomicalEntity,CellLine,CellularComponent,Cell,GrossAnatomicalStructure,PathologicalAnatomicalStructure,StudyPopulation,Cohort,Case,Mammal,Plant,Invertebrate,Vertebrate,Fungus,Human,MolecularActivity,BiologicalProcess,Pathway,PhysiologicalProcess,Behavior,PathologicalProcess,AccessibleDnaRegion,TranscriptionFactorBindingSite,EnvironmentalProcess,EnvironmentalFeature,GeographicLocation,GeographicLocationAtTime,BrainExtraction,BrainSegmentSectioning,TissueDissecting,CellDissociation,CellEnrichment,CellBarcoding,CdnaAmplification,LibraryConstruction,LibraryAliquoting,LibraryPooling,Study,MaterialSample,StudyResult,StudyVariable,CommonDataElement,Dataset,DatasetDistribution,DatasetVersion,DatasetSummary,ConfidenceLevel,EvidenceType,Publication,RetrievalSource,Book,BookChapter,Serial,Article,Patent,WebPage,PreprintPublication,DrugLabel,JournalArticle,ConceptCountAnalysisResult,ObservedExpectedFrequencyAnalysisResult,RelativeFrequencyAnalysisResult,TextMiningResult,ChiSquaredAnalysisResult,LogOddsAnalysisResult,Agent,ChemicalRole,BiologicalSex,SeverityValue,OrganismAttribute,Zygosity,ClinicalAttribute,SocioeconomicAttribute,GenomicBackgroundExposure,PathologicalProcessExposure,PathologicalAnatomicalExposure,DiseaseOrPhenotypicFeatureExposure,ChemicalExposure,ComplexChemicalExposure,BioticExposure,EnvironmentalExposure,BehavioralExposure,SocioeconomicExposure,GeographicExposure,DrugExposure,DrugToGeneInteractionExposure,ClinicalMeasurement,ClinicalModifier,ClinicalCourse,Onset,PhenotypicQuality,PhenotypicSex,GenotypicSex]]] = Field(default_factory=list) - -class ProcessOutput(ConfiguredBaseModel): +class ProvEntity(ConfiguredBaseModel): """ - The output of a process. + Based off prov:Entity; an entity is a physical, digital, conceptual, or other kind of thing with some fixed aspects; entities may be real or imaginary. """ - label: Optional[str] = Field(None, description="""The name of the object.""") - created_by_process: Optional[str] = Field(None, description="""The process that created the object.""") - - - -class BrainSegment(ProcessOutput): - - barcode: Optional[str] = Field(None, description="""The unique identifier of the object.""") - anatomical_division: Optional[str] = Field(None) - label: Optional[str] = Field(None, description="""The name of the object.""") - created_by_process: Optional[BrainExtraction] = Field(None, description="""The process that created the object.""") - - - -class BrainSection(ProcessOutput): - - barcode: Optional[str] = Field(None, description="""The unique identifier of the object.""") - ordinal: Optional[int] = Field(None, description="""The ordinal number of the section.""") - label: Optional[str] = Field(None, description="""The name of the object.""") - created_by_process: Optional[BrainSegmentSectioning] = Field(None, description="""The process that created the object.""") - - - -class TissueSample(ProcessOutput): - - roi_plan: Optional[str] = Field(None) - region_of_interest_label: Optional[str] = Field(None, description="""The label of the region of interest.""") - label: Optional[str] = Field(None, description="""The name of the object.""") - created_by_process: Optional[TissueDissecting] = Field(None, description="""The process that created the object.""") - - - -class DissociatedCellSample(ProcessOutput): - - cell_prep_type: Optional[str] = Field(None) - facs_population_plan: Optional[str] = Field(None) - number_of_cells_collected: Optional[int] = Field(None) - label: Optional[str] = Field(None, description="""The name of the object.""") - created_by_process: Optional[CellDissociation] = Field(None, description="""The process that created the object.""") - - - -class EnrichedCellSample(ProcessOutput): - - label: Optional[str] = Field(None, description="""The name of the object.""") - created_by_process: Optional[CellEnrichment] = Field(None, description="""The process that created the object.""") - - - -class BarcodedCellSample(ProcessOutput): - - port_well: Optional[str] = Field(None) - sample_quality_count: Optional[str] = Field(None) - label: Optional[str] = Field(None, description="""The name of the object.""") - created_by_process: Optional[CellBarcoding] = Field(None, description="""The process that created the object.""") - - - -class AmplifiedCdna(ProcessOutput): - - method: Optional[str] = Field(None) - amplified_quantity: Optional[float] = Field(None, description="""Amount of cDNA amplified (ng).""") - pcr_cycles: Optional[int] = Field(None, description="""Number of PCR cycles used to amplify the cDNA.""") - percent_cdna_longer_than_400bp: Optional[float] = Field(None, description="""The percentage of cDNA fragments that are longer than 400bp.""") - rna_amplification_pass: Optional[bool] = Field(None) - label: Optional[str] = Field(None, description="""The name of the object.""") - created_by_process: Optional[CdnaAmplification] = Field(None, description="""The process that created the object.""") - - - -class Library(ProcessOutput): - - method: Optional[str] = Field(None) - creation_date: Optional[datetime ] = Field(None, description="""The date and time the object was created.""") - avg_size: Optional[int] = Field(None, description="""The average size (bp) of the library fragments. bp stands for base pairs.""") - input_amount: Optional[float] = Field(None, description="""The amount of input material (ng) used to create the library.""") - library_prep_pass: Optional[bool] = Field(None) - quantification_fmol: Optional[float] = Field(None) - quantification_ng: Optional[float] = Field(None) - quantification_nm: Optional[float] = Field(None) - r1_index: Optional[str] = Field(None) - r1_sequence: Optional[str] = Field(None) - r2_index: Optional[str] = Field(None) - r2_sequence: Optional[str] = Field(None) - created_by_process: Optional[LibraryConstruction] = Field(None) - label: Optional[str] = Field(None, description="""The name of the object.""") - - - -class LibraryAliquot(ProcessOutput): - - input_quantity: Optional[int] = Field(None, description="""The amount of input material (fmol) used to create the library aliquot.""") - label: Optional[str] = Field(None, description="""The name of the object.""") - created_by_process: Optional[LibraryAliquoting] = Field(None, description="""The process that created the object.""") - - - -class LibraryPool(ProcessOutput): - - tube_avg_size: Optional[int] = Field(None, description="""The average size (bp) of the library fragments in the tube.""") - tube_contents: Optional[float] = Field(None, description="""The content concentration (nm).""") - tube_internal_label: Optional[str] = Field(None) - label: Optional[str] = Field(None, description="""The name of the object.""") - created_by_process: Optional[LibraryPooling] = Field(None, description="""The process that created the object.""") + wasDerivedFrom: Optional[List[Union[Entity,Checksum,Donor,BrainSegment,BrainSection,TissueSample,DissociatedCellSample,EnrichedCellSample,BarcodedCellSample,AmplifiedCdna,Library,LibraryAliquot,LibraryPool,NamedThing,Association,ChemicalEntityAssessesNamedThingAssociation,ContributorAssociation,GenotypeToGenotypePartAssociation,GenotypeToGeneAssociation,GenotypeToVariantAssociation,GeneToGeneAssociation,GeneToGeneFamilyAssociation,CellLineToDiseaseOrPhenotypicFeatureAssociation,ChemicalToChemicalAssociation,ChemicalToDiseaseOrPhenotypicFeatureAssociation,ChemicalOrDrugOrTreatmentToDiseaseOrPhenotypicFeatureAssociation,GeneToPathwayAssociation,MolecularActivityToPathwayAssociation,ChemicalToPathwayAssociation,NamedThingAssociatedWithLikelihoodOfNamedThingAssociation,ChemicalGeneInteractionAssociation,ChemicalAffectsGeneAssociation,DrugToGeneAssociation,MaterialSampleDerivationAssociation,MaterialSampleToDiseaseOrPhenotypicFeatureAssociation,DiseaseToExposureEventAssociation,ExposureEventToOutcomeAssociation,InformationContentEntityToNamedThingAssociation,DiseaseOrPhenotypicFeatureToLocationAssociation,DiseaseOrPhenotypicFeatureToGeneticInheritanceAssociation,GenotypeToPhenotypicFeatureAssociation,ExposureEventToPhenotypicFeatureAssociation,DiseaseToPhenotypicFeatureAssociation,CaseToPhenotypicFeatureAssociation,BehaviorToBehavioralFeatureAssociation,GeneToDiseaseOrPhenotypicFeatureAssociation,VariantToGeneAssociation,VariantToPopulationAssociation,PopulationToPopulationAssociation,VariantToPhenotypicFeatureAssociation,VariantToDiseaseAssociation,GenotypeToDiseaseAssociation,OrganismalEntityAsAModelOfDiseaseAssociation,OrganismToOrganismAssociation,TaxonToTaxonAssociation,GeneToExpressionSiteAssociation,SequenceVariantModulatesTreatmentAssociation,FunctionalAssociation,MolecularActivityToChemicalEntityAssociation,MolecularActivityToMolecularActivityAssociation,EntityToDiseaseAssociation,EntityToPhenotypicFeatureAssociation,SequenceAssociation,SequenceFeatureRelationship,ChemicalEntityOrGeneOrGeneProductRegulatesGeneAssociation,AnatomicalEntityToAnatomicalEntityAssociation,OrganismTaxonToOrganismTaxonAssociation,OrganismTaxonToEnvironmentAssociation,OrganismTaxonToOrganismTaxonSpecialization,OrganismTaxonToOrganismTaxonInteraction,AnatomicalEntityToAnatomicalEntityPartOfAssociation,AnatomicalEntityToAnatomicalEntityOntogenicAssociation,TranscriptToGeneRelationship,GeneToGeneProductRelationship,ExonToTranscriptRelationship,GenomicSequenceLocalization,MacromolecularMachineToMolecularActivityAssociation,MacromolecularMachineToBiologicalProcessAssociation,MacromolecularMachineToCellularComponentAssociation,GeneToGoTermAssociation,GenotypeAsAModelOfDiseaseAssociation,VariantAsAModelOfDiseaseAssociation,VariantToGeneExpressionAssociation,GeneToPhenotypicFeatureAssociation,GeneToDiseaseAssociation,CausalGeneToDiseaseAssociation,CorrelatedGeneToDiseaseAssociation,DruggableGeneToDiseaseAssociation,GeneAsAModelOfDiseaseAssociation,GeneHasVariantThatContributesToDiseaseAssociation,ChemicalOrDrugOrTreatmentSideEffectDiseaseOrPhenotypicFeatureAssociation,ReactionToParticipantAssociation,ChemicalToChemicalDerivationAssociation,ReactionToCatalystAssociation,CellLineAsAModelOfDiseaseAssociation,GeneToGeneHomologyAssociation,GeneToGeneCoexpressionAssociation,PairwiseGeneToGeneInteraction,PairwiseMolecularInteraction,GenomeAssembly,Attribute,OrganismTaxon,Event,AdministrativeEntity,InformationContentEntity,PhysicalEntity,Activity,Procedure,Phenomenon,Device,DiagnosticAid,PlanetaryEntity,BiologicalEntity,ChemicalEntity,ClinicalEntity,Treatment,ClinicalTrial,ClinicalIntervention,Hospitalization,MolecularEntity,ChemicalMixture,EnvironmentalFoodContaminant,FoodAdditive,MolecularMixture,ComplexMolecularMixture,ProcessedMaterial,Food,Drug,SmallMolecule,NucleicAcidEntity,Exon,Transcript,CodingSequence,RNAProduct,RNAProductIsoform,NoncodingRNAProduct,MicroRNA,SiRNA,RegulatoryRegion,BiologicalProcessOrActivity,GeneticInheritance,OrganismalEntity,DiseaseOrPhenotypicFeature,Gene,MacromolecularComplex,NucleosomeModification,Genome,Polypeptide,ProteinDomain,PosttranslationalModification,ProteinFamily,NucleicAcidSequenceMotif,GeneFamily,Genotype,Haplotype,SequenceVariant,ReagentTargetedGene,Snv,Protein,ProteinIsoform,GenomeAnnotation,GeneAnnotation,Disease,PhenotypicFeature,BehavioralFeature,ClinicalFinding,Bacterium,Virus,CellularOrganism,LifeStage,IndividualOrganism,PopulationOfIndividualOrganisms,AnatomicalEntity,CellLine,CellularComponent,Cell,GrossAnatomicalStructure,PathologicalAnatomicalStructure,StudyPopulation,Cohort,Case,Mammal,Plant,Invertebrate,Vertebrate,Fungus,Human,MolecularActivity,BiologicalProcess,Pathway,PhysiologicalProcess,Behavior,PathologicalProcess,AccessibleDnaRegion,TranscriptionFactorBindingSite,EnvironmentalProcess,EnvironmentalFeature,GeographicLocation,GeographicLocationAtTime,BrainExtraction,BrainSegmentSectioning,TissueDissecting,CellDissociation,CellEnrichment,CellBarcoding,CdnaAmplification,LibraryConstruction,LibraryAliquoting,LibraryPooling,Study,MaterialSample,StudyResult,StudyVariable,CommonDataElement,Dataset,DatasetDistribution,DatasetVersion,DatasetSummary,ConfidenceLevel,EvidenceType,Publication,RetrievalSource,Book,BookChapter,Serial,Article,Patent,WebPage,PreprintPublication,DrugLabel,JournalArticle,ConceptCountAnalysisResult,ObservedExpectedFrequencyAnalysisResult,RelativeFrequencyAnalysisResult,TextMiningResult,ChiSquaredAnalysisResult,LogOddsAnalysisResult,Agent,ChemicalRole,BiologicalSex,SeverityValue,OrganismAttribute,Zygosity,ClinicalAttribute,SocioeconomicAttribute,GenomicBackgroundExposure,PathologicalProcessExposure,PathologicalAnatomicalExposure,DiseaseOrPhenotypicFeatureExposure,ChemicalExposure,ComplexChemicalExposure,BioticExposure,EnvironmentalExposure,BehavioralExposure,SocioeconomicExposure,GeographicExposure,DrugExposure,DrugToGeneInteractionExposure,ClinicalMeasurement,ClinicalModifier,ClinicalCourse,Onset,PhenotypicQuality,PhenotypicSex,GenotypicSex]]] = Field(default_factory=list) + wasGeneratedBy: Optional[List[Union[Activity,BrainExtraction,BrainSegmentSectioning,TissueDissecting,CellDissociation,CellEnrichment,CellBarcoding,CdnaAmplification,LibraryConstruction,LibraryAliquoting,LibraryPooling,Study]]] = Field(default_factory=list) - class MappingCollection(ConfiguredBaseModel): """ A collection of deprecated mappings. @@ -671,7 +468,6 @@ class MappingCollection(ConfiguredBaseModel): predicate_mappings: Optional[List[PredicateMapping]] = Field(None, description="""A collection of relationships that are not used in biolink, but have biolink patterns that can be used to replace them. This is a temporary slot to help with the transition to the fully qualified predicate model in Biolink3.""") - class PredicateMapping(ConfiguredBaseModel): """ A deprecated predicate mapping object contains the deprecated predicate and an example of the rewiring that should be done to use a qualified statement in its place. @@ -699,7 +495,6 @@ class PredicateMapping(ConfiguredBaseModel): broad_match: Optional[List[str]] = Field(None, description="""a list of terms from different schemas or terminology systems that have a broader, more general meaning. Broader terms are typically shown as parents in a hierarchy or tree.""") - class OntologyClass(ConfiguredBaseModel): """ a concept or class in an ontology, vocabulary or thesaurus. Note that nodes in a biolink compatible KG can be considered both instances of biolink classes, and OWL classes in their own right. In general you should not need to use this class directly. Instead, use the appropriate biolink class. For example, for the GO concept of endocytosis (GO:0006897), use bl:BiologicalProcess as the type. @@ -707,7 +502,6 @@ class OntologyClass(ConfiguredBaseModel): id: str = Field(..., description="""A unique identifier for an entity. Must be either a CURIE shorthand for a URI or a complete URI""") - class Annotation(ConfiguredBaseModel): """ Biolink Model root class for entity annotations. @@ -715,7 +509,6 @@ class Annotation(ConfiguredBaseModel): None - class QuantityValue(Annotation): """ A value of an attribute that is quantitative and measurable, expressed as a combination of a unit and a numeric value @@ -724,25 +517,21 @@ class QuantityValue(Annotation): has_numeric_value: Optional[float] = Field(None, description="""connects a quantity value to a number""") - class RelationshipQuantifier(ConfiguredBaseModel): None - class SensitivityQuantifier(RelationshipQuantifier): None - class SpecificityQuantifier(RelationshipQuantifier): None - class PathognomonicityQuantifier(SpecificityQuantifier): """ A relationship quantifier between a variant or symptom and a disease, which is high when the presence of the feature implies the existence of the disease @@ -750,7 +539,6 @@ class PathognomonicityQuantifier(SpecificityQuantifier): None - class FrequencyQuantifier(RelationshipQuantifier): has_count: Optional[int] = Field(None, description="""number of things with a particular property""") @@ -759,13 +547,11 @@ class FrequencyQuantifier(RelationshipQuantifier): has_percentage: Optional[float] = Field(None, description="""equivalent to has quotient multiplied by 100""") - class ChemicalOrDrugOrTreatment(ConfiguredBaseModel): None - class Entity(ConfiguredBaseModel): """ Root Biolink Model class for all things and informational relationships, real or imagined. @@ -783,7 +569,6 @@ class Entity(ConfiguredBaseModel): has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class Checksum(Entity): """ Checksum values associated with digital entities. @@ -803,6 +588,207 @@ class Checksum(Entity): has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") +class BrainSegment(Entity, ProvEntity): + + barcode: Optional[str] = Field(None, description="""The unique identifier of the object.""") + anatomical_division: Optional[str] = Field(None) + wasDerivedFrom: Optional[List[Donor]] = Field(default_factory=list) + wasGeneratedBy: Optional[List[BrainExtraction]] = Field(default_factory=list) + id: str = Field(..., description="""A unique identifier for an entity. Must be either a CURIE shorthand for a URI or a complete URI""") + iri: Optional[str] = Field(None, description="""An IRI for an entity. This is determined by the id using expansion rules.""") + category: List[Literal["https://identifiers.org/brain-bican/vocab/BrainSegment","bican:BrainSegment"]] = Field(["bican:BrainSegment"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. + * In a neo4j database this MAY correspond to the neo4j label tag. + * In an RDF database it should be a biolink model class URI. +This field is multi-valued. It should include values for ancestors of the biolink class; for example, a protein such as Shh would have category values `biolink:Protein`, `biolink:GeneProduct`, `biolink:MolecularEntity`, ... +In an RDF database, nodes will typically have an rdf:type triples. This can be to the most specific biolink class, or potentially to a class more specific than something in biolink. For example, a sequence feature `f` may have a rdf:type assertion to a SO class such as TF_binding_site, which is more specific than anything in biolink. Here we would have categories {biolink:GenomicEntity, biolink:MolecularEntity, biolink:NamedThing}""") + type: Optional[List[str]] = Field(default_factory=list) + name: Optional[str] = Field(None, description="""A human-readable name for an attribute or entity.""") + description: Optional[str] = Field(None, description="""a human-readable description of an entity""") + has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") + + +class BrainSection(Entity, ProvEntity): + + barcode: Optional[str] = Field(None, description="""The unique identifier of the object.""") + ordinal: Optional[int] = Field(None, description="""The ordinal number of the section.""") + wasDerivedFrom: Optional[List[BrainSegment]] = Field(default_factory=list) + wasGeneratedBy: Optional[List[BrainSegmentSectioning]] = Field(default_factory=list) + id: str = Field(..., description="""A unique identifier for an entity. Must be either a CURIE shorthand for a URI or a complete URI""") + iri: Optional[str] = Field(None, description="""An IRI for an entity. This is determined by the id using expansion rules.""") + category: List[Literal["https://identifiers.org/brain-bican/vocab/BrainSection","bican:BrainSection"]] = Field(["bican:BrainSection"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. + * In a neo4j database this MAY correspond to the neo4j label tag. + * In an RDF database it should be a biolink model class URI. +This field is multi-valued. It should include values for ancestors of the biolink class; for example, a protein such as Shh would have category values `biolink:Protein`, `biolink:GeneProduct`, `biolink:MolecularEntity`, ... +In an RDF database, nodes will typically have an rdf:type triples. This can be to the most specific biolink class, or potentially to a class more specific than something in biolink. For example, a sequence feature `f` may have a rdf:type assertion to a SO class such as TF_binding_site, which is more specific than anything in biolink. Here we would have categories {biolink:GenomicEntity, biolink:MolecularEntity, biolink:NamedThing}""") + type: Optional[List[str]] = Field(default_factory=list) + name: Optional[str] = Field(None, description="""A human-readable name for an attribute or entity.""") + description: Optional[str] = Field(None, description="""a human-readable description of an entity""") + has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") + + +class TissueSample(Entity, ProvEntity): + + roi_plan: Optional[str] = Field(None) + region_of_interest_label: Optional[str] = Field(None, description="""The label of the region of interest.""") + wasDerivedFrom: Optional[List[BrainSection]] = Field(default_factory=list) + wasGeneratedBy: Optional[List[TissueDissecting]] = Field(default_factory=list) + id: str = Field(..., description="""A unique identifier for an entity. Must be either a CURIE shorthand for a URI or a complete URI""") + iri: Optional[str] = Field(None, description="""An IRI for an entity. This is determined by the id using expansion rules.""") + category: List[Literal["https://identifiers.org/brain-bican/vocab/TissueSample","bican:TissueSample"]] = Field(["bican:TissueSample"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. + * In a neo4j database this MAY correspond to the neo4j label tag. + * In an RDF database it should be a biolink model class URI. +This field is multi-valued. It should include values for ancestors of the biolink class; for example, a protein such as Shh would have category values `biolink:Protein`, `biolink:GeneProduct`, `biolink:MolecularEntity`, ... +In an RDF database, nodes will typically have an rdf:type triples. This can be to the most specific biolink class, or potentially to a class more specific than something in biolink. For example, a sequence feature `f` may have a rdf:type assertion to a SO class such as TF_binding_site, which is more specific than anything in biolink. Here we would have categories {biolink:GenomicEntity, biolink:MolecularEntity, biolink:NamedThing}""") + type: Optional[List[str]] = Field(default_factory=list) + name: Optional[str] = Field(None, description="""A human-readable name for an attribute or entity.""") + description: Optional[str] = Field(None, description="""a human-readable description of an entity""") + has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") + + +class DissociatedCellSample(Entity, ProvEntity): + + cell_prep_type: Optional[str] = Field(None) + facs_population_plan: Optional[str] = Field(None) + number_of_cells_collected: Optional[int] = Field(None) + wasDerivedFrom: Optional[List[TissueSample]] = Field(default_factory=list) + wasGeneratedBy: Optional[List[CellDissociation]] = Field(default_factory=list) + id: str = Field(..., description="""A unique identifier for an entity. Must be either a CURIE shorthand for a URI or a complete URI""") + iri: Optional[str] = Field(None, description="""An IRI for an entity. This is determined by the id using expansion rules.""") + category: List[Literal["https://identifiers.org/brain-bican/vocab/DissociatedCellSample","bican:DissociatedCellSample"]] = Field(["bican:DissociatedCellSample"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. + * In a neo4j database this MAY correspond to the neo4j label tag. + * In an RDF database it should be a biolink model class URI. +This field is multi-valued. It should include values for ancestors of the biolink class; for example, a protein such as Shh would have category values `biolink:Protein`, `biolink:GeneProduct`, `biolink:MolecularEntity`, ... +In an RDF database, nodes will typically have an rdf:type triples. This can be to the most specific biolink class, or potentially to a class more specific than something in biolink. For example, a sequence feature `f` may have a rdf:type assertion to a SO class such as TF_binding_site, which is more specific than anything in biolink. Here we would have categories {biolink:GenomicEntity, biolink:MolecularEntity, biolink:NamedThing}""") + type: Optional[List[str]] = Field(default_factory=list) + name: Optional[str] = Field(None, description="""A human-readable name for an attribute or entity.""") + description: Optional[str] = Field(None, description="""a human-readable description of an entity""") + has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") + + +class EnrichedCellSample(Entity, ProvEntity): + + wasDerivedFrom: Optional[List[DissociatedCellSample]] = Field(default_factory=list) + wasGeneratedBy: Optional[List[CellEnrichment]] = Field(default_factory=list) + id: str = Field(..., description="""A unique identifier for an entity. Must be either a CURIE shorthand for a URI or a complete URI""") + iri: Optional[str] = Field(None, description="""An IRI for an entity. This is determined by the id using expansion rules.""") + category: List[Literal["https://identifiers.org/brain-bican/vocab/EnrichedCellSample","bican:EnrichedCellSample"]] = Field(["bican:EnrichedCellSample"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. + * In a neo4j database this MAY correspond to the neo4j label tag. + * In an RDF database it should be a biolink model class URI. +This field is multi-valued. It should include values for ancestors of the biolink class; for example, a protein such as Shh would have category values `biolink:Protein`, `biolink:GeneProduct`, `biolink:MolecularEntity`, ... +In an RDF database, nodes will typically have an rdf:type triples. This can be to the most specific biolink class, or potentially to a class more specific than something in biolink. For example, a sequence feature `f` may have a rdf:type assertion to a SO class such as TF_binding_site, which is more specific than anything in biolink. Here we would have categories {biolink:GenomicEntity, biolink:MolecularEntity, biolink:NamedThing}""") + type: Optional[List[str]] = Field(default_factory=list) + name: Optional[str] = Field(None, description="""A human-readable name for an attribute or entity.""") + description: Optional[str] = Field(None, description="""a human-readable description of an entity""") + has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") + + +class BarcodedCellSample(Entity, ProvEntity): + + port_well: Optional[str] = Field(None) + sample_quality_count: Optional[str] = Field(None) + wasDerivedFrom: Optional[List[EnrichedCellSample]] = Field(default_factory=list) + wasGeneratedBy: Optional[List[CellBarcoding]] = Field(default_factory=list) + id: str = Field(..., description="""A unique identifier for an entity. Must be either a CURIE shorthand for a URI or a complete URI""") + iri: Optional[str] = Field(None, description="""An IRI for an entity. This is determined by the id using expansion rules.""") + category: List[Literal["https://identifiers.org/brain-bican/vocab/BarcodedCellSample","bican:BarcodedCellSample"]] = Field(["bican:BarcodedCellSample"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. + * In a neo4j database this MAY correspond to the neo4j label tag. + * In an RDF database it should be a biolink model class URI. +This field is multi-valued. It should include values for ancestors of the biolink class; for example, a protein such as Shh would have category values `biolink:Protein`, `biolink:GeneProduct`, `biolink:MolecularEntity`, ... +In an RDF database, nodes will typically have an rdf:type triples. This can be to the most specific biolink class, or potentially to a class more specific than something in biolink. For example, a sequence feature `f` may have a rdf:type assertion to a SO class such as TF_binding_site, which is more specific than anything in biolink. Here we would have categories {biolink:GenomicEntity, biolink:MolecularEntity, biolink:NamedThing}""") + type: Optional[List[str]] = Field(default_factory=list) + name: Optional[str] = Field(None, description="""A human-readable name for an attribute or entity.""") + description: Optional[str] = Field(None, description="""a human-readable description of an entity""") + has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") + + +class AmplifiedCdna(Entity, ProvEntity): + + method: Optional[str] = Field(None) + amplified_quantity: Optional[float] = Field(None, description="""Amount of cDNA amplified (ng).""") + pcr_cycles: Optional[int] = Field(None, description="""Number of PCR cycles used to amplify the cDNA.""") + percent_cdna_longer_than_400bp: Optional[float] = Field(None, description="""The percentage of cDNA fragments that are longer than 400bp.""") + rna_amplification_pass: Optional[bool] = Field(None) + wasDerivedFrom: Optional[List[BarcodedCellSample]] = Field(default_factory=list) + wasGeneratedBy: Optional[List[CdnaAmplification]] = Field(default_factory=list) + id: str = Field(..., description="""A unique identifier for an entity. Must be either a CURIE shorthand for a URI or a complete URI""") + iri: Optional[str] = Field(None, description="""An IRI for an entity. This is determined by the id using expansion rules.""") + category: List[Literal["https://identifiers.org/brain-bican/vocab/AmplifiedCdna","bican:AmplifiedCdna"]] = Field(["bican:AmplifiedCdna"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. + * In a neo4j database this MAY correspond to the neo4j label tag. + * In an RDF database it should be a biolink model class URI. +This field is multi-valued. It should include values for ancestors of the biolink class; for example, a protein such as Shh would have category values `biolink:Protein`, `biolink:GeneProduct`, `biolink:MolecularEntity`, ... +In an RDF database, nodes will typically have an rdf:type triples. This can be to the most specific biolink class, or potentially to a class more specific than something in biolink. For example, a sequence feature `f` may have a rdf:type assertion to a SO class such as TF_binding_site, which is more specific than anything in biolink. Here we would have categories {biolink:GenomicEntity, biolink:MolecularEntity, biolink:NamedThing}""") + type: Optional[List[str]] = Field(default_factory=list) + name: Optional[str] = Field(None, description="""A human-readable name for an attribute or entity.""") + description: Optional[str] = Field(None, description="""a human-readable description of an entity""") + has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") + + +class Library(Entity, ProvEntity): + + method: Optional[str] = Field(None) + creation_date: Optional[datetime ] = Field(None, description="""The date and time the object was created.""") + avg_size: Optional[int] = Field(None, description="""The average size (bp) of the library fragments. bp stands for base pairs.""") + input_amount: Optional[float] = Field(None, description="""The amount of input material (ng) used to create the library.""") + library_prep_pass: Optional[bool] = Field(None) + quantification_fmol: Optional[float] = Field(None) + quantification_ng: Optional[float] = Field(None) + quantification_nm: Optional[float] = Field(None) + r1_index: Optional[str] = Field(None) + r1_sequence: Optional[str] = Field(None) + r2_index: Optional[str] = Field(None) + r2_sequence: Optional[str] = Field(None) + wasDerivedFrom: Optional[List[AmplifiedCdna]] = Field(default_factory=list) + wasGeneratedBy: Optional[List[LibraryConstruction]] = Field(default_factory=list) + id: str = Field(..., description="""A unique identifier for an entity. Must be either a CURIE shorthand for a URI or a complete URI""") + iri: Optional[str] = Field(None, description="""An IRI for an entity. This is determined by the id using expansion rules.""") + category: List[Literal["https://identifiers.org/brain-bican/vocab/Library","bican:Library"]] = Field(["bican:Library"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. + * In a neo4j database this MAY correspond to the neo4j label tag. + * In an RDF database it should be a biolink model class URI. +This field is multi-valued. It should include values for ancestors of the biolink class; for example, a protein such as Shh would have category values `biolink:Protein`, `biolink:GeneProduct`, `biolink:MolecularEntity`, ... +In an RDF database, nodes will typically have an rdf:type triples. This can be to the most specific biolink class, or potentially to a class more specific than something in biolink. For example, a sequence feature `f` may have a rdf:type assertion to a SO class such as TF_binding_site, which is more specific than anything in biolink. Here we would have categories {biolink:GenomicEntity, biolink:MolecularEntity, biolink:NamedThing}""") + type: Optional[List[str]] = Field(default_factory=list) + name: Optional[str] = Field(None, description="""A human-readable name for an attribute or entity.""") + description: Optional[str] = Field(None, description="""a human-readable description of an entity""") + has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") + + +class LibraryAliquot(Entity, ProvEntity): + + input_quantity: Optional[int] = Field(None, description="""The amount of input material (fmol) used to create the library aliquot.""") + wasDerivedFrom: Optional[List[Library]] = Field(default_factory=list) + wasGeneratedBy: Optional[List[LibraryAliquoting]] = Field(default_factory=list) + id: str = Field(..., description="""A unique identifier for an entity. Must be either a CURIE shorthand for a URI or a complete URI""") + iri: Optional[str] = Field(None, description="""An IRI for an entity. This is determined by the id using expansion rules.""") + category: List[Literal["https://identifiers.org/brain-bican/vocab/LibraryAliquot","bican:LibraryAliquot"]] = Field(["bican:LibraryAliquot"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. + * In a neo4j database this MAY correspond to the neo4j label tag. + * In an RDF database it should be a biolink model class URI. +This field is multi-valued. It should include values for ancestors of the biolink class; for example, a protein such as Shh would have category values `biolink:Protein`, `biolink:GeneProduct`, `biolink:MolecularEntity`, ... +In an RDF database, nodes will typically have an rdf:type triples. This can be to the most specific biolink class, or potentially to a class more specific than something in biolink. For example, a sequence feature `f` may have a rdf:type assertion to a SO class such as TF_binding_site, which is more specific than anything in biolink. Here we would have categories {biolink:GenomicEntity, biolink:MolecularEntity, biolink:NamedThing}""") + type: Optional[List[str]] = Field(default_factory=list) + name: Optional[str] = Field(None, description="""A human-readable name for an attribute or entity.""") + description: Optional[str] = Field(None, description="""a human-readable description of an entity""") + has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") + + +class LibraryPool(Entity, ProvEntity): + + tube_avg_size: Optional[int] = Field(None, description="""The average size (bp) of the library fragments in the tube.""") + tube_contents: Optional[float] = Field(None, description="""The content concentration (nm).""") + tube_internal_label: Optional[str] = Field(None) + wasDerivedFrom: Optional[List[LibraryAliquot]] = Field(default_factory=list) + wasGeneratedBy: Optional[List[LibraryPooling]] = Field(default_factory=list) + id: str = Field(..., description="""A unique identifier for an entity. Must be either a CURIE shorthand for a URI or a complete URI""") + iri: Optional[str] = Field(None, description="""An IRI for an entity. This is determined by the id using expansion rules.""") + category: List[Literal["https://identifiers.org/brain-bican/vocab/LibraryPool","bican:LibraryPool"]] = Field(["bican:LibraryPool"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. + * In a neo4j database this MAY correspond to the neo4j label tag. + * In an RDF database it should be a biolink model class URI. +This field is multi-valued. It should include values for ancestors of the biolink class; for example, a protein such as Shh would have category values `biolink:Protein`, `biolink:GeneProduct`, `biolink:MolecularEntity`, ... +In an RDF database, nodes will typically have an rdf:type triples. This can be to the most specific biolink class, or potentially to a class more specific than something in biolink. For example, a sequence feature `f` may have a rdf:type assertion to a SO class such as TF_binding_site, which is more specific than anything in biolink. Here we would have categories {biolink:GenomicEntity, biolink:MolecularEntity, biolink:NamedThing}""") + type: Optional[List[str]] = Field(default_factory=list) + name: Optional[str] = Field(None, description="""A human-readable name for an attribute or entity.""") + description: Optional[str] = Field(None, description="""a human-readable description of an entity""") + has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") + class NamedThing(Entity): """ @@ -825,7 +811,6 @@ class NamedThing(Entity): has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class Attribute(NamedThing, OntologyClass): """ A property or characteristic of an entity. For example, an apple may have properties such as color, shape, age, crispiness. An environmental sample may have attributes such as depth, lat, long, material. @@ -850,7 +835,6 @@ class Attribute(NamedThing, OntologyClass): has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class ChemicalRole(Attribute): """ A role played by the molecular entity or part thereof within a chemical context. @@ -875,7 +859,6 @@ class ChemicalRole(Attribute): has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class BiologicalSex(Attribute): name: Optional[str] = Field(None, description="""The human-readable 'attribute name' can be set to a string which reflects its context of interpretation, e.g. SEPIO evidence/provenance/confidence annotation or it can default to the name associated with the 'has attribute type' slot ontology term.""") @@ -898,7 +881,6 @@ class BiologicalSex(Attribute): has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class PhenotypicSex(BiologicalSex): """ An attribute corresponding to the phenotypic sex of the individual, based upon the reproductive organs present. @@ -923,7 +905,6 @@ class PhenotypicSex(BiologicalSex): has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class GenotypicSex(BiologicalSex): """ An attribute corresponding to the genotypic sex of the individual, based upon genotypic composition of sex chromosomes. @@ -948,7 +929,6 @@ class GenotypicSex(BiologicalSex): has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class SeverityValue(Attribute): """ describes the severity of a phenotypic feature or disease @@ -973,7 +953,6 @@ class SeverityValue(Attribute): has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class RelationshipType(OntologyClass): """ An OWL property used as an edge label @@ -981,7 +960,6 @@ class RelationshipType(OntologyClass): id: str = Field(..., description="""A unique identifier for an entity. Must be either a CURIE shorthand for a URI or a complete URI""") - class TaxonomicRank(OntologyClass): """ A descriptor for the rank within a taxonomic classification. Example instance: TAXRANK:0000017 (kingdom) @@ -989,7 +967,6 @@ class TaxonomicRank(OntologyClass): id: str = Field(..., description="""A unique identifier for an entity. Must be either a CURIE shorthand for a URI or a complete URI""") - class OrganismTaxon(NamedThing): """ A classification of a set of organisms. Example instances: NCBITaxon:9606 (Homo sapiens), NCBITaxon:2 (Bacteria). Can also be used to represent strains or subspecies. @@ -1011,7 +988,6 @@ class OrganismTaxon(NamedThing): has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class Event(NamedThing): """ Something that happens at a given place and time. @@ -1033,7 +1009,6 @@ class Event(NamedThing): has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class AdministrativeEntity(NamedThing): provided_by: Optional[List[str]] = Field(None, description="""The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.""") @@ -1053,7 +1028,6 @@ class AdministrativeEntity(NamedThing): has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class Agent(AdministrativeEntity): """ person, group, organization or project that provides a piece of information (i.e. a knowledge association) @@ -1077,7 +1051,6 @@ class Agent(AdministrativeEntity): has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class InformationContentEntity(NamedThing): """ a piece of information that typically describes some topic of discourse or is used as support. @@ -1103,7 +1076,6 @@ class InformationContentEntity(NamedThing): has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class StudyResult(InformationContentEntity): """ A collection of data items from a study that are about a particular study subject or experimental unit (the 'focus' of the Result) - optionally with context/provenance metadata that may be relevant to the interpretation of this data as evidence. @@ -1129,7 +1101,6 @@ class StudyResult(InformationContentEntity): has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class StudyVariable(InformationContentEntity): """ a variable that is used as a measure in the investigation of a study @@ -1155,7 +1126,6 @@ class StudyVariable(InformationContentEntity): has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class CommonDataElement(InformationContentEntity): """ A Common Data Element (CDE) is a standardized, precisely defined question, paired with a set of allowable responses, used systematically across different sites, studies, or clinical trials to ensure consistent data collection. Multiple CDEs (from one or more Collections) can be curated into Forms. (https://cde.nlm.nih.gov/home) @@ -1181,7 +1151,6 @@ class CommonDataElement(InformationContentEntity): has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class ConceptCountAnalysisResult(StudyResult): """ A result of a concept count analysis. @@ -1207,7 +1176,6 @@ class ConceptCountAnalysisResult(StudyResult): has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class ObservedExpectedFrequencyAnalysisResult(StudyResult): """ A result of a observed expected frequency analysis. @@ -1233,7 +1201,6 @@ class ObservedExpectedFrequencyAnalysisResult(StudyResult): has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class RelativeFrequencyAnalysisResult(StudyResult): """ A result of a relative frequency analysis. @@ -1259,7 +1226,6 @@ class RelativeFrequencyAnalysisResult(StudyResult): has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class TextMiningResult(StudyResult): """ A result of text mining. @@ -1285,7 +1251,6 @@ class TextMiningResult(StudyResult): has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class ChiSquaredAnalysisResult(StudyResult): """ A result of a chi squared analysis. @@ -1311,7 +1276,6 @@ class ChiSquaredAnalysisResult(StudyResult): has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class LogOddsAnalysisResult(StudyResult): """ A result of a log odds ratio analysis. @@ -1337,7 +1301,6 @@ class LogOddsAnalysisResult(StudyResult): has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class Dataset(InformationContentEntity): """ an item that refers to a collection of data from a data source. @@ -1363,7 +1326,6 @@ class Dataset(InformationContentEntity): has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class DatasetDistribution(InformationContentEntity): """ an item that holds distribution level information about a dataset. @@ -1390,7 +1352,6 @@ class DatasetDistribution(InformationContentEntity): has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class DatasetVersion(InformationContentEntity): """ an item that holds version level information about a dataset. @@ -1419,7 +1380,6 @@ class DatasetVersion(InformationContentEntity): has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class DatasetSummary(InformationContentEntity): """ an item that holds summary level information about a dataset. @@ -1447,7 +1407,6 @@ class DatasetSummary(InformationContentEntity): has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class ConfidenceLevel(InformationContentEntity): """ Level of confidence in a statement @@ -1473,7 +1432,6 @@ class ConfidenceLevel(InformationContentEntity): has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class EvidenceType(InformationContentEntity): """ Class of evidence that supports an association @@ -1499,7 +1457,6 @@ class EvidenceType(InformationContentEntity): has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class Publication(InformationContentEntity): """ Any ‘published’ piece of information. Publications are considered broadly to include any document or document part made available in print or on the web - which may include scientific journal issues, individual articles, and books - as well as things like pre-prints, white papers, patents, drug labels, web pages, protocol documents, and even a part of a publication if of significant knowledge scope (e.g. a figure, figure legend, or section highlighted by NLP). @@ -1530,7 +1487,6 @@ class Publication(InformationContentEntity): has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class Book(Publication): """ This class may rarely be instantiated except if use cases of a given knowledge graph support its utility. @@ -1561,7 +1517,6 @@ class Book(Publication): has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class BookChapter(Publication): published_in: str = Field(..., description="""The enclosing parent book containing the chapter should have industry-standard identifier from ISBN.""") @@ -1593,7 +1548,6 @@ class BookChapter(Publication): has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class Serial(Publication): """ This class may rarely be instantiated except if use cases of a given knowledge graph support its utility. @@ -1627,7 +1581,6 @@ class Serial(Publication): has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class Article(Publication): """ a piece of writing on a particular topic presented as a stand-alone section of a larger publication @@ -1662,7 +1615,6 @@ class Article(Publication): has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class JournalArticle(Article): """ an article, typically presenting results of research, that is published in an issue of a scientific journal. @@ -1697,7 +1649,6 @@ class JournalArticle(Article): has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class Patent(Publication): """ a legal document granted by a patent issuing authority which confers upon the patenter the sole right to make, use and sell an invention for a set period of time. @@ -1728,7 +1679,6 @@ class Patent(Publication): has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class WebPage(Publication): """ a document that is published according to World Wide Web standards, which may incorporate text, graphics, sound, and/or other features. @@ -1759,7 +1709,6 @@ class WebPage(Publication): has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class PreprintPublication(Publication): """ a document reresenting an early version of an author's original scholarly work, such as a research paper or a review, prior to formal peer review and publication in a peer-reviewed scholarly or scientific journal. @@ -1790,7 +1739,6 @@ class PreprintPublication(Publication): has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class DrugLabel(Publication): """ a document accompanying a drug or its container that provides written, printed or graphic information about the drug, including drug contents, specific instructions or warnings for administration, storage and disposal instructions, etc. @@ -1821,7 +1769,6 @@ class DrugLabel(Publication): has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class RetrievalSource(InformationContentEntity): """ Provides information about how a particular InformationResource served as a source from which knowledge expressed in an Edge, or data used to generate this knowledge, was retrieved. @@ -1850,7 +1797,6 @@ class RetrievalSource(InformationContentEntity): has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class PhysicalEssenceOrOccurrent(ConfiguredBaseModel): """ Either a physical or processual entity. @@ -1858,7 +1804,6 @@ class PhysicalEssenceOrOccurrent(ConfiguredBaseModel): None - class PhysicalEssence(PhysicalEssenceOrOccurrent): """ Semantic mixin concept. Pertains to entities that have physical properties such as mass, volume, or charge. @@ -1866,7 +1811,6 @@ class PhysicalEssence(PhysicalEssenceOrOccurrent): None - class PhysicalEntity(PhysicalEssence, NamedThing): """ An entity that has material reality (a.k.a. physical essence). @@ -1888,7 +1832,6 @@ class PhysicalEntity(PhysicalEssence, NamedThing): has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class Occurrent(PhysicalEssenceOrOccurrent): """ A processual entity. @@ -1896,7 +1839,6 @@ class Occurrent(PhysicalEssenceOrOccurrent): None - class ActivityAndBehavior(Occurrent): """ Activity or behavior of any independent integral living, organization or mechanical actor in the world @@ -1904,7 +1846,6 @@ class ActivityAndBehavior(Occurrent): None - class Activity(ActivityAndBehavior, NamedThing): """ An activity is something that occurs over a period of time and acts upon or with entities; it may include consuming, processing, transforming, modifying, relocating, using, or generating entities. @@ -1926,6 +1867,235 @@ class Activity(ActivityAndBehavior, NamedThing): has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") +class BrainExtraction(Activity, ProvActivity): + """ + A process that takes a brain sample from a donor and produces a brain segment. + """ + used: Optional[List[Donor]] = Field(default_factory=list) + generated: Optional[List[BrainSegment]] = Field(default_factory=list) + provided_by: Optional[List[str]] = Field(None, description="""The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.""") + xref: Optional[List[str]] = Field(default_factory=list, description="""A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.""") + full_name: Optional[str] = Field(None, description="""a long-form human readable name for a thing""") + synonym: Optional[List[str]] = Field(default_factory=list, description="""Alternate human-readable names for a thing""") + id: str = Field(..., description="""A unique identifier for an entity. Must be either a CURIE shorthand for a URI or a complete URI""") + iri: Optional[str] = Field(None, description="""An IRI for an entity. This is determined by the id using expansion rules.""") + category: List[Literal["https://identifiers.org/brain-bican/vocab/BrainExtraction","bican:BrainExtraction"]] = Field(["bican:BrainExtraction"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. + * In a neo4j database this MAY correspond to the neo4j label tag. + * In an RDF database it should be a biolink model class URI. +This field is multi-valued. It should include values for ancestors of the biolink class; for example, a protein such as Shh would have category values `biolink:Protein`, `biolink:GeneProduct`, `biolink:MolecularEntity`, ... +In an RDF database, nodes will typically have an rdf:type triples. This can be to the most specific biolink class, or potentially to a class more specific than something in biolink. For example, a sequence feature `f` may have a rdf:type assertion to a SO class such as TF_binding_site, which is more specific than anything in biolink. Here we would have categories {biolink:GenomicEntity, biolink:MolecularEntity, biolink:NamedThing}""") + type: Optional[List[str]] = Field(default_factory=list) + name: Optional[str] = Field(None, description="""A human-readable name for an attribute or entity.""") + description: Optional[str] = Field(None, description="""a human-readable description of an entity""") + has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") + + +class BrainSegmentSectioning(Activity, ProvActivity): + """ + A process that takes a brain segment and produces a brain section. + """ + used: Optional[List[BrainSegment]] = Field(default_factory=list) + generated: Optional[List[BrainSection]] = Field(default_factory=list) + provided_by: Optional[List[str]] = Field(None, description="""The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.""") + xref: Optional[List[str]] = Field(default_factory=list, description="""A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.""") + full_name: Optional[str] = Field(None, description="""a long-form human readable name for a thing""") + synonym: Optional[List[str]] = Field(default_factory=list, description="""Alternate human-readable names for a thing""") + id: str = Field(..., description="""A unique identifier for an entity. Must be either a CURIE shorthand for a URI or a complete URI""") + iri: Optional[str] = Field(None, description="""An IRI for an entity. This is determined by the id using expansion rules.""") + category: List[Literal["https://identifiers.org/brain-bican/vocab/BrainSegmentSectioning","bican:BrainSegmentSectioning"]] = Field(["bican:BrainSegmentSectioning"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. + * In a neo4j database this MAY correspond to the neo4j label tag. + * In an RDF database it should be a biolink model class URI. +This field is multi-valued. It should include values for ancestors of the biolink class; for example, a protein such as Shh would have category values `biolink:Protein`, `biolink:GeneProduct`, `biolink:MolecularEntity`, ... +In an RDF database, nodes will typically have an rdf:type triples. This can be to the most specific biolink class, or potentially to a class more specific than something in biolink. For example, a sequence feature `f` may have a rdf:type assertion to a SO class such as TF_binding_site, which is more specific than anything in biolink. Here we would have categories {biolink:GenomicEntity, biolink:MolecularEntity, biolink:NamedThing}""") + type: Optional[List[str]] = Field(default_factory=list) + name: Optional[str] = Field(None, description="""A human-readable name for an attribute or entity.""") + description: Optional[str] = Field(None, description="""a human-readable description of an entity""") + has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") + + +class TissueDissecting(Activity, ProvActivity): + """ + A process that takes a brain section and produces a tissue sample. + """ + used: Optional[List[BrainSection]] = Field(default_factory=list) + generated: Optional[List[TissueSample]] = Field(default_factory=list) + provided_by: Optional[List[str]] = Field(None, description="""The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.""") + xref: Optional[List[str]] = Field(default_factory=list, description="""A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.""") + full_name: Optional[str] = Field(None, description="""a long-form human readable name for a thing""") + synonym: Optional[List[str]] = Field(default_factory=list, description="""Alternate human-readable names for a thing""") + id: str = Field(..., description="""A unique identifier for an entity. Must be either a CURIE shorthand for a URI or a complete URI""") + iri: Optional[str] = Field(None, description="""An IRI for an entity. This is determined by the id using expansion rules.""") + category: List[Literal["https://identifiers.org/brain-bican/vocab/TissueDissecting","bican:TissueDissecting"]] = Field(["bican:TissueDissecting"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. + * In a neo4j database this MAY correspond to the neo4j label tag. + * In an RDF database it should be a biolink model class URI. +This field is multi-valued. It should include values for ancestors of the biolink class; for example, a protein such as Shh would have category values `biolink:Protein`, `biolink:GeneProduct`, `biolink:MolecularEntity`, ... +In an RDF database, nodes will typically have an rdf:type triples. This can be to the most specific biolink class, or potentially to a class more specific than something in biolink. For example, a sequence feature `f` may have a rdf:type assertion to a SO class such as TF_binding_site, which is more specific than anything in biolink. Here we would have categories {biolink:GenomicEntity, biolink:MolecularEntity, biolink:NamedThing}""") + type: Optional[List[str]] = Field(default_factory=list) + name: Optional[str] = Field(None, description="""A human-readable name for an attribute or entity.""") + description: Optional[str] = Field(None, description="""a human-readable description of an entity""") + has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") + + +class CellDissociation(Activity, ProvActivity): + """ + A process that takes a tissue sample and produces a dissociated cell sample. + """ + used: Optional[List[TissueSample]] = Field(default_factory=list) + generated: Optional[List[DissociatedCellSample]] = Field(default_factory=list) + provided_by: Optional[List[str]] = Field(None, description="""The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.""") + xref: Optional[List[str]] = Field(default_factory=list, description="""A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.""") + full_name: Optional[str] = Field(None, description="""a long-form human readable name for a thing""") + synonym: Optional[List[str]] = Field(default_factory=list, description="""Alternate human-readable names for a thing""") + id: str = Field(..., description="""A unique identifier for an entity. Must be either a CURIE shorthand for a URI or a complete URI""") + iri: Optional[str] = Field(None, description="""An IRI for an entity. This is determined by the id using expansion rules.""") + category: List[Literal["https://identifiers.org/brain-bican/vocab/CellDissociation","bican:CellDissociation"]] = Field(["bican:CellDissociation"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. + * In a neo4j database this MAY correspond to the neo4j label tag. + * In an RDF database it should be a biolink model class URI. +This field is multi-valued. It should include values for ancestors of the biolink class; for example, a protein such as Shh would have category values `biolink:Protein`, `biolink:GeneProduct`, `biolink:MolecularEntity`, ... +In an RDF database, nodes will typically have an rdf:type triples. This can be to the most specific biolink class, or potentially to a class more specific than something in biolink. For example, a sequence feature `f` may have a rdf:type assertion to a SO class such as TF_binding_site, which is more specific than anything in biolink. Here we would have categories {biolink:GenomicEntity, biolink:MolecularEntity, biolink:NamedThing}""") + type: Optional[List[str]] = Field(default_factory=list) + name: Optional[str] = Field(None, description="""A human-readable name for an attribute or entity.""") + description: Optional[str] = Field(None, description="""a human-readable description of an entity""") + has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") + + +class CellEnrichment(Activity, ProvActivity): + """ + A process that takes a dissociated cell sample and produces an enriched cell sample. + """ + used: Optional[List[DissociatedCellSample]] = Field(default_factory=list) + generated: Optional[List[EnrichedCellSample]] = Field(default_factory=list) + provided_by: Optional[List[str]] = Field(None, description="""The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.""") + xref: Optional[List[str]] = Field(default_factory=list, description="""A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.""") + full_name: Optional[str] = Field(None, description="""a long-form human readable name for a thing""") + synonym: Optional[List[str]] = Field(default_factory=list, description="""Alternate human-readable names for a thing""") + id: str = Field(..., description="""A unique identifier for an entity. Must be either a CURIE shorthand for a URI or a complete URI""") + iri: Optional[str] = Field(None, description="""An IRI for an entity. This is determined by the id using expansion rules.""") + category: List[Literal["https://identifiers.org/brain-bican/vocab/CellEnrichment","bican:CellEnrichment"]] = Field(["bican:CellEnrichment"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. + * In a neo4j database this MAY correspond to the neo4j label tag. + * In an RDF database it should be a biolink model class URI. +This field is multi-valued. It should include values for ancestors of the biolink class; for example, a protein such as Shh would have category values `biolink:Protein`, `biolink:GeneProduct`, `biolink:MolecularEntity`, ... +In an RDF database, nodes will typically have an rdf:type triples. This can be to the most specific biolink class, or potentially to a class more specific than something in biolink. For example, a sequence feature `f` may have a rdf:type assertion to a SO class such as TF_binding_site, which is more specific than anything in biolink. Here we would have categories {biolink:GenomicEntity, biolink:MolecularEntity, biolink:NamedThing}""") + type: Optional[List[str]] = Field(default_factory=list) + name: Optional[str] = Field(None, description="""A human-readable name for an attribute or entity.""") + description: Optional[str] = Field(None, description="""a human-readable description of an entity""") + has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") + + +class CellBarcoding(Activity, ProvActivity): + """ + A process that takes an enriched cell sample and produces a barcoded cell sample. + """ + used: Optional[List[EnrichedCellSample]] = Field(default_factory=list) + generated: Optional[List[BarcodedCellSample]] = Field(default_factory=list) + provided_by: Optional[List[str]] = Field(None, description="""The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.""") + xref: Optional[List[str]] = Field(default_factory=list, description="""A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.""") + full_name: Optional[str] = Field(None, description="""a long-form human readable name for a thing""") + synonym: Optional[List[str]] = Field(default_factory=list, description="""Alternate human-readable names for a thing""") + id: str = Field(..., description="""A unique identifier for an entity. Must be either a CURIE shorthand for a URI or a complete URI""") + iri: Optional[str] = Field(None, description="""An IRI for an entity. This is determined by the id using expansion rules.""") + category: List[Literal["https://identifiers.org/brain-bican/vocab/CellBarcoding","bican:CellBarcoding"]] = Field(["bican:CellBarcoding"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. + * In a neo4j database this MAY correspond to the neo4j label tag. + * In an RDF database it should be a biolink model class URI. +This field is multi-valued. It should include values for ancestors of the biolink class; for example, a protein such as Shh would have category values `biolink:Protein`, `biolink:GeneProduct`, `biolink:MolecularEntity`, ... +In an RDF database, nodes will typically have an rdf:type triples. This can be to the most specific biolink class, or potentially to a class more specific than something in biolink. For example, a sequence feature `f` may have a rdf:type assertion to a SO class such as TF_binding_site, which is more specific than anything in biolink. Here we would have categories {biolink:GenomicEntity, biolink:MolecularEntity, biolink:NamedThing}""") + type: Optional[List[str]] = Field(default_factory=list) + name: Optional[str] = Field(None, description="""A human-readable name for an attribute or entity.""") + description: Optional[str] = Field(None, description="""a human-readable description of an entity""") + has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") + + +class CdnaAmplification(Activity, ProvActivity): + """ + A process that takes a barcoded cell sample and produces an amplified cDNA sample. + """ + used: Optional[List[BarcodedCellSample]] = Field(default_factory=list) + generated: Optional[List[AmplifiedCdna]] = Field(default_factory=list) + provided_by: Optional[List[str]] = Field(None, description="""The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.""") + xref: Optional[List[str]] = Field(default_factory=list, description="""A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.""") + full_name: Optional[str] = Field(None, description="""a long-form human readable name for a thing""") + synonym: Optional[List[str]] = Field(default_factory=list, description="""Alternate human-readable names for a thing""") + id: str = Field(..., description="""A unique identifier for an entity. Must be either a CURIE shorthand for a URI or a complete URI""") + iri: Optional[str] = Field(None, description="""An IRI for an entity. This is determined by the id using expansion rules.""") + category: List[Literal["https://identifiers.org/brain-bican/vocab/CdnaAmplification","bican:CdnaAmplification"]] = Field(["bican:CdnaAmplification"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. + * In a neo4j database this MAY correspond to the neo4j label tag. + * In an RDF database it should be a biolink model class URI. +This field is multi-valued. It should include values for ancestors of the biolink class; for example, a protein such as Shh would have category values `biolink:Protein`, `biolink:GeneProduct`, `biolink:MolecularEntity`, ... +In an RDF database, nodes will typically have an rdf:type triples. This can be to the most specific biolink class, or potentially to a class more specific than something in biolink. For example, a sequence feature `f` may have a rdf:type assertion to a SO class such as TF_binding_site, which is more specific than anything in biolink. Here we would have categories {biolink:GenomicEntity, biolink:MolecularEntity, biolink:NamedThing}""") + type: Optional[List[str]] = Field(default_factory=list) + name: Optional[str] = Field(None, description="""A human-readable name for an attribute or entity.""") + description: Optional[str] = Field(None, description="""a human-readable description of an entity""") + has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") + + +class LibraryConstruction(Activity, ProvActivity): + """ + A process that takes an amplified cDNA sample and produces a library. + """ + used: Optional[List[AmplifiedCdna]] = Field(default_factory=list) + generated: Optional[List[Library]] = Field(default_factory=list) + provided_by: Optional[List[str]] = Field(None, description="""The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.""") + xref: Optional[List[str]] = Field(default_factory=list, description="""A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.""") + full_name: Optional[str] = Field(None, description="""a long-form human readable name for a thing""") + synonym: Optional[List[str]] = Field(default_factory=list, description="""Alternate human-readable names for a thing""") + id: str = Field(..., description="""A unique identifier for an entity. Must be either a CURIE shorthand for a URI or a complete URI""") + iri: Optional[str] = Field(None, description="""An IRI for an entity. This is determined by the id using expansion rules.""") + category: List[Literal["https://identifiers.org/brain-bican/vocab/LibraryConstruction","bican:LibraryConstruction"]] = Field(["bican:LibraryConstruction"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. + * In a neo4j database this MAY correspond to the neo4j label tag. + * In an RDF database it should be a biolink model class URI. +This field is multi-valued. It should include values for ancestors of the biolink class; for example, a protein such as Shh would have category values `biolink:Protein`, `biolink:GeneProduct`, `biolink:MolecularEntity`, ... +In an RDF database, nodes will typically have an rdf:type triples. This can be to the most specific biolink class, or potentially to a class more specific than something in biolink. For example, a sequence feature `f` may have a rdf:type assertion to a SO class such as TF_binding_site, which is more specific than anything in biolink. Here we would have categories {biolink:GenomicEntity, biolink:MolecularEntity, biolink:NamedThing}""") + type: Optional[List[str]] = Field(default_factory=list) + name: Optional[str] = Field(None, description="""A human-readable name for an attribute or entity.""") + description: Optional[str] = Field(None, description="""a human-readable description of an entity""") + has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") + + +class LibraryAliquoting(Activity, ProvActivity): + """ + A process that takes a library and produces an library aliquot. + """ + used: Optional[List[Library]] = Field(default_factory=list) + generated: Optional[List[LibraryAliquot]] = Field(default_factory=list) + provided_by: Optional[List[str]] = Field(None, description="""The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.""") + xref: Optional[List[str]] = Field(default_factory=list, description="""A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.""") + full_name: Optional[str] = Field(None, description="""a long-form human readable name for a thing""") + synonym: Optional[List[str]] = Field(default_factory=list, description="""Alternate human-readable names for a thing""") + id: str = Field(..., description="""A unique identifier for an entity. Must be either a CURIE shorthand for a URI or a complete URI""") + iri: Optional[str] = Field(None, description="""An IRI for an entity. This is determined by the id using expansion rules.""") + category: List[Literal["https://identifiers.org/brain-bican/vocab/LibraryAliquoting","bican:LibraryAliquoting"]] = Field(["bican:LibraryAliquoting"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. + * In a neo4j database this MAY correspond to the neo4j label tag. + * In an RDF database it should be a biolink model class URI. +This field is multi-valued. It should include values for ancestors of the biolink class; for example, a protein such as Shh would have category values `biolink:Protein`, `biolink:GeneProduct`, `biolink:MolecularEntity`, ... +In an RDF database, nodes will typically have an rdf:type triples. This can be to the most specific biolink class, or potentially to a class more specific than something in biolink. For example, a sequence feature `f` may have a rdf:type assertion to a SO class such as TF_binding_site, which is more specific than anything in biolink. Here we would have categories {biolink:GenomicEntity, biolink:MolecularEntity, biolink:NamedThing}""") + type: Optional[List[str]] = Field(default_factory=list) + name: Optional[str] = Field(None, description="""A human-readable name for an attribute or entity.""") + description: Optional[str] = Field(None, description="""a human-readable description of an entity""") + has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") + + +class LibraryPooling(Activity, ProvActivity): + """ + A process that takes a library aliquot and produces a library pool. + """ + used: Optional[List[LibraryAliquot]] = Field(default_factory=list) + generated: Optional[List[LibraryPool]] = Field(default_factory=list) + provided_by: Optional[List[str]] = Field(None, description="""The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.""") + xref: Optional[List[str]] = Field(default_factory=list, description="""A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.""") + full_name: Optional[str] = Field(None, description="""a long-form human readable name for a thing""") + synonym: Optional[List[str]] = Field(default_factory=list, description="""Alternate human-readable names for a thing""") + id: str = Field(..., description="""A unique identifier for an entity. Must be either a CURIE shorthand for a URI or a complete URI""") + iri: Optional[str] = Field(None, description="""An IRI for an entity. This is determined by the id using expansion rules.""") + category: List[Literal["https://identifiers.org/brain-bican/vocab/LibraryPooling","bican:LibraryPooling"]] = Field(["bican:LibraryPooling"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. + * In a neo4j database this MAY correspond to the neo4j label tag. + * In an RDF database it should be a biolink model class URI. +This field is multi-valued. It should include values for ancestors of the biolink class; for example, a protein such as Shh would have category values `biolink:Protein`, `biolink:GeneProduct`, `biolink:MolecularEntity`, ... +In an RDF database, nodes will typically have an rdf:type triples. This can be to the most specific biolink class, or potentially to a class more specific than something in biolink. For example, a sequence feature `f` may have a rdf:type assertion to a SO class such as TF_binding_site, which is more specific than anything in biolink. Here we would have categories {biolink:GenomicEntity, biolink:MolecularEntity, biolink:NamedThing}""") + type: Optional[List[str]] = Field(default_factory=list) + name: Optional[str] = Field(None, description="""A human-readable name for an attribute or entity.""") + description: Optional[str] = Field(None, description="""a human-readable description of an entity""") + has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") + class Study(Activity): """ @@ -1948,7 +2118,6 @@ class Study(Activity): has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class Procedure(ActivityAndBehavior, NamedThing): """ A series of actions conducted in a certain order or manner @@ -1970,7 +2139,6 @@ class Procedure(ActivityAndBehavior, NamedThing): has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class Phenomenon(Occurrent, NamedThing): """ a fact or situation that is observed to exist or happen, especially one whose cause or explanation is in question @@ -1992,7 +2160,6 @@ class Phenomenon(Occurrent, NamedThing): has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class Device(NamedThing): """ A thing made or adapted for a particular purpose, especially a piece of mechanical or electronic equipment @@ -2014,7 +2181,6 @@ class Device(NamedThing): has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class DiagnosticAid(NamedThing): """ A device or substance used to help diagnose disease or injury @@ -2036,7 +2202,6 @@ class DiagnosticAid(NamedThing): has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class SubjectOfInvestigation(ConfiguredBaseModel): """ An entity that has the role of being studied in an investigation, study, or experiment @@ -2044,7 +2209,6 @@ class SubjectOfInvestigation(ConfiguredBaseModel): None - class MaterialSample(SubjectOfInvestigation, PhysicalEntity): """ A sample is a limited quantity of something (e.g. an individual or set of individuals from a population, or a portion of a substance) to be used for testing, analysis, inspection, investigation, demonstration, or trial use. [SIO] @@ -2066,7 +2230,6 @@ class MaterialSample(SubjectOfInvestigation, PhysicalEntity): has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class PlanetaryEntity(NamedThing): """ Any entity or process that exists at the level of the whole planet @@ -2088,7 +2251,6 @@ class PlanetaryEntity(NamedThing): has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class EnvironmentalProcess(PlanetaryEntity, Occurrent): provided_by: Optional[List[str]] = Field(None, description="""The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.""") @@ -2108,7 +2270,6 @@ class EnvironmentalProcess(PlanetaryEntity, Occurrent): has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class EnvironmentalFeature(PlanetaryEntity): provided_by: Optional[List[str]] = Field(None, description="""The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.""") @@ -2128,7 +2289,6 @@ class EnvironmentalFeature(PlanetaryEntity): has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class GeographicLocation(PlanetaryEntity): """ a location that can be described in lat/long coordinates @@ -2152,7 +2312,6 @@ class GeographicLocation(PlanetaryEntity): has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class GeographicLocationAtTime(GeographicLocation): """ a location that can be described in lat/long coordinates, for a particular time @@ -2177,7 +2336,6 @@ class GeographicLocationAtTime(GeographicLocation): has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class ThingWithTaxon(ConfiguredBaseModel): """ A mixin that can be used on any entity that can be taxonomically classified. This includes individual organisms; genes, their products and other molecular entities; body parts; biological processes @@ -2186,7 +2344,6 @@ class ThingWithTaxon(ConfiguredBaseModel): in_taxon_label: Optional[str] = Field(None, description="""The human readable scientific name for the taxon of the entity.""") - class GenomeAssembly(ThingWithTaxon, NamedThing): """ Genome assembly to contain version and label information @@ -2212,12 +2369,10 @@ class GenomeAssembly(ThingWithTaxon, NamedThing): has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - -class Donor(ThingWithTaxon, Entity): +class Donor(ThingWithTaxon, Entity, ProvEntity): """ A person or organism that is the source of a biological sample. """ - label: Optional[str] = Field(None, description="""The name of the object.""") sex: Optional[SexType] = Field(None) date_of_birth: Optional[date] = Field(None, description="""The date of birth of the donor.""") date_of_death: Optional[date] = Field(None, description="""The date of death of the donor.""") @@ -2225,6 +2380,8 @@ class Donor(ThingWithTaxon, Entity): full_genotype: Optional[str] = Field(None, description="""The full genotype of the donor.""") in_taxon: Optional[List[str]] = Field(None, description="""connects an entity to its taxonomic classification. Only certain kinds of entities can be taxonomically classified; see 'thing with taxon'""") in_taxon_label: Optional[str] = Field(None, description="""The human readable scientific name for the taxon of the entity.""") + wasDerivedFrom: Optional[List[Union[Entity,Checksum,Donor,BrainSegment,BrainSection,TissueSample,DissociatedCellSample,EnrichedCellSample,BarcodedCellSample,AmplifiedCdna,Library,LibraryAliquot,LibraryPool,NamedThing,Association,ChemicalEntityAssessesNamedThingAssociation,ContributorAssociation,GenotypeToGenotypePartAssociation,GenotypeToGeneAssociation,GenotypeToVariantAssociation,GeneToGeneAssociation,GeneToGeneFamilyAssociation,CellLineToDiseaseOrPhenotypicFeatureAssociation,ChemicalToChemicalAssociation,ChemicalToDiseaseOrPhenotypicFeatureAssociation,ChemicalOrDrugOrTreatmentToDiseaseOrPhenotypicFeatureAssociation,GeneToPathwayAssociation,MolecularActivityToPathwayAssociation,ChemicalToPathwayAssociation,NamedThingAssociatedWithLikelihoodOfNamedThingAssociation,ChemicalGeneInteractionAssociation,ChemicalAffectsGeneAssociation,DrugToGeneAssociation,MaterialSampleDerivationAssociation,MaterialSampleToDiseaseOrPhenotypicFeatureAssociation,DiseaseToExposureEventAssociation,ExposureEventToOutcomeAssociation,InformationContentEntityToNamedThingAssociation,DiseaseOrPhenotypicFeatureToLocationAssociation,DiseaseOrPhenotypicFeatureToGeneticInheritanceAssociation,GenotypeToPhenotypicFeatureAssociation,ExposureEventToPhenotypicFeatureAssociation,DiseaseToPhenotypicFeatureAssociation,CaseToPhenotypicFeatureAssociation,BehaviorToBehavioralFeatureAssociation,GeneToDiseaseOrPhenotypicFeatureAssociation,VariantToGeneAssociation,VariantToPopulationAssociation,PopulationToPopulationAssociation,VariantToPhenotypicFeatureAssociation,VariantToDiseaseAssociation,GenotypeToDiseaseAssociation,OrganismalEntityAsAModelOfDiseaseAssociation,OrganismToOrganismAssociation,TaxonToTaxonAssociation,GeneToExpressionSiteAssociation,SequenceVariantModulatesTreatmentAssociation,FunctionalAssociation,MolecularActivityToChemicalEntityAssociation,MolecularActivityToMolecularActivityAssociation,EntityToDiseaseAssociation,EntityToPhenotypicFeatureAssociation,SequenceAssociation,SequenceFeatureRelationship,ChemicalEntityOrGeneOrGeneProductRegulatesGeneAssociation,AnatomicalEntityToAnatomicalEntityAssociation,OrganismTaxonToOrganismTaxonAssociation,OrganismTaxonToEnvironmentAssociation,OrganismTaxonToOrganismTaxonSpecialization,OrganismTaxonToOrganismTaxonInteraction,AnatomicalEntityToAnatomicalEntityPartOfAssociation,AnatomicalEntityToAnatomicalEntityOntogenicAssociation,TranscriptToGeneRelationship,GeneToGeneProductRelationship,ExonToTranscriptRelationship,GenomicSequenceLocalization,MacromolecularMachineToMolecularActivityAssociation,MacromolecularMachineToBiologicalProcessAssociation,MacromolecularMachineToCellularComponentAssociation,GeneToGoTermAssociation,GenotypeAsAModelOfDiseaseAssociation,VariantAsAModelOfDiseaseAssociation,VariantToGeneExpressionAssociation,GeneToPhenotypicFeatureAssociation,GeneToDiseaseAssociation,CausalGeneToDiseaseAssociation,CorrelatedGeneToDiseaseAssociation,DruggableGeneToDiseaseAssociation,GeneAsAModelOfDiseaseAssociation,GeneHasVariantThatContributesToDiseaseAssociation,ChemicalOrDrugOrTreatmentSideEffectDiseaseOrPhenotypicFeatureAssociation,ReactionToParticipantAssociation,ChemicalToChemicalDerivationAssociation,ReactionToCatalystAssociation,CellLineAsAModelOfDiseaseAssociation,GeneToGeneHomologyAssociation,GeneToGeneCoexpressionAssociation,PairwiseGeneToGeneInteraction,PairwiseMolecularInteraction,GenomeAssembly,Attribute,OrganismTaxon,Event,AdministrativeEntity,InformationContentEntity,PhysicalEntity,Activity,Procedure,Phenomenon,Device,DiagnosticAid,PlanetaryEntity,BiologicalEntity,ChemicalEntity,ClinicalEntity,Treatment,ClinicalTrial,ClinicalIntervention,Hospitalization,MolecularEntity,ChemicalMixture,EnvironmentalFoodContaminant,FoodAdditive,MolecularMixture,ComplexMolecularMixture,ProcessedMaterial,Food,Drug,SmallMolecule,NucleicAcidEntity,Exon,Transcript,CodingSequence,RNAProduct,RNAProductIsoform,NoncodingRNAProduct,MicroRNA,SiRNA,RegulatoryRegion,BiologicalProcessOrActivity,GeneticInheritance,OrganismalEntity,DiseaseOrPhenotypicFeature,Gene,MacromolecularComplex,NucleosomeModification,Genome,Polypeptide,ProteinDomain,PosttranslationalModification,ProteinFamily,NucleicAcidSequenceMotif,GeneFamily,Genotype,Haplotype,SequenceVariant,ReagentTargetedGene,Snv,Protein,ProteinIsoform,GenomeAnnotation,GeneAnnotation,Disease,PhenotypicFeature,BehavioralFeature,ClinicalFinding,Bacterium,Virus,CellularOrganism,LifeStage,IndividualOrganism,PopulationOfIndividualOrganisms,AnatomicalEntity,CellLine,CellularComponent,Cell,GrossAnatomicalStructure,PathologicalAnatomicalStructure,StudyPopulation,Cohort,Case,Mammal,Plant,Invertebrate,Vertebrate,Fungus,Human,MolecularActivity,BiologicalProcess,Pathway,PhysiologicalProcess,Behavior,PathologicalProcess,AccessibleDnaRegion,TranscriptionFactorBindingSite,EnvironmentalProcess,EnvironmentalFeature,GeographicLocation,GeographicLocationAtTime,BrainExtraction,BrainSegmentSectioning,TissueDissecting,CellDissociation,CellEnrichment,CellBarcoding,CdnaAmplification,LibraryConstruction,LibraryAliquoting,LibraryPooling,Study,MaterialSample,StudyResult,StudyVariable,CommonDataElement,Dataset,DatasetDistribution,DatasetVersion,DatasetSummary,ConfidenceLevel,EvidenceType,Publication,RetrievalSource,Book,BookChapter,Serial,Article,Patent,WebPage,PreprintPublication,DrugLabel,JournalArticle,ConceptCountAnalysisResult,ObservedExpectedFrequencyAnalysisResult,RelativeFrequencyAnalysisResult,TextMiningResult,ChiSquaredAnalysisResult,LogOddsAnalysisResult,Agent,ChemicalRole,BiologicalSex,SeverityValue,OrganismAttribute,Zygosity,ClinicalAttribute,SocioeconomicAttribute,GenomicBackgroundExposure,PathologicalProcessExposure,PathologicalAnatomicalExposure,DiseaseOrPhenotypicFeatureExposure,ChemicalExposure,ComplexChemicalExposure,BioticExposure,EnvironmentalExposure,BehavioralExposure,SocioeconomicExposure,GeographicExposure,DrugExposure,DrugToGeneInteractionExposure,ClinicalMeasurement,ClinicalModifier,ClinicalCourse,Onset,PhenotypicQuality,PhenotypicSex,GenotypicSex]]] = Field(default_factory=list) + wasGeneratedBy: Optional[List[Union[Activity,BrainExtraction,BrainSegmentSectioning,TissueDissecting,CellDissociation,CellEnrichment,CellBarcoding,CdnaAmplification,LibraryConstruction,LibraryAliquoting,LibraryPooling,Study]]] = Field(default_factory=list) id: str = Field(..., description="""A unique identifier for an entity. Must be either a CURIE shorthand for a URI or a complete URI""") iri: Optional[str] = Field(None, description="""An IRI for an entity. This is determined by the id using expansion rules.""") category: List[Literal["https://identifiers.org/brain-bican/vocab/Donor","bican:Donor"]] = Field(["bican:Donor"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. @@ -2238,7 +2395,6 @@ class Donor(ThingWithTaxon, Entity): has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class BiologicalEntity(ThingWithTaxon, NamedThing): in_taxon: Optional[List[str]] = Field(None, description="""connects an entity to its taxonomic classification. Only certain kinds of entities can be taxonomically classified; see 'thing with taxon'""") @@ -2260,19 +2416,16 @@ class BiologicalEntity(ThingWithTaxon, NamedThing): has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class GenomicEntity(ConfiguredBaseModel): has_biological_sequence: Optional[str] = Field(None, description="""connects a genomic feature to its sequence""") - class EpigenomicEntity(ConfiguredBaseModel): has_biological_sequence: Optional[str] = Field(None, description="""connects a genomic feature to its sequence""") - class BiologicalProcessOrActivity(BiologicalEntity, Occurrent, OntologyClass): """ Either an individual molecular activity, or a collection of causally connected molecular activities in a biological system. @@ -2299,7 +2452,6 @@ class BiologicalProcessOrActivity(BiologicalEntity, Occurrent, OntologyClass): has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class MolecularActivity(BiologicalProcessOrActivity, Occurrent, OntologyClass): """ An execution of a molecular function carried out by a gene product or macromolecular complex. @@ -2326,7 +2478,6 @@ class MolecularActivity(BiologicalProcessOrActivity, Occurrent, OntologyClass): has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class BiologicalProcess(BiologicalProcessOrActivity, Occurrent, OntologyClass): """ One or more causally connected executions of molecular functions @@ -2353,7 +2504,6 @@ class BiologicalProcess(BiologicalProcessOrActivity, Occurrent, OntologyClass): has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class Pathway(BiologicalProcess, OntologyClass): id: str = Field(..., description="""A unique identifier for an entity. Must be either a CURIE shorthand for a URI or a complete URI""") @@ -2378,7 +2528,6 @@ class Pathway(BiologicalProcess, OntologyClass): has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class PhysiologicalProcess(BiologicalProcess, OntologyClass): id: str = Field(..., description="""A unique identifier for an entity. Must be either a CURIE shorthand for a URI or a complete URI""") @@ -2403,7 +2552,6 @@ class PhysiologicalProcess(BiologicalProcess, OntologyClass): has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class Behavior(BiologicalProcess, ActivityAndBehavior, OntologyClass): id: str = Field(..., description="""A unique identifier for an entity. Must be either a CURIE shorthand for a URI or a complete URI""") @@ -2428,7 +2576,6 @@ class Behavior(BiologicalProcess, ActivityAndBehavior, OntologyClass): has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class OrganismAttribute(Attribute): """ describes a characteristic of an organismal entity. @@ -2453,7 +2600,6 @@ class OrganismAttribute(Attribute): has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class PhenotypicQuality(OrganismAttribute): """ A property of a phenotype @@ -2478,7 +2624,6 @@ class PhenotypicQuality(OrganismAttribute): has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class GeneticInheritance(BiologicalEntity): """ The pattern or 'mode' in which a particular genetic trait or disorder is passed from one generation to the next, e.g. autosomal dominant, autosomal recessive, etc. @@ -2502,7 +2647,6 @@ class GeneticInheritance(BiologicalEntity): has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class OrganismalEntity(BiologicalEntity, SubjectOfInvestigation): """ A named entity that is either a part of an organism, a whole organism, population or clade of organisms, excluding chemical entities @@ -2526,7 +2670,6 @@ class OrganismalEntity(BiologicalEntity, SubjectOfInvestigation): has_attribute: Optional[List[str]] = Field(None, description="""may often be an organism attribute""") - class Bacterium(OrganismalEntity): """ A member of a group of unicellular microorganisms lacking a nuclear membrane, that reproduce by binary fission and are often motile. @@ -2550,7 +2693,6 @@ class Bacterium(OrganismalEntity): has_attribute: Optional[List[str]] = Field(None, description="""may often be an organism attribute""") - class Virus(OrganismalEntity, SubjectOfInvestigation): """ A virus is a microorganism that replicates itself as a microRNA and infects the host cell. @@ -2574,7 +2716,6 @@ class Virus(OrganismalEntity, SubjectOfInvestigation): has_attribute: Optional[List[str]] = Field(None, description="""may often be an organism attribute""") - class CellularOrganism(OrganismalEntity, SubjectOfInvestigation): in_taxon: Optional[List[str]] = Field(None, description="""connects an entity to its taxonomic classification. Only certain kinds of entities can be taxonomically classified; see 'thing with taxon'""") @@ -2596,7 +2737,6 @@ class CellularOrganism(OrganismalEntity, SubjectOfInvestigation): has_attribute: Optional[List[str]] = Field(None, description="""may often be an organism attribute""") - class Mammal(CellularOrganism, SubjectOfInvestigation): """ A member of the class Mammalia, a clade of endothermic amniotes distinguished from reptiles and birds by the possession of hair, three middle ear bones, mammary glands, and a neocortex @@ -2620,7 +2760,6 @@ class Mammal(CellularOrganism, SubjectOfInvestigation): has_attribute: Optional[List[str]] = Field(None, description="""may often be an organism attribute""") - class Human(Mammal, SubjectOfInvestigation): """ A member of the the species Homo sapiens. @@ -2644,7 +2783,6 @@ class Human(Mammal, SubjectOfInvestigation): has_attribute: Optional[List[str]] = Field(None, description="""may often be an organism attribute""") - class Plant(CellularOrganism): in_taxon: Optional[List[str]] = Field(None, description="""connects an entity to its taxonomic classification. Only certain kinds of entities can be taxonomically classified; see 'thing with taxon'""") @@ -2666,7 +2804,6 @@ class Plant(CellularOrganism): has_attribute: Optional[List[str]] = Field(None, description="""may often be an organism attribute""") - class Invertebrate(CellularOrganism): """ An animal lacking a vertebral column. This group consists of 98% of all animal species. @@ -2690,7 +2827,6 @@ class Invertebrate(CellularOrganism): has_attribute: Optional[List[str]] = Field(None, description="""may often be an organism attribute""") - class Vertebrate(CellularOrganism): """ A sub-phylum of animals consisting of those having a bony or cartilaginous vertebral column. @@ -2714,7 +2850,6 @@ class Vertebrate(CellularOrganism): has_attribute: Optional[List[str]] = Field(None, description="""may often be an organism attribute""") - class Fungus(CellularOrganism): """ A kingdom of eukaryotic, heterotrophic organisms that live as saprobes or parasites, including mushrooms, yeasts, smuts, molds, etc. They reproduce either sexually or asexually, and have life cycles that range from simple to complex. Filamentous fungi refer to those that grow as multicellular colonies (mushrooms and molds). @@ -2738,7 +2873,6 @@ class Fungus(CellularOrganism): has_attribute: Optional[List[str]] = Field(None, description="""may often be an organism attribute""") - class LifeStage(OrganismalEntity): """ A stage of development or growth of an organism, including post-natal adult stages @@ -2762,7 +2896,6 @@ class LifeStage(OrganismalEntity): has_attribute: Optional[List[str]] = Field(None, description="""may often be an organism attribute""") - class IndividualOrganism(OrganismalEntity, SubjectOfInvestigation): """ An instance of an organism. For example, Richard Nixon, Charles Darwin, my pet cat. Example ID: ORCID:0000-0002-5355-2576 @@ -2786,7 +2919,6 @@ class IndividualOrganism(OrganismalEntity, SubjectOfInvestigation): has_attribute: Optional[List[str]] = Field(None, description="""may often be an organism attribute""") - class PopulationOfIndividualOrganisms(OrganismalEntity, SubjectOfInvestigation): """ A collection of individuals from the same taxonomic class distinguished by one or more characteristics. Characteristics can include, but are not limited to, shared geographic location, genetics, phenotypes. @@ -2810,7 +2942,6 @@ class PopulationOfIndividualOrganisms(OrganismalEntity, SubjectOfInvestigation): has_attribute: Optional[List[str]] = Field(None, description="""may often be an organism attribute""") - class StudyPopulation(PopulationOfIndividualOrganisms): """ A group of people banded together or treated as a group as participants in a research study. @@ -2834,7 +2965,6 @@ class StudyPopulation(PopulationOfIndividualOrganisms): has_attribute: Optional[List[str]] = Field(None, description="""may often be an organism attribute""") - class DiseaseOrPhenotypicFeature(BiologicalEntity): """ Either one of a disease or an individual phenotypic feature. Some knowledge resources such as Monarch treat these as distinct, others such as MESH conflate. Please see definitions of phenotypic feature and disease in this model for their independent descriptions. This class is helpful to enforce domains and ranges that may involve either a disease or a phenotypic feature. @@ -2858,7 +2988,6 @@ class DiseaseOrPhenotypicFeature(BiologicalEntity): has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class Disease(DiseaseOrPhenotypicFeature): """ A disorder of structure or function, especially one that produces specific signs, phenotypes or symptoms or that affects a specific location and is not simply a direct result of physical injury. A disposition to undergo pathological processes that exists in an organism because of one or more disorders in that organism. @@ -2882,7 +3011,6 @@ class Disease(DiseaseOrPhenotypicFeature): has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class PhenotypicFeature(DiseaseOrPhenotypicFeature): """ A combination of entity and quality that makes up a phenotyping statement. An observable characteristic of an individual resulting from the interaction of its genotype with its molecular and physical environment. @@ -2906,7 +3034,6 @@ class PhenotypicFeature(DiseaseOrPhenotypicFeature): has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class BehavioralFeature(PhenotypicFeature): """ A phenotypic feature which is behavioral in nature. @@ -2930,7 +3057,6 @@ class BehavioralFeature(PhenotypicFeature): has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class AnatomicalEntity(OrganismalEntity, PhysicalEssence): """ A subcellular location, cell type or gross anatomical part @@ -2954,7 +3080,6 @@ class AnatomicalEntity(OrganismalEntity, PhysicalEssence): has_attribute: Optional[List[str]] = Field(None, description="""may often be an organism attribute""") - class CellularComponent(AnatomicalEntity): """ A location in or around a cell @@ -2978,7 +3103,6 @@ class CellularComponent(AnatomicalEntity): has_attribute: Optional[List[str]] = Field(None, description="""may often be an organism attribute""") - class Cell(AnatomicalEntity): in_taxon: Optional[List[str]] = Field(None, description="""connects an entity to its taxonomic classification. Only certain kinds of entities can be taxonomically classified; see 'thing with taxon'""") @@ -3000,7 +3124,6 @@ class Cell(AnatomicalEntity): has_attribute: Optional[List[str]] = Field(None, description="""may often be an organism attribute""") - class CellLine(OrganismalEntity, SubjectOfInvestigation): in_taxon: Optional[List[str]] = Field(None, description="""connects an entity to its taxonomic classification. Only certain kinds of entities can be taxonomically classified; see 'thing with taxon'""") @@ -3022,7 +3145,6 @@ class CellLine(OrganismalEntity, SubjectOfInvestigation): has_attribute: Optional[List[str]] = Field(None, description="""may often be an organism attribute""") - class GrossAnatomicalStructure(AnatomicalEntity): in_taxon: Optional[List[str]] = Field(None, description="""connects an entity to its taxonomic classification. Only certain kinds of entities can be taxonomically classified; see 'thing with taxon'""") @@ -3044,7 +3166,6 @@ class GrossAnatomicalStructure(AnatomicalEntity): has_attribute: Optional[List[str]] = Field(None, description="""may often be an organism attribute""") - class ChemicalEntityOrGeneOrGeneProduct(ConfiguredBaseModel): """ A union of chemical entities and children, and gene or gene product. This mixin is helpful to use when searching across chemical entities that must include genes and their children as chemical entities. @@ -3052,7 +3173,6 @@ class ChemicalEntityOrGeneOrGeneProduct(ConfiguredBaseModel): None - class RegulatoryRegion(ChemicalEntityOrGeneOrGeneProduct, GenomicEntity, BiologicalEntity, PhysicalEssence, OntologyClass): """ A region (or regions) of the genome that contains known or putative regulatory elements that act in cis- or trans- to affect the transcription of gene @@ -3077,7 +3197,6 @@ class RegulatoryRegion(ChemicalEntityOrGeneOrGeneProduct, GenomicEntity, Biologi has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class AccessibleDnaRegion(RegulatoryRegion, ChemicalEntityOrGeneOrGeneProduct, GenomicEntity, PhysicalEssence, OntologyClass): """ A region (or regions) of a chromatinized genome that has been measured to be more accessible to an enzyme such as DNase-I or Tn5 Transpose @@ -3102,7 +3221,6 @@ class AccessibleDnaRegion(RegulatoryRegion, ChemicalEntityOrGeneOrGeneProduct, G has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class TranscriptionFactorBindingSite(RegulatoryRegion, ChemicalEntityOrGeneOrGeneProduct, GenomicEntity, PhysicalEssence, OntologyClass): """ A region (or regions) of the genome that contains a region of DNA known or predicted to bind a protein that modulates gene transcription @@ -3127,7 +3245,6 @@ class TranscriptionFactorBindingSite(RegulatoryRegion, ChemicalEntityOrGeneOrGen has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class ChemicalEntityOrProteinOrPolypeptide(ConfiguredBaseModel): """ A union of chemical entities and children, and protein and polypeptide. This mixin is helpful to use when searching across chemical entities that must include genes and their children as chemical entities. @@ -3135,7 +3252,6 @@ class ChemicalEntityOrProteinOrPolypeptide(ConfiguredBaseModel): None - class ChemicalEntity(ChemicalEntityOrProteinOrPolypeptide, ChemicalEntityOrGeneOrGeneProduct, PhysicalEssence, NamedThing, ChemicalOrDrugOrTreatment): """ A chemical entity is a physical entity that pertains to chemistry or biochemistry. @@ -3162,7 +3278,6 @@ class ChemicalEntity(ChemicalEntityOrProteinOrPolypeptide, ChemicalEntityOrGeneO has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class MolecularEntity(ChemicalEntity): """ A molecular entity is a chemical entity composed of individual or covalently bonded atoms. @@ -3190,7 +3305,6 @@ class MolecularEntity(ChemicalEntity): has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class SmallMolecule(MolecularEntity): """ A small molecule entity is a molecular entity characterized by availability in small-molecule databases of SMILES, InChI, IUPAC, or other unambiguous representation of its precise chemical structure; for convenience of representation, any valid chemical representation is included, even if it is not strictly molecular (e.g., sodium ion). @@ -3218,7 +3332,6 @@ class SmallMolecule(MolecularEntity): has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class ChemicalMixture(ChemicalEntity): """ A chemical mixture is a chemical entity composed of two or more molecular entities. @@ -3249,7 +3362,6 @@ class ChemicalMixture(ChemicalEntity): has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class NucleicAcidEntity(MolecularEntity, GenomicEntity, ThingWithTaxon, PhysicalEssence, OntologyClass): """ A nucleic acid entity is a molecular entity characterized by availability in gene databases of nucleotide-based sequence representations of its precise sequence; for convenience of representation, partial sequences of various kinds are included. @@ -3280,7 +3392,6 @@ class NucleicAcidEntity(MolecularEntity, GenomicEntity, ThingWithTaxon, Physical has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class MolecularMixture(ChemicalMixture): """ A molecular mixture is a chemical mixture composed of two or more molecular entities with known concentration and stoichiometry. @@ -3311,7 +3422,6 @@ class MolecularMixture(ChemicalMixture): has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class ComplexMolecularMixture(ChemicalMixture): """ A complex molecular mixture is a chemical mixture composed of two or more molecular entities with unknown concentration and stoichiometry. @@ -3342,7 +3452,6 @@ class ComplexMolecularMixture(ChemicalMixture): has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class ProcessedMaterial(ChemicalMixture): """ A chemical entity (often a mixture) processed for consumption for nutritional, medical or technical use. Is a material entity that is created or changed during material processing. @@ -3373,7 +3482,6 @@ class ProcessedMaterial(ChemicalMixture): has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class Drug(MolecularMixture, ChemicalOrDrugOrTreatment, OntologyClass): """ A substance intended for use in the diagnosis, cure, mitigation, treatment, or prevention of disease @@ -3404,7 +3512,6 @@ class Drug(MolecularMixture, ChemicalOrDrugOrTreatment, OntologyClass): has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class EnvironmentalFoodContaminant(ChemicalEntity): trade_name: Optional[str] = Field(None) @@ -3429,7 +3536,6 @@ class EnvironmentalFoodContaminant(ChemicalEntity): has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class FoodAdditive(ChemicalEntity): trade_name: Optional[str] = Field(None) @@ -3454,7 +3560,6 @@ class FoodAdditive(ChemicalEntity): has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class Food(ChemicalMixture): """ A substance consumed by a living organism as a source of nutrition @@ -3485,7 +3590,6 @@ class Food(ChemicalMixture): has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class MacromolecularMachineMixin(ConfiguredBaseModel): """ A union of gene locus, gene product, and macromolecular complex. These are the basic units of function in a cell. They either carry out individual biological activities, or they encode molecules which do this. @@ -3493,7 +3597,6 @@ class MacromolecularMachineMixin(ConfiguredBaseModel): name: Optional[str] = Field(None, description="""genes are typically designated by a short symbol and a full name. We map the symbol to the default display name and use an additional slot for full name""") - class GeneOrGeneProduct(MacromolecularMachineMixin): """ A union of gene loci or gene products. Frequently an identifier for one will be used as proxy for another @@ -3501,7 +3604,6 @@ class GeneOrGeneProduct(MacromolecularMachineMixin): name: Optional[str] = Field(None, description="""genes are typically designated by a short symbol and a full name. We map the symbol to the default display name and use an additional slot for full name""") - class Gene(GeneOrGeneProduct, ChemicalEntityOrGeneOrGeneProduct, GenomicEntity, BiologicalEntity, PhysicalEssence, OntologyClass): """ A region (or regions) that includes all of the sequence elements necessary to encode a functional transcript. A gene locus may include regulatory regions, transcribed regions and/or other functional sequence regions. @@ -3527,7 +3629,6 @@ class Gene(GeneOrGeneProduct, ChemicalEntityOrGeneOrGeneProduct, GenomicEntity, has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class GeneAnnotation(Gene): """ An annotation describing the location, boundaries, and functions of individual genes within a genome annotation. @@ -3556,7 +3657,6 @@ class GeneAnnotation(Gene): has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class GeneProductMixin(GeneOrGeneProduct): """ The functional molecular product of a single gene locus. Gene products are either proteins or functional RNA molecules. @@ -3566,7 +3666,6 @@ class GeneProductMixin(GeneOrGeneProduct): name: Optional[str] = Field(None, description="""genes are typically designated by a short symbol and a full name. We map the symbol to the default display name and use an additional slot for full name""") - class GeneProductIsoformMixin(GeneProductMixin): """ This is an abstract class that can be mixed in with different kinds of gene products to indicate that the gene product is intended to represent a specific isoform rather than a canonical or reference or generic product. The designation of canonical or reference may be arbitrary, or it may represent the superclass of all isoforms. @@ -3576,7 +3675,6 @@ class GeneProductIsoformMixin(GeneProductMixin): name: Optional[str] = Field(None, description="""genes are typically designated by a short symbol and a full name. We map the symbol to the default display name and use an additional slot for full name""") - class MacromolecularComplex(MacromolecularMachineMixin, BiologicalEntity): """ A stable assembly of two or more macromolecules, i.e. proteins, nucleic acids, carbohydrates or lipids, in which at least one component is a protein and the constituent parts function together. @@ -3600,7 +3698,6 @@ class MacromolecularComplex(MacromolecularMachineMixin, BiologicalEntity): has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class NucleosomeModification(GeneProductIsoformMixin, EpigenomicEntity, GenomicEntity, BiologicalEntity): """ A chemical modification of a histone protein within a nucleosome octomer or a substitution of a histone with a variant histone isoform. e.g. Histone 4 Lysine 20 methylation (H4K20me), histone variant H2AZ substituting H2A. @@ -3625,7 +3722,6 @@ class NucleosomeModification(GeneProductIsoformMixin, EpigenomicEntity, GenomicE has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class Genome(GenomicEntity, BiologicalEntity, PhysicalEssence, OntologyClass): """ A genome is the sum of genetic material within a cell or virion. @@ -3650,7 +3746,6 @@ class Genome(GenomicEntity, BiologicalEntity, PhysicalEssence, OntologyClass): has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class GenomeAnnotation(Genome): """ Location and nomenclature of genes and all of the coding regions in a genome assembly and the classification of genes and transcripts into types. @@ -3680,7 +3775,6 @@ class GenomeAnnotation(Genome): has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class Exon(NucleicAcidEntity): """ A region of the transcript sequence within a gene which is not removed from the primary RNA transcript by RNA splicing. @@ -3711,7 +3805,6 @@ class Exon(NucleicAcidEntity): has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class Transcript(NucleicAcidEntity): """ An RNA synthesized on a DNA or RNA template by an RNA polymerase. @@ -3742,7 +3835,6 @@ class Transcript(NucleicAcidEntity): has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class CodingSequence(NucleicAcidEntity): has_biological_sequence: Optional[str] = Field(None, description="""connects a genomic feature to its sequence""") @@ -3771,7 +3863,6 @@ class CodingSequence(NucleicAcidEntity): has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class Polypeptide(ChemicalEntityOrProteinOrPolypeptide, ChemicalEntityOrGeneOrGeneProduct, BiologicalEntity): """ A polypeptide is a molecular entity characterized by availability in protein databases of amino-acid-based sequence representations of its precise primary structure; for convenience of representation, partial sequences of various kinds are included, even if they do not represent a physical molecule. @@ -3795,7 +3886,6 @@ class Polypeptide(ChemicalEntityOrProteinOrPolypeptide, ChemicalEntityOrGeneOrGe has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class Protein(Polypeptide, GeneProductMixin): """ A gene product that is composed of a chain of amino acid sequences and is produced by ribosome-mediated translation of mRNA @@ -3819,7 +3909,6 @@ class Protein(Polypeptide, GeneProductMixin): has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class ProteinIsoform(Protein, GeneProductIsoformMixin): """ Represents a protein that is a specific isoform of the canonical or reference protein. See https://www.ncbi.nlm.nih.gov/pmc/articles/PMC4114032/ @@ -3843,7 +3932,6 @@ class ProteinIsoform(Protein, GeneProductIsoformMixin): has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class PosttranslationalModification(GeneProductIsoformMixin, BiologicalEntity): """ A chemical modification of a polypeptide or protein that occurs after translation. e.g. polypeptide cleavage to form separate proteins, methylation or acetylation of histone tail amino acids, protein ubiquitination. @@ -3867,7 +3955,6 @@ class PosttranslationalModification(GeneProductIsoformMixin, BiologicalEntity): has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class NucleicAcidSequenceMotif(BiologicalEntity): """ A linear nucleotide sequence pattern that is widespread and has, or is conjectured to have, a biological significance. e.g. the TATA box promoter motif, transcription factor binding consensus sequences. @@ -3891,7 +3978,6 @@ class NucleicAcidSequenceMotif(BiologicalEntity): has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class RNAProduct(Transcript, GeneProductMixin): synonym: Optional[List[str]] = Field(default_factory=list, description="""Alternate human-readable names for a thing""") @@ -3920,7 +4006,6 @@ class RNAProduct(Transcript, GeneProductMixin): has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class RNAProductIsoform(RNAProduct, GeneProductIsoformMixin): """ Represents a protein that is a specific isoform of the canonical or reference RNA @@ -3951,7 +4036,6 @@ class RNAProductIsoform(RNAProduct, GeneProductIsoformMixin): has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class NoncodingRNAProduct(RNAProduct): synonym: Optional[List[str]] = Field(default_factory=list, description="""Alternate human-readable names for a thing""") @@ -3980,7 +4064,6 @@ class NoncodingRNAProduct(RNAProduct): has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class MicroRNA(NoncodingRNAProduct): synonym: Optional[List[str]] = Field(default_factory=list, description="""Alternate human-readable names for a thing""") @@ -4009,7 +4092,6 @@ class MicroRNA(NoncodingRNAProduct): has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class SiRNA(NoncodingRNAProduct): """ A small RNA molecule that is the product of a longer exogenous or endogenous dsRNA, which is either a bimolecular duplex or very long hairpin, processed (via the Dicer pathway) such that numerous siRNAs accumulate from both strands of the dsRNA. SRNAs trigger the cleavage of their target molecules. @@ -4040,7 +4122,6 @@ class SiRNA(NoncodingRNAProduct): has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class GeneGroupingMixin(ConfiguredBaseModel): """ any grouping of multiple genes or gene products @@ -4048,7 +4129,6 @@ class GeneGroupingMixin(ConfiguredBaseModel): has_gene_or_gene_product: Optional[List[str]] = Field(None, description="""connects an entity with one or more gene or gene products""") - class ProteinDomain(GeneGroupingMixin, ChemicalEntityOrGeneOrGeneProduct, BiologicalEntity): """ A conserved part of protein sequence and (tertiary) structure that can evolve, function, and exist independently of the rest of the protein chain. Protein domains maintain their structure and function independently of the proteins in which they are found. e.g. an SH3 domain. @@ -4073,7 +4153,6 @@ class ProteinDomain(GeneGroupingMixin, ChemicalEntityOrGeneOrGeneProduct, Biolog has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class ProteinFamily(GeneGroupingMixin, ChemicalEntityOrGeneOrGeneProduct, BiologicalEntity): has_gene_or_gene_product: Optional[List[str]] = Field(None, description="""connects an entity with one or more gene or gene products""") @@ -4096,7 +4175,6 @@ class ProteinFamily(GeneGroupingMixin, ChemicalEntityOrGeneOrGeneProduct, Biolog has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class GeneFamily(GeneGroupingMixin, ChemicalEntityOrGeneOrGeneProduct, BiologicalEntity): """ any grouping of multiple genes or gene products related by common descent @@ -4121,7 +4199,6 @@ class GeneFamily(GeneGroupingMixin, ChemicalEntityOrGeneOrGeneProduct, Biologica has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class Zygosity(Attribute): name: Optional[str] = Field(None, description="""The human-readable 'attribute name' can be set to a string which reflects its context of interpretation, e.g. SEPIO evidence/provenance/confidence annotation or it can default to the name associated with the 'has attribute type' slot ontology term.""") @@ -4144,7 +4221,6 @@ class Zygosity(Attribute): has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class Genotype(GenomicEntity, BiologicalEntity, PhysicalEssence, OntologyClass): """ An information content entity that describes a genome by specifying the total variation in genomic sequence and/or gene expression, relative to some established background @@ -4170,7 +4246,6 @@ class Genotype(GenomicEntity, BiologicalEntity, PhysicalEssence, OntologyClass): has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class Haplotype(GenomicEntity, BiologicalEntity, PhysicalEssence, OntologyClass): """ A set of zero or more Alleles on a single instance of a Sequence[VMC] @@ -4195,7 +4270,6 @@ class Haplotype(GenomicEntity, BiologicalEntity, PhysicalEssence, OntologyClass) has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class SequenceVariant(GenomicEntity, BiologicalEntity, PhysicalEssence, OntologyClass): """ A sequence_variant is a non exact copy of a sequence_feature or genome exhibiting one or more sequence_alteration. @@ -4221,7 +4295,6 @@ class SequenceVariant(GenomicEntity, BiologicalEntity, PhysicalEssence, Ontology has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class Snv(SequenceVariant): """ SNVs are single nucleotide positions in genomic DNA at which different sequence alternatives exist @@ -4247,7 +4320,6 @@ class Snv(SequenceVariant): has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class ReagentTargetedGene(GenomicEntity, BiologicalEntity, PhysicalEssence, OntologyClass): """ A gene altered in its expression level in the context of some experiment as a result of being targeted by gene-knockdown reagent(s) such as a morpholino or RNAi. @@ -4272,7 +4344,6 @@ class ReagentTargetedGene(GenomicEntity, BiologicalEntity, PhysicalEssence, Onto has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class ClinicalAttribute(Attribute): """ Attributes relating to a clinical manifestation @@ -4297,7 +4368,6 @@ class ClinicalAttribute(Attribute): has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class ClinicalMeasurement(ClinicalAttribute): """ A clinical measurement is a special kind of attribute which results from a laboratory observation from a subject individual or sample. Measurements can be connected to their subject by the 'has attribute' slot. @@ -4322,7 +4392,6 @@ class ClinicalMeasurement(ClinicalAttribute): has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class ClinicalModifier(ClinicalAttribute): """ Used to characterize and specify the phenotypic abnormalities defined in the phenotypic abnormality sub-ontology, with respect to severity, laterality, and other aspects @@ -4347,7 +4416,6 @@ class ClinicalModifier(ClinicalAttribute): has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class ClinicalCourse(ClinicalAttribute): """ The course a disease typically takes from its onset, progression in time, and eventual resolution or death of the affected individual @@ -4372,7 +4440,6 @@ class ClinicalCourse(ClinicalAttribute): has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class Onset(ClinicalCourse): """ The age group in which (disease) symptom manifestations appear @@ -4397,7 +4464,6 @@ class Onset(ClinicalCourse): has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class ClinicalEntity(NamedThing): """ Any entity or process that exists in the clinical domain and outside the biological realm. Diseases are placed under biological entities @@ -4419,7 +4485,6 @@ class ClinicalEntity(NamedThing): has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class ClinicalTrial(ClinicalEntity): provided_by: Optional[List[str]] = Field(None, description="""The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.""") @@ -4439,7 +4504,6 @@ class ClinicalTrial(ClinicalEntity): has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class ClinicalIntervention(ClinicalEntity): provided_by: Optional[List[str]] = Field(None, description="""The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.""") @@ -4459,7 +4523,6 @@ class ClinicalIntervention(ClinicalEntity): has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class ClinicalFinding(PhenotypicFeature): """ this category is currently considered broad enough to tag clinical lab measurements and other biological attributes taken as 'clinical traits' with some statistical score, for example, a p value in genetic associations. @@ -4483,7 +4546,6 @@ class ClinicalFinding(PhenotypicFeature): has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class Hospitalization(ClinicalIntervention): provided_by: Optional[List[str]] = Field(None, description="""The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.""") @@ -4503,7 +4565,6 @@ class Hospitalization(ClinicalIntervention): has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class SocioeconomicAttribute(Attribute): """ Attributes relating to a socioeconomic manifestation @@ -4528,7 +4589,6 @@ class SocioeconomicAttribute(Attribute): has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class Case(IndividualOrganism, SubjectOfInvestigation): """ An individual (human) organism that has a patient role in some clinical context. @@ -4552,7 +4612,6 @@ class Case(IndividualOrganism, SubjectOfInvestigation): has_attribute: Optional[List[str]] = Field(None, description="""may often be an organism attribute""") - class Cohort(StudyPopulation, SubjectOfInvestigation): """ A group of people banded together or treated as a group who share common characteristics. A cohort 'study' is a particular form of longitudinal study that samples a cohort, performing a cross-section at intervals through time. @@ -4576,7 +4635,6 @@ class Cohort(StudyPopulation, SubjectOfInvestigation): has_attribute: Optional[List[str]] = Field(None, description="""may often be an organism attribute""") - class ExposureEvent(OntologyClass): """ A (possibly time bounded) incidence of a feature of the environment of an organism that influences one or more phenotypic features of that organism, potentially mediated by genes @@ -4585,7 +4643,6 @@ class ExposureEvent(OntologyClass): id: str = Field(..., description="""A unique identifier for an entity. Must be either a CURIE shorthand for a URI or a complete URI""") - class GenomicBackgroundExposure(ExposureEvent, GeneGroupingMixin, GenomicEntity, ThingWithTaxon, PhysicalEssence, Attribute, OntologyClass): """ A genomic background exposure is where an individual's specific genomic background of genes, sequence variants or other pre-existing genomic conditions constitute a kind of 'exposure' to the organism, leading to or influencing an outcome. @@ -4615,7 +4672,6 @@ class GenomicBackgroundExposure(ExposureEvent, GeneGroupingMixin, GenomicEntity, has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class PathologicalEntityMixin(ConfiguredBaseModel): """ A pathological (abnormal) structure or process. @@ -4623,7 +4679,6 @@ class PathologicalEntityMixin(ConfiguredBaseModel): None - class PathologicalProcess(PathologicalEntityMixin, BiologicalProcess): """ A biologic function or a process having an abnormal or deleterious effect at the subcellular, cellular, multicellular, or organismal level. @@ -4650,7 +4705,6 @@ class PathologicalProcess(PathologicalEntityMixin, BiologicalProcess): has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class PathologicalProcessExposure(ExposureEvent, Attribute): """ A pathological process, when viewed as an exposure, representing a precondition, leading to or influencing an outcome, e.g. autoimmunity leading to disease. @@ -4676,7 +4730,6 @@ class PathologicalProcessExposure(ExposureEvent, Attribute): has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class PathologicalAnatomicalStructure(PathologicalEntityMixin, AnatomicalEntity): """ An anatomical structure with the potential of have an abnormal or deleterious effect at the subcellular, cellular, multicellular, or organismal level. @@ -4700,7 +4753,6 @@ class PathologicalAnatomicalStructure(PathologicalEntityMixin, AnatomicalEntity) has_attribute: Optional[List[str]] = Field(None, description="""may often be an organism attribute""") - class PathologicalAnatomicalExposure(ExposureEvent, Attribute): """ An abnormal anatomical structure, when viewed as an exposure, representing an precondition, leading to or influencing an outcome, e.g. thrombosis leading to an ischemic disease outcome. @@ -4726,7 +4778,6 @@ class PathologicalAnatomicalExposure(ExposureEvent, Attribute): has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class DiseaseOrPhenotypicFeatureExposure(PathologicalEntityMixin, ExposureEvent, Attribute): """ A disease or phenotypic feature state, when viewed as an exposure, represents an precondition, leading to or influencing an outcome, e.g. HIV predisposing an individual to infections; a relative deficiency of skin pigmentation predisposing an individual to skin cancer. @@ -4752,7 +4803,6 @@ class DiseaseOrPhenotypicFeatureExposure(PathologicalEntityMixin, ExposureEvent, has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class ChemicalExposure(ExposureEvent, Attribute): """ A chemical exposure is an intake of a particular chemical entity. @@ -4778,7 +4828,6 @@ class ChemicalExposure(ExposureEvent, Attribute): has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class ComplexChemicalExposure(Attribute): """ A complex chemical exposure is an intake of a chemical mixture (e.g. gasoline), other than a drug. @@ -4803,7 +4852,6 @@ class ComplexChemicalExposure(Attribute): has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class DrugExposure(ChemicalExposure, ExposureEvent): """ A drug exposure is an intake of a particular drug. @@ -4829,7 +4877,6 @@ class DrugExposure(ChemicalExposure, ExposureEvent): has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class DrugToGeneInteractionExposure(DrugExposure, GeneGroupingMixin): """ drug to gene interaction exposure is a drug exposure is where the interactions of the drug with specific genes are known to constitute an 'exposure' to the organism, leading to or influencing an outcome. @@ -4856,7 +4903,6 @@ class DrugToGeneInteractionExposure(DrugExposure, GeneGroupingMixin): has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class Treatment(ExposureEvent, NamedThing, ChemicalOrDrugOrTreatment): """ A treatment is targeted at a disease or phenotype and may involve multiple drug 'exposures', medical devices and/or procedures @@ -4882,7 +4928,6 @@ class Treatment(ExposureEvent, NamedThing, ChemicalOrDrugOrTreatment): has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class BioticExposure(ExposureEvent, Attribute): """ An external biotic exposure is an intake of (sometimes pathological) biological organisms (including viruses). @@ -4908,7 +4953,6 @@ class BioticExposure(ExposureEvent, Attribute): has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class EnvironmentalExposure(ExposureEvent, Attribute): """ A environmental exposure is a factor relating to abiotic processes in the environment including sunlight (UV-B), atmospheric (heat, cold, general pollution) and water-born contaminants. @@ -4934,7 +4978,6 @@ class EnvironmentalExposure(ExposureEvent, Attribute): has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class GeographicExposure(EnvironmentalExposure, ExposureEvent): """ A geographic exposure is a factor relating to geographic proximity to some impactful entity. @@ -4960,7 +5003,6 @@ class GeographicExposure(EnvironmentalExposure, ExposureEvent): has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class BehavioralExposure(ExposureEvent, Attribute): """ A behavioral exposure is a factor relating to behavior impacting an individual. @@ -4986,7 +5028,6 @@ class BehavioralExposure(ExposureEvent, Attribute): has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class SocioeconomicExposure(ExposureEvent, Attribute): """ A socioeconomic exposure is a factor relating to social and financial status of an affected individual (e.g. poverty). @@ -5012,7 +5053,6 @@ class SocioeconomicExposure(ExposureEvent, Attribute): has_attribute: List[str] = Field(..., description="""connects any entity to an attribute""") - class Outcome(ConfiguredBaseModel): """ An entity that has the role of being the consequence of an exposure event. This is an abstract mixin grouping of various categories of possible biological or non-biological (e.g. clinical) outcomes. @@ -5020,7 +5060,6 @@ class Outcome(ConfiguredBaseModel): None - class PathologicalProcessOutcome(Outcome): """ An outcome resulting from an exposure event which is the manifestation of a pathological process. @@ -5028,7 +5067,6 @@ class PathologicalProcessOutcome(Outcome): None - class PathologicalAnatomicalOutcome(Outcome): """ An outcome resulting from an exposure event which is the manifestation of an abnormal anatomical structure. @@ -5036,7 +5074,6 @@ class PathologicalAnatomicalOutcome(Outcome): None - class DiseaseOrPhenotypicFeatureOutcome(Outcome): """ Physiological outcomes resulting from an exposure event which is the manifestation of a disease or other characteristic phenotype. @@ -5044,7 +5081,6 @@ class DiseaseOrPhenotypicFeatureOutcome(Outcome): None - class BehavioralOutcome(Outcome): """ An outcome resulting from an exposure event which is the manifestation of human behavior. @@ -5052,7 +5088,6 @@ class BehavioralOutcome(Outcome): None - class HospitalizationOutcome(Outcome): """ An outcome resulting from an exposure event which is the increased manifestation of acute (e.g. emergency room visit) or chronic (inpatient) hospitalization. @@ -5060,7 +5095,6 @@ class HospitalizationOutcome(Outcome): None - class MortalityOutcome(Outcome): """ An outcome of death from resulting from an exposure event. @@ -5068,7 +5102,6 @@ class MortalityOutcome(Outcome): None - class EpidemiologicalOutcome(Outcome): """ An epidemiological outcome, such as societal disease burden, resulting from an exposure event. @@ -5076,7 +5109,6 @@ class EpidemiologicalOutcome(Outcome): None - class SocioeconomicOutcome(Outcome): """ An general social or economic outcome, such as healthcare costs, utilization, etc., resulting from an exposure event @@ -5084,7 +5116,6 @@ class SocioeconomicOutcome(Outcome): None - class Association(Entity): """ A typed association between two entities, supported by evidence @@ -5127,7 +5158,6 @@ class Association(Entity): has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class ChemicalEntityAssessesNamedThingAssociation(Association): subject: str = Field(..., description="""connects an association to the subject of the association. For example, in a gene-to-phenotype association, the gene is subject and phenotype is object.""") @@ -5168,7 +5198,6 @@ class ChemicalEntityAssessesNamedThingAssociation(Association): has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class ContributorAssociation(Association): """ Any association between an entity (such as a publication) and various agents that contribute to its realisation @@ -5211,7 +5240,6 @@ class ContributorAssociation(Association): has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class GenotypeToGenotypePartAssociation(Association): """ Any association between one genotype and a genotypic entity that is a sub-component of it @@ -5254,7 +5282,6 @@ class GenotypeToGenotypePartAssociation(Association): has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class GenotypeToGeneAssociation(Association): """ Any association between a genotype and a gene. The genotype have have multiple variants in that gene or a single one. There is no assumption of cardinality @@ -5297,7 +5324,6 @@ class GenotypeToGeneAssociation(Association): has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class GenotypeToVariantAssociation(Association): """ Any association between a genotype and a sequence variant. @@ -5340,7 +5366,6 @@ class GenotypeToVariantAssociation(Association): has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class GeneToGeneAssociation(Association): """ abstract parent class for different kinds of gene-gene or gene product to gene product relationships. Includes homology and interaction. @@ -5383,7 +5408,6 @@ class GeneToGeneAssociation(Association): has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class GeneToGeneHomologyAssociation(GeneToGeneAssociation): """ A homology association between two genes. May be orthology (in which case the species of subject and object should differ) or paralogy (in which case the species may be the same) @@ -5426,7 +5450,6 @@ class GeneToGeneHomologyAssociation(GeneToGeneAssociation): has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class GeneToGeneFamilyAssociation(Association): """ Set membership of a gene in a family of genes related by common evolutionary ancestry usually inferred by sequence comparisons. The genes in a given family generally share common sequence motifs which generally map onto shared gene product structure-function relationships. @@ -5469,7 +5492,6 @@ class GeneToGeneFamilyAssociation(Association): has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class GeneExpressionMixin(ConfiguredBaseModel): """ Observed gene expression intensity, context (site, stage) and associated phenotypic status within which the expression occurs. @@ -5480,7 +5502,6 @@ class GeneExpressionMixin(ConfiguredBaseModel): phenotypic_state: Optional[str] = Field(None, description="""in experiments (e.g. gene expression) assaying diseased or unhealthy tissue, the phenotypic state can be put here, e.g. MONDO ID. For healthy tissues, use XXX.""") - class GeneToGeneCoexpressionAssociation(GeneExpressionMixin, GeneToGeneAssociation): """ Indicates that two genes are co-expressed, generally under the same conditions. @@ -5527,7 +5548,6 @@ class GeneToGeneCoexpressionAssociation(GeneExpressionMixin, GeneToGeneAssociati has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class PairwiseGeneToGeneInteraction(GeneToGeneAssociation): """ An interaction between two genes or two gene products. May be physical (e.g. protein binding) or genetic (between genes). May be symmetric (e.g. protein interaction) or directed (e.g. phosphorylation) @@ -5570,7 +5590,6 @@ class PairwiseGeneToGeneInteraction(GeneToGeneAssociation): has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class PairwiseMolecularInteraction(PairwiseGeneToGeneInteraction): """ An interaction at the molecular level between two physical entities @@ -5614,7 +5633,6 @@ class PairwiseMolecularInteraction(PairwiseGeneToGeneInteraction): has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class CellLineToEntityAssociationMixin(ConfiguredBaseModel): """ An relationship between a cell line and another entity @@ -5622,7 +5640,6 @@ class CellLineToEntityAssociationMixin(ConfiguredBaseModel): None - class ChemicalEntityToEntityAssociationMixin(ConfiguredBaseModel): """ An interaction between a chemical entity and another entity @@ -5630,7 +5647,6 @@ class ChemicalEntityToEntityAssociationMixin(ConfiguredBaseModel): None - class DrugToEntityAssociationMixin(ChemicalEntityToEntityAssociationMixin): """ An interaction between a drug and another entity @@ -5638,7 +5654,6 @@ class DrugToEntityAssociationMixin(ChemicalEntityToEntityAssociationMixin): None - class ChemicalToEntityAssociationMixin(ChemicalEntityToEntityAssociationMixin): """ An interaction between a chemical entity and another entity @@ -5646,7 +5661,6 @@ class ChemicalToEntityAssociationMixin(ChemicalEntityToEntityAssociationMixin): None - class CaseToEntityAssociationMixin(ConfiguredBaseModel): """ An abstract association for use where the case is the subject @@ -5654,7 +5668,6 @@ class CaseToEntityAssociationMixin(ConfiguredBaseModel): None - class ChemicalToChemicalAssociation(ChemicalToEntityAssociationMixin, Association): """ A relationship between two chemical entities. This can encompass actual interactions as well as temporal causal edges, e.g. one chemical converted to another. @@ -5697,7 +5710,6 @@ class ChemicalToChemicalAssociation(ChemicalToEntityAssociationMixin, Associatio has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class ReactionToParticipantAssociation(ChemicalToChemicalAssociation): stoichiometry: Optional[int] = Field(None, description="""the relationship between the relative quantities of substances taking part in a reaction or forming a compound, typically a ratio of whole integers.""") @@ -5741,7 +5753,6 @@ class ReactionToParticipantAssociation(ChemicalToChemicalAssociation): has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class ReactionToCatalystAssociation(ReactionToParticipantAssociation): stoichiometry: Optional[int] = Field(None, description="""the relationship between the relative quantities of substances taking part in a reaction or forming a compound, typically a ratio of whole integers.""") @@ -5785,7 +5796,6 @@ class ReactionToCatalystAssociation(ReactionToParticipantAssociation): has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class ChemicalToChemicalDerivationAssociation(ChemicalToChemicalAssociation): """ A causal relationship between two chemical entities, where the subject represents the upstream entity and the object represents the downstream. For any such association there is an implicit reaction: @@ -5836,7 +5846,6 @@ class ChemicalToChemicalDerivationAssociation(ChemicalToChemicalAssociation): has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class MolecularActivityToPathwayAssociation(Association): """ Association that holds the relationship between a reaction and the pathway it participates in. @@ -5879,7 +5888,6 @@ class MolecularActivityToPathwayAssociation(Association): has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class ChemicalToPathwayAssociation(ChemicalToEntityAssociationMixin, Association): """ An interaction between a chemical entity and a biological process or pathway. @@ -5922,7 +5930,6 @@ class ChemicalToPathwayAssociation(ChemicalToEntityAssociationMixin, Association has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class NamedThingAssociatedWithLikelihoodOfNamedThingAssociation(Association): subject: str = Field(..., description="""connects an association to the subject of the association. For example, in a gene-to-phenotype association, the gene is subject and phenotype is object.""") @@ -5963,7 +5970,6 @@ class NamedThingAssociatedWithLikelihoodOfNamedThingAssociation(Association): has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class ChemicalGeneInteractionAssociation(ChemicalToEntityAssociationMixin, Association): """ describes a physical interaction between a chemical entity and a gene or gene product. Any biological or chemical effect resulting from such an interaction are out of scope, and covered by the ChemicalAffectsGeneAssociation type (e.g. impact of a chemical on the abundance, activity, structure, etc, of either participant in the interaction) @@ -6014,7 +6020,6 @@ class ChemicalGeneInteractionAssociation(ChemicalToEntityAssociationMixin, Assoc has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class ChemicalAffectsGeneAssociation(Association): """ Describes an effect that a chemical has on a gene or gene product (e.g. an impact of on its abundance, activity, localization, processing, expression, etc.) @@ -6070,7 +6075,6 @@ class ChemicalAffectsGeneAssociation(Association): has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class DrugToGeneAssociation(DrugToEntityAssociationMixin, Association): """ An interaction between a drug and a gene or gene product. @@ -6113,7 +6117,6 @@ class DrugToGeneAssociation(DrugToEntityAssociationMixin, Association): has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class MaterialSampleToEntityAssociationMixin(ConfiguredBaseModel): """ An association between a material sample and something. @@ -6121,7 +6124,6 @@ class MaterialSampleToEntityAssociationMixin(ConfiguredBaseModel): None - class MaterialSampleDerivationAssociation(Association): """ An association between a material sample and the material entity from which it is derived. @@ -6164,13 +6166,11 @@ class MaterialSampleDerivationAssociation(Association): has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class DiseaseToEntityAssociationMixin(ConfiguredBaseModel): None - class EntityToExposureEventAssociationMixin(ConfiguredBaseModel): """ An association between some entity and an exposure event. @@ -6178,7 +6178,6 @@ class EntityToExposureEventAssociationMixin(ConfiguredBaseModel): None - class DiseaseToExposureEventAssociation(EntityToExposureEventAssociationMixin, DiseaseToEntityAssociationMixin, Association): """ An association between an exposure event and a disease. @@ -6221,7 +6220,6 @@ class DiseaseToExposureEventAssociation(EntityToExposureEventAssociationMixin, D has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class EntityToOutcomeAssociationMixin(ConfiguredBaseModel): """ An association between some entity and an outcome @@ -6229,7 +6227,6 @@ class EntityToOutcomeAssociationMixin(ConfiguredBaseModel): None - class ExposureEventToOutcomeAssociation(EntityToOutcomeAssociationMixin, Association): """ An association between an exposure event and an outcome. @@ -6274,7 +6271,6 @@ class ExposureEventToOutcomeAssociation(EntityToOutcomeAssociationMixin, Associa has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class FrequencyQualifierMixin(ConfiguredBaseModel): """ Qualifier for frequency type associations @@ -6282,7 +6278,6 @@ class FrequencyQualifierMixin(ConfiguredBaseModel): frequency_qualifier: Optional[str] = Field(None, description="""a qualifier used in a phenotypic association to state how frequent the phenotype is observed in the subject""") - class EntityToFeatureOrDiseaseQualifiersMixin(FrequencyQualifierMixin): """ Qualifiers for entity to disease or phenotype associations. @@ -6292,7 +6287,6 @@ class EntityToFeatureOrDiseaseQualifiersMixin(FrequencyQualifierMixin): frequency_qualifier: Optional[str] = Field(None, description="""a qualifier used in a phenotypic association to state how frequent the phenotype is observed in the subject""") - class EntityToPhenotypicFeatureAssociationMixin(EntityToFeatureOrDiseaseQualifiersMixin, FrequencyQuantifier): sex_qualifier: Optional[str] = Field(None, description="""a qualifier used in a phenotypic association to state whether the association is specific to a particular sex.""") @@ -6305,7 +6299,6 @@ class EntityToPhenotypicFeatureAssociationMixin(EntityToFeatureOrDiseaseQualifie frequency_qualifier: Optional[str] = Field(None, description="""a qualifier used in a phenotypic association to state how frequent the phenotype is observed in the subject""") - class InformationContentEntityToNamedThingAssociation(Association): """ association between a named thing and a information content entity where the specific context of the relationship between that named thing and the publication is unknown. For example, model organisms databases often capture the knowledge that a gene is found in a journal article, but not specifically the context in which that gene was documented in the article. In these cases, this association with the accompanying predicate 'mentions' could be used. Conversely, for more specific associations (like 'gene to disease association', the publication should be captured as an edge property). @@ -6348,7 +6341,6 @@ class InformationContentEntityToNamedThingAssociation(Association): has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class EntityToDiseaseAssociationMixin(EntityToFeatureOrDiseaseQualifiersMixin): """ mixin class for any association whose object (target node) is a disease @@ -6358,13 +6350,11 @@ class EntityToDiseaseAssociationMixin(EntityToFeatureOrDiseaseQualifiersMixin): frequency_qualifier: Optional[str] = Field(None, description="""a qualifier used in a phenotypic association to state how frequent the phenotype is observed in the subject""") - class DiseaseOrPhenotypicFeatureToEntityAssociationMixin(ConfiguredBaseModel): None - class DiseaseOrPhenotypicFeatureToLocationAssociation(DiseaseOrPhenotypicFeatureToEntityAssociationMixin, Association): """ An association between either a disease or a phenotypic feature and an anatomical entity, where the disease/feature manifests in that site. @@ -6407,7 +6397,6 @@ class DiseaseOrPhenotypicFeatureToLocationAssociation(DiseaseOrPhenotypicFeature has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class DiseaseOrPhenotypicFeatureToGeneticInheritanceAssociation(DiseaseOrPhenotypicFeatureToEntityAssociationMixin, Association): """ An association between either a disease or a phenotypic feature and its mode of (genetic) inheritance. @@ -6450,13 +6439,11 @@ class DiseaseOrPhenotypicFeatureToGeneticInheritanceAssociation(DiseaseOrPhenoty has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class EntityToDiseaseOrPhenotypicFeatureAssociationMixin(ConfiguredBaseModel): None - class CellLineToDiseaseOrPhenotypicFeatureAssociation(EntityToDiseaseOrPhenotypicFeatureAssociationMixin, CellLineToEntityAssociationMixin, Association): """ An relationship between a cell line and a disease or a phenotype, where the cell line is derived from an individual with that disease or phenotype. @@ -6499,7 +6486,6 @@ class CellLineToDiseaseOrPhenotypicFeatureAssociation(EntityToDiseaseOrPhenotypi has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class ChemicalToDiseaseOrPhenotypicFeatureAssociation(EntityToDiseaseOrPhenotypicFeatureAssociationMixin, ChemicalToEntityAssociationMixin, Association): """ An interaction between a chemical entity and a phenotype or disease, where the presence of the chemical gives rise to or exacerbates the phenotype. @@ -6542,7 +6528,6 @@ class ChemicalToDiseaseOrPhenotypicFeatureAssociation(EntityToDiseaseOrPhenotypi has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class ChemicalOrDrugOrTreatmentToDiseaseOrPhenotypicFeatureAssociation(EntityToDiseaseOrPhenotypicFeatureAssociationMixin, ChemicalToEntityAssociationMixin, Association): """ This association defines a relationship between a chemical or treatment (or procedure) and a disease or phenotypic feature where the disesae or phenotypic feature is a secondary undesirable effect. @@ -6586,7 +6571,6 @@ class ChemicalOrDrugOrTreatmentToDiseaseOrPhenotypicFeatureAssociation(EntityToD has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class ChemicalOrDrugOrTreatmentSideEffectDiseaseOrPhenotypicFeatureAssociation(ChemicalOrDrugOrTreatmentToDiseaseOrPhenotypicFeatureAssociation, EntityToDiseaseOrPhenotypicFeatureAssociationMixin, ChemicalToEntityAssociationMixin): """ This association defines a relationship between a chemical or treatment (or procedure) and a disease or phenotypic feature where the disesae or phenotypic feature is a secondary, typically (but not always) undesirable effect. @@ -6630,7 +6614,6 @@ class ChemicalOrDrugOrTreatmentSideEffectDiseaseOrPhenotypicFeatureAssociation(C has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class MaterialSampleToDiseaseOrPhenotypicFeatureAssociation(EntityToDiseaseOrPhenotypicFeatureAssociationMixin, MaterialSampleToEntityAssociationMixin, Association): """ An association between a material sample and a disease or phenotype. @@ -6673,13 +6656,11 @@ class MaterialSampleToDiseaseOrPhenotypicFeatureAssociation(EntityToDiseaseOrPhe has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class GenotypeToEntityAssociationMixin(ConfiguredBaseModel): None - class GenotypeToPhenotypicFeatureAssociation(GenotypeToEntityAssociationMixin, EntityToPhenotypicFeatureAssociationMixin, Association): """ Any association between one genotype and a phenotypic feature, where having the genotype confers the phenotype, either in isolation or through environment @@ -6730,7 +6711,6 @@ class GenotypeToPhenotypicFeatureAssociation(GenotypeToEntityAssociationMixin, E frequency_qualifier: Optional[str] = Field(None, description="""a qualifier used in a phenotypic association to state how frequent the phenotype is observed in the subject""") - class ExposureEventToPhenotypicFeatureAssociation(EntityToPhenotypicFeatureAssociationMixin, Association): """ Any association between an environment and a phenotypic feature, where being in the environment influences the phenotype. @@ -6781,7 +6761,6 @@ class ExposureEventToPhenotypicFeatureAssociation(EntityToPhenotypicFeatureAssoc frequency_qualifier: Optional[str] = Field(None, description="""a qualifier used in a phenotypic association to state how frequent the phenotype is observed in the subject""") - class DiseaseToPhenotypicFeatureAssociation(EntityToPhenotypicFeatureAssociationMixin, DiseaseToEntityAssociationMixin, Association): """ An association between a disease and a phenotypic feature in which the phenotypic feature is associated with the disease in some way. @@ -6832,7 +6811,6 @@ class DiseaseToPhenotypicFeatureAssociation(EntityToPhenotypicFeatureAssociation frequency_qualifier: Optional[str] = Field(None, description="""a qualifier used in a phenotypic association to state how frequent the phenotype is observed in the subject""") - class CaseToPhenotypicFeatureAssociation(EntityToPhenotypicFeatureAssociationMixin, CaseToEntityAssociationMixin, Association): """ An association between a case (e.g. individual patient) and a phenotypic feature in which the individual has or has had the phenotype. @@ -6883,7 +6861,6 @@ class CaseToPhenotypicFeatureAssociation(EntityToPhenotypicFeatureAssociationMix frequency_qualifier: Optional[str] = Field(None, description="""a qualifier used in a phenotypic association to state how frequent the phenotype is observed in the subject""") - class BehaviorToBehavioralFeatureAssociation(EntityToPhenotypicFeatureAssociationMixin, Association): """ An association between an mixture behavior and a behavioral feature manifested by the individual exhibited or has exhibited the behavior. @@ -6934,13 +6911,11 @@ class BehaviorToBehavioralFeatureAssociation(EntityToPhenotypicFeatureAssociatio frequency_qualifier: Optional[str] = Field(None, description="""a qualifier used in a phenotypic association to state how frequent the phenotype is observed in the subject""") - class GeneToEntityAssociationMixin(ConfiguredBaseModel): None - class GeneToPathwayAssociation(GeneToEntityAssociationMixin, Association): """ An interaction between a gene or gene product and a biological process or pathway. @@ -6983,13 +6958,11 @@ class GeneToPathwayAssociation(GeneToEntityAssociationMixin, Association): has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class VariantToEntityAssociationMixin(ConfiguredBaseModel): None - class GeneToDiseaseOrPhenotypicFeatureAssociation(GeneToEntityAssociationMixin, EntityToPhenotypicFeatureAssociationMixin, Association): subject_aspect_qualifier: Optional[GeneOrGeneProductOrChemicalEntityAspectEnum] = Field(None) @@ -7040,7 +7013,6 @@ class GeneToDiseaseOrPhenotypicFeatureAssociation(GeneToEntityAssociationMixin, frequency_qualifier: Optional[str] = Field(None, description="""a qualifier used in a phenotypic association to state how frequent the phenotype is observed in the subject""") - class GeneToPhenotypicFeatureAssociation(GeneToDiseaseOrPhenotypicFeatureAssociation, GeneToEntityAssociationMixin, EntityToPhenotypicFeatureAssociationMixin): sex_qualifier: Optional[str] = Field(None, description="""a qualifier used in a phenotypic association to state whether the association is specific to a particular sex.""") @@ -7091,7 +7063,6 @@ class GeneToPhenotypicFeatureAssociation(GeneToDiseaseOrPhenotypicFeatureAssocia frequency_qualifier: Optional[str] = Field(None, description="""a qualifier used in a phenotypic association to state how frequent the phenotype is observed in the subject""") - class GeneToDiseaseAssociation(GeneToDiseaseOrPhenotypicFeatureAssociation, GeneToEntityAssociationMixin, EntityToDiseaseAssociationMixin): subject_aspect_qualifier: Optional[GeneOrGeneProductOrChemicalEntityAspectEnum] = Field(None) @@ -7142,7 +7113,6 @@ class GeneToDiseaseAssociation(GeneToDiseaseOrPhenotypicFeatureAssociation, Gene frequency_qualifier: Optional[str] = Field(None, description="""a qualifier used in a phenotypic association to state how frequent the phenotype is observed in the subject""") - class CausalGeneToDiseaseAssociation(GeneToDiseaseAssociation, GeneToEntityAssociationMixin, EntityToDiseaseAssociationMixin): subject_aspect_qualifier: Optional[GeneOrGeneProductOrChemicalEntityAspectEnum] = Field(None) @@ -7193,7 +7163,6 @@ class CausalGeneToDiseaseAssociation(GeneToDiseaseAssociation, GeneToEntityAssoc frequency_qualifier: Optional[str] = Field(None, description="""a qualifier used in a phenotypic association to state how frequent the phenotype is observed in the subject""") - class CorrelatedGeneToDiseaseAssociation(GeneToDiseaseAssociation, GeneToEntityAssociationMixin, EntityToDiseaseAssociationMixin): subject_aspect_qualifier: Optional[GeneOrGeneProductOrChemicalEntityAspectEnum] = Field(None) @@ -7244,7 +7213,6 @@ class CorrelatedGeneToDiseaseAssociation(GeneToDiseaseAssociation, GeneToEntityA frequency_qualifier: Optional[str] = Field(None, description="""a qualifier used in a phenotypic association to state how frequent the phenotype is observed in the subject""") - class DruggableGeneToDiseaseAssociation(GeneToDiseaseAssociation, GeneToEntityAssociationMixin, EntityToDiseaseAssociationMixin): subject_aspect_qualifier: Optional[GeneOrGeneProductOrChemicalEntityAspectEnum] = Field(None) @@ -7295,7 +7263,6 @@ class DruggableGeneToDiseaseAssociation(GeneToDiseaseAssociation, GeneToEntityAs frequency_qualifier: Optional[str] = Field(None, description="""a qualifier used in a phenotypic association to state how frequent the phenotype is observed in the subject""") - class VariantToGeneAssociation(VariantToEntityAssociationMixin, Association): """ An association between a variant and a gene, where the variant has a genetic association with the gene (i.e. is in linkage disequilibrium) @@ -7338,7 +7305,6 @@ class VariantToGeneAssociation(VariantToEntityAssociationMixin, Association): has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class VariantToGeneExpressionAssociation(VariantToGeneAssociation, GeneExpressionMixin): """ An association between a variant and expression of a gene (i.e. e-QTL) @@ -7385,7 +7351,6 @@ class VariantToGeneExpressionAssociation(VariantToGeneAssociation, GeneExpressio has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class VariantToPopulationAssociation(VariantToEntityAssociationMixin, FrequencyQualifierMixin, Association, FrequencyQuantifier): """ An association between a variant and a population, where the variant has particular frequency in the population @@ -7433,7 +7398,6 @@ class VariantToPopulationAssociation(VariantToEntityAssociationMixin, FrequencyQ has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class PopulationToPopulationAssociation(Association): """ An association between a two populations @@ -7476,7 +7440,6 @@ class PopulationToPopulationAssociation(Association): has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class VariantToPhenotypicFeatureAssociation(VariantToEntityAssociationMixin, EntityToPhenotypicFeatureAssociationMixin, Association): sex_qualifier: Optional[str] = Field(None, description="""a qualifier used in a phenotypic association to state whether the association is specific to a particular sex.""") @@ -7525,7 +7488,6 @@ class VariantToPhenotypicFeatureAssociation(VariantToEntityAssociationMixin, Ent frequency_qualifier: Optional[str] = Field(None, description="""a qualifier used in a phenotypic association to state how frequent the phenotype is observed in the subject""") - class VariantToDiseaseAssociation(VariantToEntityAssociationMixin, EntityToDiseaseAssociationMixin, Association): subject: str = Field(..., description="""a sequence variant in which the allele state is associated in some way with the disease state""") @@ -7569,7 +7531,6 @@ class VariantToDiseaseAssociation(VariantToEntityAssociationMixin, EntityToDisea frequency_qualifier: Optional[str] = Field(None, description="""a qualifier used in a phenotypic association to state how frequent the phenotype is observed in the subject""") - class GenotypeToDiseaseAssociation(GenotypeToEntityAssociationMixin, EntityToDiseaseAssociationMixin, Association): subject: str = Field(..., description="""a genotype that is associated in some way with a disease state""") @@ -7613,7 +7574,6 @@ class GenotypeToDiseaseAssociation(GenotypeToEntityAssociationMixin, EntityToDis frequency_qualifier: Optional[str] = Field(None, description="""a qualifier used in a phenotypic association to state how frequent the phenotype is observed in the subject""") - class ModelToDiseaseAssociationMixin(ConfiguredBaseModel): """ This mixin is used for any association class for which the subject (source node) plays the role of a 'model', in that it recapitulates some features of the disease in a way that is useful for studying the disease outside a patient carrying the disease @@ -7621,7 +7581,6 @@ class ModelToDiseaseAssociationMixin(ConfiguredBaseModel): None - class GeneAsAModelOfDiseaseAssociation(ModelToDiseaseAssociationMixin, GeneToDiseaseAssociation, EntityToDiseaseAssociationMixin): subject_aspect_qualifier: Optional[GeneOrGeneProductOrChemicalEntityAspectEnum] = Field(None) @@ -7672,7 +7631,6 @@ class GeneAsAModelOfDiseaseAssociation(ModelToDiseaseAssociationMixin, GeneToDis frequency_qualifier: Optional[str] = Field(None, description="""a qualifier used in a phenotypic association to state how frequent the phenotype is observed in the subject""") - class VariantAsAModelOfDiseaseAssociation(ModelToDiseaseAssociationMixin, VariantToDiseaseAssociation, EntityToDiseaseAssociationMixin): subject: str = Field(..., description="""A variant that has a role in modeling the disease.""") @@ -7716,7 +7674,6 @@ class VariantAsAModelOfDiseaseAssociation(ModelToDiseaseAssociationMixin, Varian frequency_qualifier: Optional[str] = Field(None, description="""a qualifier used in a phenotypic association to state how frequent the phenotype is observed in the subject""") - class GenotypeAsAModelOfDiseaseAssociation(ModelToDiseaseAssociationMixin, GenotypeToDiseaseAssociation, EntityToDiseaseAssociationMixin): subject: str = Field(..., description="""A genotype that has a role in modeling the disease.""") @@ -7760,7 +7717,6 @@ class GenotypeAsAModelOfDiseaseAssociation(ModelToDiseaseAssociationMixin, Genot frequency_qualifier: Optional[str] = Field(None, description="""a qualifier used in a phenotypic association to state how frequent the phenotype is observed in the subject""") - class CellLineAsAModelOfDiseaseAssociation(ModelToDiseaseAssociationMixin, CellLineToDiseaseOrPhenotypicFeatureAssociation, EntityToDiseaseAssociationMixin): subject: str = Field(..., description="""A cell line derived from an organismal entity with a disease state that is used as a model of that disease.""") @@ -7804,7 +7760,6 @@ class CellLineAsAModelOfDiseaseAssociation(ModelToDiseaseAssociationMixin, CellL frequency_qualifier: Optional[str] = Field(None, description="""a qualifier used in a phenotypic association to state how frequent the phenotype is observed in the subject""") - class OrganismalEntityAsAModelOfDiseaseAssociation(ModelToDiseaseAssociationMixin, EntityToDiseaseAssociationMixin, Association): subject: str = Field(..., description="""A organismal entity (strain, breed) with a predisposition to a disease, or bred/created specifically to model a disease.""") @@ -7848,7 +7803,6 @@ class OrganismalEntityAsAModelOfDiseaseAssociation(ModelToDiseaseAssociationMixi frequency_qualifier: Optional[str] = Field(None, description="""a qualifier used in a phenotypic association to state how frequent the phenotype is observed in the subject""") - class OrganismToOrganismAssociation(Association): subject: str = Field(..., description="""connects an association to the subject of the association. For example, in a gene-to-phenotype association, the gene is subject and phenotype is object.""") @@ -7889,7 +7843,6 @@ class OrganismToOrganismAssociation(Association): has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class TaxonToTaxonAssociation(Association): subject: str = Field(..., description="""connects an association to the subject of the association. For example, in a gene-to-phenotype association, the gene is subject and phenotype is object.""") @@ -7930,7 +7883,6 @@ class TaxonToTaxonAssociation(Association): has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class GeneHasVariantThatContributesToDiseaseAssociation(GeneToDiseaseAssociation): subject_form_or_variant_qualifier: Optional[str] = Field(None) @@ -7982,7 +7934,6 @@ class GeneHasVariantThatContributesToDiseaseAssociation(GeneToDiseaseAssociation frequency_qualifier: Optional[str] = Field(None, description="""a qualifier used in a phenotypic association to state how frequent the phenotype is observed in the subject""") - class GeneToExpressionSiteAssociation(Association): """ An association between a gene and a gene expression site, possibly qualified by stage/timing info. @@ -8027,7 +7978,6 @@ class GeneToExpressionSiteAssociation(Association): has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class SequenceVariantModulatesTreatmentAssociation(Association): """ An association between a sequence variant and a treatment or health intervention. The treatment object itself encompasses both the disease and the drug used. @@ -8070,7 +8020,6 @@ class SequenceVariantModulatesTreatmentAssociation(Association): has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class FunctionalAssociation(Association): """ An association between a macromolecular machine mixin (gene, gene product or complex of gene products) and either a molecular activity, a biological process or a cellular location in which a function is executed. @@ -8113,7 +8062,6 @@ class FunctionalAssociation(Association): has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class MacromolecularMachineToEntityAssociationMixin(ConfiguredBaseModel): """ an association which has a macromolecular machine mixin as a subject @@ -8121,7 +8069,6 @@ class MacromolecularMachineToEntityAssociationMixin(ConfiguredBaseModel): None - class MacromolecularMachineToMolecularActivityAssociation(MacromolecularMachineToEntityAssociationMixin, FunctionalAssociation): """ A functional association between a macromolecular machine (gene, gene product or complex) and a molecular activity (as represented in the GO molecular function branch), where the entity carries out the activity, or contributes to its execution. @@ -8164,7 +8111,6 @@ class MacromolecularMachineToMolecularActivityAssociation(MacromolecularMachineT has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class MacromolecularMachineToBiologicalProcessAssociation(MacromolecularMachineToEntityAssociationMixin, FunctionalAssociation): """ A functional association between a macromolecular machine (gene, gene product or complex) and a biological process or pathway (as represented in the GO biological process branch), where the entity carries out some part of the process, regulates it, or acts upstream of it. @@ -8207,7 +8153,6 @@ class MacromolecularMachineToBiologicalProcessAssociation(MacromolecularMachineT has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class MacromolecularMachineToCellularComponentAssociation(MacromolecularMachineToEntityAssociationMixin, FunctionalAssociation): """ A functional association between a macromolecular machine (gene, gene product or complex) and a cellular component (as represented in the GO cellular component branch), where the entity carries out its function in the cellular component. @@ -8250,7 +8195,6 @@ class MacromolecularMachineToCellularComponentAssociation(MacromolecularMachineT has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class MolecularActivityToChemicalEntityAssociation(Association): """ Added in response to capturing relationship between microbiome activities as measured via measurements of blood analytes as collected via blood and stool samples @@ -8293,7 +8237,6 @@ class MolecularActivityToChemicalEntityAssociation(Association): has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class MolecularActivityToMolecularActivityAssociation(Association): """ Added in response to capturing relationship between microbiome activities as measured via measurements of blood analytes as collected via blood and stool samples @@ -8336,7 +8279,6 @@ class MolecularActivityToMolecularActivityAssociation(Association): has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class GeneToGoTermAssociation(FunctionalAssociation): subject: str = Field(..., description="""gene, product or macromolecular complex that has the function associated with the GO term""") @@ -8377,7 +8319,6 @@ class GeneToGoTermAssociation(FunctionalAssociation): has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class EntityToDiseaseAssociation(Association): FDA_approval_status: Optional[FDAApprovalStatusEnum] = Field(None) @@ -8419,7 +8360,6 @@ class EntityToDiseaseAssociation(Association): has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class EntityToPhenotypicFeatureAssociation(Association): FDA_approval_status: Optional[FDAApprovalStatusEnum] = Field(None) @@ -8461,7 +8401,6 @@ class EntityToPhenotypicFeatureAssociation(Association): has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class SequenceAssociation(Association): """ An association between a sequence feature and a nucleic acid entity it is localized to. @@ -8504,7 +8443,6 @@ class SequenceAssociation(Association): has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class GenomicSequenceLocalization(SequenceAssociation): """ A relationship between a sequence feature and a nucleic acid entity it is localized to. The reference entity may be a chromosome, chromosome region or information entity such as a contig. @@ -8552,7 +8490,6 @@ class GenomicSequenceLocalization(SequenceAssociation): has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class SequenceFeatureRelationship(Association): """ For example, a particular exon is part of a particular transcript or gene @@ -8595,7 +8532,6 @@ class SequenceFeatureRelationship(Association): has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class TranscriptToGeneRelationship(SequenceFeatureRelationship): """ A gene is a collection of transcripts @@ -8638,7 +8574,6 @@ class TranscriptToGeneRelationship(SequenceFeatureRelationship): has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class GeneToGeneProductRelationship(SequenceFeatureRelationship): """ A gene is transcribed and potentially translated to a gene product @@ -8681,7 +8616,6 @@ class GeneToGeneProductRelationship(SequenceFeatureRelationship): has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class ExonToTranscriptRelationship(SequenceFeatureRelationship): """ A transcript is formed from multiple exons @@ -8724,7 +8658,6 @@ class ExonToTranscriptRelationship(SequenceFeatureRelationship): has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class ChemicalEntityOrGeneOrGeneProductRegulatesGeneAssociation(Association): """ A regulatory relationship between two genes @@ -8768,7 +8701,6 @@ class ChemicalEntityOrGeneOrGeneProductRegulatesGeneAssociation(Association): has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class AnatomicalEntityToAnatomicalEntityAssociation(Association): subject: str = Field(..., description="""connects an association to the subject of the association. For example, in a gene-to-phenotype association, the gene is subject and phenotype is object.""") @@ -8809,7 +8741,6 @@ class AnatomicalEntityToAnatomicalEntityAssociation(Association): has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class AnatomicalEntityToAnatomicalEntityPartOfAssociation(AnatomicalEntityToAnatomicalEntityAssociation): """ A relationship between two anatomical entities where the relationship is mereological, i.e the two entities are related by parthood. This includes relationships between cellular components and cells, between cells and tissues, tissues and whole organisms @@ -8852,7 +8783,6 @@ class AnatomicalEntityToAnatomicalEntityPartOfAssociation(AnatomicalEntityToAnat has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class AnatomicalEntityToAnatomicalEntityOntogenicAssociation(AnatomicalEntityToAnatomicalEntityAssociation): """ A relationship between two anatomical entities where the relationship is ontogenic, i.e. the two entities are related by development. A number of different relationship types can be used to specify the precise nature of the relationship. @@ -8895,7 +8825,6 @@ class AnatomicalEntityToAnatomicalEntityOntogenicAssociation(AnatomicalEntityToA has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class OrganismTaxonToEntityAssociation(ConfiguredBaseModel): """ An association between an organism taxon and another entity @@ -8903,7 +8832,6 @@ class OrganismTaxonToEntityAssociation(ConfiguredBaseModel): None - class OrganismTaxonToOrganismTaxonAssociation(OrganismTaxonToEntityAssociation, Association): """ A relationship between two organism taxon nodes @@ -8946,7 +8874,6 @@ class OrganismTaxonToOrganismTaxonAssociation(OrganismTaxonToEntityAssociation, has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class OrganismTaxonToOrganismTaxonSpecialization(OrganismTaxonToOrganismTaxonAssociation): """ A child-parent relationship between two taxa. For example: Homo sapiens subclass_of Homo @@ -8989,7 +8916,6 @@ class OrganismTaxonToOrganismTaxonSpecialization(OrganismTaxonToOrganismTaxonAss has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class OrganismTaxonToOrganismTaxonInteraction(OrganismTaxonToOrganismTaxonAssociation): """ An interaction relationship between two taxa. This may be a symbiotic relationship (encompassing mutualism and parasitism), or it may be non-symbiotic. Example: plague transmitted_by flea; cattle domesticated_by Homo sapiens; plague infects Homo sapiens @@ -9033,7 +8959,6 @@ class OrganismTaxonToOrganismTaxonInteraction(OrganismTaxonToOrganismTaxonAssoci has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") - class OrganismTaxonToEnvironmentAssociation(OrganismTaxonToEntityAssociation, Association): subject: str = Field(..., description="""the taxon that is the subject of the association""") @@ -9075,32 +9000,11 @@ class OrganismTaxonToEnvironmentAssociation(OrganismTaxonToEntityAssociation, As - # Update forward refs # see https://pydantic-docs.helpmanual.io/usage/postponed_annotations/ AnnotationCollection.update_forward_refs() -Process.update_forward_refs() -BrainExtraction.update_forward_refs() -BrainSegmentSectioning.update_forward_refs() -TissueDissecting.update_forward_refs() -CellDissociation.update_forward_refs() -CellEnrichment.update_forward_refs() -CellBarcoding.update_forward_refs() -CdnaAmplification.update_forward_refs() -LibraryConstruction.update_forward_refs() -LibraryAliquoting.update_forward_refs() -LibraryPooling.update_forward_refs() -ProcessOutput.update_forward_refs() -BrainSegment.update_forward_refs() -BrainSection.update_forward_refs() -TissueSample.update_forward_refs() -DissociatedCellSample.update_forward_refs() -EnrichedCellSample.update_forward_refs() -BarcodedCellSample.update_forward_refs() -AmplifiedCdna.update_forward_refs() -Library.update_forward_refs() -LibraryAliquot.update_forward_refs() -LibraryPool.update_forward_refs() +ProvActivity.update_forward_refs() +ProvEntity.update_forward_refs() MappingCollection.update_forward_refs() PredicateMapping.update_forward_refs() OntologyClass.update_forward_refs() @@ -9114,6 +9018,16 @@ class OrganismTaxonToEnvironmentAssociation(OrganismTaxonToEntityAssociation, As ChemicalOrDrugOrTreatment.update_forward_refs() Entity.update_forward_refs() Checksum.update_forward_refs() +BrainSegment.update_forward_refs() +BrainSection.update_forward_refs() +TissueSample.update_forward_refs() +DissociatedCellSample.update_forward_refs() +EnrichedCellSample.update_forward_refs() +BarcodedCellSample.update_forward_refs() +AmplifiedCdna.update_forward_refs() +Library.update_forward_refs() +LibraryAliquot.update_forward_refs() +LibraryPool.update_forward_refs() NamedThing.update_forward_refs() Attribute.update_forward_refs() ChemicalRole.update_forward_refs() @@ -9160,6 +9074,16 @@ class OrganismTaxonToEnvironmentAssociation(OrganismTaxonToEntityAssociation, As Occurrent.update_forward_refs() ActivityAndBehavior.update_forward_refs() Activity.update_forward_refs() +BrainExtraction.update_forward_refs() +BrainSegmentSectioning.update_forward_refs() +TissueDissecting.update_forward_refs() +CellDissociation.update_forward_refs() +CellEnrichment.update_forward_refs() +CellBarcoding.update_forward_refs() +CdnaAmplification.update_forward_refs() +LibraryConstruction.update_forward_refs() +LibraryAliquoting.update_forward_refs() +LibraryPooling.update_forward_refs() Study.update_forward_refs() Procedure.update_forward_refs() Phenomenon.update_forward_refs() From eeeb8970e5277523e02c321c6a717844b7a98ee9 Mon Sep 17 00:00:00 2001 From: Puja Trivedi Date: Thu, 7 Sep 2023 14:25:28 -0700 Subject: [PATCH 16/17] Made edits to model based off feeback. Simplified slots and changed donor from entity to agent --- linkml-schema/kbmodel.yaml | 164 +++++++++++++++++++++---------------- 1 file changed, 95 insertions(+), 69 deletions(-) diff --git a/linkml-schema/kbmodel.yaml b/linkml-schema/kbmodel.yaml index 9075f2ea..a9d9ab7d 100644 --- a/linkml-schema/kbmodel.yaml +++ b/linkml-schema/kbmodel.yaml @@ -81,11 +81,15 @@ classes: range: genome assembly prov activity: + mixin: true description: >- - Based off prov:Activity; an activity is something that occurs over a period of time and acts upon or with entities; it may include consuming, processing, transforming, modifying, relocating, using, or generating entities. + Based off prov:Activity; an activity is something that occurs over a period of time and acts upon or with entities; + it may include consuming, processing, transforming, modifying, relocating, using, or generating entities. slots: - used - generated + - wasAssociatedWith + brain extraction: description: >- @@ -209,37 +213,40 @@ classes: prov entity: + mixin: true description: >- - Based off prov:Entity; an entity is a physical, digital, conceptual, or other kind of thing with some fixed aspects; entities may be real or imaginary. + Based off prov:Entity; an entity is a physical, digital, conceptual, or other kind of thing with some fixed aspects; + entities may be real or imaginary. slots: - wasDerivedFrom - wasGeneratedBy + - wasAttributedTo # 028 - donors.ipynb + # age_at_death -> death age, date_of_birth -> birth date, date_of_death -> death date, full_genotype -> full genotype, + # entity_type -> type/category, label -> name, ncbitaxonomyid -> in_taxon, sex -> sex donor: - is_a: entity + is_a: agent mixins: - thing with taxon - - prov entity description: >- A person or organism that is the source of a biological sample. slots: - sex - - date of birth - - date of death - - age at death + - birth date + - death date + - death age - full genotype - # 027 - brain_extraction.ipynb + # mappings (notebook -> model): anatomical_division -> anatomical division, barcode -> id, + # (created_by_process_id & created_by_process_type) -> wasGeneratedBy, entity_type -> type/category, label -> name brain segment: is_a: entity mixins: - prov entity - slots: - - barcode attributes: anatomical division: slot_usage: @@ -249,18 +256,16 @@ classes: range: donor - # 026 - brain_segment_sectioning.ipynb + # mappings (notebook -> model): barcode -> id, (created_by_process_id & created_by_process_type) -> wasGeneratedBy, + # entity_type -> type/category, label -> name, ordinal -> ordinal brain section: is_a: entity mixins: - prov entity - slots: - - barcode attributes: ordinal: - description: >- - The ordinal number of the section. + description: The ordinal number of the section. range: integer slot_usage: wasGeneratedBy: @@ -270,15 +275,16 @@ classes: # 025b - tissue_dissectioning.ipynb + # mappings (notebook -> model): (created_by_process_id & created_by_process_type) -> wasGeneratedBy, entity_type -> type/category, + # label -> name, roi_plan -> roi plan, roi_label -> roi label tissue sample: is_a: entity mixins: - prov entity attributes: roi plan: - region of interest label: - description: >- - The label of the region of interest. + roi label: + description: The label of the region of interest. slot_usage: wasGeneratedBy: range: tissue dissecting @@ -287,6 +293,8 @@ classes: # 024 - cell_dissociation.ipynb + # mappings (notebook -> model): cell_prep_type -> cell prep type, (created_by_process_id & created_by_process_type) -> wasGeneratedBy, + # entity_type -> type/category, facs_population_plan -> facs population plan, label -> name, number_of_cells_collected -> num cells collected dissociated cell sample: is_a: entity mixins: @@ -294,7 +302,7 @@ classes: attributes: cell prep type: facs population plan: - number of cells collected: + num cells collected: range: integer slot_usage: wasGeneratedBy: @@ -303,7 +311,6 @@ classes: range: tissue sample - #TODO: Add addtional attributes and slots to this class. enriched cell sample: is_a: entity mixins: @@ -316,6 +323,8 @@ classes: # 023 - cell_barcoding.ipynb + # mappings (notebook -> model): (created_by_process_id & created_by_process_type) -> wasGeneratedBy, entity_type -> type/category, + # label -> name, port_well -> port well, sample_quality_count -> sample quality count barcoded cell sample: is_a: entity mixins: @@ -331,17 +340,17 @@ classes: # 022 - cnda_amplification.ipynb + # amplified_quantity_ng -> input quantity, (created_by_process_id & created_by_process_type) -> wasGeneratedBy, entity_type -> type/category, + # label -> name, method -> method, pcr_cycles -> pcr cycles, percent_cdna_longer_than_400bp -> percent cdna longer than 400bp, rna_amplification_pass_fail -> process pass amplified cdna: is_a: entity mixins: - prov entity slots: - method + - input quantity + - process pass attributes: - amplified quantity: - description: >- - Amount of cDNA amplified (ng). - range: float pcr cycles: description: >- Number of PCR cycles used to amplify the cDNA. @@ -350,17 +359,22 @@ classes: description: >- The percentage of cDNA fragments that are longer than 400bp. range: float - rna amplification pass: - range: boolean slot_usage: + input quantity: + description: The amount of input cDNA (ng) amplified. + process pass: + description: Indicates whether the rna amplification process passed or failed. wasGeneratedBy: range: cdna amplification wasDerivedFrom: range: barcoded cell sample - # 021 - library_constructions.ipynb + # avg_size_bp -> avg size bp, (created_by_process_id & created_by_process_type) -> wasGeneratedBy, entity_type -> type/category, label -> name, + # library_creation_date -> creation date, library_input_ng -> input quantity, method -> method, process_pass -> process pass, + # quantification_fmole -> quantification fmol, quantification_ng -> quantification ng, quantification_nm -> quantification nm, + # r1_index -> r1 index, r1_sequence -> r1 sequence, r2_index -> r2 index, r2_sequence -> r2 sequence library: is_a: entity mixins: @@ -368,15 +382,10 @@ classes: slots: - method - creation date + - input quantity + - process pass + - avg size bp attributes: - avg size: - description: The average size (bp) of the library fragments. bp stands for base pairs. - range: integer - input amount: - description: The amount of input material (ng) used to create the library. - range: float - library prep pass: - range: boolean quantification fmol: range: float quantification ng: @@ -391,42 +400,53 @@ classes: creation date: description: The date and time the object was created. range: datetime + input quantity: + description: The amount of input material (ng) used to create the library. + process pass: + description: Indicates whether the library prep process passed or failed. + avg size bp: + description: The average size (bp) of the library fragments. wasGeneratedBy: range: library construction wasDerivedFrom: range: amplified cdna - + # 020 - aliquoting_and_pooling.ipynb + # mappings (notebook -> model): label -> name, input_quantity_fmol -> input quantity, library_label -> xref, + # (created_by_process_id & created_by_process_type) -> wasGeneratedBy, entity_type -> type/category, library aliquot: is_a: entity mixins: - prov entity - attributes: - input quantity: - description: The amount of input material (fmol) used to create the library aliquot. - range: integer + slots: + - input quantity slot_usage: wasGeneratedBy: range: library aliquoting wasDerivedFrom: range: library + input quantity: + description: The amount of input material (fmol) used to create the library aliquot. + range: integer # 020 - aliquoting_and_pooling.ipynb + # mappings (notebook -> model): label -> name, tube_avg_size_bp -> avg size bp, tube_contents_nm -> tube contents nm, tube_internal_label -> xref, + # (created_by_process_id & created_by_process_type) -> wasGeneratedBy, entity_type -> type/category, library pool: is_a: entity mixins: - prov entity + slots: + - avg size bp attributes: - tube avg size: - description: The average size (bp) of the library fragments in the tube. - range: integer tube contents: description: The content concentration (nm). range: float - tube internal label: slot_usage: + avg size bp: + description: The average size (bp) of the library fragments in the tube. wasGeneratedBy: range: library pooling wasDerivedFrom: @@ -461,6 +481,20 @@ slots: range: entity multivalued: true inlined_as_list: true + + wasAssociatedWith: + slot_uri: prov:wasAssociatedWith + domain: activity + range: agent + multivalued: true + inlined_as_list: true + + wasAttributedTo: + slot_uri: prov:wasAttributedTo + domain: entity + range: agent + multivalued: true + inlined_as_list: true referenced in: range: genome annotation @@ -495,47 +529,40 @@ slots: strain: description: The genetic variant or subtype of a species or organism. - label: - description: The name of the object. - slot_uri: schema:name - sex: range: SexType - date of birth: + birth date: description: The date of birth of the donor. range: date - date of death: + death date: description: The date of death of the donor. range: date - age at death: - description: The age of the donor at the time of death. + death age: + description: The age of the donor at the time of death (ISO 8601 format). range: string full genotype: description: The full genotype of the donor. range: string - barcode: - description: The unique identifier of the object. - slot_uri: schema:identifier - method: description: slot_uri: schema:name - - process id: - description: The id of the process. - range: string - - - # SLOTS IMPORTED FROM BIOLINK # - # creation date: - # version: - - + + input quantity: + description: The amount of input material used for an activity. + range: float + + process pass: + description: Indicates whether the process passed or failed. + range: boolean + + avg size bp: + description: The average size (bp = base pairs) of an entity. + range: integer enums: @@ -563,5 +590,4 @@ enums: mouse: meaning: ncbi:10090 human: - meaning: ncbi:9606 - + meaning: ncbi:9606 \ No newline at end of file From 6a81f5fabe8d601acaa8202374861d642594461e Mon Sep 17 00:00:00 2001 From: GitHub Action Date: Thu, 7 Sep 2023 21:27:41 +0000 Subject: [PATCH 17/17] generate another formats --- erdiagram-autogen/kbmodel.md | 80 ++++-- json-schema-autogen/kbmodel.json | 261 ++++++++++++------ jsonld-context-autogen/kbmodel.context.jsonld | 52 ++-- models_py-autogen/kbmodel.py | 71 +++-- 4 files changed, 306 insertions(+), 158 deletions(-) diff --git a/erdiagram-autogen/kbmodel.md b/erdiagram-autogen/kbmodel.md index 2e9df27d..a1da6f22 100644 --- a/erdiagram-autogen/kbmodel.md +++ b/erdiagram-autogen/kbmodel.md @@ -1,9 +1,22 @@ ```mermaid erDiagram LibraryPool { - integer tube_avg_size + integer avg_size_bp float tube_contents - string tube_internal_label + string id + iri_type iri + category_typeList category + stringList type + label_type name + narrative_text description +} +Agent { + uriorcurieList affiliation + string address + stringList provided_by + uriorcurieList xref + label_type full_name + label_typeList synonym string id iri_type iri category_typeList category @@ -47,9 +60,9 @@ LibraryAliquoting { Library { string method datetime creation_date - integer avg_size - float input_amount - boolean library_prep_pass + float input_quantity + boolean process_pass + integer avg_size_bp float quantification_fmol float quantification_ng float quantification_nm @@ -78,10 +91,10 @@ LibraryConstruction { } AmplifiedCdna { string method - float amplified_quantity + float input_quantity + boolean process_pass integer pcr_cycles float percent_cdna_longer_than_400bp - boolean rna_amplification_pass string id iri_type iri category_typeList category @@ -146,7 +159,7 @@ CellEnrichment { DissociatedCellSample { string cell_prep_type string facs_population_plan - integer number_of_cells_collected + integer num_cells_collected string id iri_type iri category_typeList category @@ -168,7 +181,7 @@ CellDissociation { } TissueSample { string roi_plan - string region_of_interest_label + string roi_label string id iri_type iri category_typeList category @@ -189,7 +202,6 @@ TissueDissecting { narrative_text description } BrainSection { - string barcode integer ordinal string id iri_type iri @@ -211,7 +223,6 @@ BrainSegmentSectioning { narrative_text description } BrainSegment { - string barcode string anatomical_division string id iri_type iri @@ -234,17 +245,26 @@ BrainExtraction { } Donor { SexType sex - date date_of_birth - date date_of_death - string age_at_death + date birth_date + date death_date + string death_age string full_genotype label_type in_taxon_label + uriorcurieList affiliation + string address + stringList provided_by + uriorcurieList xref + label_type full_name + label_typeList synonym string id iri_type iri category_typeList category stringList type label_type name narrative_text description +} +ProvEntity { + } Activity { stringList provided_by @@ -265,9 +285,6 @@ Entity { stringList type label_type name narrative_text description -} -ProvEntity { - } ProvActivity { @@ -338,74 +355,95 @@ Checksum { LibraryPool ||--}o LibraryAliquot : "wasDerivedFrom" LibraryPool ||--}o LibraryPooling : "wasGeneratedBy" +LibraryPool ||--}o Agent : "wasAttributedTo" LibraryPool ||--}o Attribute : "has attribute" +Agent ||--}o Attribute : "has attribute" LibraryPooling ||--}o LibraryAliquot : "used" LibraryPooling ||--}o LibraryPool : "generated" +LibraryPooling ||--}o Agent : "wasAssociatedWith" LibraryPooling ||--}o Attribute : "has attribute" LibraryAliquot ||--}o Library : "wasDerivedFrom" LibraryAliquot ||--}o LibraryAliquoting : "wasGeneratedBy" +LibraryAliquot ||--}o Agent : "wasAttributedTo" LibraryAliquot ||--}o Attribute : "has attribute" LibraryAliquoting ||--}o Library : "used" LibraryAliquoting ||--}o LibraryAliquot : "generated" +LibraryAliquoting ||--}o Agent : "wasAssociatedWith" LibraryAliquoting ||--}o Attribute : "has attribute" Library ||--}o AmplifiedCdna : "wasDerivedFrom" Library ||--}o LibraryConstruction : "wasGeneratedBy" +Library ||--}o Agent : "wasAttributedTo" Library ||--}o Attribute : "has attribute" LibraryConstruction ||--}o AmplifiedCdna : "used" LibraryConstruction ||--}o Library : "generated" +LibraryConstruction ||--}o Agent : "wasAssociatedWith" LibraryConstruction ||--}o Attribute : "has attribute" AmplifiedCdna ||--}o BarcodedCellSample : "wasDerivedFrom" AmplifiedCdna ||--}o CdnaAmplification : "wasGeneratedBy" +AmplifiedCdna ||--}o Agent : "wasAttributedTo" AmplifiedCdna ||--}o Attribute : "has attribute" CdnaAmplification ||--}o BarcodedCellSample : "used" CdnaAmplification ||--}o AmplifiedCdna : "generated" +CdnaAmplification ||--}o Agent : "wasAssociatedWith" CdnaAmplification ||--}o Attribute : "has attribute" BarcodedCellSample ||--}o EnrichedCellSample : "wasDerivedFrom" BarcodedCellSample ||--}o CellBarcoding : "wasGeneratedBy" +BarcodedCellSample ||--}o Agent : "wasAttributedTo" BarcodedCellSample ||--}o Attribute : "has attribute" CellBarcoding ||--}o EnrichedCellSample : "used" CellBarcoding ||--}o BarcodedCellSample : "generated" +CellBarcoding ||--}o Agent : "wasAssociatedWith" CellBarcoding ||--}o Attribute : "has attribute" EnrichedCellSample ||--}o DissociatedCellSample : "wasDerivedFrom" EnrichedCellSample ||--}o CellEnrichment : "wasGeneratedBy" +EnrichedCellSample ||--}o Agent : "wasAttributedTo" EnrichedCellSample ||--}o Attribute : "has attribute" CellEnrichment ||--}o DissociatedCellSample : "used" CellEnrichment ||--}o EnrichedCellSample : "generated" +CellEnrichment ||--}o Agent : "wasAssociatedWith" CellEnrichment ||--}o Attribute : "has attribute" DissociatedCellSample ||--}o TissueSample : "wasDerivedFrom" DissociatedCellSample ||--}o CellDissociation : "wasGeneratedBy" +DissociatedCellSample ||--}o Agent : "wasAttributedTo" DissociatedCellSample ||--}o Attribute : "has attribute" CellDissociation ||--}o TissueSample : "used" CellDissociation ||--}o DissociatedCellSample : "generated" +CellDissociation ||--}o Agent : "wasAssociatedWith" CellDissociation ||--}o Attribute : "has attribute" TissueSample ||--}o BrainSection : "wasDerivedFrom" TissueSample ||--}o TissueDissecting : "wasGeneratedBy" +TissueSample ||--}o Agent : "wasAttributedTo" TissueSample ||--}o Attribute : "has attribute" TissueDissecting ||--}o BrainSection : "used" TissueDissecting ||--}o TissueSample : "generated" +TissueDissecting ||--}o Agent : "wasAssociatedWith" TissueDissecting ||--}o Attribute : "has attribute" BrainSection ||--}o BrainSegment : "wasDerivedFrom" BrainSection ||--}o BrainSegmentSectioning : "wasGeneratedBy" +BrainSection ||--}o Agent : "wasAttributedTo" BrainSection ||--}o Attribute : "has attribute" BrainSegmentSectioning ||--}o BrainSegment : "used" BrainSegmentSectioning ||--}o BrainSection : "generated" +BrainSegmentSectioning ||--}o Agent : "wasAssociatedWith" BrainSegmentSectioning ||--}o Attribute : "has attribute" BrainSegment ||--}o Donor : "wasDerivedFrom" BrainSegment ||--}o BrainExtraction : "wasGeneratedBy" +BrainSegment ||--}o Agent : "wasAttributedTo" BrainSegment ||--}o Attribute : "has attribute" BrainExtraction ||--}o Donor : "used" BrainExtraction ||--}o BrainSegment : "generated" +BrainExtraction ||--}o Agent : "wasAssociatedWith" BrainExtraction ||--}o Attribute : "has attribute" Donor ||--}o OrganismTaxon : "in taxon" -Donor ||--}o Entity : "wasDerivedFrom" -Donor ||--}o Activity : "wasGeneratedBy" Donor ||--}o Attribute : "has attribute" -Activity ||--}o Attribute : "has attribute" -Entity ||--}o Attribute : "has attribute" ProvEntity ||--}o Entity : "wasDerivedFrom" ProvEntity ||--}o Activity : "wasGeneratedBy" +ProvEntity ||--}o Agent : "wasAttributedTo" +Activity ||--}o Attribute : "has attribute" +Entity ||--}o Attribute : "has attribute" ProvActivity ||--}o Entity : "used" ProvActivity ||--}o Entity : "generated" +ProvActivity ||--}o Agent : "wasAssociatedWith" AnnotationCollection ||--}o GeneAnnotation : "annotations" AnnotationCollection ||--}o GenomeAnnotation : "genome_annotations" AnnotationCollection ||--}o GenomeAssembly : "genome_assemblies" diff --git a/json-schema-autogen/kbmodel.json b/json-schema-autogen/kbmodel.json index 2db0e351..13808c61 100644 --- a/json-schema-autogen/kbmodel.json +++ b/json-schema-autogen/kbmodel.json @@ -252,10 +252,6 @@ "additionalProperties": false, "description": "", "properties": { - "amplified_quantity": { - "description": "Amount of cDNA amplified (ng).", - "type": "number" - }, "category": { "description": "Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class.\n * In a neo4j database this MAY correspond to the neo4j label tag.\n * In an RDF database it should be a biolink model class URI.\nThis field is multi-valued. It should include values for ancestors of the biolink class; for example, a protein such as Shh would have category values `biolink:Protein`, `biolink:GeneProduct`, `biolink:MolecularEntity`, ...\nIn an RDF database, nodes will typically have an rdf:type triples. This can be to the most specific biolink class, or potentially to a class more specific than something in biolink. For example, a sequence feature `f` may have a rdf:type assertion to a SO class such as TF_binding_site, which is more specific than anything in biolink. Here we would have categories {biolink:GenomicEntity, biolink:MolecularEntity, biolink:NamedThing}", "items": { @@ -278,6 +274,10 @@ "description": "A unique identifier for an entity. Must be either a CURIE shorthand for a URI or a complete URI", "type": "string" }, + "input_quantity": { + "description": "The amount of input cDNA (ng) amplified.", + "type": "number" + }, "iri": { "description": "An IRI for an entity. This is determined by the id using expansion rules.", "type": "string" @@ -297,7 +297,8 @@ "description": "The percentage of cDNA fragments that are longer than 400bp.", "type": "number" }, - "rna_amplification_pass": { + "process_pass": { + "description": "Indicates whether the rna amplification process passed or failed.", "type": "boolean" }, "type": { @@ -306,6 +307,12 @@ }, "type": "array" }, + "wasAttributedTo": { + "items": { + "$ref": "#/$defs/Agent" + }, + "type": "array" + }, "wasDerivedFrom": { "items": { "$ref": "#/$defs/BarcodedCellSample" @@ -1349,6 +1356,12 @@ }, "type": "array" }, + "wasAttributedTo": { + "items": { + "$ref": "#/$defs/Agent" + }, + "type": "array" + }, "wasDerivedFrom": { "items": { "$ref": "#/$defs/EnrichedCellSample" @@ -2607,6 +2620,12 @@ }, "type": "array" }, + "wasAssociatedWith": { + "items": { + "$ref": "#/$defs/Agent" + }, + "type": "array" + }, "xref": { "description": "A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.", "items": { @@ -2626,10 +2645,6 @@ "additionalProperties": false, "description": "", "properties": { - "barcode": { - "description": "The unique identifier of the object.", - "type": "string" - }, "category": { "description": "Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class.\n * In a neo4j database this MAY correspond to the neo4j label tag.\n * In an RDF database it should be a biolink model class URI.\nThis field is multi-valued. It should include values for ancestors of the biolink class; for example, a protein such as Shh would have category values `biolink:Protein`, `biolink:GeneProduct`, `biolink:MolecularEntity`, ...\nIn an RDF database, nodes will typically have an rdf:type triples. This can be to the most specific biolink class, or potentially to a class more specific than something in biolink. For example, a sequence feature `f` may have a rdf:type assertion to a SO class such as TF_binding_site, which is more specific than anything in biolink. Here we would have categories {biolink:GenomicEntity, biolink:MolecularEntity, biolink:NamedThing}", "items": { @@ -2670,6 +2685,12 @@ }, "type": "array" }, + "wasAttributedTo": { + "items": { + "$ref": "#/$defs/Agent" + }, + "type": "array" + }, "wasDerivedFrom": { "items": { "$ref": "#/$defs/BrainSegment" @@ -2696,10 +2717,6 @@ "anatomical_division": { "type": "string" }, - "barcode": { - "description": "The unique identifier of the object.", - "type": "string" - }, "category": { "description": "Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class.\n * In a neo4j database this MAY correspond to the neo4j label tag.\n * In an RDF database it should be a biolink model class URI.\nThis field is multi-valued. It should include values for ancestors of the biolink class; for example, a protein such as Shh would have category values `biolink:Protein`, `biolink:GeneProduct`, `biolink:MolecularEntity`, ...\nIn an RDF database, nodes will typically have an rdf:type triples. This can be to the most specific biolink class, or potentially to a class more specific than something in biolink. For example, a sequence feature `f` may have a rdf:type assertion to a SO class such as TF_binding_site, which is more specific than anything in biolink. Here we would have categories {biolink:GenomicEntity, biolink:MolecularEntity, biolink:NamedThing}", "items": { @@ -2736,6 +2753,12 @@ }, "type": "array" }, + "wasAttributedTo": { + "items": { + "$ref": "#/$defs/Agent" + }, + "type": "array" + }, "wasDerivedFrom": { "items": { "$ref": "#/$defs/Donor" @@ -2826,6 +2849,12 @@ }, "type": "array" }, + "wasAssociatedWith": { + "items": { + "$ref": "#/$defs/Agent" + }, + "type": "array" + }, "xref": { "description": "A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.", "items": { @@ -3460,6 +3489,12 @@ }, "type": "array" }, + "wasAssociatedWith": { + "items": { + "$ref": "#/$defs/Agent" + }, + "type": "array" + }, "xref": { "description": "A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.", "items": { @@ -3631,6 +3666,12 @@ }, "type": "array" }, + "wasAssociatedWith": { + "items": { + "$ref": "#/$defs/Agent" + }, + "type": "array" + }, "xref": { "description": "A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.", "items": { @@ -3717,6 +3758,12 @@ }, "type": "array" }, + "wasAssociatedWith": { + "items": { + "$ref": "#/$defs/Agent" + }, + "type": "array" + }, "xref": { "description": "A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.", "items": { @@ -3803,6 +3850,12 @@ }, "type": "array" }, + "wasAssociatedWith": { + "items": { + "$ref": "#/$defs/Agent" + }, + "type": "array" + }, "xref": { "description": "A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.", "items": { @@ -10331,7 +10384,7 @@ "description": "A human-readable name for an attribute or entity.", "type": "string" }, - "number_of_cells_collected": { + "num_cells_collected": { "type": "integer" }, "type": { @@ -10340,6 +10393,12 @@ }, "type": "array" }, + "wasAttributedTo": { + "items": { + "$ref": "#/$defs/Agent" + }, + "type": "array" + }, "wasDerivedFrom": { "items": { "$ref": "#/$defs/TissueSample" @@ -10363,23 +10422,35 @@ "additionalProperties": false, "description": "A person or organism that is the source of a biological sample.", "properties": { - "age_at_death": { - "description": "The age of the donor at the time of death.", + "address": { + "description": "the particulars of the place where someone or an organization is situated. For now, this slot is a simple text \"blob\" containing all relevant details of the given location for fitness of purpose. For the moment, this \"address\" can include other contact details such as email and phone number(?).", "type": "string" }, - "category": { - "description": "Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class.\n * In a neo4j database this MAY correspond to the neo4j label tag.\n * In an RDF database it should be a biolink model class URI.\nThis field is multi-valued. It should include values for ancestors of the biolink class; for example, a protein such as Shh would have category values `biolink:Protein`, `biolink:GeneProduct`, `biolink:MolecularEntity`, ...\nIn an RDF database, nodes will typically have an rdf:type triples. This can be to the most specific biolink class, or potentially to a class more specific than something in biolink. For example, a sequence feature `f` may have a rdf:type assertion to a SO class such as TF_binding_site, which is more specific than anything in biolink. Here we would have categories {biolink:GenomicEntity, biolink:MolecularEntity, biolink:NamedThing}", + "affiliation": { + "description": "a professional relationship between one provider (often a person) within another provider (often an organization). Target provider identity should be specified by a CURIE. Providers may have multiple affiliations.", "items": { "type": "string" }, "type": "array" }, - "date_of_birth": { + "birth_date": { "description": "The date of birth of the donor.", "format": "date", "type": "string" }, - "date_of_death": { + "category": { + "description": "Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class.\n * In a neo4j database this MAY correspond to the neo4j label tag.\n * In an RDF database it should be a biolink model class URI.\nThis field is multi-valued. It should include values for ancestors of the biolink class; for example, a protein such as Shh would have category values `biolink:Protein`, `biolink:GeneProduct`, `biolink:MolecularEntity`, ...\nIn an RDF database, nodes will typically have an rdf:type triples. This can be to the most specific biolink class, or potentially to a class more specific than something in biolink. For example, a sequence feature `f` may have a rdf:type assertion to a SO class such as TF_binding_site, which is more specific than anything in biolink. Here we would have categories {biolink:GenomicEntity, biolink:MolecularEntity, biolink:NamedThing}", + "items": { + "pattern": "^biolink:[A-Z][A-Za-z]+$", + "type": "string" + }, + "type": "array" + }, + "death_age": { + "description": "The age of the donor at the time of death (ISO 8601 format).", + "type": "string" + }, + "death_date": { "description": "The date of death of the donor.", "format": "date", "type": "string" @@ -10392,6 +10463,10 @@ "description": "The full genotype of the donor.", "type": "string" }, + "full_name": { + "description": "a long-form human readable name for a thing", + "type": "string" + }, "has_attribute": { "description": "connects any entity to an attribute", "items": { @@ -10400,7 +10475,7 @@ "type": "array" }, "id": { - "description": "A unique identifier for an entity. Must be either a CURIE shorthand for a URI or a complete URI", + "description": "Different classes of agents have distinct preferred identifiers. For publishers, use the ISBN publisher code. See https://grp.isbn-international.org/ for publisher code lookups. For editors, authors and individual providers, use the individual's ORCID if available; Otherwise, a ScopusID, ResearchID or Google Scholar ID ('GSID') may be used if the author ORCID is unknown. Institutional agents could be identified by an International Standard Name Identifier ('ISNI') code.", "type": "string" }, "in_taxon": { @@ -10419,33 +10494,43 @@ "type": "string" }, "name": { - "description": "A human-readable name for an attribute or entity.", + "description": "it is recommended that an author's 'name' property be formatted as \"surname, firstname initial.\"", "type": "string" }, + "provided_by": { + "description": "The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.", + "items": { + "type": "string" + }, + "type": "array" + }, "sex": { "$ref": "#/$defs/SexType" }, - "type": { + "synonym": { + "description": "Alternate human-readable names for a thing", "items": { "type": "string" }, "type": "array" }, - "wasDerivedFrom": { + "type": { "items": { - "$ref": "#/$defs/Entity" + "type": "string" }, "type": "array" }, - "wasGeneratedBy": { + "xref": { + "description": "A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.", "items": { - "$ref": "#/$defs/Activity" + "type": "string" }, "type": "array" } }, "required": [ - "id" + "id", + "category" ], "title": "Donor", "type": "object" @@ -11364,6 +11449,12 @@ }, "type": "array" }, + "wasAttributedTo": { + "items": { + "$ref": "#/$defs/Agent" + }, + "type": "array" + }, "wasDerivedFrom": { "items": { "$ref": "#/$defs/DissociatedCellSample" @@ -19446,8 +19537,8 @@ "additionalProperties": false, "description": "", "properties": { - "avg_size": { - "description": "The average size (bp) of the library fragments. bp stands for base pairs.", + "avg_size_bp": { + "description": "The average size (bp) of the library fragments.", "type": "integer" }, "category": { @@ -19477,7 +19568,7 @@ "description": "A unique identifier for an entity. Must be either a CURIE shorthand for a URI or a complete URI", "type": "string" }, - "input_amount": { + "input_quantity": { "description": "The amount of input material (ng) used to create the library.", "type": "number" }, @@ -19485,9 +19576,6 @@ "description": "An IRI for an entity. This is determined by the id using expansion rules.", "type": "string" }, - "library_prep_pass": { - "type": "boolean" - }, "method": { "type": "string" }, @@ -19495,6 +19583,10 @@ "description": "A human-readable name for an attribute or entity.", "type": "string" }, + "process_pass": { + "description": "Indicates whether the library prep process passed or failed.", + "type": "boolean" + }, "quantification_fmol": { "type": "number" }, @@ -19522,6 +19614,12 @@ }, "type": "array" }, + "wasAttributedTo": { + "items": { + "$ref": "#/$defs/Agent" + }, + "type": "array" + }, "wasDerivedFrom": { "items": { "$ref": "#/$defs/AmplifiedCdna" @@ -19585,6 +19683,12 @@ }, "type": "array" }, + "wasAttributedTo": { + "items": { + "$ref": "#/$defs/Agent" + }, + "type": "array" + }, "wasDerivedFrom": { "items": { "$ref": "#/$defs/Library" @@ -19675,6 +19779,12 @@ }, "type": "array" }, + "wasAssociatedWith": { + "items": { + "$ref": "#/$defs/Agent" + }, + "type": "array" + }, "xref": { "description": "A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.", "items": { @@ -19761,6 +19871,12 @@ }, "type": "array" }, + "wasAssociatedWith": { + "items": { + "$ref": "#/$defs/Agent" + }, + "type": "array" + }, "xref": { "description": "A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.", "items": { @@ -19780,6 +19896,10 @@ "additionalProperties": false, "description": "", "properties": { + "avg_size_bp": { + "description": "The average size (bp) of the library fragments in the tube.", + "type": "integer" + }, "category": { "description": "Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class.\n * In a neo4j database this MAY correspond to the neo4j label tag.\n * In an RDF database it should be a biolink model class URI.\nThis field is multi-valued. It should include values for ancestors of the biolink class; for example, a protein such as Shh would have category values `biolink:Protein`, `biolink:GeneProduct`, `biolink:MolecularEntity`, ...\nIn an RDF database, nodes will typically have an rdf:type triples. This can be to the most specific biolink class, or potentially to a class more specific than something in biolink. For example, a sequence feature `f` may have a rdf:type assertion to a SO class such as TF_binding_site, which is more specific than anything in biolink. Here we would have categories {biolink:GenomicEntity, biolink:MolecularEntity, biolink:NamedThing}", "items": { @@ -19810,23 +19930,22 @@ "description": "A human-readable name for an attribute or entity.", "type": "string" }, - "tube_avg_size": { - "description": "The average size (bp) of the library fragments in the tube.", - "type": "integer" - }, "tube_contents": { "description": "The content concentration (nm).", "type": "number" }, - "tube_internal_label": { - "type": "string" - }, "type": { "items": { "type": "string" }, "type": "array" }, + "wasAttributedTo": { + "items": { + "$ref": "#/$defs/Agent" + }, + "type": "array" + }, "wasDerivedFrom": { "items": { "$ref": "#/$defs/LibraryAliquot" @@ -19917,6 +20036,12 @@ }, "type": "array" }, + "wasAssociatedWith": { + "items": { + "$ref": "#/$defs/Agent" + }, + "type": "array" + }, "xref": { "description": "A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.", "items": { @@ -26941,46 +27066,6 @@ "title": "ProteinIsoform", "type": "object" }, - "ProvActivity": { - "additionalProperties": false, - "description": "Based off prov:Activity; an activity is something that occurs over a period of time and acts upon or with entities; it may include consuming, processing, transforming, modifying, relocating, using, or generating entities.", - "properties": { - "generated": { - "items": { - "$ref": "#/$defs/Entity" - }, - "type": "array" - }, - "used": { - "items": { - "$ref": "#/$defs/Entity" - }, - "type": "array" - } - }, - "title": "ProvActivity", - "type": "object" - }, - "ProvEntity": { - "additionalProperties": false, - "description": "Based off prov:Entity; an entity is a physical, digital, conceptual, or other kind of thing with some fixed aspects; entities may be real or imaginary.", - "properties": { - "wasDerivedFrom": { - "items": { - "$ref": "#/$defs/Entity" - }, - "type": "array" - }, - "wasGeneratedBy": { - "items": { - "$ref": "#/$defs/Activity" - }, - "type": "array" - } - }, - "title": "ProvEntity", - "type": "object" - }, "Publication": { "additionalProperties": false, "description": "Any \u2018published\u2019 piece of information. Publications are considered broadly to include any document or document part made available in print or on the web - which may include scientific journal issues, individual articles, and books - as well as things like pre-prints, white papers, patents, drug labels, web pages, protocol documents, and even a part of a publication if of significant knowledge scope (e.g. a figure, figure legend, or section highlighted by NLP).", @@ -30006,6 +30091,12 @@ }, "type": "array" }, + "wasAssociatedWith": { + "items": { + "$ref": "#/$defs/Agent" + }, + "type": "array" + }, "xref": { "description": "A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.", "items": { @@ -30055,7 +30146,7 @@ "description": "A human-readable name for an attribute or entity.", "type": "string" }, - "region_of_interest_label": { + "roi_label": { "description": "The label of the region of interest.", "type": "string" }, @@ -30068,6 +30159,12 @@ }, "type": "array" }, + "wasAttributedTo": { + "items": { + "$ref": "#/$defs/Agent" + }, + "type": "array" + }, "wasDerivedFrom": { "items": { "$ref": "#/$defs/BrainSection" diff --git a/jsonld-context-autogen/kbmodel.context.jsonld b/jsonld-context-autogen/kbmodel.context.jsonld index 3d459257..781a0215 100644 --- a/jsonld-context-autogen/kbmodel.context.jsonld +++ b/jsonld-context-autogen/kbmodel.context.jsonld @@ -646,18 +646,12 @@ "@type": "@id", "@id": "biolink:amount_or_activity_increased_by" }, - "amplified_quantity": { - "@type": "xsd:float" - }, "pcr_cycles": { "@type": "xsd:integer" }, "percent_cdna_longer_than_400bp": { "@type": "xsd:float" }, - "rna_amplification_pass": { - "@type": "xsd:boolean" - }, "anatomical_context_qualifier": { "@id": "biolink:anatomical_context_qualifier" }, @@ -728,8 +722,8 @@ }, "@id": "biolink:available_from" }, - "barcode": { - "@id": "schema:identifier" + "avg_size_bp": { + "@type": "xsd:integer" }, "base_coordinate": { "@type": "xsd:integer", @@ -746,6 +740,9 @@ "@type": "@id", "@id": "biolink:biomarker_for" }, + "birth_date": { + "@type": "xsd:date" + }, "bonferonni_adjusted_p_value": { "@type": "xsd:float", "@id": "biolink:bonferonni_adjusted_p_value" @@ -918,10 +915,7 @@ "dataset_download_url": { "@id": "dcat:downloadURL" }, - "date_of_birth": { - "@type": "xsd:date" - }, - "date_of_death": { + "death_date": { "@type": "xsd:date" }, "decreased_amount_in": { @@ -992,7 +986,7 @@ "@type": "@id", "@id": "biolink:disrupts" }, - "number_of_cells_collected": { + "num_cells_collected": { "@type": "xsd:integer" }, "distribution_download_url": { @@ -1505,6 +1499,9 @@ "ingest_date": { "@id": "biolink:ingest_date" }, + "input_quantity": { + "@type": "xsd:float" + }, "interacting_molecules_category": { "@type": "@id", "@id": "biolink:interacting_molecules_category" @@ -1625,9 +1622,6 @@ "knowledge_source": { "@id": "biolink:knowledge_source" }, - "label": { - "@id": "schema:name" - }, "lacks_part": { "@type": "@id", "@id": "biolink:lacks_part" @@ -1636,15 +1630,6 @@ "@type": "xsd:float", "@id": "biolink:latitude" }, - "avg_size": { - "@type": "xsd:integer" - }, - "input_amount": { - "@type": "xsd:float" - }, - "library_prep_pass": { - "@type": "xsd:boolean" - }, "quantification_fmol": { "@type": "xsd:float" }, @@ -1654,12 +1639,6 @@ "quantification_nm": { "@type": "xsd:float" }, - "input_quantity": { - "@type": "xsd:integer" - }, - "tube_avg_size": { - "@type": "xsd:integer" - }, "tube_contents": { "@type": "xsd:float" }, @@ -1977,6 +1956,9 @@ "primary_knowledge_source": { "@id": "biolink:primary_knowledge_source" }, + "process_pass": { + "@type": "xsd:boolean" + }, "produced_by": { "@type": "@id", "@id": "biolink:produced_by" @@ -2433,6 +2415,14 @@ "volume": { "@id": "biolink:volume" }, + "wasAssociatedWith": { + "@type": "@id", + "@id": "prov:wasAssociatedWith" + }, + "wasAttributedTo": { + "@type": "@id", + "@id": "prov:wasAttributedTo" + }, "wasDerivedFrom": { "@type": "@id", "@id": "prov:wasDerivedFrom" diff --git a/models_py-autogen/kbmodel.py b/models_py-autogen/kbmodel.py index 8b50c526..cec823e9 100644 --- a/models_py-autogen/kbmodel.py +++ b/models_py-autogen/kbmodel.py @@ -447,18 +447,20 @@ class AnnotationCollection(ConfiguredBaseModel): class ProvActivity(ConfiguredBaseModel): """ - Based off prov:Activity; an activity is something that occurs over a period of time and acts upon or with entities; it may include consuming, processing, transforming, modifying, relocating, using, or generating entities. + Based off prov:Activity; an activity is something that occurs over a period of time and acts upon or with entities; it may include consuming, processing, transforming, modifying, relocating, using, or generating entities. """ - used: Optional[List[Union[Entity,Checksum,Donor,BrainSegment,BrainSection,TissueSample,DissociatedCellSample,EnrichedCellSample,BarcodedCellSample,AmplifiedCdna,Library,LibraryAliquot,LibraryPool,NamedThing,Association,ChemicalEntityAssessesNamedThingAssociation,ContributorAssociation,GenotypeToGenotypePartAssociation,GenotypeToGeneAssociation,GenotypeToVariantAssociation,GeneToGeneAssociation,GeneToGeneFamilyAssociation,CellLineToDiseaseOrPhenotypicFeatureAssociation,ChemicalToChemicalAssociation,ChemicalToDiseaseOrPhenotypicFeatureAssociation,ChemicalOrDrugOrTreatmentToDiseaseOrPhenotypicFeatureAssociation,GeneToPathwayAssociation,MolecularActivityToPathwayAssociation,ChemicalToPathwayAssociation,NamedThingAssociatedWithLikelihoodOfNamedThingAssociation,ChemicalGeneInteractionAssociation,ChemicalAffectsGeneAssociation,DrugToGeneAssociation,MaterialSampleDerivationAssociation,MaterialSampleToDiseaseOrPhenotypicFeatureAssociation,DiseaseToExposureEventAssociation,ExposureEventToOutcomeAssociation,InformationContentEntityToNamedThingAssociation,DiseaseOrPhenotypicFeatureToLocationAssociation,DiseaseOrPhenotypicFeatureToGeneticInheritanceAssociation,GenotypeToPhenotypicFeatureAssociation,ExposureEventToPhenotypicFeatureAssociation,DiseaseToPhenotypicFeatureAssociation,CaseToPhenotypicFeatureAssociation,BehaviorToBehavioralFeatureAssociation,GeneToDiseaseOrPhenotypicFeatureAssociation,VariantToGeneAssociation,VariantToPopulationAssociation,PopulationToPopulationAssociation,VariantToPhenotypicFeatureAssociation,VariantToDiseaseAssociation,GenotypeToDiseaseAssociation,OrganismalEntityAsAModelOfDiseaseAssociation,OrganismToOrganismAssociation,TaxonToTaxonAssociation,GeneToExpressionSiteAssociation,SequenceVariantModulatesTreatmentAssociation,FunctionalAssociation,MolecularActivityToChemicalEntityAssociation,MolecularActivityToMolecularActivityAssociation,EntityToDiseaseAssociation,EntityToPhenotypicFeatureAssociation,SequenceAssociation,SequenceFeatureRelationship,ChemicalEntityOrGeneOrGeneProductRegulatesGeneAssociation,AnatomicalEntityToAnatomicalEntityAssociation,OrganismTaxonToOrganismTaxonAssociation,OrganismTaxonToEnvironmentAssociation,OrganismTaxonToOrganismTaxonSpecialization,OrganismTaxonToOrganismTaxonInteraction,AnatomicalEntityToAnatomicalEntityPartOfAssociation,AnatomicalEntityToAnatomicalEntityOntogenicAssociation,TranscriptToGeneRelationship,GeneToGeneProductRelationship,ExonToTranscriptRelationship,GenomicSequenceLocalization,MacromolecularMachineToMolecularActivityAssociation,MacromolecularMachineToBiologicalProcessAssociation,MacromolecularMachineToCellularComponentAssociation,GeneToGoTermAssociation,GenotypeAsAModelOfDiseaseAssociation,VariantAsAModelOfDiseaseAssociation,VariantToGeneExpressionAssociation,GeneToPhenotypicFeatureAssociation,GeneToDiseaseAssociation,CausalGeneToDiseaseAssociation,CorrelatedGeneToDiseaseAssociation,DruggableGeneToDiseaseAssociation,GeneAsAModelOfDiseaseAssociation,GeneHasVariantThatContributesToDiseaseAssociation,ChemicalOrDrugOrTreatmentSideEffectDiseaseOrPhenotypicFeatureAssociation,ReactionToParticipantAssociation,ChemicalToChemicalDerivationAssociation,ReactionToCatalystAssociation,CellLineAsAModelOfDiseaseAssociation,GeneToGeneHomologyAssociation,GeneToGeneCoexpressionAssociation,PairwiseGeneToGeneInteraction,PairwiseMolecularInteraction,GenomeAssembly,Attribute,OrganismTaxon,Event,AdministrativeEntity,InformationContentEntity,PhysicalEntity,Activity,Procedure,Phenomenon,Device,DiagnosticAid,PlanetaryEntity,BiologicalEntity,ChemicalEntity,ClinicalEntity,Treatment,ClinicalTrial,ClinicalIntervention,Hospitalization,MolecularEntity,ChemicalMixture,EnvironmentalFoodContaminant,FoodAdditive,MolecularMixture,ComplexMolecularMixture,ProcessedMaterial,Food,Drug,SmallMolecule,NucleicAcidEntity,Exon,Transcript,CodingSequence,RNAProduct,RNAProductIsoform,NoncodingRNAProduct,MicroRNA,SiRNA,RegulatoryRegion,BiologicalProcessOrActivity,GeneticInheritance,OrganismalEntity,DiseaseOrPhenotypicFeature,Gene,MacromolecularComplex,NucleosomeModification,Genome,Polypeptide,ProteinDomain,PosttranslationalModification,ProteinFamily,NucleicAcidSequenceMotif,GeneFamily,Genotype,Haplotype,SequenceVariant,ReagentTargetedGene,Snv,Protein,ProteinIsoform,GenomeAnnotation,GeneAnnotation,Disease,PhenotypicFeature,BehavioralFeature,ClinicalFinding,Bacterium,Virus,CellularOrganism,LifeStage,IndividualOrganism,PopulationOfIndividualOrganisms,AnatomicalEntity,CellLine,CellularComponent,Cell,GrossAnatomicalStructure,PathologicalAnatomicalStructure,StudyPopulation,Cohort,Case,Mammal,Plant,Invertebrate,Vertebrate,Fungus,Human,MolecularActivity,BiologicalProcess,Pathway,PhysiologicalProcess,Behavior,PathologicalProcess,AccessibleDnaRegion,TranscriptionFactorBindingSite,EnvironmentalProcess,EnvironmentalFeature,GeographicLocation,GeographicLocationAtTime,BrainExtraction,BrainSegmentSectioning,TissueDissecting,CellDissociation,CellEnrichment,CellBarcoding,CdnaAmplification,LibraryConstruction,LibraryAliquoting,LibraryPooling,Study,MaterialSample,StudyResult,StudyVariable,CommonDataElement,Dataset,DatasetDistribution,DatasetVersion,DatasetSummary,ConfidenceLevel,EvidenceType,Publication,RetrievalSource,Book,BookChapter,Serial,Article,Patent,WebPage,PreprintPublication,DrugLabel,JournalArticle,ConceptCountAnalysisResult,ObservedExpectedFrequencyAnalysisResult,RelativeFrequencyAnalysisResult,TextMiningResult,ChiSquaredAnalysisResult,LogOddsAnalysisResult,Agent,ChemicalRole,BiologicalSex,SeverityValue,OrganismAttribute,Zygosity,ClinicalAttribute,SocioeconomicAttribute,GenomicBackgroundExposure,PathologicalProcessExposure,PathologicalAnatomicalExposure,DiseaseOrPhenotypicFeatureExposure,ChemicalExposure,ComplexChemicalExposure,BioticExposure,EnvironmentalExposure,BehavioralExposure,SocioeconomicExposure,GeographicExposure,DrugExposure,DrugToGeneInteractionExposure,ClinicalMeasurement,ClinicalModifier,ClinicalCourse,Onset,PhenotypicQuality,PhenotypicSex,GenotypicSex]]] = Field(default_factory=list) - generated: Optional[List[Union[Entity,Checksum,Donor,BrainSegment,BrainSection,TissueSample,DissociatedCellSample,EnrichedCellSample,BarcodedCellSample,AmplifiedCdna,Library,LibraryAliquot,LibraryPool,NamedThing,Association,ChemicalEntityAssessesNamedThingAssociation,ContributorAssociation,GenotypeToGenotypePartAssociation,GenotypeToGeneAssociation,GenotypeToVariantAssociation,GeneToGeneAssociation,GeneToGeneFamilyAssociation,CellLineToDiseaseOrPhenotypicFeatureAssociation,ChemicalToChemicalAssociation,ChemicalToDiseaseOrPhenotypicFeatureAssociation,ChemicalOrDrugOrTreatmentToDiseaseOrPhenotypicFeatureAssociation,GeneToPathwayAssociation,MolecularActivityToPathwayAssociation,ChemicalToPathwayAssociation,NamedThingAssociatedWithLikelihoodOfNamedThingAssociation,ChemicalGeneInteractionAssociation,ChemicalAffectsGeneAssociation,DrugToGeneAssociation,MaterialSampleDerivationAssociation,MaterialSampleToDiseaseOrPhenotypicFeatureAssociation,DiseaseToExposureEventAssociation,ExposureEventToOutcomeAssociation,InformationContentEntityToNamedThingAssociation,DiseaseOrPhenotypicFeatureToLocationAssociation,DiseaseOrPhenotypicFeatureToGeneticInheritanceAssociation,GenotypeToPhenotypicFeatureAssociation,ExposureEventToPhenotypicFeatureAssociation,DiseaseToPhenotypicFeatureAssociation,CaseToPhenotypicFeatureAssociation,BehaviorToBehavioralFeatureAssociation,GeneToDiseaseOrPhenotypicFeatureAssociation,VariantToGeneAssociation,VariantToPopulationAssociation,PopulationToPopulationAssociation,VariantToPhenotypicFeatureAssociation,VariantToDiseaseAssociation,GenotypeToDiseaseAssociation,OrganismalEntityAsAModelOfDiseaseAssociation,OrganismToOrganismAssociation,TaxonToTaxonAssociation,GeneToExpressionSiteAssociation,SequenceVariantModulatesTreatmentAssociation,FunctionalAssociation,MolecularActivityToChemicalEntityAssociation,MolecularActivityToMolecularActivityAssociation,EntityToDiseaseAssociation,EntityToPhenotypicFeatureAssociation,SequenceAssociation,SequenceFeatureRelationship,ChemicalEntityOrGeneOrGeneProductRegulatesGeneAssociation,AnatomicalEntityToAnatomicalEntityAssociation,OrganismTaxonToOrganismTaxonAssociation,OrganismTaxonToEnvironmentAssociation,OrganismTaxonToOrganismTaxonSpecialization,OrganismTaxonToOrganismTaxonInteraction,AnatomicalEntityToAnatomicalEntityPartOfAssociation,AnatomicalEntityToAnatomicalEntityOntogenicAssociation,TranscriptToGeneRelationship,GeneToGeneProductRelationship,ExonToTranscriptRelationship,GenomicSequenceLocalization,MacromolecularMachineToMolecularActivityAssociation,MacromolecularMachineToBiologicalProcessAssociation,MacromolecularMachineToCellularComponentAssociation,GeneToGoTermAssociation,GenotypeAsAModelOfDiseaseAssociation,VariantAsAModelOfDiseaseAssociation,VariantToGeneExpressionAssociation,GeneToPhenotypicFeatureAssociation,GeneToDiseaseAssociation,CausalGeneToDiseaseAssociation,CorrelatedGeneToDiseaseAssociation,DruggableGeneToDiseaseAssociation,GeneAsAModelOfDiseaseAssociation,GeneHasVariantThatContributesToDiseaseAssociation,ChemicalOrDrugOrTreatmentSideEffectDiseaseOrPhenotypicFeatureAssociation,ReactionToParticipantAssociation,ChemicalToChemicalDerivationAssociation,ReactionToCatalystAssociation,CellLineAsAModelOfDiseaseAssociation,GeneToGeneHomologyAssociation,GeneToGeneCoexpressionAssociation,PairwiseGeneToGeneInteraction,PairwiseMolecularInteraction,GenomeAssembly,Attribute,OrganismTaxon,Event,AdministrativeEntity,InformationContentEntity,PhysicalEntity,Activity,Procedure,Phenomenon,Device,DiagnosticAid,PlanetaryEntity,BiologicalEntity,ChemicalEntity,ClinicalEntity,Treatment,ClinicalTrial,ClinicalIntervention,Hospitalization,MolecularEntity,ChemicalMixture,EnvironmentalFoodContaminant,FoodAdditive,MolecularMixture,ComplexMolecularMixture,ProcessedMaterial,Food,Drug,SmallMolecule,NucleicAcidEntity,Exon,Transcript,CodingSequence,RNAProduct,RNAProductIsoform,NoncodingRNAProduct,MicroRNA,SiRNA,RegulatoryRegion,BiologicalProcessOrActivity,GeneticInheritance,OrganismalEntity,DiseaseOrPhenotypicFeature,Gene,MacromolecularComplex,NucleosomeModification,Genome,Polypeptide,ProteinDomain,PosttranslationalModification,ProteinFamily,NucleicAcidSequenceMotif,GeneFamily,Genotype,Haplotype,SequenceVariant,ReagentTargetedGene,Snv,Protein,ProteinIsoform,GenomeAnnotation,GeneAnnotation,Disease,PhenotypicFeature,BehavioralFeature,ClinicalFinding,Bacterium,Virus,CellularOrganism,LifeStage,IndividualOrganism,PopulationOfIndividualOrganisms,AnatomicalEntity,CellLine,CellularComponent,Cell,GrossAnatomicalStructure,PathologicalAnatomicalStructure,StudyPopulation,Cohort,Case,Mammal,Plant,Invertebrate,Vertebrate,Fungus,Human,MolecularActivity,BiologicalProcess,Pathway,PhysiologicalProcess,Behavior,PathologicalProcess,AccessibleDnaRegion,TranscriptionFactorBindingSite,EnvironmentalProcess,EnvironmentalFeature,GeographicLocation,GeographicLocationAtTime,BrainExtraction,BrainSegmentSectioning,TissueDissecting,CellDissociation,CellEnrichment,CellBarcoding,CdnaAmplification,LibraryConstruction,LibraryAliquoting,LibraryPooling,Study,MaterialSample,StudyResult,StudyVariable,CommonDataElement,Dataset,DatasetDistribution,DatasetVersion,DatasetSummary,ConfidenceLevel,EvidenceType,Publication,RetrievalSource,Book,BookChapter,Serial,Article,Patent,WebPage,PreprintPublication,DrugLabel,JournalArticle,ConceptCountAnalysisResult,ObservedExpectedFrequencyAnalysisResult,RelativeFrequencyAnalysisResult,TextMiningResult,ChiSquaredAnalysisResult,LogOddsAnalysisResult,Agent,ChemicalRole,BiologicalSex,SeverityValue,OrganismAttribute,Zygosity,ClinicalAttribute,SocioeconomicAttribute,GenomicBackgroundExposure,PathologicalProcessExposure,PathologicalAnatomicalExposure,DiseaseOrPhenotypicFeatureExposure,ChemicalExposure,ComplexChemicalExposure,BioticExposure,EnvironmentalExposure,BehavioralExposure,SocioeconomicExposure,GeographicExposure,DrugExposure,DrugToGeneInteractionExposure,ClinicalMeasurement,ClinicalModifier,ClinicalCourse,Onset,PhenotypicQuality,PhenotypicSex,GenotypicSex]]] = Field(default_factory=list) + used: Optional[List[Union[Entity,Checksum,BrainSegment,BrainSection,TissueSample,DissociatedCellSample,EnrichedCellSample,BarcodedCellSample,AmplifiedCdna,Library,LibraryAliquot,LibraryPool,NamedThing,Association,ChemicalEntityAssessesNamedThingAssociation,ContributorAssociation,GenotypeToGenotypePartAssociation,GenotypeToGeneAssociation,GenotypeToVariantAssociation,GeneToGeneAssociation,GeneToGeneFamilyAssociation,CellLineToDiseaseOrPhenotypicFeatureAssociation,ChemicalToChemicalAssociation,ChemicalToDiseaseOrPhenotypicFeatureAssociation,ChemicalOrDrugOrTreatmentToDiseaseOrPhenotypicFeatureAssociation,GeneToPathwayAssociation,MolecularActivityToPathwayAssociation,ChemicalToPathwayAssociation,NamedThingAssociatedWithLikelihoodOfNamedThingAssociation,ChemicalGeneInteractionAssociation,ChemicalAffectsGeneAssociation,DrugToGeneAssociation,MaterialSampleDerivationAssociation,MaterialSampleToDiseaseOrPhenotypicFeatureAssociation,DiseaseToExposureEventAssociation,ExposureEventToOutcomeAssociation,InformationContentEntityToNamedThingAssociation,DiseaseOrPhenotypicFeatureToLocationAssociation,DiseaseOrPhenotypicFeatureToGeneticInheritanceAssociation,GenotypeToPhenotypicFeatureAssociation,ExposureEventToPhenotypicFeatureAssociation,DiseaseToPhenotypicFeatureAssociation,CaseToPhenotypicFeatureAssociation,BehaviorToBehavioralFeatureAssociation,GeneToDiseaseOrPhenotypicFeatureAssociation,VariantToGeneAssociation,VariantToPopulationAssociation,PopulationToPopulationAssociation,VariantToPhenotypicFeatureAssociation,VariantToDiseaseAssociation,GenotypeToDiseaseAssociation,OrganismalEntityAsAModelOfDiseaseAssociation,OrganismToOrganismAssociation,TaxonToTaxonAssociation,GeneToExpressionSiteAssociation,SequenceVariantModulatesTreatmentAssociation,FunctionalAssociation,MolecularActivityToChemicalEntityAssociation,MolecularActivityToMolecularActivityAssociation,EntityToDiseaseAssociation,EntityToPhenotypicFeatureAssociation,SequenceAssociation,SequenceFeatureRelationship,ChemicalEntityOrGeneOrGeneProductRegulatesGeneAssociation,AnatomicalEntityToAnatomicalEntityAssociation,OrganismTaxonToOrganismTaxonAssociation,OrganismTaxonToEnvironmentAssociation,OrganismTaxonToOrganismTaxonSpecialization,OrganismTaxonToOrganismTaxonInteraction,AnatomicalEntityToAnatomicalEntityPartOfAssociation,AnatomicalEntityToAnatomicalEntityOntogenicAssociation,TranscriptToGeneRelationship,GeneToGeneProductRelationship,ExonToTranscriptRelationship,GenomicSequenceLocalization,MacromolecularMachineToMolecularActivityAssociation,MacromolecularMachineToBiologicalProcessAssociation,MacromolecularMachineToCellularComponentAssociation,GeneToGoTermAssociation,GenotypeAsAModelOfDiseaseAssociation,VariantAsAModelOfDiseaseAssociation,VariantToGeneExpressionAssociation,GeneToPhenotypicFeatureAssociation,GeneToDiseaseAssociation,CausalGeneToDiseaseAssociation,CorrelatedGeneToDiseaseAssociation,DruggableGeneToDiseaseAssociation,GeneAsAModelOfDiseaseAssociation,GeneHasVariantThatContributesToDiseaseAssociation,ChemicalOrDrugOrTreatmentSideEffectDiseaseOrPhenotypicFeatureAssociation,ReactionToParticipantAssociation,ChemicalToChemicalDerivationAssociation,ReactionToCatalystAssociation,CellLineAsAModelOfDiseaseAssociation,GeneToGeneHomologyAssociation,GeneToGeneCoexpressionAssociation,PairwiseGeneToGeneInteraction,PairwiseMolecularInteraction,GenomeAssembly,Attribute,OrganismTaxon,Event,AdministrativeEntity,InformationContentEntity,PhysicalEntity,Activity,Procedure,Phenomenon,Device,DiagnosticAid,PlanetaryEntity,BiologicalEntity,ChemicalEntity,ClinicalEntity,Treatment,ClinicalTrial,ClinicalIntervention,Hospitalization,MolecularEntity,ChemicalMixture,EnvironmentalFoodContaminant,FoodAdditive,MolecularMixture,ComplexMolecularMixture,ProcessedMaterial,Food,Drug,SmallMolecule,NucleicAcidEntity,Exon,Transcript,CodingSequence,RNAProduct,RNAProductIsoform,NoncodingRNAProduct,MicroRNA,SiRNA,RegulatoryRegion,BiologicalProcessOrActivity,GeneticInheritance,OrganismalEntity,DiseaseOrPhenotypicFeature,Gene,MacromolecularComplex,NucleosomeModification,Genome,Polypeptide,ProteinDomain,PosttranslationalModification,ProteinFamily,NucleicAcidSequenceMotif,GeneFamily,Genotype,Haplotype,SequenceVariant,ReagentTargetedGene,Snv,Protein,ProteinIsoform,GenomeAnnotation,GeneAnnotation,Disease,PhenotypicFeature,BehavioralFeature,ClinicalFinding,Bacterium,Virus,CellularOrganism,LifeStage,IndividualOrganism,PopulationOfIndividualOrganisms,AnatomicalEntity,CellLine,CellularComponent,Cell,GrossAnatomicalStructure,PathologicalAnatomicalStructure,StudyPopulation,Cohort,Case,Mammal,Plant,Invertebrate,Vertebrate,Fungus,Human,MolecularActivity,BiologicalProcess,Pathway,PhysiologicalProcess,Behavior,PathologicalProcess,AccessibleDnaRegion,TranscriptionFactorBindingSite,EnvironmentalProcess,EnvironmentalFeature,GeographicLocation,GeographicLocationAtTime,BrainExtraction,BrainSegmentSectioning,TissueDissecting,CellDissociation,CellEnrichment,CellBarcoding,CdnaAmplification,LibraryConstruction,LibraryAliquoting,LibraryPooling,Study,MaterialSample,StudyResult,StudyVariable,CommonDataElement,Dataset,DatasetDistribution,DatasetVersion,DatasetSummary,ConfidenceLevel,EvidenceType,Publication,RetrievalSource,Book,BookChapter,Serial,Article,Patent,WebPage,PreprintPublication,DrugLabel,JournalArticle,ConceptCountAnalysisResult,ObservedExpectedFrequencyAnalysisResult,RelativeFrequencyAnalysisResult,TextMiningResult,ChiSquaredAnalysisResult,LogOddsAnalysisResult,Agent,Donor,ChemicalRole,BiologicalSex,SeverityValue,OrganismAttribute,Zygosity,ClinicalAttribute,SocioeconomicAttribute,GenomicBackgroundExposure,PathologicalProcessExposure,PathologicalAnatomicalExposure,DiseaseOrPhenotypicFeatureExposure,ChemicalExposure,ComplexChemicalExposure,BioticExposure,EnvironmentalExposure,BehavioralExposure,SocioeconomicExposure,GeographicExposure,DrugExposure,DrugToGeneInteractionExposure,ClinicalMeasurement,ClinicalModifier,ClinicalCourse,Onset,PhenotypicQuality,PhenotypicSex,GenotypicSex]]] = Field(default_factory=list) + generated: Optional[List[Union[Entity,Checksum,BrainSegment,BrainSection,TissueSample,DissociatedCellSample,EnrichedCellSample,BarcodedCellSample,AmplifiedCdna,Library,LibraryAliquot,LibraryPool,NamedThing,Association,ChemicalEntityAssessesNamedThingAssociation,ContributorAssociation,GenotypeToGenotypePartAssociation,GenotypeToGeneAssociation,GenotypeToVariantAssociation,GeneToGeneAssociation,GeneToGeneFamilyAssociation,CellLineToDiseaseOrPhenotypicFeatureAssociation,ChemicalToChemicalAssociation,ChemicalToDiseaseOrPhenotypicFeatureAssociation,ChemicalOrDrugOrTreatmentToDiseaseOrPhenotypicFeatureAssociation,GeneToPathwayAssociation,MolecularActivityToPathwayAssociation,ChemicalToPathwayAssociation,NamedThingAssociatedWithLikelihoodOfNamedThingAssociation,ChemicalGeneInteractionAssociation,ChemicalAffectsGeneAssociation,DrugToGeneAssociation,MaterialSampleDerivationAssociation,MaterialSampleToDiseaseOrPhenotypicFeatureAssociation,DiseaseToExposureEventAssociation,ExposureEventToOutcomeAssociation,InformationContentEntityToNamedThingAssociation,DiseaseOrPhenotypicFeatureToLocationAssociation,DiseaseOrPhenotypicFeatureToGeneticInheritanceAssociation,GenotypeToPhenotypicFeatureAssociation,ExposureEventToPhenotypicFeatureAssociation,DiseaseToPhenotypicFeatureAssociation,CaseToPhenotypicFeatureAssociation,BehaviorToBehavioralFeatureAssociation,GeneToDiseaseOrPhenotypicFeatureAssociation,VariantToGeneAssociation,VariantToPopulationAssociation,PopulationToPopulationAssociation,VariantToPhenotypicFeatureAssociation,VariantToDiseaseAssociation,GenotypeToDiseaseAssociation,OrganismalEntityAsAModelOfDiseaseAssociation,OrganismToOrganismAssociation,TaxonToTaxonAssociation,GeneToExpressionSiteAssociation,SequenceVariantModulatesTreatmentAssociation,FunctionalAssociation,MolecularActivityToChemicalEntityAssociation,MolecularActivityToMolecularActivityAssociation,EntityToDiseaseAssociation,EntityToPhenotypicFeatureAssociation,SequenceAssociation,SequenceFeatureRelationship,ChemicalEntityOrGeneOrGeneProductRegulatesGeneAssociation,AnatomicalEntityToAnatomicalEntityAssociation,OrganismTaxonToOrganismTaxonAssociation,OrganismTaxonToEnvironmentAssociation,OrganismTaxonToOrganismTaxonSpecialization,OrganismTaxonToOrganismTaxonInteraction,AnatomicalEntityToAnatomicalEntityPartOfAssociation,AnatomicalEntityToAnatomicalEntityOntogenicAssociation,TranscriptToGeneRelationship,GeneToGeneProductRelationship,ExonToTranscriptRelationship,GenomicSequenceLocalization,MacromolecularMachineToMolecularActivityAssociation,MacromolecularMachineToBiologicalProcessAssociation,MacromolecularMachineToCellularComponentAssociation,GeneToGoTermAssociation,GenotypeAsAModelOfDiseaseAssociation,VariantAsAModelOfDiseaseAssociation,VariantToGeneExpressionAssociation,GeneToPhenotypicFeatureAssociation,GeneToDiseaseAssociation,CausalGeneToDiseaseAssociation,CorrelatedGeneToDiseaseAssociation,DruggableGeneToDiseaseAssociation,GeneAsAModelOfDiseaseAssociation,GeneHasVariantThatContributesToDiseaseAssociation,ChemicalOrDrugOrTreatmentSideEffectDiseaseOrPhenotypicFeatureAssociation,ReactionToParticipantAssociation,ChemicalToChemicalDerivationAssociation,ReactionToCatalystAssociation,CellLineAsAModelOfDiseaseAssociation,GeneToGeneHomologyAssociation,GeneToGeneCoexpressionAssociation,PairwiseGeneToGeneInteraction,PairwiseMolecularInteraction,GenomeAssembly,Attribute,OrganismTaxon,Event,AdministrativeEntity,InformationContentEntity,PhysicalEntity,Activity,Procedure,Phenomenon,Device,DiagnosticAid,PlanetaryEntity,BiologicalEntity,ChemicalEntity,ClinicalEntity,Treatment,ClinicalTrial,ClinicalIntervention,Hospitalization,MolecularEntity,ChemicalMixture,EnvironmentalFoodContaminant,FoodAdditive,MolecularMixture,ComplexMolecularMixture,ProcessedMaterial,Food,Drug,SmallMolecule,NucleicAcidEntity,Exon,Transcript,CodingSequence,RNAProduct,RNAProductIsoform,NoncodingRNAProduct,MicroRNA,SiRNA,RegulatoryRegion,BiologicalProcessOrActivity,GeneticInheritance,OrganismalEntity,DiseaseOrPhenotypicFeature,Gene,MacromolecularComplex,NucleosomeModification,Genome,Polypeptide,ProteinDomain,PosttranslationalModification,ProteinFamily,NucleicAcidSequenceMotif,GeneFamily,Genotype,Haplotype,SequenceVariant,ReagentTargetedGene,Snv,Protein,ProteinIsoform,GenomeAnnotation,GeneAnnotation,Disease,PhenotypicFeature,BehavioralFeature,ClinicalFinding,Bacterium,Virus,CellularOrganism,LifeStage,IndividualOrganism,PopulationOfIndividualOrganisms,AnatomicalEntity,CellLine,CellularComponent,Cell,GrossAnatomicalStructure,PathologicalAnatomicalStructure,StudyPopulation,Cohort,Case,Mammal,Plant,Invertebrate,Vertebrate,Fungus,Human,MolecularActivity,BiologicalProcess,Pathway,PhysiologicalProcess,Behavior,PathologicalProcess,AccessibleDnaRegion,TranscriptionFactorBindingSite,EnvironmentalProcess,EnvironmentalFeature,GeographicLocation,GeographicLocationAtTime,BrainExtraction,BrainSegmentSectioning,TissueDissecting,CellDissociation,CellEnrichment,CellBarcoding,CdnaAmplification,LibraryConstruction,LibraryAliquoting,LibraryPooling,Study,MaterialSample,StudyResult,StudyVariable,CommonDataElement,Dataset,DatasetDistribution,DatasetVersion,DatasetSummary,ConfidenceLevel,EvidenceType,Publication,RetrievalSource,Book,BookChapter,Serial,Article,Patent,WebPage,PreprintPublication,DrugLabel,JournalArticle,ConceptCountAnalysisResult,ObservedExpectedFrequencyAnalysisResult,RelativeFrequencyAnalysisResult,TextMiningResult,ChiSquaredAnalysisResult,LogOddsAnalysisResult,Agent,Donor,ChemicalRole,BiologicalSex,SeverityValue,OrganismAttribute,Zygosity,ClinicalAttribute,SocioeconomicAttribute,GenomicBackgroundExposure,PathologicalProcessExposure,PathologicalAnatomicalExposure,DiseaseOrPhenotypicFeatureExposure,ChemicalExposure,ComplexChemicalExposure,BioticExposure,EnvironmentalExposure,BehavioralExposure,SocioeconomicExposure,GeographicExposure,DrugExposure,DrugToGeneInteractionExposure,ClinicalMeasurement,ClinicalModifier,ClinicalCourse,Onset,PhenotypicQuality,PhenotypicSex,GenotypicSex]]] = Field(default_factory=list) + wasAssociatedWith: Optional[List[Union[Agent,Donor]]] = Field(default_factory=list) class ProvEntity(ConfiguredBaseModel): """ - Based off prov:Entity; an entity is a physical, digital, conceptual, or other kind of thing with some fixed aspects; entities may be real or imaginary. + Based off prov:Entity; an entity is a physical, digital, conceptual, or other kind of thing with some fixed aspects; entities may be real or imaginary. """ - wasDerivedFrom: Optional[List[Union[Entity,Checksum,Donor,BrainSegment,BrainSection,TissueSample,DissociatedCellSample,EnrichedCellSample,BarcodedCellSample,AmplifiedCdna,Library,LibraryAliquot,LibraryPool,NamedThing,Association,ChemicalEntityAssessesNamedThingAssociation,ContributorAssociation,GenotypeToGenotypePartAssociation,GenotypeToGeneAssociation,GenotypeToVariantAssociation,GeneToGeneAssociation,GeneToGeneFamilyAssociation,CellLineToDiseaseOrPhenotypicFeatureAssociation,ChemicalToChemicalAssociation,ChemicalToDiseaseOrPhenotypicFeatureAssociation,ChemicalOrDrugOrTreatmentToDiseaseOrPhenotypicFeatureAssociation,GeneToPathwayAssociation,MolecularActivityToPathwayAssociation,ChemicalToPathwayAssociation,NamedThingAssociatedWithLikelihoodOfNamedThingAssociation,ChemicalGeneInteractionAssociation,ChemicalAffectsGeneAssociation,DrugToGeneAssociation,MaterialSampleDerivationAssociation,MaterialSampleToDiseaseOrPhenotypicFeatureAssociation,DiseaseToExposureEventAssociation,ExposureEventToOutcomeAssociation,InformationContentEntityToNamedThingAssociation,DiseaseOrPhenotypicFeatureToLocationAssociation,DiseaseOrPhenotypicFeatureToGeneticInheritanceAssociation,GenotypeToPhenotypicFeatureAssociation,ExposureEventToPhenotypicFeatureAssociation,DiseaseToPhenotypicFeatureAssociation,CaseToPhenotypicFeatureAssociation,BehaviorToBehavioralFeatureAssociation,GeneToDiseaseOrPhenotypicFeatureAssociation,VariantToGeneAssociation,VariantToPopulationAssociation,PopulationToPopulationAssociation,VariantToPhenotypicFeatureAssociation,VariantToDiseaseAssociation,GenotypeToDiseaseAssociation,OrganismalEntityAsAModelOfDiseaseAssociation,OrganismToOrganismAssociation,TaxonToTaxonAssociation,GeneToExpressionSiteAssociation,SequenceVariantModulatesTreatmentAssociation,FunctionalAssociation,MolecularActivityToChemicalEntityAssociation,MolecularActivityToMolecularActivityAssociation,EntityToDiseaseAssociation,EntityToPhenotypicFeatureAssociation,SequenceAssociation,SequenceFeatureRelationship,ChemicalEntityOrGeneOrGeneProductRegulatesGeneAssociation,AnatomicalEntityToAnatomicalEntityAssociation,OrganismTaxonToOrganismTaxonAssociation,OrganismTaxonToEnvironmentAssociation,OrganismTaxonToOrganismTaxonSpecialization,OrganismTaxonToOrganismTaxonInteraction,AnatomicalEntityToAnatomicalEntityPartOfAssociation,AnatomicalEntityToAnatomicalEntityOntogenicAssociation,TranscriptToGeneRelationship,GeneToGeneProductRelationship,ExonToTranscriptRelationship,GenomicSequenceLocalization,MacromolecularMachineToMolecularActivityAssociation,MacromolecularMachineToBiologicalProcessAssociation,MacromolecularMachineToCellularComponentAssociation,GeneToGoTermAssociation,GenotypeAsAModelOfDiseaseAssociation,VariantAsAModelOfDiseaseAssociation,VariantToGeneExpressionAssociation,GeneToPhenotypicFeatureAssociation,GeneToDiseaseAssociation,CausalGeneToDiseaseAssociation,CorrelatedGeneToDiseaseAssociation,DruggableGeneToDiseaseAssociation,GeneAsAModelOfDiseaseAssociation,GeneHasVariantThatContributesToDiseaseAssociation,ChemicalOrDrugOrTreatmentSideEffectDiseaseOrPhenotypicFeatureAssociation,ReactionToParticipantAssociation,ChemicalToChemicalDerivationAssociation,ReactionToCatalystAssociation,CellLineAsAModelOfDiseaseAssociation,GeneToGeneHomologyAssociation,GeneToGeneCoexpressionAssociation,PairwiseGeneToGeneInteraction,PairwiseMolecularInteraction,GenomeAssembly,Attribute,OrganismTaxon,Event,AdministrativeEntity,InformationContentEntity,PhysicalEntity,Activity,Procedure,Phenomenon,Device,DiagnosticAid,PlanetaryEntity,BiologicalEntity,ChemicalEntity,ClinicalEntity,Treatment,ClinicalTrial,ClinicalIntervention,Hospitalization,MolecularEntity,ChemicalMixture,EnvironmentalFoodContaminant,FoodAdditive,MolecularMixture,ComplexMolecularMixture,ProcessedMaterial,Food,Drug,SmallMolecule,NucleicAcidEntity,Exon,Transcript,CodingSequence,RNAProduct,RNAProductIsoform,NoncodingRNAProduct,MicroRNA,SiRNA,RegulatoryRegion,BiologicalProcessOrActivity,GeneticInheritance,OrganismalEntity,DiseaseOrPhenotypicFeature,Gene,MacromolecularComplex,NucleosomeModification,Genome,Polypeptide,ProteinDomain,PosttranslationalModification,ProteinFamily,NucleicAcidSequenceMotif,GeneFamily,Genotype,Haplotype,SequenceVariant,ReagentTargetedGene,Snv,Protein,ProteinIsoform,GenomeAnnotation,GeneAnnotation,Disease,PhenotypicFeature,BehavioralFeature,ClinicalFinding,Bacterium,Virus,CellularOrganism,LifeStage,IndividualOrganism,PopulationOfIndividualOrganisms,AnatomicalEntity,CellLine,CellularComponent,Cell,GrossAnatomicalStructure,PathologicalAnatomicalStructure,StudyPopulation,Cohort,Case,Mammal,Plant,Invertebrate,Vertebrate,Fungus,Human,MolecularActivity,BiologicalProcess,Pathway,PhysiologicalProcess,Behavior,PathologicalProcess,AccessibleDnaRegion,TranscriptionFactorBindingSite,EnvironmentalProcess,EnvironmentalFeature,GeographicLocation,GeographicLocationAtTime,BrainExtraction,BrainSegmentSectioning,TissueDissecting,CellDissociation,CellEnrichment,CellBarcoding,CdnaAmplification,LibraryConstruction,LibraryAliquoting,LibraryPooling,Study,MaterialSample,StudyResult,StudyVariable,CommonDataElement,Dataset,DatasetDistribution,DatasetVersion,DatasetSummary,ConfidenceLevel,EvidenceType,Publication,RetrievalSource,Book,BookChapter,Serial,Article,Patent,WebPage,PreprintPublication,DrugLabel,JournalArticle,ConceptCountAnalysisResult,ObservedExpectedFrequencyAnalysisResult,RelativeFrequencyAnalysisResult,TextMiningResult,ChiSquaredAnalysisResult,LogOddsAnalysisResult,Agent,ChemicalRole,BiologicalSex,SeverityValue,OrganismAttribute,Zygosity,ClinicalAttribute,SocioeconomicAttribute,GenomicBackgroundExposure,PathologicalProcessExposure,PathologicalAnatomicalExposure,DiseaseOrPhenotypicFeatureExposure,ChemicalExposure,ComplexChemicalExposure,BioticExposure,EnvironmentalExposure,BehavioralExposure,SocioeconomicExposure,GeographicExposure,DrugExposure,DrugToGeneInteractionExposure,ClinicalMeasurement,ClinicalModifier,ClinicalCourse,Onset,PhenotypicQuality,PhenotypicSex,GenotypicSex]]] = Field(default_factory=list) + wasDerivedFrom: Optional[List[Union[Entity,Checksum,BrainSegment,BrainSection,TissueSample,DissociatedCellSample,EnrichedCellSample,BarcodedCellSample,AmplifiedCdna,Library,LibraryAliquot,LibraryPool,NamedThing,Association,ChemicalEntityAssessesNamedThingAssociation,ContributorAssociation,GenotypeToGenotypePartAssociation,GenotypeToGeneAssociation,GenotypeToVariantAssociation,GeneToGeneAssociation,GeneToGeneFamilyAssociation,CellLineToDiseaseOrPhenotypicFeatureAssociation,ChemicalToChemicalAssociation,ChemicalToDiseaseOrPhenotypicFeatureAssociation,ChemicalOrDrugOrTreatmentToDiseaseOrPhenotypicFeatureAssociation,GeneToPathwayAssociation,MolecularActivityToPathwayAssociation,ChemicalToPathwayAssociation,NamedThingAssociatedWithLikelihoodOfNamedThingAssociation,ChemicalGeneInteractionAssociation,ChemicalAffectsGeneAssociation,DrugToGeneAssociation,MaterialSampleDerivationAssociation,MaterialSampleToDiseaseOrPhenotypicFeatureAssociation,DiseaseToExposureEventAssociation,ExposureEventToOutcomeAssociation,InformationContentEntityToNamedThingAssociation,DiseaseOrPhenotypicFeatureToLocationAssociation,DiseaseOrPhenotypicFeatureToGeneticInheritanceAssociation,GenotypeToPhenotypicFeatureAssociation,ExposureEventToPhenotypicFeatureAssociation,DiseaseToPhenotypicFeatureAssociation,CaseToPhenotypicFeatureAssociation,BehaviorToBehavioralFeatureAssociation,GeneToDiseaseOrPhenotypicFeatureAssociation,VariantToGeneAssociation,VariantToPopulationAssociation,PopulationToPopulationAssociation,VariantToPhenotypicFeatureAssociation,VariantToDiseaseAssociation,GenotypeToDiseaseAssociation,OrganismalEntityAsAModelOfDiseaseAssociation,OrganismToOrganismAssociation,TaxonToTaxonAssociation,GeneToExpressionSiteAssociation,SequenceVariantModulatesTreatmentAssociation,FunctionalAssociation,MolecularActivityToChemicalEntityAssociation,MolecularActivityToMolecularActivityAssociation,EntityToDiseaseAssociation,EntityToPhenotypicFeatureAssociation,SequenceAssociation,SequenceFeatureRelationship,ChemicalEntityOrGeneOrGeneProductRegulatesGeneAssociation,AnatomicalEntityToAnatomicalEntityAssociation,OrganismTaxonToOrganismTaxonAssociation,OrganismTaxonToEnvironmentAssociation,OrganismTaxonToOrganismTaxonSpecialization,OrganismTaxonToOrganismTaxonInteraction,AnatomicalEntityToAnatomicalEntityPartOfAssociation,AnatomicalEntityToAnatomicalEntityOntogenicAssociation,TranscriptToGeneRelationship,GeneToGeneProductRelationship,ExonToTranscriptRelationship,GenomicSequenceLocalization,MacromolecularMachineToMolecularActivityAssociation,MacromolecularMachineToBiologicalProcessAssociation,MacromolecularMachineToCellularComponentAssociation,GeneToGoTermAssociation,GenotypeAsAModelOfDiseaseAssociation,VariantAsAModelOfDiseaseAssociation,VariantToGeneExpressionAssociation,GeneToPhenotypicFeatureAssociation,GeneToDiseaseAssociation,CausalGeneToDiseaseAssociation,CorrelatedGeneToDiseaseAssociation,DruggableGeneToDiseaseAssociation,GeneAsAModelOfDiseaseAssociation,GeneHasVariantThatContributesToDiseaseAssociation,ChemicalOrDrugOrTreatmentSideEffectDiseaseOrPhenotypicFeatureAssociation,ReactionToParticipantAssociation,ChemicalToChemicalDerivationAssociation,ReactionToCatalystAssociation,CellLineAsAModelOfDiseaseAssociation,GeneToGeneHomologyAssociation,GeneToGeneCoexpressionAssociation,PairwiseGeneToGeneInteraction,PairwiseMolecularInteraction,GenomeAssembly,Attribute,OrganismTaxon,Event,AdministrativeEntity,InformationContentEntity,PhysicalEntity,Activity,Procedure,Phenomenon,Device,DiagnosticAid,PlanetaryEntity,BiologicalEntity,ChemicalEntity,ClinicalEntity,Treatment,ClinicalTrial,ClinicalIntervention,Hospitalization,MolecularEntity,ChemicalMixture,EnvironmentalFoodContaminant,FoodAdditive,MolecularMixture,ComplexMolecularMixture,ProcessedMaterial,Food,Drug,SmallMolecule,NucleicAcidEntity,Exon,Transcript,CodingSequence,RNAProduct,RNAProductIsoform,NoncodingRNAProduct,MicroRNA,SiRNA,RegulatoryRegion,BiologicalProcessOrActivity,GeneticInheritance,OrganismalEntity,DiseaseOrPhenotypicFeature,Gene,MacromolecularComplex,NucleosomeModification,Genome,Polypeptide,ProteinDomain,PosttranslationalModification,ProteinFamily,NucleicAcidSequenceMotif,GeneFamily,Genotype,Haplotype,SequenceVariant,ReagentTargetedGene,Snv,Protein,ProteinIsoform,GenomeAnnotation,GeneAnnotation,Disease,PhenotypicFeature,BehavioralFeature,ClinicalFinding,Bacterium,Virus,CellularOrganism,LifeStage,IndividualOrganism,PopulationOfIndividualOrganisms,AnatomicalEntity,CellLine,CellularComponent,Cell,GrossAnatomicalStructure,PathologicalAnatomicalStructure,StudyPopulation,Cohort,Case,Mammal,Plant,Invertebrate,Vertebrate,Fungus,Human,MolecularActivity,BiologicalProcess,Pathway,PhysiologicalProcess,Behavior,PathologicalProcess,AccessibleDnaRegion,TranscriptionFactorBindingSite,EnvironmentalProcess,EnvironmentalFeature,GeographicLocation,GeographicLocationAtTime,BrainExtraction,BrainSegmentSectioning,TissueDissecting,CellDissociation,CellEnrichment,CellBarcoding,CdnaAmplification,LibraryConstruction,LibraryAliquoting,LibraryPooling,Study,MaterialSample,StudyResult,StudyVariable,CommonDataElement,Dataset,DatasetDistribution,DatasetVersion,DatasetSummary,ConfidenceLevel,EvidenceType,Publication,RetrievalSource,Book,BookChapter,Serial,Article,Patent,WebPage,PreprintPublication,DrugLabel,JournalArticle,ConceptCountAnalysisResult,ObservedExpectedFrequencyAnalysisResult,RelativeFrequencyAnalysisResult,TextMiningResult,ChiSquaredAnalysisResult,LogOddsAnalysisResult,Agent,Donor,ChemicalRole,BiologicalSex,SeverityValue,OrganismAttribute,Zygosity,ClinicalAttribute,SocioeconomicAttribute,GenomicBackgroundExposure,PathologicalProcessExposure,PathologicalAnatomicalExposure,DiseaseOrPhenotypicFeatureExposure,ChemicalExposure,ComplexChemicalExposure,BioticExposure,EnvironmentalExposure,BehavioralExposure,SocioeconomicExposure,GeographicExposure,DrugExposure,DrugToGeneInteractionExposure,ClinicalMeasurement,ClinicalModifier,ClinicalCourse,Onset,PhenotypicQuality,PhenotypicSex,GenotypicSex]]] = Field(default_factory=list) wasGeneratedBy: Optional[List[Union[Activity,BrainExtraction,BrainSegmentSectioning,TissueDissecting,CellDissociation,CellEnrichment,CellBarcoding,CdnaAmplification,LibraryConstruction,LibraryAliquoting,LibraryPooling,Study]]] = Field(default_factory=list) + wasAttributedTo: Optional[List[Union[Agent,Donor]]] = Field(default_factory=list) class MappingCollection(ConfiguredBaseModel): @@ -590,10 +592,10 @@ class Checksum(Entity): class BrainSegment(Entity, ProvEntity): - barcode: Optional[str] = Field(None, description="""The unique identifier of the object.""") anatomical_division: Optional[str] = Field(None) wasDerivedFrom: Optional[List[Donor]] = Field(default_factory=list) wasGeneratedBy: Optional[List[BrainExtraction]] = Field(default_factory=list) + wasAttributedTo: Optional[List[Union[Agent,Donor]]] = Field(default_factory=list) id: str = Field(..., description="""A unique identifier for an entity. Must be either a CURIE shorthand for a URI or a complete URI""") iri: Optional[str] = Field(None, description="""An IRI for an entity. This is determined by the id using expansion rules.""") category: List[Literal["https://identifiers.org/brain-bican/vocab/BrainSegment","bican:BrainSegment"]] = Field(["bican:BrainSegment"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. @@ -609,10 +611,10 @@ class BrainSegment(Entity, ProvEntity): class BrainSection(Entity, ProvEntity): - barcode: Optional[str] = Field(None, description="""The unique identifier of the object.""") ordinal: Optional[int] = Field(None, description="""The ordinal number of the section.""") wasDerivedFrom: Optional[List[BrainSegment]] = Field(default_factory=list) wasGeneratedBy: Optional[List[BrainSegmentSectioning]] = Field(default_factory=list) + wasAttributedTo: Optional[List[Union[Agent,Donor]]] = Field(default_factory=list) id: str = Field(..., description="""A unique identifier for an entity. Must be either a CURIE shorthand for a URI or a complete URI""") iri: Optional[str] = Field(None, description="""An IRI for an entity. This is determined by the id using expansion rules.""") category: List[Literal["https://identifiers.org/brain-bican/vocab/BrainSection","bican:BrainSection"]] = Field(["bican:BrainSection"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. @@ -629,9 +631,10 @@ class BrainSection(Entity, ProvEntity): class TissueSample(Entity, ProvEntity): roi_plan: Optional[str] = Field(None) - region_of_interest_label: Optional[str] = Field(None, description="""The label of the region of interest.""") + roi_label: Optional[str] = Field(None, description="""The label of the region of interest.""") wasDerivedFrom: Optional[List[BrainSection]] = Field(default_factory=list) wasGeneratedBy: Optional[List[TissueDissecting]] = Field(default_factory=list) + wasAttributedTo: Optional[List[Union[Agent,Donor]]] = Field(default_factory=list) id: str = Field(..., description="""A unique identifier for an entity. Must be either a CURIE shorthand for a URI or a complete URI""") iri: Optional[str] = Field(None, description="""An IRI for an entity. This is determined by the id using expansion rules.""") category: List[Literal["https://identifiers.org/brain-bican/vocab/TissueSample","bican:TissueSample"]] = Field(["bican:TissueSample"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. @@ -649,9 +652,10 @@ class DissociatedCellSample(Entity, ProvEntity): cell_prep_type: Optional[str] = Field(None) facs_population_plan: Optional[str] = Field(None) - number_of_cells_collected: Optional[int] = Field(None) + num_cells_collected: Optional[int] = Field(None) wasDerivedFrom: Optional[List[TissueSample]] = Field(default_factory=list) wasGeneratedBy: Optional[List[CellDissociation]] = Field(default_factory=list) + wasAttributedTo: Optional[List[Union[Agent,Donor]]] = Field(default_factory=list) id: str = Field(..., description="""A unique identifier for an entity. Must be either a CURIE shorthand for a URI or a complete URI""") iri: Optional[str] = Field(None, description="""An IRI for an entity. This is determined by the id using expansion rules.""") category: List[Literal["https://identifiers.org/brain-bican/vocab/DissociatedCellSample","bican:DissociatedCellSample"]] = Field(["bican:DissociatedCellSample"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. @@ -669,6 +673,7 @@ class EnrichedCellSample(Entity, ProvEntity): wasDerivedFrom: Optional[List[DissociatedCellSample]] = Field(default_factory=list) wasGeneratedBy: Optional[List[CellEnrichment]] = Field(default_factory=list) + wasAttributedTo: Optional[List[Union[Agent,Donor]]] = Field(default_factory=list) id: str = Field(..., description="""A unique identifier for an entity. Must be either a CURIE shorthand for a URI or a complete URI""") iri: Optional[str] = Field(None, description="""An IRI for an entity. This is determined by the id using expansion rules.""") category: List[Literal["https://identifiers.org/brain-bican/vocab/EnrichedCellSample","bican:EnrichedCellSample"]] = Field(["bican:EnrichedCellSample"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. @@ -688,6 +693,7 @@ class BarcodedCellSample(Entity, ProvEntity): sample_quality_count: Optional[str] = Field(None) wasDerivedFrom: Optional[List[EnrichedCellSample]] = Field(default_factory=list) wasGeneratedBy: Optional[List[CellBarcoding]] = Field(default_factory=list) + wasAttributedTo: Optional[List[Union[Agent,Donor]]] = Field(default_factory=list) id: str = Field(..., description="""A unique identifier for an entity. Must be either a CURIE shorthand for a URI or a complete URI""") iri: Optional[str] = Field(None, description="""An IRI for an entity. This is determined by the id using expansion rules.""") category: List[Literal["https://identifiers.org/brain-bican/vocab/BarcodedCellSample","bican:BarcodedCellSample"]] = Field(["bican:BarcodedCellSample"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. @@ -704,12 +710,13 @@ class BarcodedCellSample(Entity, ProvEntity): class AmplifiedCdna(Entity, ProvEntity): method: Optional[str] = Field(None) - amplified_quantity: Optional[float] = Field(None, description="""Amount of cDNA amplified (ng).""") + input_quantity: Optional[float] = Field(None, description="""The amount of input cDNA (ng) amplified.""") + process_pass: Optional[bool] = Field(None, description="""Indicates whether the rna amplification process passed or failed.""") pcr_cycles: Optional[int] = Field(None, description="""Number of PCR cycles used to amplify the cDNA.""") percent_cdna_longer_than_400bp: Optional[float] = Field(None, description="""The percentage of cDNA fragments that are longer than 400bp.""") - rna_amplification_pass: Optional[bool] = Field(None) wasDerivedFrom: Optional[List[BarcodedCellSample]] = Field(default_factory=list) wasGeneratedBy: Optional[List[CdnaAmplification]] = Field(default_factory=list) + wasAttributedTo: Optional[List[Union[Agent,Donor]]] = Field(default_factory=list) id: str = Field(..., description="""A unique identifier for an entity. Must be either a CURIE shorthand for a URI or a complete URI""") iri: Optional[str] = Field(None, description="""An IRI for an entity. This is determined by the id using expansion rules.""") category: List[Literal["https://identifiers.org/brain-bican/vocab/AmplifiedCdna","bican:AmplifiedCdna"]] = Field(["bican:AmplifiedCdna"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. @@ -727,9 +734,9 @@ class Library(Entity, ProvEntity): method: Optional[str] = Field(None) creation_date: Optional[datetime ] = Field(None, description="""The date and time the object was created.""") - avg_size: Optional[int] = Field(None, description="""The average size (bp) of the library fragments. bp stands for base pairs.""") - input_amount: Optional[float] = Field(None, description="""The amount of input material (ng) used to create the library.""") - library_prep_pass: Optional[bool] = Field(None) + input_quantity: Optional[float] = Field(None, description="""The amount of input material (ng) used to create the library.""") + process_pass: Optional[bool] = Field(None, description="""Indicates whether the library prep process passed or failed.""") + avg_size_bp: Optional[int] = Field(None, description="""The average size (bp) of the library fragments.""") quantification_fmol: Optional[float] = Field(None) quantification_ng: Optional[float] = Field(None) quantification_nm: Optional[float] = Field(None) @@ -739,6 +746,7 @@ class Library(Entity, ProvEntity): r2_sequence: Optional[str] = Field(None) wasDerivedFrom: Optional[List[AmplifiedCdna]] = Field(default_factory=list) wasGeneratedBy: Optional[List[LibraryConstruction]] = Field(default_factory=list) + wasAttributedTo: Optional[List[Union[Agent,Donor]]] = Field(default_factory=list) id: str = Field(..., description="""A unique identifier for an entity. Must be either a CURIE shorthand for a URI or a complete URI""") iri: Optional[str] = Field(None, description="""An IRI for an entity. This is determined by the id using expansion rules.""") category: List[Literal["https://identifiers.org/brain-bican/vocab/Library","bican:Library"]] = Field(["bican:Library"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. @@ -757,6 +765,7 @@ class LibraryAliquot(Entity, ProvEntity): input_quantity: Optional[int] = Field(None, description="""The amount of input material (fmol) used to create the library aliquot.""") wasDerivedFrom: Optional[List[Library]] = Field(default_factory=list) wasGeneratedBy: Optional[List[LibraryAliquoting]] = Field(default_factory=list) + wasAttributedTo: Optional[List[Union[Agent,Donor]]] = Field(default_factory=list) id: str = Field(..., description="""A unique identifier for an entity. Must be either a CURIE shorthand for a URI or a complete URI""") iri: Optional[str] = Field(None, description="""An IRI for an entity. This is determined by the id using expansion rules.""") category: List[Literal["https://identifiers.org/brain-bican/vocab/LibraryAliquot","bican:LibraryAliquot"]] = Field(["bican:LibraryAliquot"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. @@ -772,11 +781,11 @@ class LibraryAliquot(Entity, ProvEntity): class LibraryPool(Entity, ProvEntity): - tube_avg_size: Optional[int] = Field(None, description="""The average size (bp) of the library fragments in the tube.""") + avg_size_bp: Optional[int] = Field(None, description="""The average size (bp) of the library fragments in the tube.""") tube_contents: Optional[float] = Field(None, description="""The content concentration (nm).""") - tube_internal_label: Optional[str] = Field(None) wasDerivedFrom: Optional[List[LibraryAliquot]] = Field(default_factory=list) wasGeneratedBy: Optional[List[LibraryPooling]] = Field(default_factory=list) + wasAttributedTo: Optional[List[Union[Agent,Donor]]] = Field(default_factory=list) id: str = Field(..., description="""A unique identifier for an entity. Must be either a CURIE shorthand for a URI or a complete URI""") iri: Optional[str] = Field(None, description="""An IRI for an entity. This is determined by the id using expansion rules.""") category: List[Literal["https://identifiers.org/brain-bican/vocab/LibraryPool","bican:LibraryPool"]] = Field(["bican:LibraryPool"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. @@ -1873,6 +1882,7 @@ class BrainExtraction(Activity, ProvActivity): """ used: Optional[List[Donor]] = Field(default_factory=list) generated: Optional[List[BrainSegment]] = Field(default_factory=list) + wasAssociatedWith: Optional[List[Union[Agent,Donor]]] = Field(default_factory=list) provided_by: Optional[List[str]] = Field(None, description="""The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.""") xref: Optional[List[str]] = Field(default_factory=list, description="""A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.""") full_name: Optional[str] = Field(None, description="""a long-form human readable name for a thing""") @@ -1896,6 +1906,7 @@ class BrainSegmentSectioning(Activity, ProvActivity): """ used: Optional[List[BrainSegment]] = Field(default_factory=list) generated: Optional[List[BrainSection]] = Field(default_factory=list) + wasAssociatedWith: Optional[List[Union[Agent,Donor]]] = Field(default_factory=list) provided_by: Optional[List[str]] = Field(None, description="""The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.""") xref: Optional[List[str]] = Field(default_factory=list, description="""A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.""") full_name: Optional[str] = Field(None, description="""a long-form human readable name for a thing""") @@ -1919,6 +1930,7 @@ class TissueDissecting(Activity, ProvActivity): """ used: Optional[List[BrainSection]] = Field(default_factory=list) generated: Optional[List[TissueSample]] = Field(default_factory=list) + wasAssociatedWith: Optional[List[Union[Agent,Donor]]] = Field(default_factory=list) provided_by: Optional[List[str]] = Field(None, description="""The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.""") xref: Optional[List[str]] = Field(default_factory=list, description="""A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.""") full_name: Optional[str] = Field(None, description="""a long-form human readable name for a thing""") @@ -1942,6 +1954,7 @@ class CellDissociation(Activity, ProvActivity): """ used: Optional[List[TissueSample]] = Field(default_factory=list) generated: Optional[List[DissociatedCellSample]] = Field(default_factory=list) + wasAssociatedWith: Optional[List[Union[Agent,Donor]]] = Field(default_factory=list) provided_by: Optional[List[str]] = Field(None, description="""The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.""") xref: Optional[List[str]] = Field(default_factory=list, description="""A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.""") full_name: Optional[str] = Field(None, description="""a long-form human readable name for a thing""") @@ -1965,6 +1978,7 @@ class CellEnrichment(Activity, ProvActivity): """ used: Optional[List[DissociatedCellSample]] = Field(default_factory=list) generated: Optional[List[EnrichedCellSample]] = Field(default_factory=list) + wasAssociatedWith: Optional[List[Union[Agent,Donor]]] = Field(default_factory=list) provided_by: Optional[List[str]] = Field(None, description="""The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.""") xref: Optional[List[str]] = Field(default_factory=list, description="""A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.""") full_name: Optional[str] = Field(None, description="""a long-form human readable name for a thing""") @@ -1988,6 +2002,7 @@ class CellBarcoding(Activity, ProvActivity): """ used: Optional[List[EnrichedCellSample]] = Field(default_factory=list) generated: Optional[List[BarcodedCellSample]] = Field(default_factory=list) + wasAssociatedWith: Optional[List[Union[Agent,Donor]]] = Field(default_factory=list) provided_by: Optional[List[str]] = Field(None, description="""The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.""") xref: Optional[List[str]] = Field(default_factory=list, description="""A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.""") full_name: Optional[str] = Field(None, description="""a long-form human readable name for a thing""") @@ -2011,6 +2026,7 @@ class CdnaAmplification(Activity, ProvActivity): """ used: Optional[List[BarcodedCellSample]] = Field(default_factory=list) generated: Optional[List[AmplifiedCdna]] = Field(default_factory=list) + wasAssociatedWith: Optional[List[Union[Agent,Donor]]] = Field(default_factory=list) provided_by: Optional[List[str]] = Field(None, description="""The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.""") xref: Optional[List[str]] = Field(default_factory=list, description="""A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.""") full_name: Optional[str] = Field(None, description="""a long-form human readable name for a thing""") @@ -2034,6 +2050,7 @@ class LibraryConstruction(Activity, ProvActivity): """ used: Optional[List[AmplifiedCdna]] = Field(default_factory=list) generated: Optional[List[Library]] = Field(default_factory=list) + wasAssociatedWith: Optional[List[Union[Agent,Donor]]] = Field(default_factory=list) provided_by: Optional[List[str]] = Field(None, description="""The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.""") xref: Optional[List[str]] = Field(default_factory=list, description="""A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.""") full_name: Optional[str] = Field(None, description="""a long-form human readable name for a thing""") @@ -2057,6 +2074,7 @@ class LibraryAliquoting(Activity, ProvActivity): """ used: Optional[List[Library]] = Field(default_factory=list) generated: Optional[List[LibraryAliquot]] = Field(default_factory=list) + wasAssociatedWith: Optional[List[Union[Agent,Donor]]] = Field(default_factory=list) provided_by: Optional[List[str]] = Field(None, description="""The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.""") xref: Optional[List[str]] = Field(default_factory=list, description="""A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.""") full_name: Optional[str] = Field(None, description="""a long-form human readable name for a thing""") @@ -2080,6 +2098,7 @@ class LibraryPooling(Activity, ProvActivity): """ used: Optional[List[LibraryAliquot]] = Field(default_factory=list) generated: Optional[List[LibraryPool]] = Field(default_factory=list) + wasAssociatedWith: Optional[List[Union[Agent,Donor]]] = Field(default_factory=list) provided_by: Optional[List[str]] = Field(None, description="""The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.""") xref: Optional[List[str]] = Field(default_factory=list, description="""A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.""") full_name: Optional[str] = Field(None, description="""a long-form human readable name for a thing""") @@ -2369,20 +2388,24 @@ class GenomeAssembly(ThingWithTaxon, NamedThing): has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""") -class Donor(ThingWithTaxon, Entity, ProvEntity): +class Donor(ThingWithTaxon, Agent): """ A person or organism that is the source of a biological sample. """ sex: Optional[SexType] = Field(None) - date_of_birth: Optional[date] = Field(None, description="""The date of birth of the donor.""") - date_of_death: Optional[date] = Field(None, description="""The date of death of the donor.""") - age_at_death: Optional[str] = Field(None, description="""The age of the donor at the time of death.""") + birth_date: Optional[date] = Field(None, description="""The date of birth of the donor.""") + death_date: Optional[date] = Field(None, description="""The date of death of the donor.""") + death_age: Optional[str] = Field(None, description="""The age of the donor at the time of death (ISO 8601 format).""") full_genotype: Optional[str] = Field(None, description="""The full genotype of the donor.""") in_taxon: Optional[List[str]] = Field(None, description="""connects an entity to its taxonomic classification. Only certain kinds of entities can be taxonomically classified; see 'thing with taxon'""") in_taxon_label: Optional[str] = Field(None, description="""The human readable scientific name for the taxon of the entity.""") - wasDerivedFrom: Optional[List[Union[Entity,Checksum,Donor,BrainSegment,BrainSection,TissueSample,DissociatedCellSample,EnrichedCellSample,BarcodedCellSample,AmplifiedCdna,Library,LibraryAliquot,LibraryPool,NamedThing,Association,ChemicalEntityAssessesNamedThingAssociation,ContributorAssociation,GenotypeToGenotypePartAssociation,GenotypeToGeneAssociation,GenotypeToVariantAssociation,GeneToGeneAssociation,GeneToGeneFamilyAssociation,CellLineToDiseaseOrPhenotypicFeatureAssociation,ChemicalToChemicalAssociation,ChemicalToDiseaseOrPhenotypicFeatureAssociation,ChemicalOrDrugOrTreatmentToDiseaseOrPhenotypicFeatureAssociation,GeneToPathwayAssociation,MolecularActivityToPathwayAssociation,ChemicalToPathwayAssociation,NamedThingAssociatedWithLikelihoodOfNamedThingAssociation,ChemicalGeneInteractionAssociation,ChemicalAffectsGeneAssociation,DrugToGeneAssociation,MaterialSampleDerivationAssociation,MaterialSampleToDiseaseOrPhenotypicFeatureAssociation,DiseaseToExposureEventAssociation,ExposureEventToOutcomeAssociation,InformationContentEntityToNamedThingAssociation,DiseaseOrPhenotypicFeatureToLocationAssociation,DiseaseOrPhenotypicFeatureToGeneticInheritanceAssociation,GenotypeToPhenotypicFeatureAssociation,ExposureEventToPhenotypicFeatureAssociation,DiseaseToPhenotypicFeatureAssociation,CaseToPhenotypicFeatureAssociation,BehaviorToBehavioralFeatureAssociation,GeneToDiseaseOrPhenotypicFeatureAssociation,VariantToGeneAssociation,VariantToPopulationAssociation,PopulationToPopulationAssociation,VariantToPhenotypicFeatureAssociation,VariantToDiseaseAssociation,GenotypeToDiseaseAssociation,OrganismalEntityAsAModelOfDiseaseAssociation,OrganismToOrganismAssociation,TaxonToTaxonAssociation,GeneToExpressionSiteAssociation,SequenceVariantModulatesTreatmentAssociation,FunctionalAssociation,MolecularActivityToChemicalEntityAssociation,MolecularActivityToMolecularActivityAssociation,EntityToDiseaseAssociation,EntityToPhenotypicFeatureAssociation,SequenceAssociation,SequenceFeatureRelationship,ChemicalEntityOrGeneOrGeneProductRegulatesGeneAssociation,AnatomicalEntityToAnatomicalEntityAssociation,OrganismTaxonToOrganismTaxonAssociation,OrganismTaxonToEnvironmentAssociation,OrganismTaxonToOrganismTaxonSpecialization,OrganismTaxonToOrganismTaxonInteraction,AnatomicalEntityToAnatomicalEntityPartOfAssociation,AnatomicalEntityToAnatomicalEntityOntogenicAssociation,TranscriptToGeneRelationship,GeneToGeneProductRelationship,ExonToTranscriptRelationship,GenomicSequenceLocalization,MacromolecularMachineToMolecularActivityAssociation,MacromolecularMachineToBiologicalProcessAssociation,MacromolecularMachineToCellularComponentAssociation,GeneToGoTermAssociation,GenotypeAsAModelOfDiseaseAssociation,VariantAsAModelOfDiseaseAssociation,VariantToGeneExpressionAssociation,GeneToPhenotypicFeatureAssociation,GeneToDiseaseAssociation,CausalGeneToDiseaseAssociation,CorrelatedGeneToDiseaseAssociation,DruggableGeneToDiseaseAssociation,GeneAsAModelOfDiseaseAssociation,GeneHasVariantThatContributesToDiseaseAssociation,ChemicalOrDrugOrTreatmentSideEffectDiseaseOrPhenotypicFeatureAssociation,ReactionToParticipantAssociation,ChemicalToChemicalDerivationAssociation,ReactionToCatalystAssociation,CellLineAsAModelOfDiseaseAssociation,GeneToGeneHomologyAssociation,GeneToGeneCoexpressionAssociation,PairwiseGeneToGeneInteraction,PairwiseMolecularInteraction,GenomeAssembly,Attribute,OrganismTaxon,Event,AdministrativeEntity,InformationContentEntity,PhysicalEntity,Activity,Procedure,Phenomenon,Device,DiagnosticAid,PlanetaryEntity,BiologicalEntity,ChemicalEntity,ClinicalEntity,Treatment,ClinicalTrial,ClinicalIntervention,Hospitalization,MolecularEntity,ChemicalMixture,EnvironmentalFoodContaminant,FoodAdditive,MolecularMixture,ComplexMolecularMixture,ProcessedMaterial,Food,Drug,SmallMolecule,NucleicAcidEntity,Exon,Transcript,CodingSequence,RNAProduct,RNAProductIsoform,NoncodingRNAProduct,MicroRNA,SiRNA,RegulatoryRegion,BiologicalProcessOrActivity,GeneticInheritance,OrganismalEntity,DiseaseOrPhenotypicFeature,Gene,MacromolecularComplex,NucleosomeModification,Genome,Polypeptide,ProteinDomain,PosttranslationalModification,ProteinFamily,NucleicAcidSequenceMotif,GeneFamily,Genotype,Haplotype,SequenceVariant,ReagentTargetedGene,Snv,Protein,ProteinIsoform,GenomeAnnotation,GeneAnnotation,Disease,PhenotypicFeature,BehavioralFeature,ClinicalFinding,Bacterium,Virus,CellularOrganism,LifeStage,IndividualOrganism,PopulationOfIndividualOrganisms,AnatomicalEntity,CellLine,CellularComponent,Cell,GrossAnatomicalStructure,PathologicalAnatomicalStructure,StudyPopulation,Cohort,Case,Mammal,Plant,Invertebrate,Vertebrate,Fungus,Human,MolecularActivity,BiologicalProcess,Pathway,PhysiologicalProcess,Behavior,PathologicalProcess,AccessibleDnaRegion,TranscriptionFactorBindingSite,EnvironmentalProcess,EnvironmentalFeature,GeographicLocation,GeographicLocationAtTime,BrainExtraction,BrainSegmentSectioning,TissueDissecting,CellDissociation,CellEnrichment,CellBarcoding,CdnaAmplification,LibraryConstruction,LibraryAliquoting,LibraryPooling,Study,MaterialSample,StudyResult,StudyVariable,CommonDataElement,Dataset,DatasetDistribution,DatasetVersion,DatasetSummary,ConfidenceLevel,EvidenceType,Publication,RetrievalSource,Book,BookChapter,Serial,Article,Patent,WebPage,PreprintPublication,DrugLabel,JournalArticle,ConceptCountAnalysisResult,ObservedExpectedFrequencyAnalysisResult,RelativeFrequencyAnalysisResult,TextMiningResult,ChiSquaredAnalysisResult,LogOddsAnalysisResult,Agent,ChemicalRole,BiologicalSex,SeverityValue,OrganismAttribute,Zygosity,ClinicalAttribute,SocioeconomicAttribute,GenomicBackgroundExposure,PathologicalProcessExposure,PathologicalAnatomicalExposure,DiseaseOrPhenotypicFeatureExposure,ChemicalExposure,ComplexChemicalExposure,BioticExposure,EnvironmentalExposure,BehavioralExposure,SocioeconomicExposure,GeographicExposure,DrugExposure,DrugToGeneInteractionExposure,ClinicalMeasurement,ClinicalModifier,ClinicalCourse,Onset,PhenotypicQuality,PhenotypicSex,GenotypicSex]]] = Field(default_factory=list) - wasGeneratedBy: Optional[List[Union[Activity,BrainExtraction,BrainSegmentSectioning,TissueDissecting,CellDissociation,CellEnrichment,CellBarcoding,CdnaAmplification,LibraryConstruction,LibraryAliquoting,LibraryPooling,Study]]] = Field(default_factory=list) - id: str = Field(..., description="""A unique identifier for an entity. Must be either a CURIE shorthand for a URI or a complete URI""") + affiliation: Optional[List[str]] = Field(default_factory=list, description="""a professional relationship between one provider (often a person) within another provider (often an organization). Target provider identity should be specified by a CURIE. Providers may have multiple affiliations.""") + address: Optional[str] = Field(None, description="""the particulars of the place where someone or an organization is situated. For now, this slot is a simple text \"blob\" containing all relevant details of the given location for fitness of purpose. For the moment, this \"address\" can include other contact details such as email and phone number(?).""") + provided_by: Optional[List[str]] = Field(None, description="""The value in this node property represents the knowledge provider that created or assembled the node and all of its attributes. Used internally to represent how a particular node made its way into a knowledge provider or graph.""") + xref: Optional[List[str]] = Field(default_factory=list, description="""A database cross reference or alternative identifier for a NamedThing or edge between two NamedThings. This property should point to a database record or webpage that supports the existence of the edge, or gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references.""") + full_name: Optional[str] = Field(None, description="""a long-form human readable name for a thing""") + synonym: Optional[List[str]] = Field(default_factory=list, description="""Alternate human-readable names for a thing""") + id: str = Field(..., description="""Different classes of agents have distinct preferred identifiers. For publishers, use the ISBN publisher code. See https://grp.isbn-international.org/ for publisher code lookups. For editors, authors and individual providers, use the individual's ORCID if available; Otherwise, a ScopusID, ResearchID or Google Scholar ID ('GSID') may be used if the author ORCID is unknown. Institutional agents could be identified by an International Standard Name Identifier ('ISNI') code.""") iri: Optional[str] = Field(None, description="""An IRI for an entity. This is determined by the id using expansion rules.""") category: List[Literal["https://identifiers.org/brain-bican/vocab/Donor","bican:Donor"]] = Field(["bican:Donor"], description="""Name of the high level ontology class in which this entity is categorized. Corresponds to the label for the biolink entity type class. * In a neo4j database this MAY correspond to the neo4j label tag. @@ -2390,7 +2413,7 @@ class Donor(ThingWithTaxon, Entity, ProvEntity): This field is multi-valued. It should include values for ancestors of the biolink class; for example, a protein such as Shh would have category values `biolink:Protein`, `biolink:GeneProduct`, `biolink:MolecularEntity`, ... In an RDF database, nodes will typically have an rdf:type triples. This can be to the most specific biolink class, or potentially to a class more specific than something in biolink. For example, a sequence feature `f` may have a rdf:type assertion to a SO class such as TF_binding_site, which is more specific than anything in biolink. Here we would have categories {biolink:GenomicEntity, biolink:MolecularEntity, biolink:NamedThing}""") type: Optional[List[str]] = Field(default_factory=list) - name: Optional[str] = Field(None, description="""A human-readable name for an attribute or entity.""") + name: Optional[str] = Field(None, description="""it is recommended that an author's 'name' property be formatted as \"surname, firstname initial.\"""") description: Optional[str] = Field(None, description="""a human-readable description of an entity""") has_attribute: Optional[List[str]] = Field(None, description="""connects any entity to an attribute""")