Christopher Fields
and 1 contributors


Bio::Network::IO::dip_tab - class for parsing interaction data in DIP tab-delimited format


Do not use this module directly, use Bio::Network::IO. For example:

  my $io = Bio::Network::IO->new(-format => 'dip_tab',
                                 -file   => 'data.dip');

  my $network = $io->next_network;


The Database of Interacting Proteins (DIP) is a protein interaction database (see The species-specific subsets of the DIP database are provided in a simple, tab-delimited format. The tab-separated columns are:

   edge     DIP id 
   node A   DIP id 
        node A   optional id
   node A   SwissProt id
   node A   PIR id
   node A   GenBank GI id
   node B   DIP id 
        node B   optional id
   node B   SwissProt id
   node B   PIR id
   node B   GenBank GI id

The source or namespace of the optional id in columns 3 and 8 varies from species to species, and optional ids are frequently absent.


The first version of this format prepended the identifier with a database name, e.g.:

  DIP:4305E  DIP:3048N     PIR:B64526  SWP:P23487  GI:2313123  ...

The version as of 1/2006 has no database identifiers:

  DIP:4305E  DIP:3048N     B64526  P23487  2313123  ...

This module parses both versions.


The naming system is analagous to the SeqIO system, although usually next_network() will be called only once per file.


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.                  - General discussion  - About the mailing lists


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 the bugs and their resolution. Bug reports can be submitted via the web:


Brian Osborne bosborne at Richard Adams


  Name        : next_network
  Purpose     : parses a DIP file and returns a Bio::Network::ProteinNet 
  Usage       : my $g = $graph_io->next_network();
  Arguments   : none
  Returns     : a Bio::Network::ProteinNet object


 Name     : write_network
 Purpose  : write graph out in dip format
 Arguments: a Bio::Network::ProteinNet object
 Returns  : void
 Usage    : $out->write_network($gr);
 Name     : _add_db_links
 Purpose  : create DBLink annotations, add to an Annotation
            Collection object
 Arguments: an array of ids
 Returns  : an Annotation::Collection object
 Usage    :


 Name     : _fix_id
 Purpose  : 
 Returns  : 
 Usage    :