[Biojava-l] How STRAP can contribute to BJ3

Dr. Christoph Gille christoph.gille at charite.de
Sun Aug 23 21:06:44 UTC 2009


Hi,

As the developer of STRAP http://3d-alignment.eu I am following with
interest the discussion on the new Biojava (BJ3) design.

STRAP is a free workbench for proteins similar to Jalview or Cinema.

Here I would like to open a discussion on

"How STRAP could contribute to the Biojava BJ3"

and vice versa

"How Biojava can be used to extend the functionality of STRAP".

While STRAP is heavily used as a stand alone application and is a
protein/alignment viewer in currently 7 Web-services such as PDBSum
and Prodom, it has been used as an API/toolbox only by a few people.
In most of these cases Biojava and STRAP had been used simultaneously
because the functionalities of both toolkits are complementary.

I start the discussion by explaining the plugin interface of STRAP.

For this purpose I created the Web page
http://3d-alignment.eu/biojava/PluginsForStrap.html

The page explains how plugins with Biojava are written and deployed on
Web-pages. It contains two examples which are ready to be clicked on a
computer with Java-Web-Start.

The basic idea is that by clicking a Web link a communication between
the Browser and STRAP is started which results in loading a remote Jar
file together with the most recent Biojava.jar through a customized
ClassLoader. The plugin can then act in response to other mouse clicks in the Web page.

STRAP contains different graphical dialogs for different types of
plugins.  E.g. plugins that implement the interface Superimpose3D are
opened in the superimposition-dialog.  Conversely, plugins that
implement SecondaryStructure_Predictor are opened in the dialog for
predicting 3D-structure from sequence. The advantage is that the
developer of a plugin does not need to provide a GUI and can
concentrate on the logic of the algorithm.

Here is the Web-form of one of the examples in the above Web-page.

<form  action="http://www-intern.charite.de/bioinf/strap/ce.php"  method="POST" >
 <input  type="hidden"  name="load"   value="PDB:1ryp_A UNIPROT:PSA2_XENLA "  >
 <input  type="hidden"  name="script" value="
plugin  ApplyPairAligner_NeedlemanWunsch_Biojava, http://www.charite.de/bioinf/strap/plugins/needlemanWunschBJ.jar http://www.biojava.org/download/bj17/bin/biojava.jar
    ">
 <input  type="SUBMIT"  name="SUBMIT" value="Run Biojava-Needleman-Wunsch" >
</form>

The important Web-variable is "script". It contains the script command

  script   name-of-plugin-class ,  Jar-files for the plugin.

To use Biojava, the jar-file biojava.jar is contained in the list of jar-files.


Cheers

Christoph






More information about the Biojava-l mailing list