Home
Reading
Searching
Subscribe
Sponsors
Statistics
Posting
Contact
Spam
Lists
Links
About
Hosting
Filtering
Features Download
Marketing
Archives
FAQ
Blog
 
Gmane
From: Fields, Christopher J <cjfields <at> illinois.edu>
Subject: Re: GI to taxonomy
Newsgroups: gmane.comp.lang.perl.bio.general
Date: Monday 16th September 2013 15:14:10 UTC (over 3 years ago)
Just tested it and it seems to work fine (passes tests).  I committed a
change to both the master and 1.6 branches.

chris

On Sep 16, 2013, at 9:58 AM, Bernd W  wrote:

> Hi Chris, Brian,
> 
> Indeed, according to NCBI docs
> (http://www.ncbi.nlm.nih.gov/books/NBK25500/),
the base URL should be:
> 
> http://eutils.ncbi.nlm.nih.gov/entrez/eutils/
> 
> 
> Example seach:
> http://eutils.ncbi.nlm.nih.gov/entrez/eutils/esearch.fcgi?db=pubmed&term=science[journal]+AND+breast+cancer+AND+2008[pdat]
> 
> 
> Kind regards,
> Bernd
> 
> On Mon, Sep 16, 2013 at 4:39 PM, Fields, Christopher J
>  wrote:
>> That's possible; there are various eutils interfaces scattered
throughout bioperl, so it's possible some haven't been updated to the most
recent URL.  Brian, does a modified URL work?
>> 
>> chris
>> 
>> On Sep 16, 2013, at 8:08 AM, Brian Osborne 
wrote:
>> 
>>> Chris,
>>> 
>>> Bio::DB::Taxonomy::entrez uses this URL by default:
>>> 
>>> http://www.ncbi.nih.gov/entrez/eutils/
>>> 
>>> Should it be using this one?
>>> 
>>> http://eutils.ncbi.nlm.nih.gov/entrez/eutils/
>>> 
>>> Brian O.
>>> 
>>> On Sep 13, 2013, at 4:06 AM, Alexey Morozov
 wrote:
>>> 
>>>> Dear colleagues,
>>>> I have a bunch of fasta genomes annotated only by their GI numbers,
and
>>>> need to get a taxonomy for all of them. So I rewrote get_tree method
from
>>>> Bio::DB::Taxonomy:
>>>> 
>>>> 12 open GIS, GI_FILE;
>>>> 13 my $tax_db=Bio::DB::Taxonomy->new(source=>'entrez');
>>>> 14 my $tree;
>>>> 15 while ()
>>>> 16         {
>>>> 17         print "Requesting data for GI $_\n";
>>>> 18         my $taxon=$tax_db->get_taxon(-gi=>"$_",-db=>'nucleotide');
>>>> 19         if ($@){die $@;}#Catch exception and die, just in case
>>>> 20                 # or die "Cannot get taxonomy data for GI$_:$!\n";
>>>> 21         if ($tree)
>>>> 22                 {
>>>> 23                 $tree->merge_lineage($taxon);
>>>> 24                 }else
>>>> 25                 {
>>>> 26                 $tree=Bio::Tree::Tree->new(-node=>$taxon);
>>>> 27                 }
>>>> 28         }
>>>> 
>>>> This (line 18) way to invoke Bio::DB::Taxonomy->get_taxon is
documented and
>>>> I expect to get taxon objects. Yet all I get is
>>>> 
>>>> 
>>>> --------------------- WARNING ---------------------
>>>> MSG: Must have provided a valid HASHref for -params
>>>> ---------------------------------------------------
>>>> Requesting data for GI 15604717
>>>> 
>>>> 
>>>> ------------- EXCEPTION: Bio::Root::Exception -------------
>>>> MSG: Can't query website: 400 URL must be absolute
>>>> STACK: Error::throw
>>>> STACK: Bio::Root::Root::throw /usr/share/perl5/Bio/Root/Root.pm:472
>>>> STACK: Bio::DB::Taxonomy::entrez::get_taxon
>>>> /usr/share/perl5/Bio/DB/Taxonomy/entrez.pm:247
>>>> STACK: ./get_tax:18
>>>> -----------------------------------------------------------
>>>> 
>>>> Directly using Bio::DB::Taxonomy::entrez doesn't help, GI numbers load
OK,
>>>> so I have no clue what happened.
>>>> Need help.
>>>> --
>>>> Alexey Morozov,
>>>> LIN SB RAS, bioinformatics group.
>>>> Irkutsk, Russia.
>>>> _______________________________________________
>>>> Bioperl-l mailing list
>>>> [email protected]
>>>> http://lists.open-bio.org/mailman/listinfo/bioperl-l
>>> 
>>> 
>>> _______________________________________________
>>> Bioperl-l mailing list
>>> [email protected]
>>> http://lists.open-bio.org/mailman/listinfo/bioperl-l
>> 
>> 
>> _______________________________________________
>> Bioperl-l mailing list
>> [email protected]
>> http://lists.open-bio.org/mailman/listinfo/bioperl-l
 
CD: 4ms