Molecular Interaction Maps |
Editor(s): Allan Kuchinsky |
About this document
This is an official Request for Comment (RFC) for Supporting Molecular Interaction Maps in Cytoscape.
For details on RFCs in general, check out the [http://www.answers.com/main/ntquery?method=4&dsid=2222&dekey=Request+for+Comments&gwp=8&curtab=2222_1&linktext=Request%20for%20Comments Wikipedia Entry: Request for Comments (RFCs)]
Status
* preliminary draft, still brain-dead, take with a grain of NaCl.
How to Comment
To view/add comments, click on any of 'Comment' links below. By adding your ideas to the Wiki directly, we can more easily organize everyone's ideas, and keep clear records. Be sure to include today's date and your name for each comment. Here is an example to get things started: ["/Comment"].
Try to keep your comments as concrete and constructive as possible. For example, if you find a part of the RFC makes no sense, please say so, but don't stop there. Take the extra step and propose alternatives.
Proposal
A Molecular Interaction Map (MIM) is a diagram convention that is capable of unambiguous representation of networks containing multi-protein complexes, protein modifications, and enzymes that are substrates of other enzymes. MIMs are described in detail at http://discover.nci.nih.gov/mim/index.jsp and in a seminal article by Kohn et al at http://www.molbiolcell.org/cgi/content/abstract/E05-09-0824v1
An example MIM is below attachment:mim_eg.png
MIMs have been developed at the National Cancer Institute (specifically the Laboratory of Molecular Pharmacology). They are looking into what it would take to develop an Editor to create Molecular Interaction Maps (MIMs) in an editor to yield both a graphical view and a computer-readable format (preferrably BioPax). They are interested in seeing if such a MIM editor could be developed for Cytoscape.
MIM symbols are defined in the figure below:
attachment:Kohn_SymbDefH3.jpg
QUESTION: Is this the most recent definition of map symbols? In particular, are site-specific constructs, such as cleavage, still defined as requirements? ANSWER:There are a few changes. CovalentBinding has a new symbol. There are some requirements for site-specific constructs. There are a few additional symbols as well.
This proposal will specify the mapping between MIM constructs and their proposed counterparts in Cytoscape. A prioritized set of requirements will be presented. Enhancements needed in the editor, renderer, and/or other Cytoscape components will be identified.
Biological Questions / Use Cases
Kohn Notation Use Cases
Editor System Use Cases
General Notes
From an initial reading of the article by Kohn et al at http://www.molbiolcell.org/cgi/content/abstract/E05-09-0824v1, an initial description of potential mappings between MIM and Cytoscape constructs was derived. This is summarized in the figure below.
A newer version of the description of the notation is found in Kohn et al http://mct.aacrjournals.org/cgi/rapidpdf/1535-7163.MCT-06-0640v2
attachment:kohn_mappings.png
Further Notes from meeting at 2006 Cytoscape Developers Retreat
- Need to map MIM to both model and view
- How to represent 'non covalent binding'?
- Model: Best mapped to a group. A and B are connected and are part of the group.
- View: this is a use case for the group view
- Asymmetric binding
- Model: Regular edge between A and B, just needs a specific edge type
- View: New type of custom edge graphic (will take some care with Nerius' edge drawing code)
- Representation of multimolecular complexes
- Model: A group of groups
- View: part of the use case for group view
- Covalent modification of protein A (post-translational modification = PTM)
- Model: A is a node (representing unmodified protein); central node is a node (represented modified A) - every state is represented as a node. The PTM e.g. P is not a node, it is an annotation on the 'central' state node. The edge between A and its state is of type 'state of'. The set of all states is grouped to represent the set of all states of A.
- View: Constraint: the states always move together (would be like a template)
- Cleavage of of a covalent modification of protein A
- Model: Hyperedge containing node1: Phtase (hyperedge attribute: enzyme), node2: phosphorylated A, node3: unphosphorylated A
- View: Use case for hyperedge view
- How to represent 'non covalent binding'?
- General constraints for automatic layout and the editor
- Snap to grid
- All lines need to be routed with only right or acute angles
- Central node is only there if it is used (connected to something else in the diagram)
- Next step: a special interest group should get together to hash the above out further. Current interested people are: Allan, Mirit, David, Gary, Aditya, Scooter, Alex; also general interest from Nathan, Kristina (GenMAPP editing), Ethan, Ben (BioPAX editing)
- Implementation: Cytoscape core would ensure that the model and view requirements are met. Users: like GenMAPP, MIM, BioPAX editing would use the core functionality to create their own plugins that implemented their own pathway editing features.
Requirements
The following set of requirements is drawn from a consolidation of comments on the use cases. The requirements fall into two categories:
- Infrastructure: changes required to underlying Cytoscape functionality, such as modifications to the renderer.
- Customization: changes that require new functionality to be written on top of existing Cytoscape infrastructure, for example new group views to support complexes.
One general comment is that, for performance reasons, we may want to consider whether changes to rendering should only be implemented for high level of detail zoom factors.
The major requirements are:
- Snap-to-grid functionality. This is required for supporting right angle geometry in the layout rules. Having nodes positioned on grid points will make it feasible to connect nodes with lines that are strictly vertical or horizontal. This also allows drawing lines at other angles, e.g. diagonally across two grid points to get a 45-degree angle. Infrastructure changes would be required in the following Cytoscape components:
renderer: nodes should snap to grid when being moved. InnerCanvas should display grid points, upon request from the user. Granularity of the grid and granularity of displayed grid points should be configurable by the user.
- editor: nodes should be positioned on nearest grid point when dragged/dropped from the editor's palette. User should be able to draw multi-segment lines. That is, draw an edge to a particular grid point and the editor inserts a handle into the edge, then the user takes a 90-degree turn a continues to next chosen grid point.
- readers and writers
- graphical annotations: same implications as for renderer, with the additional requirement that a node should snap to grid when being stretched.
Deferred Items
Open Issues
Do they need site-specific connection of edges, e.g. as in proteolytic cleavage? From Mirit's presentation, it appears that metanodes would work just fine. ( see /ProteinBindingSites
and /ProteinDomains)
How do we represent the "null" node, as in degradation product? (see /SpeciesDegradation)
How do we represent "ditto" nodes, e.g. as in translocation? (see /ShowTransport)
- Would they need editor support for Manhattan topology, e.g. constraints on edge angles?
Backward Compatibility
Expected growth and plan for growth
References
Implementation Plan
[:Molecular Interaction Maps/Implementation Plan:/Implementation Plan]