You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@taverna.apache.org by bu...@apache.org on 2015/03/11 09:49:35 UTC
svn commit: r943310 [1/10] - in /websites/staging/taverna/trunk: cgi-bin/
content/ content/documentation/ content/documentation/api-consumer-tool/
content/documentation/command-line-tool/
content/documentation/command-line/ content/documentation/compon...
Author: buildbot
Date: Wed Mar 11 08:49:34 2015
New Revision: 943310
Log:
Staging update by buildbot for taverna
Modified:
websites/staging/taverna/trunk/cgi-bin/ (props changed)
websites/staging/taverna/trunk/content/ (props changed)
websites/staging/taverna/trunk/content/documentation/404.html
websites/staging/taverna/trunk/content/documentation/api-consumer-tool/index.html
websites/staging/taverna/trunk/content/documentation/command-line-tool/index.html
websites/staging/taverna/trunk/content/documentation/command-line/index.html
websites/staging/taverna/trunk/content/documentation/components/component-profile-editor.html
websites/staging/taverna/trunk/content/documentation/components/component-validator.html
websites/staging/taverna/trunk/content/documentation/components/index.html
websites/staging/taverna/trunk/content/documentation/dataviewer-tool/index.html
websites/staging/taverna/trunk/content/documentation/example-workflows/index.html
websites/staging/taverna/trunk/content/documentation/glossary/index.html
websites/staging/taverna/trunk/content/documentation/index.html
websites/staging/taverna/trunk/content/documentation/interaction/index.html
websites/staging/taverna/trunk/content/documentation/online.html
websites/staging/taverna/trunk/content/documentation/plugins/index.html
websites/staging/taverna/trunk/content/documentation/provenance/index.html
websites/staging/taverna/trunk/content/documentation/quick-start-guide/index.html
websites/staging/taverna/trunk/content/documentation/scufl2/api.html
websites/staging/taverna/trunk/content/documentation/scufl2/bundle.html
websites/staging/taverna/trunk/content/documentation/scufl2/datalink.html
websites/staging/taverna/trunk/content/documentation/scufl2/index.html
websites/staging/taverna/trunk/content/documentation/scufl2/processors.html
websites/staging/taverna/trunk/content/documentation/scufl2/uris.html
websites/staging/taverna/trunk/content/documentation/scufl2/workflow.html
websites/staging/taverna/trunk/content/documentation/server/index.html
websites/staging/taverna/trunk/content/documentation/service-sets/index.html
websites/staging/taverna/trunk/content/documentation/taverna-galaxy/index.html
websites/staging/taverna/trunk/content/documentation/taverna-player/index.html
websites/staging/taverna/trunk/content/documentation/training-and-workshops/index.html
websites/staging/taverna/trunk/content/documentation/tutorials/index.html
websites/staging/taverna/trunk/content/documentation/videos/index.html
websites/staging/taverna/trunk/content/documentation/web-service-developers/index.html
websites/staging/taverna/trunk/content/introduction/chemistry-web-services.html
websites/staging/taverna/trunk/content/introduction/how-can-taverna-help-me.html
websites/staging/taverna/trunk/content/introduction/index.html
websites/staging/taverna/trunk/content/introduction/related-projects.html
websites/staging/taverna/trunk/content/introduction/roadmap.html
websites/staging/taverna/trunk/content/introduction/services-in-taverna.html
websites/staging/taverna/trunk/content/introduction/taverna-features.html
websites/staging/taverna/trunk/content/introduction/taverna-in-use/annotation.html
websites/staging/taverna/trunk/content/introduction/taverna-in-use/arts.html
websites/staging/taverna/trunk/content/introduction/taverna-in-use/astronomy.html
websites/staging/taverna/trunk/content/introduction/taverna-in-use/biodiversity.html
websites/staging/taverna/trunk/content/introduction/taverna-in-use/bioinformatics.html
websites/staging/taverna/trunk/content/introduction/taverna-in-use/biology.html
websites/staging/taverna/trunk/content/introduction/taverna-in-use/chemistry.html
websites/staging/taverna/trunk/content/introduction/taverna-in-use/data-and-text-mining.html
websites/staging/taverna/trunk/content/introduction/taverna-in-use/databases.html
websites/staging/taverna/trunk/content/introduction/taverna-in-use/disease-research.html
websites/staging/taverna/trunk/content/introduction/taverna-in-use/document-analysis.html
websites/staging/taverna/trunk/content/introduction/taverna-in-use/education.html
websites/staging/taverna/trunk/content/introduction/taverna-in-use/engineering.html
websites/staging/taverna/trunk/content/introduction/taverna-in-use/genome-and-gene-expression/index.html
websites/staging/taverna/trunk/content/introduction/taverna-in-use/geoinformatics.html
websites/staging/taverna/trunk/content/introduction/taverna-in-use/index.html
websites/staging/taverna/trunk/content/introduction/taverna-in-use/information-quality.html
websites/staging/taverna/trunk/content/introduction/taverna-in-use/medicine.html
websites/staging/taverna/trunk/content/introduction/taverna-in-use/multimedia.html
websites/staging/taverna/trunk/content/introduction/taverna-in-use/natural-language-processing.html
websites/staging/taverna/trunk/content/introduction/taverna-in-use/other.html
websites/staging/taverna/trunk/content/introduction/taverna-in-use/protein-and-proteomics.html
websites/staging/taverna/trunk/content/introduction/taverna-in-use/service-provision.html
websites/staging/taverna/trunk/content/introduction/taverna-in-use/service-testing.html
websites/staging/taverna/trunk/content/introduction/taverna-in-use/social-sciences.html
websites/staging/taverna/trunk/content/introduction/taverna-in-use/systems-biology.html
websites/staging/taverna/trunk/content/introduction/what-is-a-workflow-management-system.html
websites/staging/taverna/trunk/content/introduction/what-is-in-silico-experimentation.html
websites/staging/taverna/trunk/content/introduction/why-use-workflows.html
websites/staging/taverna/trunk/content/introduction/works-with.html
Propchange: websites/staging/taverna/trunk/cgi-bin/
------------------------------------------------------------------------------
--- cms:source-revision (original)
+++ cms:source-revision Wed Mar 11 08:49:34 2015
@@ -1 +1 @@
-1665804
+1665805
Propchange: websites/staging/taverna/trunk/content/
------------------------------------------------------------------------------
--- cms:source-revision (original)
+++ cms:source-revision Wed Mar 11 08:49:34 2015
@@ -1 +1 @@
-1665804
+1665805
Modified: websites/staging/taverna/trunk/content/documentation/404.html
==============================================================================
--- websites/staging/taverna/trunk/content/documentation/404.html (original)
+++ websites/staging/taverna/trunk/content/documentation/404.html Wed Mar 11 08:49:34 2015
@@ -104,3 +104,118 @@
<li><a href="/documentation/#tools">Tools and Services</a></li>
</ul>
</li>
+
+
+ <li class="dropdown">
+ <a href="/download" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-expanded="false">Download<span class="caret"></span></a>
+ <ul class="dropdown-menu" role="menu">
+ <li><a href="/download">Which Taverna to use</a></li>
+ <li><a href="/download/workbench">TavernaWorkbench</a></li>
+ <li><a href="/download/language">Taverna's SCUFL2 Language</a></li>
+ <li><a href="/download/command-line-tool">Taverna Command Line</a></li>
+ <li><a href="/download/server">Taverna Server</a></li>
+ <li><a href="/documentation/plugins">Plugins</a></li>
+ <li><a href="/download/code">Source Code</a></li>
+ <li><a href="/download/maven">Maven Repository</a></li>
+ <li><a href="/download/system-requirements">System Requirements</a></li>
+ <li><a href="/download/pre-apache">Taverna 2.x (Pre-Apache)</a></li>
+ </ul>
+ </li>
+ <li class="dropdown">
+ <a href="/community" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-expanded="false">Community<span class="caret"></span></a>
+ <ul class="dropdown-menu" role="menu">
+ <li><a href="/community#mailinglists">Mailing Lists</a></li>
+ <li><a href="/community#contribute">Contribute</a></li>
+ <li><a href="/community#reportbugs">Report a Bug</a></li>
+ </ul>
+ </li>
+ </ul>
+
+ <form >
+
+
+ <!--<input type="submit" id="submit" value="Search">-->
+ </form>
+
+ <form class="navbar-form navbar-right" role="search"
+ name="search" id="search" action="http://www.google.com/search" method="get">
+ <input value="taverna.incubator.apache.org" name="sitesearch" type="hidden"/>
+ <div class="form-group input-group">
+ <input type="text" name="q" id="query" placeholder="Search" class="form-control">
+ <span class="input-group-btn">
+ <button type="submit" class="btn btn-default">Search</button>
+ </span>
+ </div>
+ </form>
+
+ <ul class="nav navbar-nav navbar-right">
+ <li class="dropdown">
+ <a href="http://www.apache.org/" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-expanded="false">ASF<span class="caret"></span></a>
+ <ul class="dropdown-menu" role="menu">
+ <li><a href="http://www.apache.org/">Apache Software Foundation</a></li>
+ <li><a href="http://www.apache.org/foundation/how-it-works.html">How it works</a></li>
+ <li><a href="http://www.apache.org/foundation/thanks.html">Thanks</a></li>
+ <li><a href="http://www.apache.org/foundation/sponsorship.html">Become a Sponsor</a></li>
+ <li><a href="http://incubator.apache.org/projects/taverna.html">Taverna Incubation Status</a></li>
+ </ul>
+ </li>
+ </ul>
+ </div><!--/.nav-collapse -->
+ </div><!--/.container-->
+ </nav>
+
+
+ <div id="page" class="container">
+ <h1>Directory Under Development</h1>
+ <div class="alert alert-info" role="alert"><p><span class="glyphicon glyphicon-info-sign" aria-hidden="true"></span>
+
+Taverna is transitioning to the Apache Incubator.
+This webpage reflects material not yet released under Apache Incubator.
+Instead it shows <a class="alert-link" href="http://www.taverna.org.uk/">taverna2</a> material that is expected to become part of the Apache Incubator project in the future.
+</div>
+
+
+ <div id="content"><p>Thank you for your interest in Taverna.</p>
+<p>The documentation page is currently under development.</p>
+<p>You are seeing this message as the requested page has not yet been copied from:
+<a href="http://www.taverna.org.uk/documentation/taverna-2-x/">the previous Taverna website</a></p></div>
+
+ </div>
+
+ <footer class="footer">
+ <div class="container">
+ <p id="copyright" class="text-muted">
+ Copyright © 2014-2015 The Apache Software Foundation, Licensed under the
+ <a href="http://www.apache.org/licenses/LICENSE-2.0">Apache License, Version 2.0</a>.
+ Apache and the Apache feather logo are trademarks of The Apache Software Foundation.
+ </p>
+ </div>
+ </footer>
+
+
+
+ <script src="/lib/jquery/jquery-1.11.1.min.js"></script>
+<script src="/lib/bootstrap/js/bootstrap.min.js"></script>
+
+<script>
+ jQuery(function($) {
+ if($(window).width()>769){
+ $('.navbar .dropdown').hover(function() {
+ $(this).find('.dropdown-menu').first().stop(true, true).delay(250).slideDown();
+
+ }, function() {
+ $(this).find('.dropdown-menu').first().stop(true, true).delay(100).slideUp();
+
+ });
+
+ $('.navbar .dropdown > a').click(function(){
+ location.href = this.href;
+ });
+
+ }
+ });
+</script>
+
+
+ </body>
+</html>
\ No newline at end of file
Modified: websites/staging/taverna/trunk/content/documentation/api-consumer-tool/index.html
==============================================================================
--- websites/staging/taverna/trunk/content/documentation/api-consumer-tool/index.html (original)
+++ websites/staging/taverna/trunk/content/documentation/api-consumer-tool/index.html Wed Mar 11 08:49:34 2015
@@ -104,3 +104,266 @@
<li><a href="/documentation/#tools">Tools and Services</a></li>
</ul>
</li>
+
+
+ <li class="dropdown">
+ <a href="/download" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-expanded="false">Download<span class="caret"></span></a>
+ <ul class="dropdown-menu" role="menu">
+ <li><a href="/download">Which Taverna to use</a></li>
+ <li><a href="/download/workbench">TavernaWorkbench</a></li>
+ <li><a href="/download/language">Taverna's SCUFL2 Language</a></li>
+ <li><a href="/download/command-line-tool">Taverna Command Line</a></li>
+ <li><a href="/download/server">Taverna Server</a></li>
+ <li><a href="/documentation/plugins">Plugins</a></li>
+ <li><a href="/download/code">Source Code</a></li>
+ <li><a href="/download/maven">Maven Repository</a></li>
+ <li><a href="/download/system-requirements">System Requirements</a></li>
+ <li><a href="/download/pre-apache">Taverna 2.x (Pre-Apache)</a></li>
+ </ul>
+ </li>
+ <li class="dropdown">
+ <a href="/community" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-expanded="false">Community<span class="caret"></span></a>
+ <ul class="dropdown-menu" role="menu">
+ <li><a href="/community#mailinglists">Mailing Lists</a></li>
+ <li><a href="/community#contribute">Contribute</a></li>
+ <li><a href="/community#reportbugs">Report a Bug</a></li>
+ </ul>
+ </li>
+ </ul>
+
+ <form >
+
+
+ <!--<input type="submit" id="submit" value="Search">-->
+ </form>
+
+ <form class="navbar-form navbar-right" role="search"
+ name="search" id="search" action="http://www.google.com/search" method="get">
+ <input value="taverna.incubator.apache.org" name="sitesearch" type="hidden"/>
+ <div class="form-group input-group">
+ <input type="text" name="q" id="query" placeholder="Search" class="form-control">
+ <span class="input-group-btn">
+ <button type="submit" class="btn btn-default">Search</button>
+ </span>
+ </div>
+ </form>
+
+ <ul class="nav navbar-nav navbar-right">
+ <li class="dropdown">
+ <a href="http://www.apache.org/" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-expanded="false">ASF<span class="caret"></span></a>
+ <ul class="dropdown-menu" role="menu">
+ <li><a href="http://www.apache.org/">Apache Software Foundation</a></li>
+ <li><a href="http://www.apache.org/foundation/how-it-works.html">How it works</a></li>
+ <li><a href="http://www.apache.org/foundation/thanks.html">Thanks</a></li>
+ <li><a href="http://www.apache.org/foundation/sponsorship.html">Become a Sponsor</a></li>
+ <li><a href="http://incubator.apache.org/projects/taverna.html">Taverna Incubation Status</a></li>
+ </ul>
+ </li>
+ </ul>
+ </div><!--/.nav-collapse -->
+ </div><!--/.container-->
+ </nav>
+
+
+ <div id="page" class="container">
+ <h1>API Consumer Tool</h1>
+ <div class="alert alert-info" role="alert"><p><span class="glyphicon glyphicon-info-sign" aria-hidden="true"></span>
+
+Taverna is transitioning to the Apache Incubator.
+This webpage reflects material not yet released under Apache Incubator.
+Instead it shows <a class="alert-link" href="http://www.taverna.org.uk/">taverna2</a> material that is expected to become part of the Apache Incubator project in the future.
+</div>
+
+
+ <div id="content"><p>This page contains information:</p>
+<ul>
+<li>for <a href="#api_developers">developers who want to use the API Consumer Tool</a> to wrap their Java
+ API for the subsequent use in Taverna workflows, and</li>
+<li>for <a href="#api_users">users who want to use the wrapped Java API</a> inside their workflows.</li>
+</ul>
+<p><a name="api_developers"></a></p>
+<h2 id="api-consumer-tool">API Consumer Tool</h2>
+<p>Current version of the tool is 1.1.
+You can get it from the old
+ <a href="http://www.taverna.org.uk/download/associated-tools/api-consumer-tool">download pages</a>.
+Please also refer to the
+ <a href="http://www.mygrid.org.uk/dev/wiki/display/taverna/API+Consumer+Tool">API Consumer Tool section on the User Manual</a>.</p>
+<p>The API Consumer Tool allows the selection of subsets of Java APIs which may then be imported
+ into Taverna Workbench and used as services in workflows.
+This tool is intended for API developers rather than end-users.
+It produces an XML API definition file which Taverna imports - this is file that you distribute
+ alongside your API to âTaverna enableâ it.</p>
+<h3 id="prerequisites">Prerequisites</h3>
+<p>The API Consumer Tool is a Java Doclet and uses Ant to launch; you must therefore have Java and
+ Ant installed and available on the path.
+The Tool has been tested on Java 1.6; use other versions at your own risk.</p>
+<h3 id="setup">Setup</h3>
+<p>Before running the API Consumer Tool you need to place source files of your API within the
+ âtargetâ directory and any supporting libraries (i.e. dependencies) required in the
+ âlibâ directory.
+This is particularly important - if your API includes methods which consume or return a type
+ that is not available to the API Consumer Tool, the definitions it generates will be invalid.
+For example, if your API contains a method âvoid foo(MagicClass bar)â and the MagicClass is in
+ some random package in a third party jar file that you have not included there is no way for
+ the Doclet to know the fully qualified classname of MagicClass.
+As Taverna requires full classnames, this will result in an API that cannot be invoked from
+ workflows.
+You can normally trap these issues by watching for the standard JavaDoc warning messages in the
+ console.</p>
+<h3 id="usage">Usage</h3>
+<p>Once your source and any supporting files are present as described above,
+ from the API Consumer Tool directory you can either run the
+ ârunme.batâ/ârunme.sh script or call Ant directly (just type âantâ on
+ the command line).
+The API Consumer Tool itself will be built from source and applied to the target source files
+ of your API.
+After some slight delay for this process (longer for very complex APIs) you should see a screen
+ such as the following:</p>
+<p><img alt="API Consumer" src="/img/APIConsumer-InitialWindow.png" /></p>
+<p>The tree on the left hand side of the window shows the available classes (including inner
+ classes where present) along with a search box - the right hand side currently shows nothing.
+Selecting a class from the tree produces a display like the following, this should be clearly
+ similar to the information produced by the standard JavaDoc tool:</p>
+<p><img alt="API Consumer" src="/img/APIConsumer-SummaryDisplay.png" /></p>
+<p>In the case of large APIs the search box can be used to display a subset of the complete class
+ tree - enter a pattern to match and hit return in this text box and the tree will be
+ expanded to show all matching nodes.
+To return to the view with all nodes expanded clear the text in this box and hit return.</p>
+<h3 id="adding-methods-to-the-api-definition">Adding methods to the API definition</h3>
+<p>The next step is to select methods to add to the API definition - these methods
+ (static, instance or constructors) will appear as services within Taverna Workbench's
+ <a href="/documentation/glossary#service_panel">Service Panel</a> when the definition file is imported.</p>
+<h4 id="using-graphical-interface">Using graphical interface</h4>
+<p>Methods can be manually added by choosing the class, opening the âMethodsâ tab and either
+ selecting individual methods or using the âSelect allâ and âClear allâ boxes:</p>
+<p><img alt="API Consumer - methods" src="/img/APIConsumer-Methods.png" /></p>
+<h4 id="using-javadoc-tags">Using JavaDoc tags</h4>
+<p>For APIs under your direct control there is an alternative based on JavaDoc tags.
+By adding the tag â@taverna.consumeâ to either classes or individual methods you can
+ automatically have these methods selected in the API consumer when it first scans the source
+ files.
+In the case of the tag at a class or interface level all constructors and methods will be
+ selected.</p>
+<h3 id="api-level-metadata">API level metadata</h3>
+<p>To aid use of your exported API you can select the âAPI Descriptionâ tab and use it to provide
+ a name and description for the entire API subset:</p>
+<p><img alt="API Consumer - description" src="/img/APIConsumer-Description.png" /></p>
+<h3 id="saving-the-api-definition-file">Saving the API definition file</h3>
+<p>To save the API definition select the &âFileâ -> âSave as XMLâ.
+This should bring up a standard save dialogue, choose a filename and save.
+This is the file that is then imported into Taverna Workbench's Service Panel by selecting
+ âImport new servicesâ -> âAPI Consumer servicesâ¦â.</p>
+<p><a name="api_users"></a></p>
+<h2 id="using-api-consumer-services-in-workflows">Using API Consumer Services in Workflows</h2>
+<p>Please also refer to
+ <a href="http://www.mygrid.org.uk/dev/wiki/display/taverna/API+Consumer">the API Consumer section of the User Manual</a>.</p>
+<p>In order to use the API Consumer services in Taverna workflows, you need the XML API Consumer
+ definition (of the Java library) XML file generated from the API Consumer tool,
+ the library to be used (compiled and packaged as a <code>jar</code>file) and any
+ dependencies of the library as well (i.e. their <code>jar</code> files).</p>
+<p>To import the API Consumer definition file into Taverna, click on
+ <strong>âImport new servicesâ -> âAPI Consumer servicesâ¦â </strong> in the Service Panel.
+Select the API Consumer XML definition file.
+A new branch should be added to the Service Panel, showing the class names and methods that
+ have been selected for inclusion using the API Consumer Tool.
+<img alt="API Consumer - service panel" src="/img/APIConsumer-ServicePanel.png" /></p>
+<p>In this lightweight example, our exposed API only has a constructor and a single method.
+Using the API Consumer you have to build up the calls to the API as part of your workflow,
+ so as <code>sayHello()</code> is a method on the <code>HelloWorld</code> instance,
+ we first have to call the constructor <code>HelloWorld</code>,
+ and then call the method on the returned object.
+We will add both API Consumer services to the workflow.
+Each parameter of the method is exposed as an input port, and the return value is shown as an
+ output port.
+In our example, our methods do not take any parameters except the implicit object reference
+ <code>this</code>, which we will have to provide by connecting the <code>object</code>
+ output of the constructor <code>HelloWorld</code> to the <code>object</code> input of the
+ method <code>sayHello</code>.</p>
+<p><img alt="API Consumer - workflow" src="/img/APIConsumer-workflow.png" /></p>
+<p>As a convenience, methods also return the very same object in the output port
+ <code>object</code>, so that methods that needs to be run in a particular sequence can be
+ chained to pass their object reference, in effect preventing execution of the second method
+ before the first method is returning its result and object reference.</p>
+<blockquote>
+<p>Note that the Java objects can only be passed to other API Consumer
+services (and only if they are <strong>serializable</strong>); if you
+want any useful inputs and outputs to interact with your workflow you
+need to use basic types such as <code>String</code>. In our example,
+<code>sayHello()</code> returns a <code>String</code> that is
+connected to the workflow output called <code>sayHello_Result</code></p>
+</blockquote>
+<p>Static methods do not need the <code>object</code> reference, and hence do not need the
+ constructor call, unless you need to pass an instantiated object as a normal argument.</p>
+<p>Before you can run the workflow you also need to copy the <code>jar</code> file of the
+ <code>HelloWorld</code> library and its dependencies in the <code>lib</code> directory of
+ your <a href="http://dev.mygrid.org.uk/wiki/display/taverna/Taverna+home+directory">TAVERNA_HOME directory</a>.
+After copying the jar files, you need to specify which dependencies to use for every API
+ Consumer service in a workflow.
+To do so, right-click on the service and select <strong>âConfigure API Consumerâ¦â</strong>.
+The default classloader sharing is âShared for whole workflowâ, so you only need to tick of
+ the dependency <code>jar</code> files on one of services using the same API Consumer,
+ for example the constructor.</p>
+<blockquote>
+<p>If your API is using JNI, or one of its dependencies uses JNI, which
+is a native library with binding for Java, you need to take some
+special considerations, as explained in the section on <a
+href="http://www.mygrid.org.uk/dev/wiki/display/taverna/Beanshell#Beanshell-JNIbasednativelibraries"
+target="_blank">JNI-based native libraries</a> under Beanshell
+services in the User Manual. In particular, you need to select the
+System classloader sharing for all your services and modify the
+Taverna startup scripts.</p>
+</blockquote>
+<h3 id="a-word-of-advice">A word of advice</h3>
+<p>Depending on the complexity of your API, building workflows in this way can turn out to be
+ very a cumbersome way to do graphical Java programming in a workflow.
+In many cases, writing a <a href="/documentation/glossary#beanshell">Beanshell</a> script using the same
+ dependency mechanism can give you most of the benefits in a smaller amount of time.
+However, the API Consumer gives you one major advantage - the workflow designer do not need to
+ know much about Java and they will see a browsable structure of your API in the
+ Service Panel, just like the bundled services. The workflow designer does need to know how
+ to use your API though, but if you have explicitly designed it to be easy to use from
+ Taverna that barrier can be lowered significantly.</p>
+<p>An API that is useful for many people could also be wrapped as a
+ <a href="/documentation/glossary#wsdl">WSDL Web service</a>, which would make it usable from any
+ Taverna Workbench without requiring installation of your JAR and API Consumer XML definition
+ files.</p></div>
+
+ </div>
+
+ <footer class="footer">
+ <div class="container">
+ <p id="copyright" class="text-muted">
+ Copyright © 2014-2015 The Apache Software Foundation, Licensed under the
+ <a href="http://www.apache.org/licenses/LICENSE-2.0">Apache License, Version 2.0</a>.
+ Apache and the Apache feather logo are trademarks of The Apache Software Foundation.
+ </p>
+ </div>
+ </footer>
+
+
+
+ <script src="/lib/jquery/jquery-1.11.1.min.js"></script>
+<script src="/lib/bootstrap/js/bootstrap.min.js"></script>
+
+<script>
+ jQuery(function($) {
+ if($(window).width()>769){
+ $('.navbar .dropdown').hover(function() {
+ $(this).find('.dropdown-menu').first().stop(true, true).delay(250).slideDown();
+
+ }, function() {
+ $(this).find('.dropdown-menu').first().stop(true, true).delay(100).slideUp();
+
+ });
+
+ $('.navbar .dropdown > a').click(function(){
+ location.href = this.href;
+ });
+
+ }
+ });
+</script>
+
+
+ </body>
+</html>
\ No newline at end of file
Modified: websites/staging/taverna/trunk/content/documentation/command-line-tool/index.html
==============================================================================
--- websites/staging/taverna/trunk/content/documentation/command-line-tool/index.html (original)
+++ websites/staging/taverna/trunk/content/documentation/command-line-tool/index.html Wed Mar 11 08:49:34 2015
@@ -104,3 +104,127 @@
<li><a href="/documentation/#tools">Tools and Services</a></li>
</ul>
</li>
+
+
+ <li class="dropdown">
+ <a href="/download" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-expanded="false">Download<span class="caret"></span></a>
+ <ul class="dropdown-menu" role="menu">
+ <li><a href="/download">Which Taverna to use</a></li>
+ <li><a href="/download/workbench">TavernaWorkbench</a></li>
+ <li><a href="/download/language">Taverna's SCUFL2 Language</a></li>
+ <li><a href="/download/command-line-tool">Taverna Command Line</a></li>
+ <li><a href="/download/server">Taverna Server</a></li>
+ <li><a href="/documentation/plugins">Plugins</a></li>
+ <li><a href="/download/code">Source Code</a></li>
+ <li><a href="/download/maven">Maven Repository</a></li>
+ <li><a href="/download/system-requirements">System Requirements</a></li>
+ <li><a href="/download/pre-apache">Taverna 2.x (Pre-Apache)</a></li>
+ </ul>
+ </li>
+ <li class="dropdown">
+ <a href="/community" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-expanded="false">Community<span class="caret"></span></a>
+ <ul class="dropdown-menu" role="menu">
+ <li><a href="/community#mailinglists">Mailing Lists</a></li>
+ <li><a href="/community#contribute">Contribute</a></li>
+ <li><a href="/community#reportbugs">Report a Bug</a></li>
+ </ul>
+ </li>
+ </ul>
+
+ <form >
+
+
+ <!--<input type="submit" id="submit" value="Search">-->
+ </form>
+
+ <form class="navbar-form navbar-right" role="search"
+ name="search" id="search" action="http://www.google.com/search" method="get">
+ <input value="taverna.incubator.apache.org" name="sitesearch" type="hidden"/>
+ <div class="form-group input-group">
+ <input type="text" name="q" id="query" placeholder="Search" class="form-control">
+ <span class="input-group-btn">
+ <button type="submit" class="btn btn-default">Search</button>
+ </span>
+ </div>
+ </form>
+
+ <ul class="nav navbar-nav navbar-right">
+ <li class="dropdown">
+ <a href="http://www.apache.org/" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-expanded="false">ASF<span class="caret"></span></a>
+ <ul class="dropdown-menu" role="menu">
+ <li><a href="http://www.apache.org/">Apache Software Foundation</a></li>
+ <li><a href="http://www.apache.org/foundation/how-it-works.html">How it works</a></li>
+ <li><a href="http://www.apache.org/foundation/thanks.html">Thanks</a></li>
+ <li><a href="http://www.apache.org/foundation/sponsorship.html">Become a Sponsor</a></li>
+ <li><a href="http://incubator.apache.org/projects/taverna.html">Taverna Incubation Status</a></li>
+ </ul>
+ </li>
+ </ul>
+ </div><!--/.nav-collapse -->
+ </div><!--/.container-->
+ </nav>
+
+
+ <div id="page" class="container">
+ <h1>Command Line Tool</h1>
+ <div class="alert alert-info" role="alert"><p><span class="glyphicon glyphicon-info-sign" aria-hidden="true"></span>
+
+Taverna is transitioning to the Apache Incubator.
+This webpage reflects material not yet released under Apache Incubator.
+Instead it shows <a class="alert-link" href="http://www.taverna.org.uk/">taverna2</a> material that is expected to become part of the Apache Incubator project in the future.
+</div>
+
+
+ <div id="content"><p>Taverna 2 Command Line Tool is a script that runs Taverna 2.x workflows from a terminal.
+It comes in a form of a command line script <em>executeworkflow</em> (<em>executeworkflow.bat</em> on
+ Windows and <em>executeworkflow.sh</em> on Linux/UNIX).</p>
+<h2 id="latest-none-apache-release">Latest None Apache Release</h2>
+<ul>
+<li>Documentation for the <a href="http://dev.mygrid.org.uk/wiki/display/taverna/Command+Line+Tool">Taverna Command Line Tool 2.5</a></li>
+</ul>
+<h2 id="previous-releases">Previous Releases</h2>
+<ul>
+<li>Documentation for the <a href="http://dev.mygrid.org.uk/wiki/display/taverna24/Command+Line+Tool">Taverna Command Line Tool 2.4</a></li>
+<li>Documentation for the <a href="http://dev.mygrid.org.uk/wiki/display/taverna23/Command+Line+Tool">Taverna Command Line Tool 2.3</a></li>
+<li>Documentation for the <a href="http://dev.mygrid.org.uk/wiki/display/taverna22/Command+Line+Tool">Taverna Command Line Tool 2.2</a></li>
+</ul></div>
+
+ </div>
+
+ <footer class="footer">
+ <div class="container">
+ <p id="copyright" class="text-muted">
+ Copyright © 2014-2015 The Apache Software Foundation, Licensed under the
+ <a href="http://www.apache.org/licenses/LICENSE-2.0">Apache License, Version 2.0</a>.
+ Apache and the Apache feather logo are trademarks of The Apache Software Foundation.
+ </p>
+ </div>
+ </footer>
+
+
+
+ <script src="/lib/jquery/jquery-1.11.1.min.js"></script>
+<script src="/lib/bootstrap/js/bootstrap.min.js"></script>
+
+<script>
+ jQuery(function($) {
+ if($(window).width()>769){
+ $('.navbar .dropdown').hover(function() {
+ $(this).find('.dropdown-menu').first().stop(true, true).delay(250).slideDown();
+
+ }, function() {
+ $(this).find('.dropdown-menu').first().stop(true, true).delay(100).slideUp();
+
+ });
+
+ $('.navbar .dropdown > a').click(function(){
+ location.href = this.href;
+ });
+
+ }
+ });
+</script>
+
+
+ </body>
+</html>
\ No newline at end of file
Modified: websites/staging/taverna/trunk/content/documentation/command-line/index.html
==============================================================================
--- websites/staging/taverna/trunk/content/documentation/command-line/index.html (original)
+++ websites/staging/taverna/trunk/content/documentation/command-line/index.html Wed Mar 11 08:49:34 2015
@@ -104,3 +104,393 @@
<li><a href="/documentation/#tools">Tools and Services</a></li>
</ul>
</li>
+
+
+ <li class="dropdown">
+ <a href="/download" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-expanded="false">Download<span class="caret"></span></a>
+ <ul class="dropdown-menu" role="menu">
+ <li><a href="/download">Which Taverna to use</a></li>
+ <li><a href="/download/workbench">TavernaWorkbench</a></li>
+ <li><a href="/download/language">Taverna's SCUFL2 Language</a></li>
+ <li><a href="/download/command-line-tool">Taverna Command Line</a></li>
+ <li><a href="/download/server">Taverna Server</a></li>
+ <li><a href="/documentation/plugins">Plugins</a></li>
+ <li><a href="/download/code">Source Code</a></li>
+ <li><a href="/download/maven">Maven Repository</a></li>
+ <li><a href="/download/system-requirements">System Requirements</a></li>
+ <li><a href="/download/pre-apache">Taverna 2.x (Pre-Apache)</a></li>
+ </ul>
+ </li>
+ <li class="dropdown">
+ <a href="/community" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-expanded="false">Community<span class="caret"></span></a>
+ <ul class="dropdown-menu" role="menu">
+ <li><a href="/community#mailinglists">Mailing Lists</a></li>
+ <li><a href="/community#contribute">Contribute</a></li>
+ <li><a href="/community#reportbugs">Report a Bug</a></li>
+ </ul>
+ </li>
+ </ul>
+
+ <form >
+
+
+ <!--<input type="submit" id="submit" value="Search">-->
+ </form>
+
+ <form class="navbar-form navbar-right" role="search"
+ name="search" id="search" action="http://www.google.com/search" method="get">
+ <input value="taverna.incubator.apache.org" name="sitesearch" type="hidden"/>
+ <div class="form-group input-group">
+ <input type="text" name="q" id="query" placeholder="Search" class="form-control">
+ <span class="input-group-btn">
+ <button type="submit" class="btn btn-default">Search</button>
+ </span>
+ </div>
+ </form>
+
+ <ul class="nav navbar-nav navbar-right">
+ <li class="dropdown">
+ <a href="http://www.apache.org/" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-expanded="false">ASF<span class="caret"></span></a>
+ <ul class="dropdown-menu" role="menu">
+ <li><a href="http://www.apache.org/">Apache Software Foundation</a></li>
+ <li><a href="http://www.apache.org/foundation/how-it-works.html">How it works</a></li>
+ <li><a href="http://www.apache.org/foundation/thanks.html">Thanks</a></li>
+ <li><a href="http://www.apache.org/foundation/sponsorship.html">Become a Sponsor</a></li>
+ <li><a href="http://incubator.apache.org/projects/taverna.html">Taverna Incubation Status</a></li>
+ </ul>
+ </li>
+ </ul>
+ </div><!--/.nav-collapse -->
+ </div><!--/.container-->
+ </nav>
+
+
+ <div id="page" class="container">
+ <h1>Command Line Tool</h1>
+ <div class="alert alert-info" role="alert"><p><span class="glyphicon glyphicon-info-sign" aria-hidden="true"></span>
+
+Taverna is transitioning to the Apache Incubator.
+This webpage reflects material not yet released under Apache Incubator.
+Instead it shows <a class="alert-link" href="http://www.taverna.org.uk/">taverna2</a> material that is expected to become part of the Apache Incubator project in the future.
+</div>
+
+
+ <div id="content"><p>Command Line Tool is a script that runs Taverna workflows from a terminal.
+It comes in a form of a command line script called <em>executeworkflow</em>
+ (<em>executeworkflow.bat</em> on Windows and <em>executeworkflow.sh</em> on Linux/UNIX).</p>
+<p>You can <a href="/download/command-line-tool">download the Command Line Tool</a> from the Taverna Web site
+ or use the <em>executeworkflow.sh</em> or <em>executeworkflow.bat</em> that comes
+ bundled with the Taverna Workbench installation.</p>
+<ul>
+<li><a href="http://dev.mygrid.org.uk/wiki/display/tav250/Extended+version">Extended version</a></li>
+</ul>
+<h2 id="what-is-the-difference-between-the-bundled-and-standalone-executeworkflow"><img alt="" src="/img/information.png" />What is the difference between the bundled and standalone executeworkflow?</h2>
+<ul>
+<li>
+<p>The standalone command line tool has a <strong>separate configuration</strong>
+ <a href="http://dev.mygrid.org.uk/wiki/display/tav250/Taverna+home+directory">home directory</a>,
+ called <em>taverna-cmdline-2.x.x</em> - while the bundled tool uses the same configuration from
+ <em>taverna</em> as the Taverna Workbench.</p>
+</li>
+<li>
+<p>Any <a href="http://dev.mygrid.org.uk/wiki/display/tav250/HTTP+proxy+preferences">proxy settings</a>
+ have to be configured manually - copy
+ <em>conf/HttpProxy-B307A902-F292-4D2F-B8E7-00CC983982B6.config</em> from a configured
+ Workbench home directory.</p>
+</li>
+<li>
+<p>The bundled tool will load all the <strong>plugins</strong> installed for the workbench,
+ including third-party plugins.
+ However it will also load various GUI-supporting functions which might consume extra memory.</p>
+</li>
+<li>
+<p>To install service plugins for the command line tool, one will have to manually edit the
+ <em>plugins/plugins.xml</em> of the installation or home directory.
+ The <em><plugin>... </plugin></em> block can be copied from the <em>plugins/plugins.xml</em> from
+ the <a href="http://dev.mygrid.org.uk/wiki/display/tav250/Taverna+home+directory">home directory</a>
+ of a Workbench installation where the plugin is installed.</p>
+</li>
+<li>
+<p>The standalone installation and download is smaller than the workbench - but keeping both
+ installed will use more disk space.
+ (Note: the command line tool could use the {repository}} folder from the workbench using
+ symlinks or modifiying <em>plugins/plugins.xml</em></p>
+</li>
+<li>
+<p>The standalone tool can easily be installed and used on remote servers without GUI access.</p>
+</li>
+<li>
+<p>Running the embedded tool with the database and provenance enabled allows the command line
+ runs to show up in the workbench
+ "<a href="http://dev.mygrid.org.uk/wiki/display/tav250/Result+Perspective">Workflow runs</a>".</p>
+</li>
+<li>
+<p>On the other hand the tool will have to use <em>-clientserver</em> if the workbench is already
+ running, or if shut down either a standalone <em>-startdb</em> database server process or
+ <em>-embedded</em>.</p>
+</li>
+<li>
+<p>The standalone tool would not be in conflict with the database of the workbench
+ (as it's in a different home directory) - but could be in conflict with parallel runs of
+ the command line tool - in which case a separate <em>-startdb</em> process should be started with
+ the other calls using <em>-clientserver</em> - see
+ <a href="#CommandLineTool-Runningthescriptwithdatabase">#Running the script with database</a></p>
+</li>
+</ul>
+<p><a name="CommandLineTool-ExecuteworkflowScript"></a></p>
+<h2 id="executeworkflow-script">Executeworkflow Script</h2>
+<p>To get help and a full set of options for the executeworkflow script type the following in the
+ command prompt:</p>
+<blockquote>
+<p>$ sh executeworkflow.sh -help</p>
+</blockquote>
+<p>It will give the following usage options:</p>
+<pre>usage: executeworkflow [options] [workflow]
+ -clientserver connects as a client to a
+ derby server instance.
+ -cmdir <Credential Manager's directory path> Absolute path to the
+ directory on the disk
+ where Credential Manager's
+ files are located
+ -cmpassword Indicates that the master
+ password for Credential
+ Manager will be provided
+ on standard input
+ -dbproperties <filename> loads a properties file to
+ configure the database
+ -embedded connects to an embedded
+ Derby database. This can
+ prevent mulitple
+ invocations
+ -help displays comprehensive
+ help information
+ -inmemory runs the workflow with
+ data stored in-memory
+ rather than in a database.
+ This can give performance
+ inprovements, at the cost
+ of overall memory usage
+ -inputdelimiter <inputname delimiter> causes an inputvalue or
+ inputfile to be split into
+ a list according to the
+ delimiter. The associated
+ workflow input must be
+ expected to receive a list
+ -inputdoc <document> load inputs from a Baclava
+ document
+ -inputfile <inputname filename> load the named input from
+ file or URL
+ -inputvalue <inputname value> directly use the value for
+ the named input
+ -janus <file> saves Janus RDF/XML trace
+ of execution to FILE or
+ 'provenance-janus.rdf'
+ -logfile <filename> the logfile to which more
+ verbose logging will be
+ written to
+ -opm <file> saves Open Provenance
+ Model (OPM) RDF/XML trace
+ of execution to FILE or
+ 'provenance-opm.rdf'
+ -outputdir <directory> save outputs as files in
+ directory, default is to
+ make a new directory
+ workflowName_output
+ -outputdoc <document> save outputs to a new
+ Baclava document
+ -port <portnumber> the port that the database
+ is running on. If set
+ requested to start its own
+ internal server, this is
+ the start port that will
+ be used.
+ -provenance generates provenance
+ information and stores it
+ in the database.
+ -startdb automatically starts an
+ internal Derby database
+ server.
+
+(..)
+
+</pre>
+
+<p>If this directory already exists then an new directory is created, and appended with
+ <em>_<n></em>, where <em>n</em> is incremented to the next available index.</p>
+<p>Results are written out to files named after the output port for that result.
+If a result is composed of lists, then a directory is created for the output port and
+ individual list items are named after the list element index (with 1 being the first index).
+The the output is the result of an error, the filename is appended with â.errorâ.</p>
+<p>You can provide your own output directory with the <em>-outputdir</em> option.
+There will be an error if the directory already exists.</p>
+<p>You can
+ <a href="http://dev.mygrid.org.uk//wiki/display/tav250/Provenance+export+to+OPM+and+Janus">export the provenance</a>
+ using the <em>-opm</em> or <em>-janus</em> options.</p>
+<p>You can also record your results to a Baclava document using <em>-outputdoc</em> option.
+The document will be overwritten if it already exists.
+You can use the <a href="http://dev.mygrid.org.uk/wiki/display/tav250/DataViewer+Tool">DataViewer Tool</a>
+ to view Baclava files.</p>
+<p>Inputs can be provided in three ways.
+Both <em>-inputfile</em> and <em>-inputvalue</em> options can be used together; <em>-inputdoc</em> option must be
+ used on its own.
+<em>-inputfile</em> and <em>-inputvalue</em> options both take two additional arguments, the name of the port
+ for the input, and either a file containing the input data, or the input value itself
+ respectively.</p>
+<p>If one of more of you workflow inputs is described as a list, you can create a list by using
+ the <em>-inputdelimiter</em> option, which may be used with either <em>-inputfile</em> or
+ <em>-inputvalue</em>.
+This option takes two parameters â an input name and the delimiter by which to split the input
+ into a list.</p>
+<p>The delimiter may be a simple character, such as a comma or a new-line character,
+ or a regular expression.
+The input string, or file, will then be converted into a list being split by the delimiter
+ specified. </p>
+<p>If a list of greater depth (i.e. a list or lists or deeper) is required then you will need to
+ use the <em>-inputdocoption</em> to pass data from a Baclava file.
+However, if you provide an input of lower depth to that required, then it will automatically be
+ wrapped in one or more lists up to the required depth.
+Providing an input of greater depth than that required will result in an error. </p>
+<p><a name"CommandLineTool-Runningthescriptwithdatabase"></a></p>
+<h3 id="running-the-script-with-database">Running the script with database</h3>
+<p>If a workflow has a high memory requirement, then it may be better to run it using a database
+ to store data rather than storing it in memory, which is the default option.
+There are three options for using a database: </p>
+<ul>
+<li><em>-embedded</em> option, runs with an embedded database.
+ This is slightly faster than -clientserver option (below), but has the limitation that only
+ one <em>executeworkflow</em> script may be executed simultaneously.</li>
+<li><em>-clientserver</em> option allows the workflow to be executed backed by the database running as
+ a server.
+ By default a database is not started for you, but may be started using <em>-startdb</em> option.</li>
+<li><em>-startdb</em> option starts a database. It may be used without providing a workflow to allow
+ a database to be started separately, allowing multiple simultaneous <em>executeworkflow</em>
+ script runs.</li>
+</ul>
+<p>More advanced database configurations can be specified using <em>-dbproperties</em> option,
+ allowing you to take full control over the database used.
+This takes a second argument, the filename of the propeties file, for which the following
+ example contains the default settings used: </p>
+<pre>
+in_memory = true
+provenance = false
+connector = derby
+port = 1527
+dialect = org.hibernate.dialect.DerbyDialect
+start_derby = false
+driver = org.apache.derby.jdbc.EmbeddedDriver
+jdbcuri = jdbc:derby:t2-database;create=true;upgrade=true
+</pre>
+
+<p>If you want to run the Derby database with client/server setting instead of with the embedded
+ driver, change the properties in the <em>-dbproperties</em> file (described above) as follows:</p>
+<pre>
+driver=org.apache.derby.jdbc.ClientDriver
+start_derby=true
+</pre>
+
+<p>If you wish to run your own separate Derby server instance, then do not define the
+ <em>start_derby</em> option and define the port on which you are running you Derby server as
+ <em>port=<port></em>. </p>
+<p>If you want to use MySQL database rather than Derby, first you need to drop the
+ mysql-connector-java-5.1.5.jar file from the
+ <a href="http://dev.mysql.com/downloads/connector/j/">mySQL</a> website into the lib folder of the
+ Taverna installation directory (Taverna installation directory if where you are running the
+ script from). </p>
+<p>You need to edit the <em>-dbproperties</em> file as follows: </p>
+<pre>
+connector=mysql
+jdbcuri=jdbc:mysql://localhost/T2Provenance
+dialect=org.hibernate.dialect.MySQLDialect
+driver=com.mysql.jdbc.Driver
+username=<username>
+password=<password>
+port=<port>
+</pre>
+
+<p>It is essential that the database name in the <em>jdbcuri</em> property is T2Provenance,
+ as this database is hard-coded into the MySQL provenance SQL queries. </p>
+<p>If you do not specify the port, the script will try to connect to the default port for MySQL
+ server, which is 3306. </p>
+<blockquote>
+<p><img alt="" src="/img/warning.png" /> When using <em>-dbproperties</em> together with other
+options, the other options take precedence.</p>
+</blockquote>
+<p><a name=CommandLineTool-Examples"></a></p>
+<h2 id="examples">Examples</h2>
+<p>Some examples on how the script can be invoked are shown below. </p>
+<blockquote>
+<p>$ sh executeworkflow.sh "/Users/alex/Taverna
+Workflows/wf-1.t2flow"</p>
+</blockquote>
+<p>The above line executes the workflow located in <em>/Users/alex/Taverna Workflows/wf-1.t2flow</em>
+ that has no inputs and uses the memory for data storage (the default option).
+Make sure to enclose the file path in quotes if it contains spaces.
+The <em><workflowName>_outputdirectory</em> will be created in the current directory and outputs
+ will be written to it. </p>
+<blockquote>
+<p>$ sh executeworkflow.sh -embedded -inputvalue in1 aaa -inputvalue in2
+"bb b" -outputdir /tmp/wf-2/ wf-2.t2flow</p>
+</blockquote>
+<p>The above line executes the workflow <em>wf-2.t2flow</em> from the current directory passing the value
+ âaaaâ to the input port <em>in1</em> and value âbb bâ to the input port <em>in2</em>.
+If input values contain spaces make sure to enclose them in quotes.
+Uses the embedded Derby database to store the data.
+Outputs will be written to the <em>/tmp/wf-2/</em> directory. </p>
+<blockquote>
+<p>$ sh executeworkflow.sh -inputvalue in1 aaa -inputfile in2 input2.txt
+-inputdelimiter in2 "\n" wf-3.t2flow</p>
+</blockquote>
+<p>The above line executes the workflow <em>wf-3.t2flow</em> from the current directory passing the value
+ âaaaâ to the input port <em>in1</em> and splitting the content of file <em>input2.txt</em> using â\nâ
+ (new line character) as the delimiter and passing the resulting list to the input port <em>in2</em>.
+Make sure to out the delimiter in quotes, even if it is just a single character, like â;â.
+The <em><workflowName>_outputdirectory</em> will be created in the current directory and outputs
+ will be written to it. </p>
+<blockquote>
+<p>$ sh executeworkflow.sh -inputdoc /tmp/input-doc.xml -outputdoc
+/tmp/output-doc.xml "/Users/alex/Taverna
+Workflows/wf-4.t2flow"</p>
+</blockquote>
+<p>The above line executes the workflow <em>/Users/alex/Taverna Workflows/wf-4.t2flow</em>, loading
+ inputs from the Baclava document in <em>/tmp/input-doc.xml</em>, and writing the outputs to a
+ Baclava document <em>/tmp/output-doc.xml</em>. </p></div>
+
+ </div>
+
+ <footer class="footer">
+ <div class="container">
+ <p id="copyright" class="text-muted">
+ Copyright © 2014-2015 The Apache Software Foundation, Licensed under the
+ <a href="http://www.apache.org/licenses/LICENSE-2.0">Apache License, Version 2.0</a>.
+ Apache and the Apache feather logo are trademarks of The Apache Software Foundation.
+ </p>
+ </div>
+ </footer>
+
+
+
+ <script src="/lib/jquery/jquery-1.11.1.min.js"></script>
+<script src="/lib/bootstrap/js/bootstrap.min.js"></script>
+
+<script>
+ jQuery(function($) {
+ if($(window).width()>769){
+ $('.navbar .dropdown').hover(function() {
+ $(this).find('.dropdown-menu').first().stop(true, true).delay(250).slideDown();
+
+ }, function() {
+ $(this).find('.dropdown-menu').first().stop(true, true).delay(100).slideUp();
+
+ });
+
+ $('.navbar .dropdown > a').click(function(){
+ location.href = this.href;
+ });
+
+ }
+ });
+</script>
+
+
+ </body>
+</html>
\ No newline at end of file
Modified: websites/staging/taverna/trunk/content/documentation/components/component-profile-editor.html
==============================================================================
--- websites/staging/taverna/trunk/content/documentation/components/component-profile-editor.html (original)
+++ websites/staging/taverna/trunk/content/documentation/components/component-profile-editor.html Wed Mar 11 08:49:34 2015
@@ -104,3 +104,121 @@
<li><a href="/documentation/#tools">Tools and Services</a></li>
</ul>
</li>
+
+
+ <li class="dropdown">
+ <a href="/download" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-expanded="false">Download<span class="caret"></span></a>
+ <ul class="dropdown-menu" role="menu">
+ <li><a href="/download">Which Taverna to use</a></li>
+ <li><a href="/download/workbench">TavernaWorkbench</a></li>
+ <li><a href="/download/language">Taverna's SCUFL2 Language</a></li>
+ <li><a href="/download/command-line-tool">Taverna Command Line</a></li>
+ <li><a href="/download/server">Taverna Server</a></li>
+ <li><a href="/documentation/plugins">Plugins</a></li>
+ <li><a href="/download/code">Source Code</a></li>
+ <li><a href="/download/maven">Maven Repository</a></li>
+ <li><a href="/download/system-requirements">System Requirements</a></li>
+ <li><a href="/download/pre-apache">Taverna 2.x (Pre-Apache)</a></li>
+ </ul>
+ </li>
+ <li class="dropdown">
+ <a href="/community" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-expanded="false">Community<span class="caret"></span></a>
+ <ul class="dropdown-menu" role="menu">
+ <li><a href="/community#mailinglists">Mailing Lists</a></li>
+ <li><a href="/community#contribute">Contribute</a></li>
+ <li><a href="/community#reportbugs">Report a Bug</a></li>
+ </ul>
+ </li>
+ </ul>
+
+ <form >
+
+
+ <!--<input type="submit" id="submit" value="Search">-->
+ </form>
+
+ <form class="navbar-form navbar-right" role="search"
+ name="search" id="search" action="http://www.google.com/search" method="get">
+ <input value="taverna.incubator.apache.org" name="sitesearch" type="hidden"/>
+ <div class="form-group input-group">
+ <input type="text" name="q" id="query" placeholder="Search" class="form-control">
+ <span class="input-group-btn">
+ <button type="submit" class="btn btn-default">Search</button>
+ </span>
+ </div>
+ </form>
+
+ <ul class="nav navbar-nav navbar-right">
+ <li class="dropdown">
+ <a href="http://www.apache.org/" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-expanded="false">ASF<span class="caret"></span></a>
+ <ul class="dropdown-menu" role="menu">
+ <li><a href="http://www.apache.org/">Apache Software Foundation</a></li>
+ <li><a href="http://www.apache.org/foundation/how-it-works.html">How it works</a></li>
+ <li><a href="http://www.apache.org/foundation/thanks.html">Thanks</a></li>
+ <li><a href="http://www.apache.org/foundation/sponsorship.html">Become a Sponsor</a></li>
+ <li><a href="http://incubator.apache.org/projects/taverna.html">Taverna Incubation Status</a></li>
+ </ul>
+ </li>
+ </ul>
+ </div><!--/.nav-collapse -->
+ </div><!--/.container-->
+ </nav>
+
+
+ <div id="page" class="container">
+ <h1>Component profile editor</h1>
+ <div class="alert alert-info" role="alert"><p><span class="glyphicon glyphicon-info-sign" aria-hidden="true"></span>
+
+Taverna is transitioning to the Apache Incubator.
+This webpage reflects material not yet released under Apache Incubator.
+Instead it shows <a class="alert-link" href="http://www.taverna.org.uk/">taverna2</a> material that is expected to become part of the Apache Incubator project in the future.
+</div>
+
+
+ <div id="content"><p>The Taverna Component Profile Editor is a simple tool for editing and creating profiles for
+ [Taverna Components[(/documentation/components).
+Component profiles define the required and supported interface of components;
+ they are not intended to be easily edited by normal users.
+The editor guides an expert user as they define a profile,
+ showing features that they may use and providing assistance for defining semantic annotation requirements.</p>
+<div align="center"><img src="/img/component-profile-editor.png" alt="Component Profile Editor" width="600" /></div></div>
+
+ </div>
+
+ <footer class="footer">
+ <div class="container">
+ <p id="copyright" class="text-muted">
+ Copyright © 2014-2015 The Apache Software Foundation, Licensed under the
+ <a href="http://www.apache.org/licenses/LICENSE-2.0">Apache License, Version 2.0</a>.
+ Apache and the Apache feather logo are trademarks of The Apache Software Foundation.
+ </p>
+ </div>
+ </footer>
+
+
+
+ <script src="/lib/jquery/jquery-1.11.1.min.js"></script>
+<script src="/lib/bootstrap/js/bootstrap.min.js"></script>
+
+<script>
+ jQuery(function($) {
+ if($(window).width()>769){
+ $('.navbar .dropdown').hover(function() {
+ $(this).find('.dropdown-menu').first().stop(true, true).delay(250).slideDown();
+
+ }, function() {
+ $(this).find('.dropdown-menu').first().stop(true, true).delay(100).slideUp();
+
+ });
+
+ $('.navbar .dropdown > a').click(function(){
+ location.href = this.href;
+ });
+
+ }
+ });
+</script>
+
+
+ </body>
+</html>
\ No newline at end of file
Modified: websites/staging/taverna/trunk/content/documentation/components/component-validator.html
==============================================================================
--- websites/staging/taverna/trunk/content/documentation/components/component-validator.html (original)
+++ websites/staging/taverna/trunk/content/documentation/components/component-validator.html Wed Mar 11 08:49:34 2015
@@ -104,3 +104,123 @@
<li><a href="/documentation/#tools">Tools and Services</a></li>
</ul>
</li>
+
+
+ <li class="dropdown">
+ <a href="/download" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-expanded="false">Download<span class="caret"></span></a>
+ <ul class="dropdown-menu" role="menu">
+ <li><a href="/download">Which Taverna to use</a></li>
+ <li><a href="/download/workbench">TavernaWorkbench</a></li>
+ <li><a href="/download/language">Taverna's SCUFL2 Language</a></li>
+ <li><a href="/download/command-line-tool">Taverna Command Line</a></li>
+ <li><a href="/download/server">Taverna Server</a></li>
+ <li><a href="/documentation/plugins">Plugins</a></li>
+ <li><a href="/download/code">Source Code</a></li>
+ <li><a href="/download/maven">Maven Repository</a></li>
+ <li><a href="/download/system-requirements">System Requirements</a></li>
+ <li><a href="/download/pre-apache">Taverna 2.x (Pre-Apache)</a></li>
+ </ul>
+ </li>
+ <li class="dropdown">
+ <a href="/community" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-expanded="false">Community<span class="caret"></span></a>
+ <ul class="dropdown-menu" role="menu">
+ <li><a href="/community#mailinglists">Mailing Lists</a></li>
+ <li><a href="/community#contribute">Contribute</a></li>
+ <li><a href="/community#reportbugs">Report a Bug</a></li>
+ </ul>
+ </li>
+ </ul>
+
+ <form >
+
+
+ <!--<input type="submit" id="submit" value="Search">-->
+ </form>
+
+ <form class="navbar-form navbar-right" role="search"
+ name="search" id="search" action="http://www.google.com/search" method="get">
+ <input value="taverna.incubator.apache.org" name="sitesearch" type="hidden"/>
+ <div class="form-group input-group">
+ <input type="text" name="q" id="query" placeholder="Search" class="form-control">
+ <span class="input-group-btn">
+ <button type="submit" class="btn btn-default">Search</button>
+ </span>
+ </div>
+ </form>
+
+ <ul class="nav navbar-nav navbar-right">
+ <li class="dropdown">
+ <a href="http://www.apache.org/" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-expanded="false">ASF<span class="caret"></span></a>
+ <ul class="dropdown-menu" role="menu">
+ <li><a href="http://www.apache.org/">Apache Software Foundation</a></li>
+ <li><a href="http://www.apache.org/foundation/how-it-works.html">How it works</a></li>
+ <li><a href="http://www.apache.org/foundation/thanks.html">Thanks</a></li>
+ <li><a href="http://www.apache.org/foundation/sponsorship.html">Become a Sponsor</a></li>
+ <li><a href="http://incubator.apache.org/projects/taverna.html">Taverna Incubation Status</a></li>
+ </ul>
+ </li>
+ </ul>
+ </div><!--/.nav-collapse -->
+ </div><!--/.container-->
+ </nav>
+
+
+ <div id="page" class="container">
+ <h1>Component validator</h1>
+ <div class="alert alert-info" role="alert"><p><span class="glyphicon glyphicon-info-sign" aria-hidden="true"></span>
+
+Taverna is transitioning to the Apache Incubator.
+This webpage reflects material not yet released under Apache Incubator.
+Instead it shows <a class="alert-link" href="http://www.taverna.org.uk/">taverna2</a> material that is expected to become part of the Apache Incubator project in the future.
+</div>
+
+
+ <div id="content"><p>The Taverna Component Validator is a tool and library for checking whether a
+ <a href="/documentation/components">Taverna Component</a> satisfies the component profile defined by the family of which it is a member.
+It applies a number of checks to the component such that when they are all satisfied,
+ the component can be considered to be a high-quality member of the component family,
+ and provides human-readable descriptions of the conditions that are checked and whether they were satisfied or not.</p>
+<p><img alt="Summary of validity of a component, from myExperiment" src="/img/ComponentValiditySummary.png" /></p>
+<p>We currently have the validator deployed on
+ <a href="http://www.myexperiment.org">myExperiment.org</a> as an integrated feature of the metadata displayed about components.</p>
+<p><img alt="Detail of validity of a component, from myExperiment" src="/img/ComponentValidityDetails.png" /></p></div>
+
+ </div>
+
+ <footer class="footer">
+ <div class="container">
+ <p id="copyright" class="text-muted">
+ Copyright © 2014-2015 The Apache Software Foundation, Licensed under the
+ <a href="http://www.apache.org/licenses/LICENSE-2.0">Apache License, Version 2.0</a>.
+ Apache and the Apache feather logo are trademarks of The Apache Software Foundation.
+ </p>
+ </div>
+ </footer>
+
+
+
+ <script src="/lib/jquery/jquery-1.11.1.min.js"></script>
+<script src="/lib/bootstrap/js/bootstrap.min.js"></script>
+
+<script>
+ jQuery(function($) {
+ if($(window).width()>769){
+ $('.navbar .dropdown').hover(function() {
+ $(this).find('.dropdown-menu').first().stop(true, true).delay(250).slideDown();
+
+ }, function() {
+ $(this).find('.dropdown-menu').first().stop(true, true).delay(100).slideUp();
+
+ });
+
+ $('.navbar .dropdown > a').click(function(){
+ location.href = this.href;
+ });
+
+ }
+ });
+</script>
+
+
+ </body>
+</html>
\ No newline at end of file
Modified: websites/staging/taverna/trunk/content/documentation/components/index.html
==============================================================================
--- websites/staging/taverna/trunk/content/documentation/components/index.html (original)
+++ websites/staging/taverna/trunk/content/documentation/components/index.html Wed Mar 11 08:49:34 2015
@@ -104,3 +104,221 @@
<li><a href="/documentation/#tools">Tools and Services</a></li>
</ul>
</li>
+
+
+ <li class="dropdown">
+ <a href="/download" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-expanded="false">Download<span class="caret"></span></a>
+ <ul class="dropdown-menu" role="menu">
+ <li><a href="/download">Which Taverna to use</a></li>
+ <li><a href="/download/workbench">TavernaWorkbench</a></li>
+ <li><a href="/download/language">Taverna's SCUFL2 Language</a></li>
+ <li><a href="/download/command-line-tool">Taverna Command Line</a></li>
+ <li><a href="/download/server">Taverna Server</a></li>
+ <li><a href="/documentation/plugins">Plugins</a></li>
+ <li><a href="/download/code">Source Code</a></li>
+ <li><a href="/download/maven">Maven Repository</a></li>
+ <li><a href="/download/system-requirements">System Requirements</a></li>
+ <li><a href="/download/pre-apache">Taverna 2.x (Pre-Apache)</a></li>
+ </ul>
+ </li>
+ <li class="dropdown">
+ <a href="/community" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-expanded="false">Community<span class="caret"></span></a>
+ <ul class="dropdown-menu" role="menu">
+ <li><a href="/community#mailinglists">Mailing Lists</a></li>
+ <li><a href="/community#contribute">Contribute</a></li>
+ <li><a href="/community#reportbugs">Report a Bug</a></li>
+ </ul>
+ </li>
+ </ul>
+
+ <form >
+
+
+ <!--<input type="submit" id="submit" value="Search">-->
+ </form>
+
+ <form class="navbar-form navbar-right" role="search"
+ name="search" id="search" action="http://www.google.com/search" method="get">
+ <input value="taverna.incubator.apache.org" name="sitesearch" type="hidden"/>
+ <div class="form-group input-group">
+ <input type="text" name="q" id="query" placeholder="Search" class="form-control">
+ <span class="input-group-btn">
+ <button type="submit" class="btn btn-default">Search</button>
+ </span>
+ </div>
+ </form>
+
+ <ul class="nav navbar-nav navbar-right">
+ <li class="dropdown">
+ <a href="http://www.apache.org/" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-expanded="false">ASF<span class="caret"></span></a>
+ <ul class="dropdown-menu" role="menu">
+ <li><a href="http://www.apache.org/">Apache Software Foundation</a></li>
+ <li><a href="http://www.apache.org/foundation/how-it-works.html">How it works</a></li>
+ <li><a href="http://www.apache.org/foundation/thanks.html">Thanks</a></li>
+ <li><a href="http://www.apache.org/foundation/sponsorship.html">Become a Sponsor</a></li>
+ <li><a href="http://incubator.apache.org/projects/taverna.html">Taverna Incubation Status</a></li>
+ </ul>
+ </li>
+ </ul>
+ </div><!--/.nav-collapse -->
+ </div><!--/.container-->
+ </nav>
+
+
+ <div id="page" class="container">
+ <h1>Components</h1>
+ <div class="alert alert-info" role="alert"><p><span class="glyphicon glyphicon-info-sign" aria-hidden="true"></span>
+
+Taverna is transitioning to the Apache Incubator.
+This webpage reflects material not yet released under Apache Incubator.
+Instead it shows <a class="alert-link" href="http://www.taverna.org.uk/">taverna2</a> material that is expected to become part of the Apache Incubator project in the future.
+</div>
+
+
+ <div id="content"><p>Taverna Workflow Components are a system for creating shareable, reusable,
+ encapsulated sub-workflows that perform clearly defined tasks while abstracting away from
+ the details of how those tasks are performed.
+They are an integrated feature of Taverna Since Workbench 2.5.0 and Server 2.5.4.</p>
+<p>As part of the BioVeL and SCAPE projects,
+ we have developed a system of service components for Taverna.
+This consists of tools for the creation, management and use of workflow components,
+ and a repository for the storage and sharing of those components.
+Workflow components within a given component family will work together cleanly,
+ for example by adhering to a tidy type system and being well described.</p>
+<p>A set of minimal functional requirements for service component management has been developed
+ based upon previous component-related work carried out as part of the e-Lico project and
+ also an examination of the needs of BioVeL and SCAPE.</p>
+<p>These requirements include:</p>
+<ul>
+<li>The ability to create components</li>
+<li>The specification of the characteristics that are necessary for a set of components to
+ âplayâ together â called a âcomponent profileâ</li>
+<li>Creating a component so it complies with a given profile</li>
+<li>Checking that a component complies with a given profile</li>
+<li>Publishing a component</li>
+<li>Discovering a component</li>
+<li>Including a component in a workflow</li>
+<li>Executing the component within a workflow run</li>
+</ul>
+<p><img class="aligncenter" title="The Model of Components" src="/img/registry.png" alt=""
+ width="433" height="251" /></p>
+<h2 id="example">Example</h2>
+<p>This is an example workflow that includes components, with internal ports hidden for simplicity:</p>
+<p><img class="alignnone" title="Componentized Workflow" src="/img/component_b_1.png" alt=""
+ width="679" height="294" /></p>
+<p>Without components, using the same view, it would instead look like this:</p>
+<p><a href="http://www.taverna.org.uk/pages/wp-content/uploads/2013/05/component_c.png"><img class="aligncenter" title="Un-componentized Workflow" src="/img/component_c.png" alt="" width="245" height="526" /></a></p>
+<h2 id="including-a-component-in-a-workflow">Including a component in a workflow</h2>
+<p>A component can be added into a Taverna workflow in the same way as an ordinary service,
+ by dragging it from the service panel of the workbench into the workflow design view.
+ Note that although it may be realized internally as a workflow,
+ a user sees it as a âblack boxâ and cannot (normally) edit the componentâs workflow.</p>
+<p><img class="aligncenter" src="/img/arch3.png" alt="" width="500" height="401" /></p>
+<p>It is intended that there will be consistency checks to ensure that components are only plugged
+ together in a sensible manner, and for the discovery of and connection to suitable components
+ based upon existing workflow structure.</p>
+<h2 id="executing-a-component-in-a-workflow-run">Executing a component in a workflow run</h2>
+<p>When a component is invoked during a workflow run, the underlying workflow is called with the
+ corresponding data.
+The results of the workflow are used as the output data for the component invocation.
+Note that the user sees the component invocation as a âblack boxâ and cannot see details of
+ what happens inside.</p>
+<p>Note that if you publish a workflow containing a component, you <em>need</em> to make sure that the
+ component is publicly readable in a globally-accessible component registry;
+ myExperiment is such a suitable registry.</p>
+<h2 id="component-creation">Component creation</h2>
+<p>It was decided that the majority of the information necessary for a component will be specified
+ as a Taverna workflow.
+This allows complex internal component functionality and removes the need for extensive new
+ software to design components.</p>
+<p><img class="aligncenter" src="/img/arch1.png" alt="" width="340" height="433" /></p>
+<h2 id="component-profile">Component profile</h2>
+<p>A specification of the format for the component profile has been agreed.
+The format is in XML and an XML schema (xsd) has been created.
+An example <a href="http://www.myexperiment.org/files/905/versions/1/download/Characterisation%20Component.xml">component profile</a>
+ is available.
+Components that share a profile will be collected together into component families.
+A <a href="/documentation/components/component-profile-editor">component profile editor</a>
+ is being developed.</p>
+<p style="text-align: center;">
+<img class="aligncenter" src="img/arch2.png" alt="" width="359" height="412" />
+</p>
+
+<p>The SCAPE project has an
+ <a href="https://github.com/openpreserve/scape-component-profiles">extended discussion of component profiles</a>
+ available.</p>
+<h2 id="component-creation-against-a-profile">Component creation against a profile</h2>
+<p>In order to conform to a component profile, it can be necessary to make semantic annotations
+ parts of the corresponding workflow.
+For example, the annotation of the type of format in which data is output by a port or
+ a service with the task it performs.</p>
+<p>The component profile specifies the ontologies that will be used for the components within the
+ family, the correspondence between object classes within a workflow
+ (input port, service etc.) and the concepts within the ontologies.</p>
+<h2 id="checking-a-component-against-a-profile">Checking a component against a profile</h2>
+<p>Although the components will be modified using a chosen profile,
+ it is unlikely that the components can be assured as being âcorrect by constructionâ.
+For this reason, a separate
+ <a href="/documentation/components/component-validator">component validator</a>
+ is being implemented.
+The component validator is included within
+ <a href="http://www.myexperiment.org">myExperiment</a>.</p>
+<h2 id="publishing-a-component">Publishing a component</h2>
+<p>Since components are realized as âextensionsâ to Taverna workflows,
+ it was decided that rather than using a separate component repository,
+ the extensive capabilities of myExperiment would be used.
+Thus a component is currently published and shared on myExperiment as (a pack containing)
+ a workflow.
+The components themselves are items within a pack corresponding to the component family.</p>
+<p>To facilitate the development of components, a workflow can also be saved to the userâs local
+ machine.</p>
+<p>When a user publishes a component either to myExperiment or to their local file system,
+ their service panel is updated to reflect the new component.</p>
+<h2 id="discovering-a-component">Discovering a component</h2>
+<p>Since component families are realized as packs on myExperiment
+ (or by analogous structures in the userâs file system),
+ we use the existing Taverna code to talk to the myExperiment REST interface to give users
+ access to families of components.
+Users can then see the discovered families of components via the Taverna Workbench service
+ panel, and the components within those families.
+A component can then be added to a workflow.</p></div>
+
+ </div>
+
+ <footer class="footer">
+ <div class="container">
+ <p id="copyright" class="text-muted">
+ Copyright © 2014-2015 The Apache Software Foundation, Licensed under the
+ <a href="http://www.apache.org/licenses/LICENSE-2.0">Apache License, Version 2.0</a>.
+ Apache and the Apache feather logo are trademarks of The Apache Software Foundation.
+ </p>
+ </div>
+ </footer>
+
+
+
+ <script src="/lib/jquery/jquery-1.11.1.min.js"></script>
+<script src="/lib/bootstrap/js/bootstrap.min.js"></script>
+
+<script>
+ jQuery(function($) {
+ if($(window).width()>769){
+ $('.navbar .dropdown').hover(function() {
+ $(this).find('.dropdown-menu').first().stop(true, true).delay(250).slideDown();
+
+ }, function() {
+ $(this).find('.dropdown-menu').first().stop(true, true).delay(100).slideUp();
+
+ });
+
+ $('.navbar .dropdown > a').click(function(){
+ location.href = this.href;
+ });
+
+ }
+ });
+</script>
+
+
+ </body>
+</html>
\ No newline at end of file