<div dir="ltr">Hi Peter,<br><br>Thanks for your response. To address your earlier point about confusion in writing ABI files from scratch, I suppose that BioPython could provide default values for the fields users would not usually concern themselves with (such as base order, mobility filenames, and lane number). These values could then, of course, be overridden at the user's discretion.<br><br>Here are some use cases for writing/rewriting ABI files:<br><ul><li>Modifying base calls on existing ABI files, like you previously mentioned</li><li>Modifying peak locations on existing ABI files (sometimes the automated base calling algorithm skips and/or double counts peaks in the sequencing trace)</li><li>Modifying traces of existing ABI files to remove noise and other sequencing artifacts</li><li>Generating new ABI files from scratch for the purposes of software testing</li><li>Converting data that is not in ABI format (such as data from an API) into ABI format, for storage or input into another software pipeline</li><li>Automated annotation of existing ABI files</li></ul>In short, most of these use cases revolve around software pipelines or libraries that accept ABI files as input. Oftentimes such software can't be modified to allow alternative forms of input, so the ability to generate/modify/preprocess ABI files would enable more technical users to maximize the potential of such software. Some examples of software that accept Sanger sequencing input include TIDE, ICE, and DECODR (full disclosure – I worked on DECODR), as well as EditR.<div><div><br><div><div><div>Thanks,<br>Rohan</div></div></div></div></div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Tue, Sep 28, 2021 at 9:46 AM Peter Cock <<a href="mailto:p.j.a.cock@googlemail.com" target="_blank">p.j.a.cock@googlemail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">Hello Rohan,<br>
<br>
The ABI format has a vast number of metadata fields which would make a<br>
writer rather complicated to use (except for the special case of<br>
loading an existing file, modifying it, and writing out the new<br>
version).<br>
<br>
Do you have a use case? The only one I can come up with it redoing the<br>
base calling, and then updating the called sequence in the ABI file.<br>
<br>
Thanks,<br>
<br>
Peter<br>
<br>
On Sun, Sep 26, 2021 at 8:34 PM Rohan Kanchana <<a href="mailto:rohankanchana@gmail.com" target="_blank">rohankanchana@gmail.com</a>> wrote:<br>
><br>
> Dear all,<br>
><br>
> I'm Rohan Kanchana, a student at MIT. I observed that Bio.SeqIO only supports read operations for the "abi" format. I have code that would support a write operation for the "abi" format, so I wanted to ask the following: why are write operations not currently supported by BioPython for the "abi" format? If there is no reason, would making such a contribution to the BioPython library be useful?<br>
><br>
> Thanks,<br>
> Rohan<br>
> _______________________________________________<br>
> Biopython mailing list  -  <a href="mailto:Biopython@biopython.org" target="_blank">Biopython@biopython.org</a><br>
> <a href="https://mailman.open-bio.org/mailman/listinfo/biopython" rel="noreferrer" target="_blank">https://mailman.open-bio.org/mailman/listinfo/biopython</a><br>
</blockquote></div>