Add optional is_aberration and is_balancer flags to Allele#327
Conversation
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) <noreply@anthropic.com>
ReviewAdds two optional boolean flags The change is clean and follows the established
No assertions to raise. Minor note (non-blocking): the LGTM. |
|
FYI: I put this proposal on the agenda for the Disease and Pheno WG meeting on July 8th. |
gm119
left a comment
There was a problem hiding this comment.
I would change the 'is_aberration' descriptions so that it avoids mention of 'a multi-gene allele' as a single transgenic insertion can also affect multiple genes (e.g. insertion into overlapping genes), and we would not regard those as an 'aberration'.
Our current FB QA/QC checks require us to type aberrations with a SO term that sits in the 'chromosome_structure_variation ; SO:1000183' branch, this term is defined as 'An alteration of the genome that leads to a change in the structure or number of one or more chromosomes.'
So I think the key part is the 'change in the structure or number of one or more chromosomes'
So I would use the SO term as the basis of the linkml definition for is_aberration instead of having 'a multi-gene allele'., so maybe:
is_aberration:
description: >-
Indicates whether the allele is a chromosomal aberration, defined as 'An alteration of the genome that leads to a change in the structure or number of one or more chromosomes.' (SO:1000183).
domain: Allele
range: boolean
(or however SO terms should be referred to)
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) <noreply@anthropic.com>
Summary
FlyBase makes a clear distinction between traditional single-gene alleles and chromosomal aberrations (multi-gene alleles) — handling them as separate data classes (FBal vs FBab) — and balancers are a subtype of aberration. This adds two optional booleans to
Allele/AlleleDTOto capture that distinction within the Alliance singleAlleleclass:is_aberration— indicates the allele is a chromosomal aberration (multi-gene allele) rather than a traditional single-gene allele.is_balancer— indicates the allele is a balancer (a recombination-suppressing chromosomal rearrangement). Balancers are a subtype of aberration, so this is only applicable to alleles for whichis_aberrationis true (documented in the slot description; not schema-enforced).Both follow the existing
is_extinct/is_extrachromosomal/is_integratedpattern — plain optional booleans reused directly in the DTO.Also
Removes the dead
aberrationslot_usageentry (flagged by[CG]as no longer declared) and its unused standalone slot definition, whichis_aberrationsupersedes. Both were already absent from the generated artifacts.Notes
ruleenforcing balancer ⟹ aberration (considered, deliberately left out).generated/artifacts will be regenerated by CI.🤖 Generated with Claude Code