[Bioperl-l] Entrez Gene parser questions

Mingyi Liu mingyi.liu at gpc-biotech.com
Tue Jun 7 19:06:28 EDT 2005

Hi, Annie

Annie must've been using the Bio::ASN1::EntrezGene V1.09, which worked 
fine with your entrezgene.pm in bioperl-live at least a couple days ago, 
when I replied to Annie.  V1.09 also did not have any significant 
changes in parser code vs. 1.07.

I guess it has something to do with V1.4 since the sample script you 
used below runs perfectly fine on my Bioperl 1.5 + entrezgene.pm.  The 
procedure you used was also correct (there's no need to 'use 
Bio::ASN1::EntrezGene;' though).  Try follow Stefan's suggestion first 
(although I don't quite understand why Bio::ASN1::EntrezGene complained 
about non numerica operon, which can only result from incorrect calling 
of the function.  But Stefan's entrezgene was using correct calling and 
it runs perfectly for me.  I was using entrezgene.pm CVS version 1.9.

Keep us posted on your progress.

BTW, Stefan, you could call Bio::ASN1::EntrezGene with either '-file' 
(bioperl style) or 'file' (I allowed both when I implemented this switch 
I think. I usually just use file, which might explain your note in the 
comment in your script.  I just noticed the comment.


Stefan Kirov wrote:

> Hi Annie,
> Few more things to update:
> Bio::AnnotatableI and Bio::SeqFeatureI.  I believe this is the reason 
> your script does not work. Update also Bio::SeqIO::entrezegene- I 
> added some fixed so you will not see those nasty warning when using 
> strict (nothing critical though).
> I am not sure we have the same versions for Bio::ASN1::EntrezGene. I 
> have 1.0.7. Where did you get it from (maybe mine is older)?
> Stefan
> Law, Annie wrote:
>> Hi,
>> Thanks for all of the replies.
>> I am using bioperl 1.4 and I have done the following:
>> 1. installed  Bio::ASN1::EnztrezGene (using perl Makefile.PL, make, 
>> make test, make install)
>> 2. got a copy of the entrezgene.pm from bioperl-live and put it in 
>> the Bio/SeqIO directory
>> 3. copied the Bio::Annotation::DBLink DBLink.pm file and put them in 
>> the corresponding directory
>> 4. the Bio::Cluster::SequenceFamily file was already up to date
>> 5. also have all the most recent bioperl-live Bio::SeqFeature::Gene 
>> modules
>> I grabbed the ASN file from 
>> ftp://ftp.ncbi.nlm.nih.gov/gene/DATA/ASN/Mammalia/
>> I then wrote a simple perl script which includes:
>> #!/usr/bin/perl -w
>> use strict;
>> use Bio::ASN1::EntrezGene;
>> use Bio::SeqIO;
>> use Bio::Annotation::DBLink;
>> use Bio::Cluster::SequenceFamily;
>> my $file = '/var/lib/mysql/Homo_sapiens';
>> my $seqio = Bio::SeqIO->new(-format => 'entrezgene',
>>                               -file => $file,
>>                               -debug => 'on');
>> my ($gene,$genestructure,$uncaptured) = $seqio->next_seq;
>> After I run this script I get the following errors:
>> Useless use of hash element in void context at 
>> /usr/lib/perl5/site_perl/5.8.0/Bio/SeqIO/entrezgene.pm line 317.
>> Argument "-trimopt" isn't numeric in numeric eq (==) at 
>> /usr/lib/perl5/site_perl/5.8.0/Bio/ASN1/EntrezGene.pm line 450.
>> Pseudo-hashes are deprecated at 
>> /usr/lib/perl5/site_perl/5.8.0/Bio/SeqIO/entrezgene.pm line 148.
>> Use of uninitialized value in string ne at 
>> /usr/lib/perl5/site_perl/5.8.0/Bio/SeqIO/entrezgene.pm line 150.
>> Pseudo-hashes are deprecated at 
>> /usr/lib/perl5/site_perl/5.8.0/Bio/SeqIO/entrezgene.pm line 416.
>> Can't locate object method "add_tag_value" via package 
>> "Bio::SeqFeature::Generic" at 
>> /usr/lib/perl5/site_perl/5.8.0/Bio/SeqFeature/Generic.pm line 234.
>> I'm not sure what I am missing?
>> Thanks so much,
>> Annie.

More information about the Bioperl-l mailing list