NAME
Bio::DB::HIV - Database object interface to the Los Alamos HIV Sequence Database
SYNOPSIS
$db = new Bio::DB::HIV;$seq = $db->get_Seq_by_id('94284'); # LANL sequence id$seq = $db->get_Seq_by_acc('EF432710'); # GenBank accession$q = new Bio::DB::Query::HIVQuery( " (C D)[subtype] SI[phenotype] (symptomatic AIDS)[patient_health] " );$seqio = $db->get_Stream_by_query($q);$seq = $seqio->next_seq();($seq->annotation->get_Annotations('Virus'))[0]->{subtype} # returns 'D'($seq->annotation->get_Annotations('Patient'))[0]->{patient_health} # returns 'AIDS'($seq->annotation->get_Annotations('accession'))[0]->{value} # returns 'K03454'
DESCRIPTION
Bio::DB::HIV, along with Bio::DB::Query::HIVQuery, provides an interface for obtaining annotated HIV and SIV sequences from the Los Alamos National Laboratory (LANL) HIV Sequence Database ( <http://www.hiv.lanl.gov/content/sequence/HIV/mainpage.html> ). Unannotated sequences can be retrieved directly from the database object, using either LANL ids or GenBank accessions. Annotations are obtained via a query object, and are attached to the correct "Bio::Seq" objects when the query is handled by "Bio::DB::HIV::get_Seq_by_query" or "Bio::DB::HIV::get_Stream_by_query".
FEEDBACK
Mailing Lists
User feedback is an integral part of the evolution of this and other Bioperl modules. Send your comments and suggestions preferably to the Bioperl mailing list. Your participation is much appreciated.
[email protected] - General discussionhttp://bioperl.org/wiki/Mailing_lists - About the mailing lists
Support
Please direct usage questions or support issues to the mailing list:
rather than to the module maintainer directly. Many experienced and reponsive experts will be able look at the problem and quickly address it. Please include a thorough description of the problem with code and data examples if at all possible.
Reporting Bugs
Report bugs to the Bioperl bug tracking system to help us keep track of the bugs and their resolution. Bug reports can be submitted via the web:
https://github.com/bioperl/bioperl-live/issues
AUTHOR - Mark A. Jensen
Email [email protected]
CONTRIBUTORS
Mark A. Jensen
APPENDIX
The rest of the documentation details each of the object methods. Internal methods are usually preceded with a _
Constructor
new
Title : newUsage : my $obj = new Bio::DB::HIV();Function: Builds a new Bio::DB::HIV objectReturns : an instance of Bio::DB::HIVArgs :
WebDBSeqI compliance
get_request
Title : get_requestUsage : my $url = $self->get_requestFunction: returns a HTTP::Request objectReturns :Args : %qualifiers = a hash of qualifiers with keys in(-ids, -format, -mode, -query)Note : Several layers of requests are performed to get to the sequence;see Bio::DB::Query::HIVQuery.
postprocess_data
Title : postprocess_dataUsage : $self->postprocess_data ( 'type' => 'string','location' => \$datastr);Function: process downloaded data before loading into a Bio::SeqIOReturns : voidArgs : hash with two keys - 'type' can be 'string' or 'file'- 'location' either file location or stringreference containing data
WebDBSeqI overrides
get_seq_stream
Title : get_seq_streamUsage : my $seqio = $self->get_seq_stream(%qualifiers)Function: builds a url and queries a web dbReturns : a Bio::SeqIO stream capable of producing sequenceArgs : %qualifiers = a hash qualifiers that the implementing classwill process to make a url suitable for web queryingNote : Some tightening up of the baseclass version
get_Stream_by_acc
Title : get_Stream_by_accUsage : $seq = $db->get_Stream_by_acc([$acc1, $acc2]);Function: Gets a series of Seq objects by GenBank accession numbersReturns : a Bio::SeqIO stream objectArgs : an arrayref of accession numbers forthe desired sequence entriesNote : For LANL DB, alternative to LANL seqids
get_Stream_by_query
Title : get_Stream_by_queryUsage : $stream = $db->get_Stream_by_query($query);Function: Gets a series of Seq objects by way of a query string or ojectReturns : a Bio::SeqIO stream objectArgs : $query : Currently, only a Bio::DB::Query::HIVQuery object.It's a good idea to create the query object first and interrogateit for the entry count before you fetch a potentially large stream.
Internals
lanl_base
Title : lanl_baseUsage : $obj->lanl_base($newval)Function: get/set the base url of the LANL HIV databaseExample :Returns : value of lanl_base (a scalar)Args : on set, new value (a scalar or undef, optional)
map_db
Title : map_dbUsage : $obj->map_db($newval)Function: get/set the cgi filename for map_db ("Database Map")Example :Returns : value of map_db (a scalar)Args : on set, new value (a scalar or undef, optional)
make_search_if
Title : make_search_ifUsage : $obj->make_search_if($newval)Function: get/set the cgi filename for make_search_if ("Make Search Interface")Example :Returns : value of make_search_if (a scalar)Args : on set, new value (a scalar or undef, optional)
search_
Title : search_Usage : $obj->search_($newval)Function: get/set the cgi filename for the search query page("Search Database")Example :Returns : value of search_ (a scalar)Args : on set, new value (a scalar or undef, optional)
_map_db_uri
Title : _map_db_uriUsage :Function: return the full map_db uri ("Database Map")Example :Returns : scalar stringArgs : none
_make_search_if_uri
Title : _make_search_if_uriUsage :Function: return the full make_search_if uri ("Make Search Interface")Example :Returns : scalar stringArgs : none
_search_uri
Title : _search_uriUsage :Function: return the full search cgi uri ("Search Database")Example :Returns : scalar stringArgs : none
_session_id
Title : _session_idUsage : $obj->_session_id($newval)Function: Contains HIV db session id (initialized in _do_lanl_request)Example :Returns : value of _session_id (a scalar)Args : on set, new value (a scalar or undef, optional)
_response
Title : _responseUsage : $obj->_response($newval)Function: hold the response to search postExample :Returns : value of _response (a scalar)Args : on set, new value (a scalar or undef, optional)
Dude, sorry
Title : _sorryUsage : $hiv->_sorryFunction: Throws an exception for unsupported option or parameterExample :Returns :Args : scalar string