Bio::Tools::EUtilities::Info LinkInfo
SummaryIncluded librariesPackage variablesSynopsisDescriptionGeneral documentationMethods
Toolbar
WebCvs
Summary
Bio::Tools::EUtilities::Info::LinkInfo - class for storing einfo link data
Package variables
No package variables defined.
Inherit
Bio::Root::Root Bio::Tools::EUtilities::EUtilDataI
Synopsis
    ## should not create instance directly; Bio::Tools::EUtilities does this ##
# get a LinkInfo object using Bio:Tools::EUtilities print "Link name: ",$link->get_link_name,"\n"; print "Link name: ",$link->get_link_menu_name,"\n"; print "Link desc: ",$link->get_link_description,"\n"; print "DBFrom: ",$link->get_dbfrom,"\n"; # database linked from print "DBTo: ",$link->get_dbto,"\n"; # database linked to
Description
This class handles data output (XML) from both einfo and elink, and centers on
describing data that either describes how NCBI databases are linked together
via link names, or how databases are linked to outside databases (LinkOut).
Further documentation for Link and Field subclass methods is included below.
For more information on einfo see:
   http://eutils.ncbi.nlm.nih.gov/entrez/query/static/einfo_help.html
Methods
newDescriptionCode
get_databaseDescriptionCode
get_dbDescriptionCode
get_dbtoDescriptionCode
get_dbfromDescriptionCode
get_link_nameDescriptionCode
get_link_descriptionDescriptionCode
get_link_menu_nameDescriptionCode
get_priorityDescriptionCode
get_html_tagDescriptionCode
get_urlDescriptionCode
_add_data
No description
Code
to_stringDescriptionCode
Methods description
newcode    nextTop
 Title    : new
Note : *** should not be called by end-users ***
Usage : my $ct = Bio::Tools::EUtilities::Info::LinkInfo;
Function : returns new LinkInfo instance
Returns : Bio::Tools::EUtilities::Info::LinkInfo instance
Args : none (all data added via _add_data, most methods are getters only)
get_databasecodeprevnextTop
 Title    : get_database
Usage : my $db = $info->get_database;
Function : returns single database name (eutil-compatible). This is the
queried database. For elinks (which have 'db' and 'dbfrom')
this is equivalent to db/dbto (use get_dbfrom() to for the latter)
Returns : string
Args : none
get_db (alias for get_database)codeprevnextTop
get_dbto (alias for get_database)codeprevnextTop
get_dbfromcodeprevnextTop
 Title    : get_dbfrom
Usage : my $origdb = $link->get_dbfrom;
Function : returns referring database
Returns : string
Args : none
Note :
get_link_namecodeprevnextTop
 Title    : get_link_name
Usage : $ln = $link->get_link_name;
Function : returns raw link name (eutil-compatible)
Returns : string
Args : none
get_link_descriptioncodeprevnextTop
 Title    : get_link_description
Usage : $desc = $link->get_link_description;
Function : returns the (more detailed) link description
Returns : string
Args : none
get_link_menu_namecodeprevnextTop
 Title    : get_link_menu_name
Usage : my $mn = $link->get_link_menu_name;
Function : returns formal menu name
Returns : string
Args : none
get_prioritycodeprevnextTop
 Title    : get_priority
Usage : my $mn = $link->get_priority;
Function : returns priority ranking
Returns : integer
Args : none
Note : only set when using elink and cmd set to 'acheck'
get_html_tagcodeprevnextTop
 Title    : get_html_tag
Usage : my $tag = $link->get_html_tag;
Function : returns HTML tag
Returns : string
Args : none
Note : only set when using elink and cmd set to 'acheck'
get_urlcodeprevnextTop
 Title    : get_url
Usage : my $url = $link->get_url;
Function : returns URL string; note that the string isn't usable directly but
has the ID replaced with the tag <@UID@>
Returns : string
Args : none
Note : only set when using elink and cmd set to 'acheck'
to_stringcodeprevnextTop
 Title    : to_string
Usage : $foo->to_string()
Function : converts current object to string
Returns : none
Args : (optional) simple data for text formatting
Note : Used generally for debugging and for various print methods
Methods code
newdescriptionprevnextTop
sub new {
    my ($class, @args) = @_;
    my $self = $class->SUPER::new(@args);
    my $eutil = $self->_rearrange([qw(EUTIL)], @args);
    $eutil ||= 'einfo';
    $self->eutil($eutil);
    $self->datatype('linkinfo');
    return $self;
}
get_databasedescriptionprevnextTop
sub get_database {
    return shift->{'_dbto'};
}
get_dbdescriptionprevnextTop
sub get_db {
    return shift->get_database;
}
get_dbtodescriptionprevnextTop
sub get_dbto {
    return shift->get_database;
}
get_dbfromdescriptionprevnextTop
sub get_dbfrom {
 return shift->{'_dbfrom'}
}
get_link_namedescriptionprevnextTop
sub get_link_name {
    my $self = shift;
    if ($self->eutil eq 'elink') {
        return $self->{'_linkname'}
    } else {
        return $self->{'_name'}
    }
}
get_link_descriptiondescriptionprevnextTop
sub get_link_description {
 return shift->{'_description'}
}
get_link_menu_namedescriptionprevnextTop
sub get_link_menu_name {
    my $self = shift;
    return $self->eutil eq 'elink' ? $self->{'_menutag'} : $self->{'_menu'};
}
get_prioritydescriptionprevnextTop
sub get_priority {
 return shift->{'_priority'}
}
get_html_tagdescriptionprevnextTop
sub get_html_tag {
 return shift->{'_htmltag'}
}
get_urldescriptionprevnextTop
sub get_url {
 return shift->{'_url'}
}
_add_datadescriptionprevnextTop
sub _add_data {
    my ($self, $simple) = @_;
    map { $self->{'_'.lc $_} = $simple->{$_} unless ref $simple->{$_}} keys %$simple;
}
to_stringdescriptionprevnextTop
sub to_string {
    my $self = shift;
    my $level = shift || 0;
    my $pad = 20 - $level;
    #        order     method                    name
my %tags = (1 => ['get_link_name' => 'Link Name'], 2 => ['get_link_description' => 'Description'], 3 => ['get_dbfrom' => 'DB From'], 4 => ['get_dbto' => 'DB To'], 5 => ['get_link_menu_name' => 'Menu Name'], 6 => ['get_priority' => 'Priority'], 7 => ['get_html_tag' => 'HTML Tag'], 8 => ['get_url' => 'URL'], ); my $string = ''; for my $tag (sort {$a <=> $b} keys %tags) { my ($m, $nm) = ($tags{$tag}->[0], $tags{$tag}->[1]); my $content = $self->$m(); next unless $content; $string .= sprintf("%-*s%-*s%s\n", $level, '', $pad, $nm, $self->_text_wrap(':', ' ' x ($pad).':', $content )); } return $string; } 1;
}
General documentation
FEEDBACKTop
Mailing ListsTop
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@lists.open-bio.org               - General discussion
http://www.bioperl.org/wiki/Mailing_lists - About the mailing lists
Support Top
Please direct usage questions or support issues to the mailing list:
bioperl-l@bioperl.org
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 BugsTop
Report bugs to the Bioperl bug tracking system to help us keep track the bugs
and their resolution. Bug reports can be submitted via the web.
  https://redmine.open-bio.org/projects/bioperl/
AUTHOR Top
Email cjfields at bioperl dot org
APPENDIXTop
The rest of the documentation details each of the object methods. Internal
methods are usually preceded with a _