GslCore
GslCore copied to clipboard
FEA: Allow annotation of DNA topology
Intro
GSL designs are inherently linear in specification. Many of the actual pieces of DNA that scientists are constructing are circular and contain additional implicit DNA sequences in the final structure. The actual process of circularisation usually arises during construction (i.e. downstream of the design), but are inherently a part of the DNA design and it would be ideal to capture that intention.
Proposal
Add a global persistent pragma that specifies the DNA topology in a way that would be associated with any ongoing designs. Associate the topology (linear or circular) with the assembly. Update any output format generators to make any appropriate adjustments in format (most DNA structure file formats have some way of representing linear or circular) to reflect the desired topology.
E.g.
// This would be linear DNA
uFOO4; oERG9 ; dFOO4
#topology circular
// these would be emitted as circular designs e.g. plasmids
gTDH3; oERG6 ; tTDH3
gTDH1; oERG6 ; tTDH3
#topology linear
// this would be emitted as a linear design
gTDH2 ; oERG6 ; rERG7
Questions
-
Is it worthwhile to put the topology directly into the assembly data structure or can we employ check for the presence of the pragma in each output generator. I believe it would be cleaner to make it an explicit property but open to doing it both ways.
-
I will file us as a related issue, but this also brings up the question of how the DNA is packaged. It is extremely common to introduce flanking sequences when DNA is actually constructed e.g. to clone into a vector. Representing the design as a circular piece of DNA without including these extra sequences in at least some of the generated material is incomplete. I will file us as a separate issue but they are related.