[Bioperl-l] Annotation-DBLink- version numbers repeating

Chris Fields cjfields at uiuc.edu
Thu Oct 19 16:23:40 UTC 2006


> Here is the overload code:
> 
> use overload '""' => sub {
> 	(($_[0]->database ? $_[0]->database . ':' : '' )
> 	. ($_[0]->primary_id ? $_[0]->primary_id : '')
> 	. ($_[0]->version ? '.' . $_[0]->version : ''))
> 	|| '' };
> 
> Except that the last '||' is redundant and unnecessary (it either
> does nothing or replaces an empty string with an empty string), I
> don't see the potential for duplicating the version number here -
> unless primary_id() did that, which I don't see it doing.
> 
> So, to me this seems to come from a parsing error in the beginning,
> rather than an erroneous mangling of version into primary_id later.
> 
> Is someone in the position to confirm this?
> 
> 	-hilmar

I have attached a script to the bug report on bugzilla, as well as the test
output sequence and the actual GenBank record.  There are a number of
problems:

1)  primary_id() is assigned both the id and version.
2)  version() is still assigned the version.

The above explain when printing the object directly using the overload (it
concatenates them).  

However, there are a few more issues.  The ID is printed normally
(accession.version), but the source DB is not present when SeqIO handles the
sequence.  I have attached the output and the original GenBank record to the
bug report.  

I can look into it but it won't be today; got my hands full with enzyme
assays. 

Chris




More information about the Bioperl-l mailing list