[Bioperl-l] Bio::SeqFeature::Gene::Exon throws exception when encountering split location (Bio::Location::Split)

Mark Johnson johnsonm at gmail.com
Tue Jun 12 12:59:54 EDT 2007

    That's a good point.  Both Bio::Tools::Glimmer and
Bio::Tools::Genemark produce Bio::SeqFeature::Gene objects, each with
a single Bio::SeqFeature::Gene::Exon, when parsing predictions for
prokaryotic sequence (multiple exons for eukaryotic).  There are
eukaryotic and prokaryotic versions of both predictor families.  Maybe
the most elegant solution would be to simply modify both modules to
only emit Bio::SeqFeature::Generic features when operating on
prokaryotic mode output?  Fix the data model and the problem goes
away.  8)

On 6/12/07, Chris Fields <cjfields at uiuc.edu> wrote:
> On Jun 12, 2007, at 11:10 AM, Mark Johnson wrote:
> > On 6/12/07, Torsten Seemann
> > <torsten.seemann at infotech.monash.edu.au> wrote:
> >> Can you use the ->spliced_seq() method to do this?
> >>
> >> http://doc.bioperl.org/releases/bioperl-1.5.2/Bio/
> >> SeqFeatureI.html#POD11
> >>
> >> --
> >> --Torsten Seemann
> >> --Victorian Bioinformatics Consortium, Monash University
> >> --Tel +61 3 9905 9010
> >
> >     Actually, I'd forgotten about spliced_seq().  That seems like it
> > will Do The Right Thing.  It's just up to the invoker to call
> > spliced_seq() instead of seq() as appropriate.
> >     So, is there any other code that will break if I modify
> > Bio::SeqFeature::Gene::Exon::location to not throw an exception when
> > encountering Bio::Location::SplitLocationI?  I'm wondering if it's
> > just a paranoid check or if it's there to guard against something.  If
> > the latter, I need to know what code to fix.  I'll dig and look, but
> > if anybody knows or has an idea, save me some time.  I suppose I can
> > just change it and see what tests start failing. 8)
> I'm wondering why you want to use Bio::SeqFeature::Gene::Exon to
> describe the 'wrap-around' genes.  The SeqFeature::Gene::Exon docs
> state that the Exon class is used to specifically describe exons, as
> the name implies.  Exons are primarily eukaryotic in origin, so you
> shouldn't encounter wraparounds, and should not have split locations
> by definition (which likely explains the exception).
> Wouldn't a SeqFeature::Generic work just as well using a split location?
> chris

More information about the Bioperl-l mailing list