[Bioperl-l] Gene Interface discussion

Hilmar Lapp hlapp@gmx.net
Sun, 04 Feb 2001 22:43:15 -0800

Ewan Birney wrote:
> The definition of SeqFeatureI is extended somewhat. SeqFeatureI
> objects are now allowed to have component SeqFeatures (sub_SeqFeature
> call) which are on different sequences to the parent SeqFeature.
> There is a new method to SeqFeatureI - is_single_sequence which
> returns TRUE if all component SeqFeatures are on the same sequence as
> this SeqFeature, and returns FALSE if not. This will allow clients to
> easily find (and possibly skip) these "expanded" seq features.
> The ->start and ->end calls on a non single sequence composite
> seqfeature should return the start and end point of the component
> sequence features which lie on the "focus" sequence of this
> seqfeature (ie, whatever ->entire_seq and ->seqname implies).
> Clients should be aware that when is_single_sequence == 0, concepts
> like "overlap" and "length" are not necessarily easy to define or
> interpret. This is for the client code to deal with. 

This is from a mail from Dec 13th and still not dealt with. Do we
still want to add is_single_sequence()? There are now two
conditions for is_single_sequence() to return 0:

        1) traversing the complete sub_SeqFeature() tree reveals
        features with $subfeat->seqname() != $feat->seqname()
        2) if
	and traversing the sub_Location() tree reveals sublocations
        with $subloc->seq_id() != $loc->seq_id().

An option would be to add is_single_sequence() (or give it another
name) to SplitLocationI.

What do people think? Ewan, Jason? Comments not only appreciated
but solicited.

Hilmar Lapp                                email: hlapp@gmx.net
GNF, San Diego, Ca. 92122                  phone: +1 858 812 1757