[Bioperl-l] Bioperl and ACE files

Jason Stajich jason at cgt.duhs.duke.edu
Mon Feb 16 07:46:41 EST 2004

As always, more code and information as to how you got here makes it
easier for someone to answer.

Not really sure how you are getting to the point where you have created
Bio::LocatableSeq objects - presumably you are trying to do an assembly
so I'll guess you got there from Bio::Assembly::IO.

You may need to get help from Robson about what the format is supposed to
support.  A start of 0 is not really proper in Bioperl -
sequences/features start at 1 in our system, so the assembly code needs to
adjust for that.  presumably those numbers are offsets not actual start
positions so the parsing code may need some looking at.


On Mon, 16 Feb 2004, Wes Barris wrote:

> Hi,
> I have an ACE file that I am trying to process with bioperl.  A portion
> of the ACE file looks like this:
> AF CB429506 U 2
> AF CB428704 U 6
> AF CB430643 U 1
> AF CB431187 U 0
> AF CB430639 U -7
> AF CB430480 C 24
> AF CB430055 U 10
> Notice the line in the middle that shows a starting position of '0'
> (zero)?  When bioperl tries to process this sequence, an error is
> thrown.  I have found the port of the bioperl code that throws the
> error:
> Bio/LocatableSeq.pm:
> sub get_nse{
>     my ($self,$char1,$char2) = @_;
>     $char1 ||= "/";
>     $char2 ||= "-";
>     $self->throw("Attribute id not set") unless $self->id();
>     $self->throw("Attribute start not set") unless $self->start();<-----
>     $self->throw("Attribute end not set") unless $self->end();
>     return $self->id() . $char1 . $self->start . $char2 . $self->end ;
> }
> Notice how "$self->start()" is tested.  When it encounters a sequence
> whose start is set to zero, an error is thrown.
> I don't know much about the ACE file format.  Do I have a questionable
> ACE file or is this test incomplete?

Jason Stajich
Duke University
jason at cgt.mc.duke.edu

More information about the Bioperl-l mailing list