<div dir="ltr"><div><div>Ok, I will put it on line as soon as possible.<br><br></div>Bye bye,<br></div>Paolo<br></div><div class="gmail_extra"><br><div class="gmail_quote">2015-05-13 1:21 GMT+02:00 Andreas Prlic <span dir="ltr">&lt;<a href="mailto:andreas@sdsc.edu" target="_blank">andreas@sdsc.edu</a>&gt;</span>:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr">Hi Paolo,<div><br></div><div>I definitely don&#39;t want to curb your enthusiasm. What about packaging this up as a new module in your fork? Then we can review the code base and take it from there. Some criteria to review this on are A) Ease of maintenance B) extensibility for BLAST variants C) general applicability for any database searches (potential to hook up BLAST alternatives)</div><span class="HOEnZb"><font color="#888888"><div><br></div><div>Andreas</div><div><br></div><div><br></div></font></span></div><div class="gmail_extra"><div><div class="h5"><br><div class="gmail_quote">On Sun, May 10, 2015 at 5:04 AM, Paolo Pavan <span dir="ltr">&lt;<a href="mailto:paolo.pavan@gmail.com" target="_blank">paolo.pavan@gmail.com</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div><div><div><div>Hello!<br></div>I obviously share the opinion of Peter and Jose. Moreover, as already written, I have used this new feature in a second work that I could also describe and submit to biojava, if of any interest.<br><br>About Andreas&#39; questions:<br></div>&quot; Does your module support psiblast, rpsblast, tblastx and blast+ and what versions?&quot;: At now, it supports the blastn, blastp, blastx, tblastn and tblastx version 2.2.29. I&#39;m not very sure about psiblast and rpsblast, I should test it. <br>But it has been designed so that to update a single parser (as well to add a new search program and still remaining in the designed framework) there will be the need to write just a single class. This will keep the code simple and neat, very important in my opinion for future developers.<br><br>&quot;the disadvantage is that you constantly need to update them to the variant of blast plus version of the output file format&quot;: this unfortunately is a problem that everyone of us have to face if wants to use new ncbi programs. It happened for legacy-blast, it happened a lot of time for genbank format, it is happening for blast+. Just hoping that they would have the kindness explicit the format version inside the xml if not to name the program itself in different way, such for example blast3 or blast++, to avoid confusion. We can&#39;t do anything about that, we can just try to make the things simple and easy to reuse.<br><br></div>Just to express my opinion, I think that every bio project should first of all address theese &quot;base level&quot; problem more than others to allow the developer to focus on higher abstraction details. I&#39;m sure that this will be appreciated by the community, increasing the base of users of biojava.<span><font color="#888888"><br><br></font></span></div><span><font color="#888888">Paolo</font></span><div><div><br><div><div><div class="gmail_extra"><br><div class="gmail_quote">2015-05-06 12:15 GMT+02:00 Jose Manuel Duarte <span dir="ltr">&lt;<a href="mailto:jose.duarte@psi.ch" target="_blank">jose.duarte@psi.ch</a>&gt;</span>:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">I&#39;d say that having some common data structure to model the output of a sequence homology search should be benefitial. For instance a blast alternative might appear one day (I&#39;m eagerly awaiting for it!). The common data structure should be able to model the outputs of any of the different softwares.<br>
<br>
There are already some alternatives to blast:<br>
<br>
SANS and SANSparallel by Liisa Holm (<a href="http://www.ncbi.nlm.nih.gov/pubmed/22962464" target="_blank">http://www.ncbi.nlm.nih.gov/pubmed/22962464</a>, <a href="http://nar.oxfordjournals.org/content/early/2015/04/08/nar.gkv317.full" target="_blank">http://nar.oxfordjournals.org/content/early/2015/04/08/nar.gkv317.full</a>)<br>
USEARCH (commercial) (<a href="http://drive5.com/usearch/" target="_blank">http://drive5.com/usearch/</a>)<br>
BLAT (<a href="https://genome.ucsc.edu/FAQ/FAQblat.html#blat3" target="_blank">https://genome.ucsc.edu/FAQ/FAQblat.html#blat3</a>)<br>
<br>
In fact SANSparallel looks very promising, it&#39;s incredibly fast though less sensitive than blast.<br>
<br>
Cheers<span><font color="#888888"><br>
<br>
Jose</font></span><div><div><br>
<br>
<br>
<br>
On <a href="tel:06.05.2015%2010" value="+390605201510" target="_blank">06.05.2015 10</a>:47, Peter Cock wrote:<br>
</div></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div><div>
On Wed, May 6, 2015 at 6:02 AM, Andreas Prlic &lt;<a href="mailto:andreas@sdsc.edu" target="_blank">andreas@sdsc.edu</a>&gt; wrote:<br>
<blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
On Tue, May 5, 2015 at 1:18 PM, Paolo Pavan &lt;<a href="mailto:paolo.pavan@gmail.com" target="_blank">paolo.pavan@gmail.com</a>&gt; wrote:<br>
<blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
As seen in other Bio projects, aside with Sequence IO and Alignment IO<br>
procedures it could have a Search result IO also.<br>
</blockquote>
I never understood why other Bio* projects have special Blast modules.<br>
Perhaps XML parsing is not as easy as it is in Java? Please see the code at<br>
the bottom of this message.<br>
</blockquote>
Python at least has a range of XML parsing libraries which are up to the<br>
task. However, as Paolo wrote:<br>
<br>
<blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
The advantage is to define common data structures that models Hsp, Hits,<br>
Results without taking care (ie. making abstraction) of the underlying<br>
search program.<br>
</blockquote></blockquote>
This is the big advantage of BioPerl and Biopython&#39;s SearchIO module.<br>
You can at least in theory switch between parsing BLAST XML, BLAST<br>
tabular, BLAST plain text (shudder), or another related format without<br>
major changes to your code.<br>
<br>
<blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
and the disadvantage is that you constantly need to update them to the<br>
variant of blast plus version of the output file format.<br>
</blockquote>
I think it is much better to have this housekeeping done once centrally in<br>
a Bio* library that re-invented by anyone parsing the BLAST output.<br>
However, the NCBI BLAST XML output has been fairly stable, and the<br>
new output has a formal schema so should be even more dependable.<br>
<br>
Peter<br></div></div><span>
_______________________________________________<br>
biojava-dev mailing list<br>
<a href="mailto:biojava-dev@mailman.open-bio.org" target="_blank">biojava-dev@mailman.open-bio.org</a><br>
<a href="http://mailman.open-bio.org/mailman/listinfo/biojava-dev" target="_blank">http://mailman.open-bio.org/mailman/listinfo/biojava-dev</a><br>
</span></blockquote><div><div>
<br>
_______________________________________________<br>
biojava-dev mailing list<br>
<a href="mailto:biojava-dev@mailman.open-bio.org" target="_blank">biojava-dev@mailman.open-bio.org</a><br>
<a href="http://mailman.open-bio.org/mailman/listinfo/biojava-dev" target="_blank">http://mailman.open-bio.org/mailman/listinfo/biojava-dev</a><br>
</div></div></blockquote></div><br></div></div></div></div></div></div>
<br>_______________________________________________<br>
biojava-dev mailing list<br>
<a href="mailto:biojava-dev@mailman.open-bio.org" target="_blank">biojava-dev@mailman.open-bio.org</a><br>
<a href="http://mailman.open-bio.org/mailman/listinfo/biojava-dev" target="_blank">http://mailman.open-bio.org/mailman/listinfo/biojava-dev</a><br></blockquote></div><br><br clear="all"><div><br></div></div></div><span class="">-- <br><div><div dir="ltr"><div><div dir="ltr">-----------------------------------------------------------------------<br>Dr. Andreas Prlic<br>RCSB PDB Protein Data Bank</div><div>Technical &amp; Scientific Team Lead</div><div dir="ltr">University of California, San Diego<div><br></div><div>Editor Software Section <br><div>PLOS Computational Biology<div><div><div><br></div><div>BioJava Project Lead<br>-----------------------------------------------------------------------<br></div></div></div></div></div></div></div></div></div>
</span></div>
</blockquote></div><br></div>