git clone https://@opensourceprojects.eu/git/p/timbus/context-population/extractors/taverna-extractor timbus-context-population-extractors-taverna-extractor



File Date Author Commit
META-INF 2014-11-05 munterberger munterberger [1b6592] improve user feedback information
samples 2014-05-07 munterberger munterberger [50d445] initial project import from internal SVN
src 2014-12-03 munterberger munterberger [ec30ce] add XRN property to local machine (again!)
.gitignore 2014-10-14 munterberger munterberger [8d1358] merge with current master; minor changes in the...
DEPRECATED_build.xml 2014-11-03 munterberger munterberger [b8d08d] fixed provenance issues
README.md 2014-11-03 munterberger munterberger [b8d08d] fixed provenance issues
TavernaExtractor.properties 2014-06-30 munterberger munterberger [578508] improve arguments handing again; add repoBundle...
TavernaToArchiMapping.txt 2014-06-26 munterberger munterberger [f9a9cc] improve arguments handing
pom.xml 2014-11-05 munterberger munterberger [1b6592] improve user feedback information

Read Me

Taverna-Provenance-Extractor v1.0

Link to the official website: http://www.ifs.tuwien.ac.at/dp/process/projects/tavernaExtractor.html

Link to the repository https://opensourceprojects.eu/p/timbus/context-population/extractors/taverna-extractor

This program comes in two flavors:

  • Standalone CLI
  • OSGi Bundle

USING THE STANDALONE CLI

The standalone CLI version encapsulates two different features:

  • Feature A: Converts a Taverna 2.4 worfklow to an Archimate model.
  • Feature B: Accesses provenance data captured during a Taverna 2.4 workflow run,
    applies DROID on that capturing (to identify used file formats in the workflow) and generates
    a CSV report (including e.g., file formats). Extends an existing Domain Specific Ontology (DSO)
    with file format information identified by DROID.

Interacting with the standalone CLI version

A   =>  -i,--inputFile <arg>      ...specifies the taverna t2flow (input) file. \path\to\taverna\input.t2flow
        -o,--outputFile <arg>     ...specifies the archimate (output) file. \path\to\archimate\output.archimate

B1  =>  -d,--droid <arg>       ...\path\where\to\save\droidOutputFile

B2  =>  -cr,--report <arg>      ...\path\where\droidOutputFile\is\located

B3  =>  -ont,--ontology-file <arg>  ...ontology to extend. \path\to\ontology
        -r,--reportFile <arg>       ...generated DROID CSV report.

(general)   -v, verbose     ...enable verbose mode

Sample usage

[A] Convert a Taverna Workflow to an Archimate Model:

java -jar TavernaExtractor.jar -i \path\to\TavernvaWorkflowInputFile.t2flow -o \path\to\ArchimateOutputFile.archimate

[B] Extract including file formats from Workflow and identify them with DROID. In the following the 3 necessray steps are presented:
ATTENTION: Due to its DROID dependencies, make sure you are executing the TavernaExtractor.jar in the respective directory!!

[B1] Running DROID identififaction on collected Taverna Workflow Run data:
INPUT: path to file which gets created.
OUTPUT: file containing DROID identification information in a none readable form.

java -jar TavernaExtractor.jar -d path\to\myDroidFile.droid

Sample Output:
===== [ID] | [Workflow Name (Timestamp)] ===== | 2 entries found.

[1] MusicClassificationExperiment (2013-09-25 13:11:42.488)
[2] MusicClassificationExperiment (2013-09-23 10:44:43.839)
Your choice:  //Enter an ID to process

[B2] Generate a CSV report out of a DROID profile: (CSV report is stored in the same directory as the *.droid input file)
INPUT: file from step [B1].
OUTPUT: file in CSV format containing DROID information in a readable form.

java -jar TavernaExtractor.jar -cr path\to\myDroidFile.droid

[B3] Extend existing ontology with information about the used file formats in the workflow run:
INPUT1: existing OWL file, which should be extended.
INPUT2: file from step [B2].
OUTPUT: updates OWL file from INPUT1.

java -jar TavernaExtractor.jar -ont \path\to\myOntology.owl -r \path\to\myDroidCSVreportFile.droid.csv

Build and Execution

  1. Clone the current project from https://opensourceprojects.eu/p/timbus/context-population/extractors/taverna-extractor.
  2. Change in the checked-out directory.
  3. Adapt the TavernaExtractor.properties file.
  4. Use maven (mvn package -DskipTests=true -Pstandalone) to package the program.
  5. Change to the 'target' directory.
  6. Run the executable with 'java -jar TavernaExtractor.jar <args>'.

Runtime Dependencies

  • JRE 1.7+
  • Apache Ant 1.9+ for building
  • DOT (comes with Graphviz)

USING THE OSGi TIMBUS testbed BUNDLE

The OSGi bundle can be accessed at http://testbed.timbusproject.net:3001/

It encapsulates following feature: Converts a Taverna 2.4/2.5 worfklow to an Archimate model regarding specification 2.1.

Mandatory Parameters

  • fqdn ... IP of the remote address (e.g. 134.191.240.68)
  • port ... Port of the remote machine (e.g. 10026)
  • user ... Username Credentials (e.g. timbus)
  • password ... Password Credentials (e.g. timbus)
  • inputFileName ... Path to the Taverna workflow input file (e.g. /home/timbus/Documents/imagemagick_wf.t2flow)
  • archimateOutputPath ... Path to the generated output file (e.g. /home/timbus/Documents/imagemagick.contextmodel.archimate)
  • tavernaHome ... Path to Taverna Home directory (e.g. /home/timbus/.taverna-2.4.0)

Build

The bundle can also be build using maven mvn package -DskipTests=true -POSGi

SUPPORTED TAVERNA ACTIVITIES

At the moment, the following activitied are supported.

  • Beanshell script
  • RShell
  • Tool innvocation
  • Text constant
  • WSDL/Rest Services

All other activities will cause an ClassNotFoundException.
To suppress that error, add the stated dependency to the classpath.
In case you have successfully executed the workflow once,
the dependency should be available somewhere in the repository location of the Taverna installation directory.
But keep in mind: That activity won't be processed by the tool correctly!