[Bioperl-l] SNP reference file download
vrramnar at student.cs.uwaterloo.ca
vrramnar at student.cs.uwaterloo.ca
Wed Jul 26 02:44:17 UTC 2006
Hey Chris,
I believe I updated all those modules already as I downloaded the entire DB.tar
from Bioperl live. Here is my code:
#!/usr/bin/perl -w
use Bio::Perl;
use Bio::DB::EUtilities;
my @ids = qw(rs4986950);
# With the "rs" before the number the warning says: "no returned links"
# Without the "rs" before the number the warning says: "No databases returned;
empty linkset"
my $elink = Bio::DB::EUtilities->new( -eutil => 'elink',
-id => \@ids,
-db => 'omim',
-dbfrom => 'snp');
$elink->get_response;
print "IDs: ", join q(,), $elink->get_ids;
Which gives the following error:
-------------------- WARNING ---------------------
MSG: No databases returned; empty linkset
---------------------------------------------------
------------- EXCEPTION -------------
MSG: Must use database to access IDs
STACK Bio::DB::EUtilities::ElinkData::get_LinkIds_by_db /Library/Perl/5.8.6/Bio/
DB/EUtilities/ElinkData.pm:201
STACK Bio::DB::EUtilities::get_ids /Library/Perl/5.8.6/Bio/DB/EUtilities.pm:482
STACK toplevel getOmimNum:13
--------------------------------------
All I really want is the OMIM id number under the section: NCBI Resource Links
from the page:
http://www.ncbi.nlm.nih.gov/SNP/snp_ref.cgi?rs=1800562
Any idea why this still isn't working??
Rohan
Quoting Chris Fields <cjfields at uiuc.edu>:
> Odd, I thought XML::Simple was part of the 5.8 core. Guess I was
> wrong. I plan on changing this to a more robust parser soon (likely
> XML::SAX or XML::Twig, which will also require a download).
>
> That warning occurs when if you don't have a link to OMIM present (No
> databases returned; empty linkset). The way Elink works is it stores
> internal data in a separate object (ELinkData) contained in an
> internal cache. The method get_ids() works for all EUtilities to
> retrieve IDs, even from ELink objects. The unique problem with ELink
> is, since you can search multiple databases. you can retrieve
> multiple sets of IDs.
>
> If you haven't done it, update your EUtilities; the problem is
> similar to one I fixed today (I stated something about updating in my
> last post). Also, update the main Bio::DB::EUtilities and
> Bio::GenericWebDBI as well (the last is the base class from which
> EUtilities is based). The 'Count:1' was a debugging statement I
> forgot to remove a while ago which I changed in CVS yesterday. It's
> possible that commit had other changes which I forgot about.
>
> Sorry about that, but it is still experimental (emphasis on the
> 'mental').
>
> Chris
>
> On Jul 25, 2006, at 5:53 PM, vrramnar at student.cs.uwaterloo.ca wrote:
>
> >
> > Hey Chris,
> >
> > Ignore the last email, I fixed that problem and downloaded/
> > installed the
> > required XML modules.
> >
> > However, I am now getting this error message:
> >
> > -------------------- WARNING ---------------------
> > MSG: No databases returned; empty linkset
> > ---------------------------------------------------
> > Count: 1
> >
> > ------------- EXCEPTION -------------
> > MSG: Must use database to access IDs
> > STACK Bio::DB::EUtilities::ElinkData::get_LinkIds_by_db /Library/
> > Perl/5.8.6/Bio/
> > DB/EUtilities/ElinkData.pm:201
> > STACK Bio::DB::EUtilities::get_ids /Library/Perl/5.8.6/Bio/DB/
> > EUtilities.pm:483
> > STACK toplevel getOmimNum:15
> >
> > --------------------------------------
> >
> > What does this mean??
> >
> > Rohan
> >
> > Quoting Chris Fields <cjfields at uiuc.edu>:
> >
> >> Okay, had to fix an odd bug from ELink due to the way NCBI returns
> >> data.
> >>
> >> You'll need to update the EUtilities modules in bioperl from CVS
> >> to make
> >> sure this works.
> >>
> >> This is how it's done:
>
----------------------------------------
This mail sent through www.mywaterloo.ca
More information about the Bioperl-l
mailing list