[Biojava-dev] BioJava3 release - code organization for "old" code - Blast info

Keith Perry KPerry at idtdna.com
Tue Jan 11 16:36:31 UTC 2011


Thanks for the info Scooter!  I will take a look at the effort of creating a nice Blast xml parser (similar to yours in BlastXMLQuery) that includes creating a blast record (like the biopython version http://www.biopython.org/DIST/docs/tutorial/Tutorial.html#htoc88).  I checked out the biojava3-ws module briefly, but from what I can tell it doesn't have a "blast record" class either.  I am not sure if the biojava3-ws module also includes automated throttling (so NCBI doesn't block you), but that would be a nice feature as well.  I might start out using the biojava3-ws, but we might be going the local route (with the blastx executables), so I would like to build a wrapper for that as well.  

Anyway, anything that might be helpful to others, I will be sure to submit back, and I will keep the modularity going on.  That's how I usually try to write my code, although it doesn't always start like that ;)

-----Original Message-----
From: Scooter Willis [mailto:HWillis at scripps.edu] 
Sent: Tuesday, January 11, 2011 9:54 AM
To: Keith Perry
Subject: Re: [Biojava-dev] BioJava3 release - code organization for "old" code - Blast info

Keith

For interfacing with Blast I have taken the route of loading the results as XML and using XPATH to query what I need. A simple example BlastXMLQuery.java in the biojava3-genome module. If you have specific requirements for interfacing with Blast would welcome any code you can contribute by either migrating the 1.7 module or starting fresh and focusing on parsing the XML into useable classes.

There is a biojava3-ws module that will Query NCBI Blast via web services. Not sure if that is close to what you need. I haven't used it.

The task of rewriting and porting all the features of BioJava 1.7 would be a huge undertaking for an all volunteer organization. Our primary focus was modularizing the code and minimize the interdependencies as much as possible. The biojava3-core module provides the glue across multiple modules for those that need to incorporate multiple modules in their application. With the modularization it makes it easier to have developer work on very specific functionality allowing biojava3 to be a little more dynamic.

Will let Andreas comment on packaging everything up as one zip file. You probably won't need everything which allows you to download the individually the modules you need. If you are able to work on a blast interface it would be great if you could return sequence objects in Biojav3 core. If you find you are missing anything in the api I can work on getting it added in.

Thanks

Scooter


On Jan 11, 2011, at 10:30 AM, Keith Perry wrote:

> Hi all,
> A couple of notes on the BioJava3 release.  I am not sure I would assume that everyone is using Maven (we are using Gradle at our company).  Could someone please package up the "manual download" files into a single zip/jar/tar.gz or some type of archive format (I would greatly appreciate it)?  Downloading 18 files individually is a pain.
> 
> I was pretty excited to see BioJava3 to get released, but then I realized that no support at all for blast (as far as I can tell).  It looks like you need to use the old biojava-legacy stuff in biojava 1.7.  Is there something that I could do to get this example:  http://www.biojava.org/wiki/BioJava:CookBook:Blast:Parser up to the new BioJava3 level?  If I need to take a couple modules and refactor, I would be willing to do it (or at least give it a try).
> 
> On another note, is there some type of chart that shows feature/version for all the features in both 1.7 and biojava3.  It would be nice for those new to the project, and it might let other developers know what holes biojava3 still has (as compared to the legacy).
> 
> Thanks,
> 
> Keith B. Perry | 319.626.9677 | kperry at idtdna.com | Integrated DNA Technologies > Bioinformatics Team > Software Systems Engineer
> 
> 
> _______________________________________________
> biojava-dev mailing list
> biojava-dev at lists.open-bio.org
> http://lists.open-bio.org/mailman/listinfo/biojava-dev





More information about the biojava-dev mailing list