Bio::DB::WebDBSeqI - Object Interface to generalize Web Databases for retrieving sequences # get a WebDBSeqI object somehow # assuming it is a nucleotide db my $seq = $db->get_Seq_by_id('ROA1_HUMAN') Provides core set of functionality for connecting to a web based database for retriving sequences. Users wishing to add another Web Based Sequence Dabatase will need to extend this class (see Bio::DB::SwissProt or Bio::DB::NCBIHelper for examples) and implement the get_request method which returns a HTTP::Request for the specified uids (accessions, ids, etc depending on what query types the database accepts).

Mailing Lists
User feedback is an integral part of the evolution of this and other Bioperl modules. Send your comments and suggestions preferably to one of the Bioperl mailing lists. Your participation is much appreciated. bioperl-l@bioperl.org - General discussion http://bioperl.org/MailList.shtml - About the mailing lists

Reporting Bugs
Report bugs to the Bioperl bug tracking system to help us keep track the bugs and their resolution. Bug reports can be submitted via email or the web: bioperl-bugs@bio.perl.org http://bio.perl.org/bioperl-bugs/ Email jason@chg.mc.duke.edu The rest of the documentation details each of the object methods. Internal methods are usually preceded with a _

get_Seq_by_id
Title : get_Seq_by_id Usage : $seq = $db->get_Seq_by_id('ROA1_HUMAN') Function: Gets a Bio::Seq object by its name Returns : a Bio::Seq object Args : the id (as a string) of a sequence Throws : "id does not exist" exception

get_Seq_by_acc
Title : get_Seq_by_acc Usage : $seq = $db->get_Seq_by_acc('X77802'); Function: Gets a Bio::Seq object by accession number Returns : A Bio::Seq object Args : accession number (as a string) Throws : "acc does not exist" exception

get_request
Title : get_request Usage : my $url = $self->get_request Function: returns a HTTP::Request object Returns : Args : %qualifiers = a hash of qualifiers (ids, format, etc)

get_Stream_by_id
Title : get_Stream_by_id Usage : $stream = $db->get_Stream_by_id( [$uid1, $uid2] ); Function: Gets a series of Seq objects by unique identifiers Returns : a Bio::SeqIO stream object Args : $ref : a reference to an array of unique identifiers for the desired sequence entries

get_Stream_by_acc
Title : get_Stream_by_acc Usage : $seq = $db->get_Seq_by_acc([$acc1, $acc2]); Function: Gets a series of Seq objects by accession numbers Returns : a Bio::SeqIO stream object Args : $ref : a reference to an array of accession numbers for the desired sequence entries Note : For GenBank, this just calls the same code for get_Stream_by_id()

default_format
Title : default_format Usage : my $format = $self->default_format Function: Returns default sequence format for this module Returns : string Args : none

request_format
Title : request_format Usage : my ($req_format, $ioformat) = $self->request_format; $self->request_format("genbank"); $self->request_format("fasta"); Function: Get/Set sequence format retrieval. The get-form will normally not be used outside of this and derived modules. Returns : Array of two strings, the first representing the format for retrieval, and the second specifying the corresponding SeqIO format. Args : $format = sequence format

get_seq_stream
Title : get_seq_stream Usage : my $seqio = $self->get_seq_sream(%qualifiers) Function: builds a url and queries a web db Returns : a Bio::SeqIO stream capable of producing sequence Args : %qualifiers = a hash qualifiers that the implementing class will process to make a url suitable for web querying

url_base_address
Title : url_base_address Usage : my $address = $self->url_base_address or $self->url_base_address($address) Function: Get/Set the base URL for the Web Database Returns : Base URL for the Web Database Args : $address - URL for the WebDatabase

proxy
Title : proxy Usage : $httpproxy = $db->proxy('http') or $db->proxy(['http','ftp'], 'http://myproxy' ) Function: Get/Set a proxy for use of proxy Returns : a string indicating the proxy Args : $protocol : an array ref of the protocol(s) to set/get $proxyurl : url of the proxy to use for the specified protocol

retrieval_type
Title : retrieval_type Usage : $self->retrieval_type($type); my $type = $self->retrieval_type Function: Get/Set a proxy for retrieval_type (io_string or tempfile) Returns : string representing retrieval type Args : $value - the value to store

url_params
Title : url_params Usage : my $params = $self->url_params or $self->url_params($params) Function: Get/Set the URL parameters for the Web Database Returns : url parameters for Web Database Args : $params - parameters to be appended to the URL for the WebDatabase

ua
Title : ua Usage : my $ua = $self->ua or $self->ua($ua) Function: Get/Set a LWP::UserAgent for use Returns : reference to LWP::UserAgent Object Args : $ua - must be a LWP::UserAgent

postprocess_data
Title : postprocess_data Usage : $self->postprocess_data ( 'type' => 'string', 'location' => \$datastr); Function: process downloaded data before loading into a Bio::SeqIO Returns : void Args : hash with two keys - 'type' can be 'string' or 'file' - 'location' either file location or string reference containing data