torchcell.datamodels.schema.ExpressionModulationPerturbation
- class ExpressionModulationPerturbation(*, systematic_gene_name: str, perturbed_gene_name: str, gene_namespace: Literal['scerevisiae_s288c_sgd_systematic', 'scerevisiae_cenpk113_7d_locus_tag', 'scerevisiae_peter2018_pangenome_orf', 'ecoli_k12_mg1655_bnumber', 'ecoli_k12_bw25113_locus_tag', 'pputida_kt2440_locus_tag', 'ecoli_b_rel606_locus_tag', 'ecoli_k12_w3110_refseq_locus_tag'], identifier_mapping: DerivedIdentifierMapping | None = None, provenance: str = 'engineered', state: str = 'present', mechanism_so_id: str = 'SO:0001998', mechanism_so_name: str = 'sgRNA', expression_direction: str, crispr: CrisprConstruct)[source]
Bases:
GenePerturbation,ModelStrictAXIS 4 (ABC) – engineered expression modulation of a present gene.
The gene remains PRESENT (
state="present"), its DNA copy number is unchanged, and its sequence is unedited; only expression OUTPUT changes, driven in trans by an inserted dead-Cas guide-directed effector. Mechanism is the guide itself (SO:0001998sgRNA). Concrete children setexpression_direction(increased=activation, decreased= interference). This ABC is never instantiated directly. Design:[[plan.torchcell-crispr-expression-perturbation.2026.07.12]].- classmethod validate_expression_direction(v: str) str[source]
Direction is increased (activation) or decreased (interference).
- model_config: ClassVar[ConfigDict] = {'extra': 'forbid', 'frozen': True}
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].