This page is for discussion of the model and XML syntax of SCUFL2 which replaces Taverna 2's t2flow workflow format.
The t2flow serialization format suffers from being very close to the Java object model, and contains various items that are simply Java beans serialized using XMLBeans. As the t2flow format is very verbose, it can be difficult to deal with for third party software to do inspection ("Which services does this workflow use?"), modification ("Change all calls to http://broken.com/ to http://fixed.com/") and generation ("Build a custom workflow from a button").
Developers have informed us that the old SCUFL format of Taverna 1 was significantly easier to work with. However, this format also has its caveats, like no schema, unidentified ways to extend service definitions for Taverna plugins and not supporting various new features in the Taverna 2 engine.
We have therefore decided to form a new serialisation format for workflows, called SCUFL2.
This page reflect preliminary work, and these specifications are not yet at alpha level. Do not write any applications assuming the SCUFL2 format will stay as discussed on this page.
The code and definitions for SCUFL2 are kept in GitHub. Rough overview:
- scufl2-api Java Beans for SCUFL2 objects (and currently XML import/export)
- scufl2-t2flow .t2flow import (and later export)
- scufl2-rdf RDF export (and later import)
- scufl2-usecases Example code covering SCUFL2 use cases
- native zargo file
- nice pictures of the class diagrams
Specification of identifiers in Taverna URI templates.