[Bioperl-l] SeqFeature::Generic 'frame' method

Jason Stajich jason@chg.mc.duke.edu
Mon, 26 Feb 2001 21:23:14 -0500 (EST)

On Mon, 26 Feb 2001, Hilmar Lapp wrote:

> Jason Stajich wrote:
> > 
> > That does seem safer.  I can easily transform from 1,2,3 to 0,1,2
> > so frame +1 in blast will be equivalent to frame 0 in GFF. But what about
> > cases where we don't have a frame, is Frame 0 technically correct there?
> Is it possible to get frame 0 in a TBLASTN match? I don't really know
> what this would mean. (for the risk of embarrassing myself, TBLASTN is
> DNA/DNA on the protein level, right? So you have a frame for both
> alignment partners, right?)

No, it's not possible to get a (blast) frame of 0 in a tblastn query, but
since we are using the same code to parse blastn we have to handle the
case of no frame information.  I realize now that the current behavior is
to assume frame of (gff) 0 if no frame information is provided.  So, I
don't want to overthink this if we are doing the right things.

> > 
> > Strand information for a HSP currently comes from direction
> > of start/end points on the query seq.  Is it concievable that they
> > wouldn't match?  i.e. will a match in -3 frame always correspond to a
> > match on rev strand of query....  This might be a dilhema...  I already
> It's hard to conceive that they don't match always. Why would you
> report a minus strand for a match that was translated from a forward
> frame?

Okay.  That sounds right, I hope someone will correct us if we are wrong

> > checked in code which breaks because of invalid frames, I will fix so it
> > is at least transformed to valid number space of gff.  Strand will get
> > ignored for now.
> We should fix this until the release. TBLASTN frame -3 is not the same
> as +3 for someone who wants to extract the amino acid sequence that
> led to the match.

Technically if the frame 'strand' always matches the query strand
(currently comes from checking order of the query match -- reverse order
means strand = -1) then discarding the sign of the frame won't cause an
error since strand is already set.  Just to be correct I can add code that
will extract and set strand information expicitly when 'frame' is called.

> 	Hilmar
> -- 
> -------------------------------------------------------------
> Hilmar Lapp                            email: lapp@gnf.org
> GNF, San Diego, Ca. 92121              phone: +1-858-812-1757
> -------------------------------------------------------------
> _______________________________________________
> Bioperl-l mailing list
> Bioperl-l@bioperl.org
> http://bioperl.org/mailman/listinfo/bioperl-l

Jason Stajich
Center for Human Genetics
Duke University Medical Center