Bio::DB::UpdateableSeqI3pm
An interface for writing to a database of sequences.
Usage
# get a Bio::DB::UpdateableSeqI somehoweval {my ( @updatedseqs, @newseqs, @deadseqs);my $seq = $db->get_Seq_by_id('ROA1_HUMAN');$seq->desc('a new description');push @updatedseqs, $seq;$db->write_seq(\@updatedseqs, \@newseqs, \@deadseqs);};if( $@ ) {print STDERR "an error when trying to write seq : $@\n";}
Overview
This module seeks to provide a simple method for pushing sequence changes back to a Sequence Database - which can be an SQL compliant database, a file based database, AceDB, etc.
Appendix
The rest of the documentation details each of the object methods. Internal methods are usually preceded with a _
write_seq
Title : write_seqUsage : write_seq(\@updatedseqs, \@addedseqs, \@deadseqs)Function: updates sequences in first array,adds sequences in the second array,and removes sequences in the third array.Example :Returns :Args : arrays of sequence objects that must be obtained fromBio::DB::UpdateableSeqI.
_add_seq
Title : _add_seqUsage : _add_seq($seq)Function: Adds a new sequenceExample :Returns : will throw an exception ifsequences accession number already existsArgs : a new seq object - should have an accession number
_remove_seq
Title : _remove_seqUsage : _remove_seq($seq)Function: Removes an existing sequenceExample :Returns : will throw an exception ifsequence does not exists for the primary_idArgs : a seq object that was retrieved from Bio::DB::UpdateableSeqI
_update_seq
Title : _update_seqUsage : _update_seq($seq)Function: Updates a sequenceExample :Returns : will throw an exception ifsequence is out of sync from expected val.Args : a seq object that was retrieved from Bio::DB::UpdateableSeqI
Methods inherieted from Bio::DB::RandomAccessI
get_Seq_by_id
Title : get_Seq_by_idUsage : $seq = $db->get_Seq_by_id('ROA1_HUMAN')Function: Gets a Bio::Seq object by its nameReturns : a Bio::Seq objectArgs : the id (as a string) of a sequenceThrows : "id does not exist" exception
get_Seq_by_acc
Title : get_Seq_by_accUsage : $seq = $db->get_Seq_by_acc('X77802');Function: Gets a Bio::Seq object by accession numberReturns : A Bio::Seq objectArgs : accession number (as a string)Throws : "acc does not exist" exception
Methods inheirited from Bio::DB::SeqI
get_PrimarySeq_stream
Title : get_PrimarySeq_streamUsage : $stream = get_PrimarySeq_streamFunction: Makes a Bio::DB::SeqStreamI compliant objectwhich provides a single method, next_primary_seqReturns : Bio::DB::SeqStreamIArgs : none
get_all_primary_ids
Title : get_all_idsUsage : @ids = $seqdb->get_all_primary_ids()Function: gives an array of all the primary_ids of thesequence objects in the database. Thesemaybe ids (display style) or accession numbersor something else completely different - they*are not* meaningful outside of this databaseimplementation.Example :Returns : an array of stringsArgs : none
get_Seq_by_primary_id
Title : get_Seq_by_primary_idUsage : $seq = $db->get_Seq_by_primary_id($primary_id_string);Function: Gets a Bio::Seq object by the primary id. The primaryid in these cases has to come from $db->get_all_primary_ids.There is no other way to get (or guess) the primary_idsin a database.The other possibility is to get Bio::PrimarySeqI objectsvia the get_PrimarySeq_stream and the primary_id fieldon these objects are specified as the ids to use here.Returns : A Bio::Seq objectArgs : accession number (as a string)Throws : "acc does not exist" exception
Releases
10 releases since Debian 3.0 (Woody); the text changed 8 times.