Plugins

The design of Taverna is modular in nature so that various plugins can be added in order to increase its functionality. Currently, plugins are specific to versions of Taverna. We are hoping to change this in future, when we move to the OSGi platform (see our Roadmap for details).

There are several different things that can be plugged into Taverna. Of most interest are plugins that enable search and invocation of a specific service type from worflows (e.g. a Web service plugin that enables adding a Web service based on its WSDL description document and invoking it from a workflow).

Installing plugins

To install a plugin for Taverna, use the Plugin Manager – it can be found under Updates and plugins from the Advanced menu. If your plugin is not visible, select ‘Find New Plugins’. You may need to add the plugin site using ‘Add Plugin Site’ for specific plugins. Check the box for the plugin and click install. You may need to restart Taverna for the plugin to become visible and fully functional.

Available plugins

Various plugins for Taverna 2.x have been developed by us or by third parties in collaboration with the Taverna team:

 

A number of plugins for Taverna 2.x are also currently in progress.

AstroTaverna plugin

Available for Taverna 2.4, 2.5, included in Taverna Workbench Astronomy 2.5.

AstroTaverna is a plugin that enables the building of astronomy workflows using Virtual Observatory services discovery and efficient manipulation of VOTables . It integrates SAMP-enabled software, allowing data exchange and communication among local VO tools, as well as the ability to execute Aladin scripts and macros. AstroTaverna was developed by the Wf4Ever and CANUBE projects by IAA Amiga group and the myGrid group at University of Manchester.

OAuth plugin

Available for Taverna 2.4 and 2.5.

The OAuth plugin allows users to call REST services that are protected by OAuth. It was developed by Mark Borkum of the University of Southampton.

Taverna PROV plugin

Available for Taverna 2.4. Integrated in Taverna 2.5.

The Wf4Ever project further developed the provenance support in Taverna to export W3C PROV-O compliant provenance traces. The plugin is part of Taverna since 2.5. Description and source code are at GitHub.

VAMDC plugin

Available for Taverna 2.2, 2.3, 2.4. Included in Taverna Workbench Astronomy 2.5.

The VAMDC has created integrated plugins for Taverna Workflow to run XSAMS Queries, and specific VAMDC Codes. Since Taverna 2.5 the VAMDC plugin is part of the Astronomy edition.

BIFI (Beautiful Interfaces for Inputs) plugin

Available for Taverna 2.4.

The BIFI (Beautiful Interfaces for Inputs) plug-in for Taverna Workbench provides a GUI definition language that is used to lay out user interfaces and define parameter options for Taverna workflows. BIFI is also able to submit GUI definition files (GDF) directly to or locate appropriate instances from the repository configured. Moreover, BIFI includes an algorithm used to generate a default user interface if no GDF can be found in the repository by making use of the meta-information from process definitions.

VPH-Share plugin

Available for Taverna 2.4 and 2.5.
The VPH-Share project has developed a plugin for Taverna that allows the usage of any VPH-Share Web Service to be included as services within a Taverna workflow.

The VPH-Share services are run on virtual machines (VM) within a cloud, but the VPH-Share Plugin makes this transparent to the users. VPH-Share manages the handling of VMs, so the user can connect to the available Web Services like any other Web Service, without dealing with starting or shutting down the virtual machines. VPH-Share also handles user access control in all steps of the workflow composition and execution.

The VPH-Share Plugin works with Taverna Workbench as well as with Taverna Server. Planned improvements include allowing web-based composition of workflows with VPH-Share services through Taverna Online.

This VPH-Share Plugin is currently under development by the Scientific Software Development Team of CISTIB (Center for Computational Imaging & Simulation Technologies in Biomedicine), at The University of Sheffield, and can be installed in Taverna by adding the CISTIB Plugin Site. You can contact the development team at ssd.cistib@lists.shef.ac.uk.

Interaction plugin

Available for Taverna 2.4; integrated in Taverna 2.5
The Interaction plugin allows users to interact in a web browser within a workflow run using an Interaction service. The run can be on Taverna Workbench or on a Taverna Server. A detailed description of the Interaction service can be found in the online manual.

The Interaction service was developed by the BioVeL project.

XPath plugin

Available for Taverna 2.2; integrated in Taverna 2.3, 2.4 and 2.5
XPath plugin provides enhanced support for creating and executing XPath expressions over XML data in order to extract specific fragments of the data. This plugin offers an intuitive and easy-to-use way of creating XPath expressions and does not require detailed knowledge of the XPath language – expressions are generated by selection of relevant nodes in the tree-like view of the provided example XML data. Ability to modify automatically-generated XPath expressions and control over namespace handling make this a powerful tool. This plugin was written by Sergejs Aleksejevs.

REST plugin

Available for Taverna 2.2; integrated in Taverna 2.3, 2.4 and 2.5.
REST  plugin allows users to access remote services via four different types of HTTP requests: GET, POST, PUT and DELETE. Configuration options of the plugin include MIME types of the sent and received data and the URL template that can have configurable parameters (with an individual input port created for each). The plugin integrates with the Credential Manager of the Workbench for added convenience when accessing secure web services. This plugin was written by Sergejs Aleksejevs.

BioCatalogue plugin

Available for Taverna 2.1.2, 2.2; integrated in Taverna 2.3, 2.4 and 2.5.
BioCatalogue plugin alpha for Taverna 2.1.2 allows users to browse services in the BioCatalogue Life Sciences Web Services registry from the Workbench and add them to workflows. Being an alpha, some pieces of functionality have not been fully implemented. The plugin has been developed by Sergejs Aleksejevs.

The plugin for Taverna 2.2 is still an alpha but several small fixes and improvements have been made in this version:

  • Services added to the Service Panel are now saved and re-appear in the Service Panel when the Workbench is restarted
  • An option to choose which BioCatalogue instance to work with has been added (available from File -> Preferences -> BioCatalogue). This means that Taverna can use not only the main instance of BioCatalogue, but also other instances (e.g. the BioDiversity catalogue that is based on the BioCatalogue codebase).
  • The user interface of the tree with Filtering options (in the Filter Services tab of the BioCatalogue Perspective) has been fixed – now it looks identical on Windows, Linux and Mac OS.
  • Contextual views are not shown for the types of workflow elements that the BioCatalogue does not work with.

PBS plugin

Available for Taverna 2.2.
TavernaPBS plugin is developed by the Mackey Lab, Center for Public Health Genomics, University of Virginia, US. It allows a user to define workflows that can then be run using a computational cluster that uses a PBS (Portable Batch System) queuing system. The workflows represent next generation sequencing analysis pipelines.

To most efficiently make use of their myriad of UNIX command line tools, the project has developed a custom Beanshell-based library to enable workflows composed of UNIX command line invocations. Furthermore, they have abstracted the command execution such that each step could be executed as an independent “job” on a remote high performance computing or grid environment. By doing so, they have essentially turned Taverna into a distributed workflow “compiler”.

You can download the code from the project’s pages at SourceForge.

SADI plugin

Available for Taverna 2.1.2, 2.2.
Semantic Automated Discovery and Integration (SADI) is a set of standards-compliant best practices that simplify interoperability between semantic Web services. The SADI codebase make it easy for people to deploy services that adhere to the SADI framework practices. The SADI plugin allows semantic services to be accessed from Taverna. The plugin has been developed by David Withers (with the support of the Genome Canada Bioinformatics Platform). It requires Java 6.

External Tools (UseCase) plugin

Available for Taverna 2.1.2, 2.2; integrated in Taverna 2.3, 2.4 and 2.5.
External Tools (previously UseCase) plugin that was developed for Taverna 1.7 as part of the KnowARC project (previously ARC project) has now been updated to work with Taverna 2.x and extended in functionality. The plugin was originally written by Hajo Krabbenhöft and Steffen Möller and updated to work with Taverna 2.2 by Alan Williams. It allows users to run tools on a grid, or a remote/local machine using grid or ssh authentication.  At the moment a prototype set of tool descriptions is available. Read more on how to use the plugin.

UNICORE plugin

Available for Taverna 2.3
Sonja Holl of the Distributed Systems and Grid Computing division of the Jülich Supercomputing Centre (JSC) in Germany developed a UNICORE plugin for Taverna. “UNICORE (Uniform Interface to Computing Resources) offers a ready-to-run Grid system  and makes distributed computing and data resources available in a seamless and secure way.” The UNICORE plugin for Taverna enables users to submit jobs from Taverna Workbench to any UNICORE resource.

To get access to UNICORE resources from Taverna, the user registers a new UNICORE registry in Taverna’s Service Panel. This UNICORE registry is then queried and the UNICORE services orchestrator returns a list of available applications. The applications are selected from various UNICORE resources, as each installation holds a file that describes the available applications, including metadata on the specific resource.

The list of applications is then used in Taverna to display available UNICORE services (applications), which can be added as services to Taverna workflows. The metadata is used to create input and output ports of the specific application/service. Users can than connect inputs/outputs to other workflow services in the usual manner.

During the worfklow execution, a job description is created and submitted to the UNICORE service orchestrator(SO). Files are being uploaded and stored under a logical filename. The SO then manages the execution and file
transmission. The status of the submitted job is polled in the background from Taverna. After the job finished, some files are downloaded, and for further modification, only the logical file name is retrieved.

Additionally, the UNICORE services are using Taverna’s Credential Manager to get access to the user’s X.509 certificate, which user has to load prior to service invocation, along with the other CA’s certificates. The UNICORE services then access the user’s certificate and use it for job submission (since UNICORE’s security concept is based upon grid security and X.509 certificates).

To install the plugin, follow the installation instructions from the User Manual and use the following URL when installing the plugin: http://unicore-dev.zam.kfa-juelich.de/taverna/plugins/.

CDK plugin

Available for Taverna 2.2, 2.3.
Andreas Truszkowski
has updated the plugin that the Chemistry Development Kit (CDK) project have developed for Taverna 1.7.2, to allow the CDK tools to be used within Taverna 2 workflows as services. More information about the plugin is available from their wiki pages.

See our User Manual pages for more information on how to download, install and use the plugin.

caGrid plugin

Available for Taverna 2.1.2.
The Taverna team together with the caGrid team have developed the caGrid service discoverer plugin for Taverna 2.1.2. This plugin is used to query caGrid services from the caGrid Index Service. This allows you to easily find the available caGrid services, add them in Taverna’s Service Panel and then invoke them from workflows. The documentation for the plugin is available on-line, as well as the source code.
Note: As of May 2013, this plugin does not install correctly from the caGrid plugin site. Users are advised to build the plugin from source code..

caGrid remote execution plugin

Available for Taverna 2.1.2.
The caGrid team have also developed a remote workflow execution service plugin for Taverna 2.1.2. The plugin passes a workflow definition file, including the appropriate inputs, to a generic remote caGrid service, where the workflow is then executed. This is useful in instances where the workflow is long-running and relies on constant access to the caGrid to execute properly. The documentation for the plugin is available on-line, as well as the source code.
Note: As of May 2013, this plugin does not install correctly from the caGrid plugin site. Users are advised to build the plugin from source code..

XWS plugin

Available for Taverna 2.0.
Egon Willighagen of Uppsala University, Sweden, has developed a plugin that allows workflows to include XWS (XMPP IO-DATA) cloud services.

gLite plugin

Available for Taverna 2.0.
Richard Holland of Eagle Genomics while working for Sara Grid has developed a gLite plugin that allows workflows to include services that run on a grid.