[Biojava-l] Parse a Blast
Sébastien PETIT
great_fred at yahoo.com
Mon Jun 13 08:47:36 EDT 2005
Hello, Mark
Thanks for the answer...
The parser you talked me about, may be the good one...
But I'm maybe not enought good in Java and I can't use it.
I spent all the morning trying to understand this class and how it
works, but, nothing....I didn't understand how I can use it...
Thank you for any additional help
Great-Fred
--- mark.schreiber at novartis.com a écrit :
> Hello -
>
> I suspect the problem is that you are using the BlastLikeSAXParser.
> This
> was written in the days before blast xml was available (and stable)
> and is
> an adapter that parses a non-xml blast report and produces SAX
> events.
>
> The parser you want is
> org.biojava.bio.program.sax.blastxml.BlastXMLParser
>
> Hope this helps,
>
> - Mark
>
>
>
>
> Sébastien PETIT <great_fred at yahoo.com>
> Sent by: biojava-l-bounces at portal.open-bio.org
> 06/10/2005 10:18 PM
>
>
> To: biojava-l at biojava.org
> cc: (bcc: Mark Schreiber/GP/Novartis)
> Subject: [Biojava-l] Parse a Blast
>
>
> Hello
>
> First of all, sorry for my English (I'm French..)
> Now, my problem...
> I have Blast in XML format. I want to parse it because I want just
> the
> alignment.
> But, when I use a script found on the Net, the answer is :
> --> org.xml.sax.SAXException: Could not recognise the format of this
> file as one supported by the framework.
>
> Does anybody have the same problem?
> Or Does anybody have an idea to resolve my problem?
>
> Here is the script (Sorry, the comment are in French..)
>
> import java.io.*;
> import java.util.*;
>
> import org.biojava.bio.program.sax.*;
> import org.biojava.bio.program.ssbind.*;
> import org.biojava.bio.search.*;
> import org.biojava.bio.seq.db.*;
> import org.xml.sax.*;
> import org.biojava.bio.*;
>
> public class BlastParser {
> /**
> * args[0] est assumé être le nom du fichier de sortie BLAST */
> public static void main(String[] args) {
> try {
> //obtenir les entrées Blast sous la forme de Stream
> InputStream is = new FileInputStream(args[0]);
>
> //construire un BlastLikeSAXParser
> BlastLikeSAXParser parser = new BlastLikeSAXParser();
>
> //construire un adaptateur pour SAX event qui les passera a
> un
> Handler.
> SeqSimilarityAdapter adapter = new
> SeqSimilarityAdapter();
>
> //initialiser l'adaptateur des SAX events de l'objet parser
> parser.setContentHandler(adapter);
>
> //la liste qui contiendra les SeqSimilaritySearchResults
> List results = new ArrayList();
>
> //créer le SearchContentHandler qui construira les
> SeqSimilaritySearchResults
> //dans la liste results
> SearchContentHandler builder = new
> BlastLikeSearchBuilder(results,
> new DummySequenceDB("queries"), new
> DummySequenceDBInstallation());
>
> //enregistrer builder aupres de adapter
> adapter.setSearchContentHandler(builder);
>
> //parcourir le fichier; après, la liste result contiendra
> //les SeqSimilaritySearchResults
>
> parser.parse(new InputSource(is));
> //formatResults(results);
> }
> catch (SAXException ex) {
> //probleme de XML
> ex.printStackTrace();
> }
> catch (IOException ex) {
> //probleme de IO, comme un fichier introuvable
> ex.printStackTrace();
> }
> }
> }
>
> Thank you for any answer...
>
> Great-Fred
>
>
>
>
>
>
>
___________________________________________________________________________
>
>
> Appel audio GRATUIT partout dans le monde avec le nouveau Yahoo!
> Messenger
>
> Téléchargez cette version sur http://fr.messenger.yahoo.com
> _______________________________________________
> Biojava-l mailing list - Biojava-l at biojava.org
> http://biojava.org/mailman/listinfo/biojava-l
>
>
>
>
___________________________________________________________________________
Appel audio GRATUIT partout dans le monde avec le nouveau Yahoo! Messenger
Téléchargez cette version sur http://fr.messenger.yahoo.com
More information about the Biojava-l
mailing list