Versions Compared


  • This line was added.
  • This line was removed.
  • Formatting was changed.


  • scufl2-usecases Example codes. (Replaced by
  • scufl2-rdf Pure RDF export/import (out of date)
  • scufl2-scufl SCUFL 1 .xml import from Taverna 1
  • scufl2-validation API for validating a Scufl2 workflow bundle
  • scufl2-validation-correctness Validate correctness of Scufl2 workflow definition
  • scufl2-validation-structural Validate that a Scufl2 workflow definition is structurally sound
  • scufl2-validation-integration Integration tests for scufl2-validation modules



2014-04-30: This release adds the methods WorkflowBundleIO.getSupportedReaderMediaTypes() and getSupportedWriterMediaTypes(). This version will not allow invalid names of workflow beans, e.g. containing /: or ASCII controll characters.


2013-11-18: This patch release updates SCUFL2's t2flow parser to correctly set the @base for any SemanticAnnotation's, e.g. from Taverna 2's Component Plugin. This is used by scufl2-wfdesc which now embeds any annotations on workflows, processors and ports.


Code Block
		<releases />
		<name>myGrid Repository</name>


The simplest way to use the SCUFL2 API is as Maven dependencies. See #Maven Maven above.

Typical use of the Scufl2 API will depend on the three modules scufl2-api, scufl2-t2flow and scufl2-rdfxml.


If you don't use Maven, you can alternatively copy and add the JARs from these modules to your classpath:

Note that version numbers and download links above might not be the latest, see #Release Release notes


See the JavaDoc at:


titleOther modules



The SCUFL2 Javadocs document the core classes and functions of the SCUFL2 API. A good starting point is the package

If you are using Eclipse we recommend also using the m2e plugin for Maven support - which can , then the built-in Maven support (m2e plugin) is able to provide both JavaDocs and source code from within the editor. After adding the #Maven Maven dependencies for SCUFL2, try Open declaration or Open Type on a class like (You can open the class with Navigate -> Open Type).


Examples of using the Scufl2 API are available as a separate Github project scufl2-examples. If you don't use Git you can download the example project as a ZIP fie.


The best classes to start using would be and

Example of converting .t2flow to .wfbundle:

Code Block

    // ..

    WorkflowBundleIO io = new WorkflowBundleIO();
    File t2File = new File("workflow.t2flow");
    File scufl2File = new File("workflow.wfbundle");
    WorkflowBundle wfBundle = io.readBundle(t2File, "application/vnd.taverna.t2flow+xml");
    io.writeBundle(wfBundle, scufl2File, "application/vnd.taverna.scufl2.workflow-bundle");

Command line

The Github project scufl2-examples includes experimental SCUFL2 command line tools:

  • processornames - print list of processor names
  • servicetypes - print URIs of service types
  • t2flowtowfbundle - convert a Taverna 2 .t2flow to a SCUFL2 Workflow Bundle
  • jsonexport - show a simple JSON structure of workflow content

Other projects

These projects extend, use or relate to the SCUFL2 api: