[BioSQL-l] adding non-positional features via bioperl to a biosql database
James Procter
jimp at compbio.dundee.ac.uk
Tue Feb 10 23:25:14 UTC 2009
Thanks for the reply, Hilmar.
Hilmar Lapp wrote:
> BioPerl (and BioSQL) use 1-based coordinates for features, so coordinate
> 0 risks being treated as undefined, but just not consistently so.
erm. yes. But there lies the problem. There's a convention in gff (and
DAS) that '0' corresponds to '.' and both mean 'non-position', bioperl's
GFF output module actually follows that convention (ie start of '0'
leads to a '.' in the start column of the gff feature). BioSQL and
BioJava also do this just fine, but whilst BioPerl allows features with
a '0' start position to be persisted, it then cannot work with the
feature after it's been recovered from the DB. This looks like a bug to me.
. BioSQL and
> If what you want is non-positional features, have you tried not
> specifying the positional attributes at all?
Yep. No positional attributes raises an error on store, which is what
I'd expect.
> Furthermore, in BioPerl and BioSQL lingo a feature really is an
> annotation that has a position. So, whereas that's not strictly enforced
> I think (and may in fact be different in Biojava), did you conclude that
> natively non-positional sequence annotation using one of the
> Bio::Annotation classes (and adding it through
> $seq->annotation->add_Annotation()) wouldn't work for your purposes?
I'm actually trying to find that happy common ground where existing
biojava and bioperl binding interpretations of BioSQL meet. I tried
adding annotation directly to the sequence object, but couldn't work out
where they appeared in Biojava. I then discovered that start=end='0' did
what I wanted, and stopped without checking that I could then add more
features afterwards. Seems like I should have tried harder :^/
If the above seems like a bug, then I'm happy to raise one. I'd like to
see this fixed/cleared up before the next bioperl release if possible.
I'll also try and make a start on that ontology map page that we
discussed on list last December.
Cheers.
Jim.
More information about the BioSQL-l
mailing list