Therapeutics
Base strand and therapeutic models, together with the currently implemented antisense modalities and designs.
- class ASOkai.Antisense.Oligonucleotide(sequence, *, chemistry=None, **kwargs)[source]
Bases:
SerializableA single oligonucleotide strand stored 5’ to 3’ using
ACGT.- Parameters:
sequence (Seq)
chemistry (Chemistry | None)
- property sequence: Seq
Return the strand sequence in the 5’ to 3’ direction.
File contract
This is the JSON record ASOkai stores for Oligonucleotide. A JSON file has a root value and an objects table. Objects used once are inline; repeatedly used objects move to the table and are linked by references. Nested records follow their own class contracts.
The __class__ and __module__ fields identify the object type. ASOkai adds them when writing JSON; keep the fixed values shown below when supplying an input file yourself.
Example file
{ "root": { "__class__": "Oligonucleotide", "__module__": "ASOkai.Antisense._oligonucleotide", "sequence": "A", "chemistry": null }, "objects": {} }
Fields
JSON field
Details
__class__Accepted value:
"Oligonucleotide"Requirement: Required; keep unchanged in input files
Meaning: Identifies this JSON object as Oligonucleotide. ASOkai writes it automatically.
__module__Accepted value:
"ASOkai.Antisense._oligonucleotide"Requirement: Required; keep unchanged in input files
Meaning: Tells ASOkai where Oligonucleotide is defined. ASOkai writes it automatically.
sequenceAccepted value: string
Requirement: Required
Example:
"A"Meaning: Nucleotide sequence stored in the 5' to 3' direction.
chemistryAccepted value: a
Chemistryobject or nullRequirement: Required
Example:
nullMeaning: Optional chemistry attached to this strand.
- class ASOkai.Antisense.AntisenseTherapeutic(mechanism, *, id=None, **kwargs)[source]
Bases:
Serializable,ABCBase class for therapeutics that act through an antisense strand.
sequencemeans the antisense-strand sequence in the 5’ to 3’ direction. For a multi-stranded therapeutic, it does not include the sense or passenger strand. Subclasses define the design-derived ID; a supplied stored ID must match it.- Parameters:
mechanism (MechanismOfAction)
id (str)
- mechanism: MechanismOfAction
- id: str
- abstract property antisense_strand: Oligonucleotide
Return the oligonucleotide strand responsible for target binding.
- property sequence: Seq
Return the antisense-strand sequence in the 5’ to 3’ direction.
- class ASOkai.Antisense.ASO(sequence, mechanism, *, chemistry=None, id=None, **kwargs)[source]
Bases:
Oligonucleotide,AntisenseTherapeuticA single-stranded antisense therapeutic stored 5’ to 3’.
- Parameters:
sequence (Seq)
mechanism (MechanismOfAction)
chemistry (Chemistry | None)
id (str | None)
- property antisense_strand: Oligonucleotide
Return this ASO, which is itself the antisense strand.
File contract
This is the JSON record ASOkai stores for ASO. A JSON file has a root value and an objects table. Objects used once are inline; repeatedly used objects move to the table and are linked by references. Nested records follow their own class contracts.
The __class__ and __module__ fields identify the object type. ASOkai adds them when writing JSON; keep the fixed values shown below when supplying an input file yourself.
Example file
{ "root": { "__class__": "ASO", "__module__": "ASOkai.Antisense._aso", "sequence": "A", "chemistry": null, "mechanism": { "__class__": "MechanismOfAction", "__module__": "ASOkai.Biochemistry._mechanism_of_action", "id": "example" }, "id": "aso:mexample-s1x0" }, "objects": {} }
Fields
JSON field
Details
__class__Accepted value:
"ASO"Requirement: Required; keep unchanged in input files
Meaning: Identifies this JSON object as ASO. ASOkai writes it automatically.
__module__Accepted value:
"ASOkai.Antisense._aso"Requirement: Required; keep unchanged in input files
Meaning: Tells ASOkai where ASO is defined. ASOkai writes it automatically.
idAccepted value: string
Requirement: Required
Meaning: Optional stored ID, checked against the design-derived ID.
mechanismAccepted value: a
MechanismOfActionobjectRequirement: Required
Meaning: Mechanism through which the ASO acts.
sequenceAccepted value: string
Requirement: Required
Example:
"A"Meaning: Antisense-strand sequence in the 5' to 3' direction.
chemistryAccepted value: a
Chemistryobject or nullRequirement: Required
Example:
nullMeaning: Optional chemistry of this strand.
- class ASOkai.Antisense.Gapmer(sequence, mechanism, left_wing_length, gap_length, right_wing_length, *, chemistry=None, id=None, **kwargs)[source]
Bases:
ASOAn ASO with a wing-gap-wing design.
- Parameters:
sequence (Seq)
mechanism (MechanismOfAction)
left_wing_length (int)
gap_length (int)
right_wing_length (int)
chemistry (Chemistry | None)
id (str | None)
- left_wing_length: int
- gap_length: int
- right_wing_length: int
- property lengths: tuple[int, int, int]
Return the left-wing, gap, and right-wing lengths.
- property layout: str
Return the compact wing-gap-wing representation.
File contract
This is the JSON record ASOkai stores for Gapmer. A JSON file has a root value and an objects table. Objects used once are inline; repeatedly used objects move to the table and are linked by references. Nested records follow their own class contracts.
The __class__ and __module__ fields identify the object type. ASOkai adds them when writing JSON; keep the fixed values shown below when supplying an input file yourself.
Fields
JSON field
Details
__class__Accepted value:
"Gapmer"Requirement: Required; keep unchanged in input files
Meaning: Identifies this JSON object as Gapmer. ASOkai writes it automatically.
__module__Accepted value:
"ASOkai.Antisense._gapmer"Requirement: Required; keep unchanged in input files
Meaning: Tells ASOkai where Gapmer is defined. ASOkai writes it automatically.
idAccepted value: string
Requirement: Required
Meaning: Optional stored ID, checked against the design-derived ID.
mechanismAccepted value: a
MechanismOfActionobjectRequirement: Required
Meaning: Mechanism through which the gapmer acts.
sequenceAccepted value: string
Requirement: Required
Example:
"A"Meaning: Antisense-strand sequence in the 5' to 3' direction.
chemistryAccepted value: a
Chemistryobject or nullRequirement: Required
Example:
nullMeaning: Optional chemistry of this strand.
left_wing_lengthAccepted value: integer
Requirement: Required
Meaning: Number of nucleotides in the left wing.
gap_lengthAccepted value: integer
Requirement: Required
Meaning: Number of nucleotides in the central gap.
right_wing_lengthAccepted value: integer
Requirement: Required
Meaning: Number of nucleotides in the right wing.
- class ASOkai.Antisense.siRNA(antisense_strand, sense_strand, mechanism, binding, *, id=None, **kwargs)[source]
Bases:
AntisenseTherapeuticAn antiparallel duplex whose two strands are each stored 5’ to 3’.
- Parameters:
antisense_strand (Oligonucleotide)
sense_strand (Oligonucleotide)
mechanism (MechanismOfAction)
binding (Binding)
id (str | None)
- property antisense_strand: Oligonucleotide
Return the antisense, or guide, strand in the 5’ to 3’ direction.
- property sense_strand: Oligonucleotide
Return the sense, or passenger, strand in the 5’ to 3’ direction.
File contract
This is the JSON record ASOkai stores for siRNA. A JSON file has a root value and an objects table. Objects used once are inline; repeatedly used objects move to the table and are linked by references. Nested records follow their own class contracts.
The __class__ and __module__ fields identify the object type. ASOkai adds them when writing JSON; keep the fixed values shown below when supplying an input file yourself.
Example file
{ "root": { "__class__": "siRNA", "__module__": "ASOkai.Antisense._sirna", "antisense_strand": { "__class__": "Oligonucleotide", "__module__": "ASOkai.Antisense._oligonucleotide", "sequence": "A", "chemistry": null }, "sense_strand": { "__class__": "Oligonucleotide", "__module__": "ASOkai.Antisense._oligonucleotide", "sequence": "A", "chemistry": null }, "binding": { "__class__": "Binding", "__module__": "ASOkai.Antisense._binding", "first_sequence": "A", "second_sequence": "A", "structure": "(&)", "first_id": null, "second_id": null }, "mechanism": { "__class__": "MechanismOfAction", "__module__": "ASOkai.Biochemistry._mechanism_of_action", "id": "example" }, "id": "sirna:mexample-as1x0-ps1x0" }, "objects": {} }
Fields
JSON field
Details
__class__Accepted value:
"siRNA"Requirement: Required; keep unchanged in input files
Meaning: Identifies this JSON object as siRNA. ASOkai writes it automatically.
__module__Accepted value:
"ASOkai.Antisense._sirna"Requirement: Required; keep unchanged in input files
Meaning: Tells ASOkai where siRNA is defined. ASOkai writes it automatically.
idAccepted value: string
Requirement: Required
Meaning: Optional stored ID, checked against the design-derived ID.
mechanismAccepted value: a
MechanismOfActionobjectRequirement: Required
Meaning: Mechanism through which the siRNA acts.
antisense_strandAccepted value: a
OligonucleotideobjectRequirement: Required
Meaning: Guide strand stored in the 5' to 3' direction.
sense_strandAccepted value: a
OligonucleotideobjectRequirement: Required
Meaning: Passenger strand stored in the 5' to 3' direction.
binding