From bc54b8d2324bda29a90093de23379ddbed754844 Mon Sep 17 00:00:00 2001 From: sjm41 Date: Thu, 2 Jul 2026 17:43:04 +0100 Subject: [PATCH 1/4] Add optional is_aberration and is_balancer flags to Allele FlyBase distinguishes single-gene alleles from chromosomal aberrations (multi-gene alleles), and balancers are a subtype of aberration. Add two optional booleans to Allele/AlleleDTO to capture this, following the existing is_extinct/is_extrachromosomal/is_integrated pattern. Also remove the dead aberration slot_usage entry and its unused slot definition, which is_aberration supersedes. Co-Authored-By: Claude Opus 4.8 (1M context) --- model/schema/allele.yaml | 34 ++++++++++++++++++++++++---------- 1 file changed, 24 insertions(+), 10 deletions(-) diff --git a/model/schema/allele.yaml b/model/schema/allele.yaml index 9c690254c..a4cc73944 100644 --- a/model/schema/allele.yaml +++ b/model/schema/allele.yaml @@ -61,6 +61,8 @@ classes: - is_extinct - is_extrachromosomal - is_integrated + - is_aberration + - is_balancer - transgene_chromosome_location - allele_mutation_types - allele_inheritance_modes @@ -83,8 +85,6 @@ classes: exact_mappings: - SO:0001023 slot_usage: - aberration: # This slot is no longer declared in the Allele class; is this covered by something else? [CG] - notes: specific to FB allele_symbol: required: true laboratory_of_origin: @@ -93,6 +93,10 @@ classes: required: false is_integrated: required: false + is_aberration: + required: false + is_balancer: + required: false related_notes: notes: note_type from VocabularyTermSet 'Allele Note Type' @@ -109,6 +113,8 @@ classes: - is_extinct - is_extrachromosomal - is_integrated + - is_aberration + - is_balancer - transgene_chromosome_location_name - allele_mutation_type_dtos - allele_inheritance_mode_dtos @@ -675,14 +681,6 @@ classes: ## ------------ slots: - # This slot is currently not being used 2022-12-20; should it be? [CG] - aberration: - description: >- - Associated deficiency (etc.) whose breakpoint causes - the mutation - domain: Allele - range: string - allele_allele_associations: domain: Allele range: AlleleAlleleAssociation @@ -1009,6 +1007,22 @@ slots: domain: GenerationMethodDTO range: string # CV 'Irradiation Mutagen' + is_aberration: + description: >- + Indicates whether the allele is a chromosomal aberration (a multi-gene + allele), as opposed to a traditional single-gene allele. + domain: Allele + range: boolean + + is_balancer: + description: >- + Indicates whether the allele is a balancer: a chromosomal rearrangement + that suppresses recombination over a region of one or more chromosomes. + Balancers are a subtype of aberration, so this is only applicable to + alleles for which is_aberration is true. + domain: Allele + range: boolean + is_extinct: description: >- Does the allele still exist in a population somewhere? From 69143b48956a918a0b9049f7d90b38665f2a024e Mon Sep 17 00:00:00 2001 From: GitHub Action Date: Thu, 2 Jul 2026 16:45:09 +0000 Subject: [PATCH 2/4] Automated artifacts regeneration [skip actions] --- .../jsonschema/allianceModel.schema.json | 28 +++++++++++++++++++ 1 file changed, 28 insertions(+) diff --git a/generated/jsonschema/allianceModel.schema.json b/generated/jsonschema/allianceModel.schema.json index 5bff093c8..7c4772b63 100644 --- a/generated/jsonschema/allianceModel.schema.json +++ b/generated/jsonschema/allianceModel.schema.json @@ -3308,6 +3308,20 @@ "description": "Classifies the entity as private (for internal use) or not (for public use).", "type": "boolean" }, + "is_aberration": { + "description": "Indicates whether the allele is a chromosomal aberration (a multi-gene allele), as opposed to a traditional single-gene allele.", + "type": [ + "boolean", + "null" + ] + }, + "is_balancer": { + "description": "Indicates whether the allele is a balancer: a chromosomal rearrangement that suppresses recombination over a region of one or more chromosomes. Balancers are a subtype of aberration, so this is only applicable to alleles for which is_aberration is true.", + "type": [ + "boolean", + "null" + ] + }, "is_extinct": { "description": "Does the allele still exist in a population somewhere?", "type": [ @@ -4192,6 +4206,20 @@ "description": "Classifies the entity as private (for internal use) or not (for public use).", "type": "boolean" }, + "is_aberration": { + "description": "Indicates whether the allele is a chromosomal aberration (a multi-gene allele), as opposed to a traditional single-gene allele.", + "type": [ + "boolean", + "null" + ] + }, + "is_balancer": { + "description": "Indicates whether the allele is a balancer: a chromosomal rearrangement that suppresses recombination over a region of one or more chromosomes. Balancers are a subtype of aberration, so this is only applicable to alleles for which is_aberration is true.", + "type": [ + "boolean", + "null" + ] + }, "is_extinct": { "description": "Does the allele still exist in a population somewhere?", "type": [ From 61b0e828c0c5e83f93e0416f696980e03682433d Mon Sep 17 00:00:00 2001 From: sjm41 Date: Fri, 3 Jul 2026 08:15:42 +0100 Subject: [PATCH 3/4] Reword is_aberration description to use SO:1000183 definition Per review feedback: avoid "multi-gene allele" (a single transgenic insertion can affect multiple genes without being an aberration). Base the definition on SO:1000183 (chromosome_structure_variation): an alteration of the genome changing the structure or number of one or more chromosomes. Co-Authored-By: Claude Opus 4.8 (1M context) --- model/schema/allele.yaml | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/model/schema/allele.yaml b/model/schema/allele.yaml index a4cc73944..7a93cc2b5 100644 --- a/model/schema/allele.yaml +++ b/model/schema/allele.yaml @@ -1009,8 +1009,10 @@ slots: is_aberration: description: >- - Indicates whether the allele is a chromosomal aberration (a multi-gene - allele), as opposed to a traditional single-gene allele. + Indicates whether the allele is a chromosomal aberration, defined + (per SO:1000183 - chromosome_structure_variation) as an alteration of the + genome that leads to a change in the structure or number of one or more + chromosomes. domain: Allele range: boolean From b1b6e2e018a44edc98d0554a8d80baa664ace984 Mon Sep 17 00:00:00 2001 From: GitHub Action Date: Fri, 3 Jul 2026 07:16:55 +0000 Subject: [PATCH 4/4] Automated artifacts regeneration [skip actions] --- generated/jsonschema/allianceModel.schema.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/generated/jsonschema/allianceModel.schema.json b/generated/jsonschema/allianceModel.schema.json index 7c4772b63..801f642ae 100644 --- a/generated/jsonschema/allianceModel.schema.json +++ b/generated/jsonschema/allianceModel.schema.json @@ -3309,7 +3309,7 @@ "type": "boolean" }, "is_aberration": { - "description": "Indicates whether the allele is a chromosomal aberration (a multi-gene allele), as opposed to a traditional single-gene allele.", + "description": "Indicates whether the allele is a chromosomal aberration, defined (per SO:1000183 - chromosome_structure_variation) as an alteration of the genome that leads to a change in the structure or number of one or more chromosomes.", "type": [ "boolean", "null" @@ -4207,7 +4207,7 @@ "type": "boolean" }, "is_aberration": { - "description": "Indicates whether the allele is a chromosomal aberration (a multi-gene allele), as opposed to a traditional single-gene allele.", + "description": "Indicates whether the allele is a chromosomal aberration, defined (per SO:1000183 - chromosome_structure_variation) as an alteration of the genome that leads to a change in the structure or number of one or more chromosomes.", "type": [ "boolean", "null"