Network package

Contents

The bioperl-network or Bio::Network package parses and analyzes protein-protein interaction data provided by databases such as DIP, BIND, IntAct, HPRD, and MINT . It replaces the Bio::Graph* modules written by Nat Goodman and Richard Adams.

This package is based on Perl's Graph module and uses it to supply an underlying suite of graph algorithms. In theory any Graph method can be used to query or analyze a Bio::Network::ProteinNet object. The Bio::Network package is currently maintained by Brian Osborne.

The IO module is used to read a file and create a network. The formats that are currently supported are DIP and PSI MI 2.5. If you are parsing PSI MI read Module:Bio::Graph::IO::psi_xml first for notes on various databases and their PSI MI. You will read a file like this:

Node

A node is one or more BioPerl sequence objects, a container for Bio::Seq or
Bio::Seq::RichSeq object. Thus a node can represent a protein or a protein complex. The graph can contain any objects
that implement Bio::AnnotatableI and Bio::IdentifiableI interfaces
since these objects hold useful identifiers. This is relevant since the
identity of nodes is determined by their identifiers.

Edge

A Edge corresponds to a
pair of Nodes, and there is only one Edge per pair of Nodes.

Interaction

A Interaction is an attribute of an Edge, and there can be 1 or more Interactions per Edge. It's useful to think of an Interaction as the results of a single biological experiment.

Graph

A ProteinNet object is a Graph object containing Nodes, Edges, and Interactions.

File I/O

The current release can read and write DIP tab-delimited format and can read some, but not all, of the fields in PSI MI XML 2.5 format.

The PSI MI files that can be downloaded from various interaction databases differ, some notes on these varieties of PSI MI can be found here.