Actually, BioJava is not that clever. Yet. Martina's original observation is 
right, in that the correct way to do this would be to check the database to see 
if the altered seqfeature already existed, and if it did, to refer to that one 
instead. But this is not the way BioJava does things at present. A fix for this 
will probably end up being built in to the replacement BioJava/BioSQL classes 
currently in progress, but for now, to delete/create the feature is probably 
the best workaround.

cheers,
Richard


-----Original Message-----
From:   [EMAIL PROTECTED] on behalf of Martina
Sent:   Wed 6/22/2005 5:24 PM
To:     [EMAIL PROTECTED]
Cc:     [EMAIL PROTECTED]; BioJava; [EMAIL PROTECTED]
Subject:        [BioSQL-l] update seqfeature 

Hi Simon,

I'm changing the FeatureSource and in setFeatureSource an update on 
the source_term_id happens. In the case the combination is already 
there, I get an Exception. The proper way to deal with that would be 
to get the seqfeature_id of the entry already there and use that, or 
try to update the rank unless its a unique combination? Or should I 
rather not mess with the BioJava and delete that entry and insert it 
as new to let BioJava handle the rank increase?

Thanks for any advise

Martina

Simon Foote wrote:

> Hi Martina,
> 
> In fact you can, as rank is the field that allows this to happen.  In 
> Biojava, currently it's just a linearily incremented number such that 
> you can have the same type and source IDs for a given bioentry.
> 
> For example, adding a Genbank entry with 10 CDS features for 1 bioentry 
> will give you identical keys for bioentry_id, type_term_id and 
> source_term_id, but will have a rank of 1 - 10 for each.
> 
> Simon
> 

_______________________________________________
BioSQL-l mailing list
[EMAIL PROTECTED]
http://open-bio.org/mailman/listinfo/biosql-l





_______________________________________________
Biojava-l mailing list  -  Biojava-l@biojava.org
http://biojava.org/mailman/listinfo/biojava-l

Reply via email to