[Bioperl-l] Bio::Location::Fuzzy, Bio::Location::Split

Mark Wilkinson mwilkinson@gene.pbi.nrc.ca
Thu, 25 Jan 2001 15:44:36 -0600

Hilmar Lapp wrote:

> > full loc           -> start..end : minStart..maxEnd
> > <50..100>          -> 50..100    : -INF..+INF
> > (78.90)..(100.107) -> 90..100    : 78..107
> I think I am much more in favor of returning the outer-most
> coordinates as the default policy. David, Mark?

In my gut I would also favour outer-most, only because, even with a simple scan
of the data, you are able to say "there's something there" or not.  However, the
phrase "$Feature->start/stop returns the outer-most start/stop positions unless
either is undefined in which case that one (or both) return the minimum" gives me
the shivers!  Still, this is more of a problem for unsophisticated parsers, which
presumably will be asking unsophisticated questions - what will be most important
for them (I think) is to be given the coordinates which span the maximum "secure"
region.  So, yes, I agree that outermost is preferable to innermost.

> whether INF or NaN are good return values in perl

YUCK!  Please don't go there...   Perhaps returning undef in a call to maxStart
or maxEnd would be better... it functions nicely in testing statements.

[[  Dave just told me he would prefer to return a Location object in a call to
Feature->start that needed to return a fuzzy value, and let the parser choke on
the resulting errors :-)  Although this is nice OO Perl, I doubt that most
existing parsers (or their authors) would be very happy with that solution!   ]]

Dr. Mark Wilkinson
Bioinformatics Group
National Research Council of Canada
Plant Biotechnology Institute
110 Gymnasium Place
Saskatoon, SK