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 [3/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...

Modified: websites/staging/taverna/trunk/content/documentation/quick-start-guide/index.html
==============================================================================
--- websites/staging/taverna/trunk/content/documentation/quick-start-guide/index.html (original)
+++ websites/staging/taverna/trunk/content/documentation/quick-start-guide/index.html Wed Mar 11 08:49:34 2015
@@ -104,3 +104,234 @@
 					  <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>Quick start guide</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 is a powerful scientific 
+   <a href="/introduction/what-is-a-workflow-management-system">workflow management application</a>
+   that allows designing and executing workflows.</p>
+<p><a href="/introduction/why-use-workflows">Scientific workflows</a> help tackle the problem of excessive 
+   complexity of <a href="/introduction/what-is-in-silico-experimentation"><em>in silico</em> experimentation</a>
+   by helping scientists model what an experiment is set to achieve, 
+   while abstracting out how it will be executed.</p>
+<p>This quick start guide will help you open, create and run a workflow. 
+Before you start, you should download the <a href="/download">Taverna Workbench</a>.</p>
+<p>You should also refer to the 
+   <a href="http://www.mygrid.org.uk/dev/wiki/display/taverna/User+Manual">User Manual</a>, 
+   which contains a more comprehensive documentation on how to use Taverna.</p>
+<h2 id="opening-an-existing-workflow">Opening an existing workflow</h2>
+<p>It is simple to open an existing workflow inside the Taverna Workbench.<br />
+If you already have a Taverna workflow, go to <em>File -&gt;Open Workflow</em> 
+   and navigate to your workflow file (it should be in .t2flow format).</p>
+<p>When you click <em>OK</em>, if the workflow loads correctly, the 
+   <a href="/documentation/glossary#workflow_diagram"><em>Workflow Diagram</em></a> and 
+   <a href="/documentation/glossary/#workflow_explorer"><em>Workflow Explorer</em></a>
+   panels are populated with the workflow defined in the file. 
+There may be a short delay while Taverna contacts the network to get more information about 
+   the resources (services) the workflow uses - if the delay is a very long one followed by 
+   an error you probably need to check the configuration of your <em>HTTP Proxy Preferences</em>.</p>
+<p>If you do not have an existing workflow, you can download and open one from 
+   <a href="http://www.myexperiment.org/"><em>myExperiment</em></a>. 
+For bioinformatics examples, go to myExperiment and search for the Pack entitled 
+   "<a href="http://www.myexperiment.org/packs/363.html"><em>Bioinformatics Workflow Examples</em></a>". 
+From this pack, download the workflow entitled 
+   "[<em>Blast_Align_and_Tree</em>]http://www.myexperiment.org/workflows/3369.html_" 
+   by selecting it and selecting the Download option "<em>Download Workflow File/Package (T2FLOW</em>)". 
+Alternatively, you can copy the link location from the <em>Run</em> section in the workflow entry page.
+If you go to <em>File -&gt; Open Workflow Location... </em>in the workbench, you can paste this 
+   <a href="http://www.myexperiment.org/workflows/3369/download?version=1">link</a> directly into the 
+   dialogue box.</p>
+<p>To run the workflow, click the green 'play' button at the top of the workbench, or go to 
+   <em>File -&gt; Run workflow</em>. 
+In the pop-up workflow input box, add the first input (your email address), 
+by selecting "<em>set value</em>" and typing it in the box. 
+Change to the other input tab (sequence) at the top of the window and add a protein sequence 
+   in <em>FASTA</em> format in the same way. 
+An example is given and will be automatically added when you click on "set value", 
+   but you can add your own instead if you wish. 
+To launch the workflow, click "<em>Run workflow</em>" at the bottom of the input window.</p>
+<p>For more general workflow examples, you can find and download workflows from the 
+   Taverna starter packs 
+  (see <a href="http://www.myexperiment.org/packs/612.html">Taverna 2.5 starter pack</a> 
+  for an example set).</p>
+<p>You can additionally access the content of myExperiment directly from the Taverna Workbench by 
+  selecting the <em>myExperiment Perspective</em> at the top of the workbench. 
+The <em>Starter Pack</em> tab in the myExperiment Perspective contains the current Taverna starter
+  pack of workflows.</p>
+<h2 id="creating-a-workflow">Creating a workflow</h2>
+<p>We will now create and run a very simple Taverna 2.x workflow to list some cities in a country. 
+When you start the Workbench up, the default perspective you are presented with is the Design 
+  Perspective which is used for creating and editing workflows. 
+To start creating a new workflow, choose <em>New workflow</em> from the <em>File</em> menu.</p>
+<h2 id="adding-a-service-into-taverna">Adding a service into Taverna</h2>
+<p>Taverna 2.x does not, by default, “know” about a suitable service to perform the desired 
+   functionality. 
+To add a new <a href="/documentation/glossary/#web_service">Web service</a> click <em>Import new services</em> 
+   in the [<em>Service Panel</em>]/documentation/glossary/#service_panel) and then <em>WSDL service…</em>. 
+Enter the URL of the WSDL, in this case
+"http://www.webservicex.com/globalweather.asmx?WSDL" and click <em>OK</em>.</p>
+<p>After a while, the service will become available in the <em>Service Panel</em>. 
+If you filter the services by “globalweather” then you can see the two new services under 
+   "WSDL @ http://www.webservicex.com/globalweather.asmx?WSDL".</p>
+<h2 id="adding-a-service-into-the-workflow">Adding a service into the workflow</h2>
+<p>To add a service we have just imported in Taverna into the workflow, 
+   click on GetCitiesByCountry in the Service Panel and drag it into the <em>Workflow Diagram</em> or 
+   to the tree in the <em>Workflow Explorer</em>.</p>
+<h2 id="creating-the-workflow-inputs">Creating the workflow inputs</h2>
+<p>The workflow needs to have an input, in this case the name of the country to query. 
+You can create a new workflow input by right clicking in a blank area of the <em>Workflow Diagram</em> 
+   and select <em>Insert</em> -&gt; <em>Workflow input port</em>. 
+This will then ask you for a name for the input port, you can change this later but for now use 
+   "country". 
+Click <em>OK</em> and you should see your new input appear in the <em>Workflow Diagram</em> and 
+   <em>Workflow Explorer</em>.</p>
+<p>Similarly, the workflow will need an output. 
+Follow an equivalent process but this time clicking on <em>Insert</em> -&gt; <em>Workflow output port</em> 
+   and using the name "cities" to create an output. 
+Again, you should see the output appear in the two panels of the Workbench.</p>
+<h2 id="splitting-the-wsdl-inputs-and-outputs">Splitting the WSDL inputs and outputs</h2>
+<p>For many services, you can connect their inputs and outputs directly. 
+However, for <a href="/documentation/glossary#wsdl">WSDL services</a> you may need to “split” the XML used 
+   to hold the input and output values. 
+To do this, right-click on the service GetCitiesByCountry in the <em>Workflow Diagram</em> or 
+   <em>Workflow Explorer</em> and select <em>Show details</em>.</p>
+<p>A description of the service will appear in the <em>Details</em> view of the <em>Workflow Explorer</em>. 
+Scroll down and click both <em>Add input XML splitter</em> and <em>Add output XML splitter</em>, 
+   choosing “parameters” in both cases.</p>
+<h2 id="connecting-everything-together">Connecting everything together</h2>
+<p>To link the input port, click on “country” and drag to the “GetCitiesByCountry_input”. 
+A connection arrow will appear in the <em>Workflow Diagram</em>. 
+If there had been several ports that you could have connected to, 
+   then the multiple options would have been offered to you. 
+Alternatively, you may right-click the “GetCitiesByCountry_input” input port of the service and 
+   select <em>Connect with output from...</em> -&gt;<em>Workflow input ports</em> and select the 
+   "country" workflow input port.</p>
+<p>To connect from the “GetCitiesByCountry_output”, right-click on it and select 
+   <em>Connect as input to...</em> -&gt;<em>Workflow output ports</em> and select the “cities” output port. 
+Alternatively, you may start to draw a link (a green arrow will appear) from the 
+“GetCitiesByCountry_output” output port of the service towards the workflow output port 
+   “cities”.</p>
+<h2 id="running-the-workflow">Running the workflow</h2>
+<p>You can now run the workflow you have just created.</p>
+<p>Select <em>Run workflow</em> from the <em>File</em> menu. In the <em>Workflow Inputs Dialog</em>, 
+   as there is only one input port, you can click <em>New value </em>button.<br />
+Replace the string “Some input data goes here” by your chosen country name. 
+After you have entered it, you can click <em>Run workflow</em>.</p>
+<p>Taverna will automatically switch to the <em>Results Perspective</em>. 
+The workflow run will be displayed in the <em>Monitor View </em>tabs 
+   (either as a graph showing progress or as a progress table). 
+This panel shows you the progress of the workflow - running services are shown green and 
+   completed ones in grey. 
+As the results are produced they are listed, for each output, in the Port Results View. 
+After the workflow has run (indicated by GetCitiesByCountry turning grey), you will see a string “Value 1? appear in the lower left panel. This is the identifier of the output result. If you click on this, you will see the output appear in the <em>Rendered Result</em> panel of the <em>Port Results View</em>.</p>
+<p>Congratulations, you have created and run a workflow.</p>
+<h2 id="closing-the-workflow">Closing the workflow</h2>
+<p>To close the current workflow, select <em>Close workflow</em> from the <em>File</em> menu.</p></div>
+
+    </div>
+
+        <footer class="footer">
+      <div class="container">
+           <p id="copyright" class="text-muted">
+              Copyright &#169; 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/scufl2/api.html
==============================================================================
--- websites/staging/taverna/trunk/content/documentation/scufl2/api.html (original)
+++ websites/staging/taverna/trunk/content/documentation/scufl2/api.html Wed Mar 11 08:49:34 2015
@@ -104,3 +104,119 @@
 					  <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>SCUFL2 API</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>Currently the most up to date information can be found in the github 
+   <a href="https://github.com/apache/incubator-taverna-language">readme</a></p>
+<h3 id="previous-versions">Previous Versions</h3>
+<p>For information on previous None Apache versions see the 
+   <a href="http://dev.mygrid.org.uk/wiki/display/developer/SCUFL2+API">Mygrid pages</a></p></div>
+
+    </div>
+
+        <footer class="footer">
+      <div class="container">
+           <p id="copyright" class="text-muted">
+              Copyright &#169; 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/scufl2/bundle.html
==============================================================================
--- websites/staging/taverna/trunk/content/documentation/scufl2/bundle.html (original)
+++ websites/staging/taverna/trunk/content/documentation/scufl2/bundle.html Wed Mar 11 08:49:34 2015
@@ -104,3 +104,389 @@
 					  <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>Scufl2-WorkflowBundle</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 entry point of the Taverna Workflow Bundle.</p>
+<p>Defines the <em>workflows</em> and <em>profiles</em> of a 
+   <a href="/documentation/scufl2/taverna_bundle">Taverna Workflow Bundle</a>.
+The <em>main workflow</em> is also normally defined, which would be the top-level workflow to execute. 
+The profiles defines how these workflows can be realised and <em>executed</em> on different environments, 
+   one of which can be suggested as the <em>main profile</em>.</p>
+<h2 id="bundle-path-and-root-files">Bundle path and root files</h2>
+<p>The <strong>workflow bundle document</strong> in RDF/XML format <strong>should</strong> be in in <code>/workflowBundle.rdf</code> within the bundle archive.</p>
+<p>If the archive is a <a href="/documentation/scufl2/taverna_bundle">workflow bundle</a>, 
+   i.e. <code>/mimetype</code> is <code>application/vnd.taverna.scufl2.workflow-bundle</code>, 
+   then the <code>META-INF/container.xml</code> can define <strong>root files</strong> at alternative paths and media types. 
+This specification requires that one of those formats is <code>application/rdf+xml</code> according to this specification. </p>
+<p>Example <code>META-INF/container.xml</code>: (may be outdated)</p>
+<div class="codehilite"><pre><span class="cp">&lt;?xml version=&amp;quot;1.0&amp;quot;?&gt;</span>
+<span class="nt">&lt;container</span> <span class="na">version=</span><span class="s">&quot;1.0&quot;</span>
+    <span class="na">xmlns=</span><span class="s">&quot;;urn:oasis:names:tc:opendocument:xmlns:container&quot;</span><span class="nt">&gt;</span>
+    <span class="nt">&lt;rootfiles&gt;</span>
+        <span class="nt">&lt;rootfile</span> <span class="na">full-path=</span><span class="s">&quot;workflowBundle.ttl&quot;</span>
+         <span class="na">media-type=</span><span class="s">&quot;text/turtle&quot;</span> <span class="nt">/&gt;</span>  
+         <span class="nt">&lt;rootfile</span> <span class="na">full-path=</span><span class="s">&quot;workflowBundle.rdf&quot;</span>
+         <span class="na">media-type=</span><span class="s">&quot;application/rdf+xml&quot;</span> <span class="nt">/&gt;</span>  
+    <span class="nt">&lt;/rootfiles&gt;</span>
+<span class="nt">&lt;/container&gt;</span>
+</pre></div>
+
+
+<p>This defines the RDF/XML root file to be <code>/workflowBundle.rdf</code> - 
+   with <code>workflowBundle.ttl</code> being an alternate representation the resource in Turtle format.</p>
+<p>SCUFL2-compliant workflow bundle writers:</p>
+<ul>
+<li><strong>Must</strong> set the bundle <strong>mimetype</strong> to <code>application/vnd.taverna.scufl2.workflow-bundle</code></li>
+<li><strong>Must</strong> add a workflow bundle document in <code>application/rdf+xml</code> format</li>
+<li><strong>Should</strong> store the workflow bundle document in <code>/workflowBundle.rdf</code></li>
+<li><strong>Must not</strong> contain a resource <code>/workflowBundle.rdf</code> which is not the workflow bundle document</li>
+<li>If the <code>application/rdf+xml</code> representation is not in <code>/workflowBundle.rdf</code>, 
+     the writer <strong>must</strong> include <code>META-INF/container.xml</code> with the required <code>&lt;rootfile&gt;</code> entries.</li>
+<li><code>META-INF/container.xml</code>, if present, <strong>must</strong> contain one and only one <code>rootfile</code> with the media-type 
+     <code>application/rdf+xml</code>. 
+   rootfiles of other media-types <strong>may</strong> be included, but their formats and restrictions are not defined by this specification.</li>
+<li><strong>May</strong> Add additional representation of the workflow bundle document (and other documents). 
+   Alternates of the workflow bundle document <strong>should</strong> be included in the <code>META-INF/container.xml</code>, 
+     but only if they can be considered to fully specify the workflow bundle as in the RDF/XML format. 
+   (So for instance a <code>text/html</code> or <code>image/png</code> representation would not normally be considered a 
+     <strong>rootfile</strong> if it does not include all the structural information from the RDF/XML representation as specified here)</li>
+</ul>
+<p>It is possible to include a workflow bundle document within a different kind of archive or bundle, 
+   for instance in a data bundle.
+In this case the bundle is not considered an <code>application/vnd.taverna.scufl2.workflow-bundle</code> - 
+   but producers of such archives:</p>
+<ul>
+<li><strong>Should</strong> store the workflow bundle document in <code>/workflowBundle.rdf</code>, 
+      unless the workflow bundle is not to be considered to have a 'main' or 'prominent' role within the archive. 
+   (For instance if the archive is a collection of workflow bundles).</li>
+<li><strong>Should</strong> have a <code>mimetype</code> and <code>META-INF/container.xml</code> resource which declares the archive's main entry point, 
+     like the data bundle document. 
+   The mime type <strong>must not</strong> be <code>application/vnd.taverna.scufl2.workflow-bundle</code> and 
+      the root files <strong>should not</strong> be the workflow bundle document.</li></li>
+<li><strong>Should</strong> link to the workflow bundle document from a resource within the archive which (ultimately) 
+      is linked to from one of the <code>rootfile</code> documents. 
+   Such documents <strong>should</strong> be in RDF/XML format.</li>
+<li><strong>Should</strong> declare the media type of the RDF/XML workflow bundle document as <code>application/rdf+xml</code> 
+      in its <code>META-INF/manifest.xml</code></li>
+</ul>
+<p>SCUFL2 compliant workflow bundle readers:</p>
+<ul>
+<li><strong>Should</strong> assume that <code>/workflowBundle.rdf</code> - if present - 
+       is the root workflow bundle in the <code>application/rdf+xml</code> format specified here.</li>
+<li><strong>Should</strong> assume that if the archive's <code>mimetype</code> is <code>application/vnd.taverna.scufl2.workflow-bundle</code>, 
+       then the <code>rootfile</code> in <code>META-INF/container.xml</code> with the media type {{application/rdf+xml}) 
+       is the root workflow bundle document.</li>
+<li><strong>May</strong> assume that any alternate formats listed as a <code>rootfile</code> in a <code>application/vnd.taverna.scufl2.workflow-bundle</code> 
+       archive would fully cover the specification of the RDF/XML representation, and read such formats instead.</li>
+<li><strong>May</strong> assume that any <code>application/rdf+xml</code> document with a <code>xsi:type="WorkflowBundleDocument"</code> 
+       can be parsed according to the Scufl2 XML schema</li>
+</ul>
+<h2 id="identifiers">Identifiers</h2>
+<p>Workflow bundles and their resources <strong>must</strong> be declared with relative identifiers within the archive. 
+In a <code>application/vnd.taverna.scufl2.workflow-bundle</code> archive, 
+  the workflow bundle <strong>must</strong> be identified as the root of the archive. 
+If the Workflow Bundle document is in <code>workflowBundle.rdf</code> within the archive, the workflow identifier is <code>./</code>.<br />
+This <strong>should</strong> be achieved by setting <code>xml:base="./"</code> and <code>rdf:about=""</code>.</p>
+<p>This means that one can mint a URI to refer to resources within the bundle archive, including the workflow bundle, 
+   workflows and representations. 
+If <code>http://example.com/myWfBundle.scufl2</code> returns a <a href="/documentation/scufl2/taverna_bundle">Scufl2 workflow bundle</a> 
+   archive of the content type <code>application/vnd.taverna.scufl2.workflow-bundle</code>,<br />
+   then (assuming default structure of the archive):</p>
+<ul>
+<li><code>http://example.com/myWfBundle.scufl2</code> identifies for the Workflow Bundle representation (the archive)</li>
+<li><code>http://example.com/myWfBundle.scufl2/</code> identifies the Workflow Bundle (as described here)</li>
+<li><code>http://example.com/myWfBundle.scufl2/workflowBundle.rdf</code> identifies the Workflow Bundle representation in RDF/XML</li>
+<li><code>http://example.com/myWfBundle.scufl2/workflow/HelloWorld/</code> identifies the "HelloWorld" 
+      <a href="/documentation/scufl2/workflow">workflow</a> within the bundle</li>
+<li><code>http://example.com/myWfBundle.scufl2/workflow/HelloWorld.rdf</code> identifies the "HelloWorld" workflow representation in RDF/XML</li>
+<li><code>http://example.com/myWfBundle.scufl2/workflow/HelloWorld/processor/Hello/</code> identifies the "Hello" 
+      processor within the "HelloWorld" workflow.</li>
+</ul>
+<h3 id="embedded-workflow-bundles">Embedded workflow bundles</h3>
+<p>If the archive is another type of bundle which includes the workflow bundle 
+   (but is not primarily playing the role as the format for this workflow bundle), 
+   the local workflow identifier <strong>should</strong> be unique within the archive. 
+This is easiest achieved by using the same folder technique as for the workflow representations:</p>
+<ul>
+<li><code>workflowBundle1.rdf</code> can define <code>workflowBundle1/</code></li>
+<li><code>exampleWorkflowBundles/hello.rdf</code> defines <code>exampleWorkflowBundles/hello/</code></li>
+</ul>
+<p>Such embedded workflow bundles <strong>should</strong> include their constituent representations 
+   (such as <code>workflow/HelloWorld.rdf</code>) within that folder, 
+   for instance <code>exampleWorkflowBundles/hello/workflow/HelloWorld.rdf</code> to define 
+   <code>exampleWorkflowBundles/hello/workflow/HelloWorld/</code> - but could also be shared among bundles, 
+   for instance both <code>workflowBundle1.rdf</code> and <code>workflowBundle2.rdf</code> might refer to <code>workflow/Shared.rdf</code>.</p>
+<h3 id="global-workflow-bundle-identifiers">Global workflow bundle identifiers</h3>
+<p>Workflow bundles <strong>should</strong> declare a <strong>sameBaseAs</strong> reference to a globally unique non-informational URI.</p>
+<p>Anyone can generate such a URI using the form <code>http://ns.taverna.org.uk/2010/workflowBundle/UUID/</code> - 
+   for instance <code>http://ns.taverna.org.uk/2010/workflowBundle/28f7c554-4f35-401f-b34b-516e9a0ef731/</code> - 
+   including the trailing slash.</p>
+<p>The semantics of <strong>sameBaseAs</strong> is a kind of recursive version of <strong>owl:sameAs</strong> - 
+   so also resources which URI start with the same will be included.</p>
+<p>So if:</p>
+<div class="codehilite"><pre><span class="p">@</span><span class="n">prefix</span> <span class="p">:</span> <span class="o">&lt;</span><span class="p">;</span><span class="n">http</span><span class="p">:</span><span class="o">//</span><span class="n">ns</span><span class="p">.</span><span class="n">taverna</span><span class="p">.</span><span class="n">org</span><span class="p">.</span><span class="n">uk</span><span class="o">/</span>2010<span class="o">/</span><span class="n">scufl2</span><span class="o">&gt;</span> <span class="p">.</span>
+<span class="p">@</span><span class="n">prefix</span> <span class="n">rdfs</span><span class="p">:</span> <span class="o">&lt;</span><span class="n">http</span><span class="p">:</span><span class="o">//</span><span class="n">www</span><span class="p">.</span><span class="n">w3</span><span class="p">.</span><span class="n">org</span><span class="o">/</span>2000<span class="o">/</span>01<span class="o">/</span><span class="n">rdf</span><span class="o">-</span><span class="n">schema</span><span class="o">&gt;</span> <span class="p">.</span>
+
+<span class="o">&lt;./&gt;</span>     <span class="n">a</span> <span class="p">:</span><span class="n">WorkflowBundle</span><span class="p">;</span>
+     <span class="p">:</span><span class="n">name</span> &quot;<span class="n">HelloWorld</span>&quot;<span class="p">;</span>
+     <span class="p">:</span><span class="n">sameBaseAs</span> <span class="o">&lt;</span><span class="n">http</span><span class="p">:</span><span class="o">//</span><span class="n">ns</span><span class="p">.</span><span class="n">taverna</span><span class="p">.</span><span class="n">org</span><span class="p">.</span><span class="n">uk</span><span class="o">/</span>2010<span class="o">/</span><span class="n">workflowBundle</span><span class="o">/</span>28<span class="n">f7c554</span><span class="o">-</span>4<span class="n">f35</span><span class="o">-</span>401<span class="n">f</span><span class="o">-</span><span class="n">b34b</span><span class="o">-</span>516<span class="n">e9a0ef731</span><span class="o">/&gt;</span><span class="p">;</span>
+     <span class="p">:</span><span class="n">mainWorkflow</span> <span class="o">&lt;</span><span class="n">workflow</span><span class="o">/</span><span class="n">HelloWorld</span><span class="o">/&gt;</span><span class="p">;</span>
+     <span class="p">:</span><span class="n">workflow</span> <span class="o">&lt;</span><span class="n">workflow</span><span class="o">/</span><span class="n">HelloWorld</span><span class="o">/&gt;</span><span class="p">;</span>
+
+<span class="o">&lt;</span><span class="n">workflow</span><span class="o">/</span><span class="n">HelloWorld</span><span class="o">/&gt;</span>     <span class="n">a</span> <span class="p">:</span><span class="n">Workflow</span><span class="p">;</span>
+     <span class="n">rdfs</span><span class="p">:</span><span class="n">seeAlso</span> <span class="o">&lt;</span><span class="n">workflow</span><span class="o">/</span><span class="n">HelloWorld</span><span class="p">.</span><span class="n">ttl</span><span class="o">&gt;</span> <span class="p">.</span>
+</pre></div>
+
+
+<p>then also:</p>
+<p><code>&lt;./&gt;</code>= <code>&lt;http://ns.taverna.org.uk/2010/workflowBundle/28f7c554-4f35-401f-b34b-516e9a0ef731/&gt;</code> <br />
+<code>&lt;workflow/HelloWorld/&gt;</code> = <code>&lt;http://ns.taverna.org.uk/2010/workflowBundle/28f7c554-4f35-401f-b34b-516e9a0ef731/workflow/HelloWorld/&gt;</code> <br />
+<code>&lt;workflow/HelloWorld.rdf&gt;</code> = <code>&lt;http://ns.taverna.org.uk/2010/workflowBundle/28f7c554-4f35-401f-b34b-516e9a0ef731/workflow/HelloWorld.rdf&gt;</code></p>
+<p>This allows anyone to make a statement about any resource within the workflow bundle, 
+   even if the URL of the workflow bundle representation itself might change,
+   be it on a local USB disk, DropBox folder, myExperiment, etc.</p>
+<h4 id="updating-the-uuid">Updating the UUID</h4>
+<p>It is up to the software editing or creating the workflow to assign a new UUID as soon as 
+   any change has been done to any workflow, profile or workflow bundle, 
+   as this is the globally unique identifier for this workflow archive, 
+   and also the base URI for all the other resources in the archive.</p>
+<blockquote>
+<p><img alt="" src="/img/warning.png" /><strong>Not implemented by API</strong> Scufl2 API do not yet</p>
+<p>automatically update the workflow bundle identifier. 
+<a href="http://www.mygrid.org.uk/dev/issues/browse/SCUFL2-41">SCUFL2-41</a></p>
+<p>To update the URI, use <code>workflowBundle.setSameBaseAs(WorkflowBundle.generateIdentifier())</code>.</p>
+</blockquote>
+<h2 id="example-representation-in-rdfxml">Example representation in RDF/XML</h2>
+<p>(may be outdated)</p>
+<div class="codehilite"><pre><span class="cp">&lt;?xml version=&quot;1.0&quot;?&gt;</span>
+<span class="nt">&lt;rdf:RDF</span> <span class="na">xmlns=</span><span class="s">&quot;http://ns.taverna.org.uk/2010/scufl2#&quot;</span>
+    <span class="na">xmlns:rdf=</span><span class="s">&quot;http://www.w3.org/1999/02/22-rdf-syntax-ns#&quot;</span> <span class="na">xmlns:rdfs=</span><span class="s">&quot;http://www.w3.org/2000/01/rdf-schema#&quot;</span>
+    <span class="na">xmlns:xsi=</span><span class="s">&quot;http://www.w3.org/2001/XMLSchema-instance&quot;</span>
+    <span class="na">xsi:schemaLocation=</span><span class="s">&quot;http://ns.taverna.org.uk/2010/scufl2# http://ns.taverna.org.uk/2010/scufl2/scufl2.xsd http://www.w3.org/1999/02/22-rdf-syntax-ns# http://ns.taverna.org.uk/2010/scufl2/rdf.xsd&quot;</span>
+    <span class="na">xsi:type=</span><span class="s">&quot;WorkflowBundleDocument&quot;</span> <span class="na">xml:base=</span><span class="s">&quot;./&quot;</span><span class="nt">&gt;</span>
+    <span class="nt">&lt;WorkflowBundle</span> <span class="na">rdf:about=</span><span class="s">&quot;&quot;</span><span class="nt">&gt;</span>
+        <span class="nt">&lt;name&gt;</span>HelloWorld<span class="nt">&lt;/name&gt;</span>
+        <span class="nt">&lt;sameBaseAs</span>
+            <span class="na">rdf:resource=</span><span class="s">&quot;http://ns.taverna.org.uk/2010/workflowBundle/28f7c554-4f35-401f-b34b-516e9a0ef731/&quot;</span> <span class="nt">/&gt;</span>      
+        <span class="nt">&lt;mainWorkflow</span> <span class="na">rdf:resource=</span><span class="s">&quot;workflow/HelloWorld/&quot;</span> <span class="nt">/&gt;</span>
+        <span class="nt">&lt;workflow&gt;</span>
+            <span class="nt">&lt;Workflow</span> <span class="na">rdf:about=</span><span class="s">&quot;workflow/HelloWorld/&quot;</span><span class="nt">&gt;</span>
+                <span class="nt">&lt;rdfs:seeAlso</span> <span class="na">rdf:resource=</span><span class="s">&quot;workflow/HelloWorld.rdf&quot;</span> <span class="nt">/&gt;</span>
+            <span class="nt">&lt;/Workflow&gt;</span>
+        <span class="nt">&lt;/workflow&gt;</span>
+        <span class="c">&lt;!--</span>
+<span class="c">        &lt;workflow&gt;</span>
+<span class="c">            &lt;Workflow rdf:about=&quot;workflow/SomeNestedWorkflow/&quot;&gt;</span>
+<span class="c">                &lt;rdfs:seeAlso rdf:resource=&quot;workflow/SomeNestedWorkflow.rdf&quot; /&gt;</span>
+<span class="c">            &lt;/Workflow&gt;</span>
+<span class="c">        &lt;/workflow&gt;</span>
+<span class="c">        --&gt;</span>
+        <span class="nt">&lt;mainProfile</span> <span class="na">rdf:resource=</span><span class="s">&quot;profile/tavernaWorkbench/&quot;</span> <span class="nt">/&gt;</span>
+        <span class="nt">&lt;profile&gt;</span>
+            <span class="nt">&lt;Profile</span> <span class="na">rdf:about=</span><span class="s">&quot;profile/tavernaServer/&quot;</span><span class="nt">&gt;</span>
+                <span class="nt">&lt;rdfs:seeAlso</span> <span class="na">rdf:resource=</span><span class="s">&quot;profile/tavernaServer.rdf&quot;</span> <span class="nt">/&gt;</span>
+            <span class="nt">&lt;/Profile&gt;</span>
+        <span class="nt">&lt;/profile&gt;</span>
+        <span class="nt">&lt;profile&gt;</span>
+            <span class="nt">&lt;Profile</span> <span class="na">rdf:about=</span><span class="s">&quot;profile/tavernaWorkbench/&quot;</span><span class="nt">&gt;</span>
+                <span class="nt">&lt;rdfs:seeAlso</span> <span class="na">rdf:resource=</span><span class="s">&quot;profile/tavernaWorkbench.rdf&quot;</span> <span class="nt">/&gt;</span>
+            <span class="nt">&lt;/Profile&gt;</span>
+        <span class="nt">&lt;/profile&gt;</span>
+        <span class="nt">&lt;rdfs:seeAlso</span> <span class="na">rdf:resource=</span><span class="s">&quot;annotation/workflowBundle.rdf&quot;</span> <span class="nt">/&gt;</span>
+    <span class="nt">&lt;/WorkflowBundle&gt;</span>
+<span class="nt">&lt;/rdf:RDF&gt;</span>
+</pre></div>
+
+
+<p>This example defines the workflow bundle "HelloWorld". 
+It contains one workflow <code>workflow/HelloWorld</code>, which is also the <strong>main workflow</strong>. 
+Any additional workflows are typically nested (and nested-nested, etc) workflows bound as activities in processors). 
+Two execution profiles are provided, and <code>profile/tavernaWorkbench</code> is dedicated as the <strong>main profile</strong>.</p>
+<h2 id="properties">Properties</h2>
+<ul>
+<li><strong>name</strong> (required) gives the human readable title for this workflow archive. 
+     This is a subproperty of <code>dc:title</code>.</li>
+<li><strong>sameBaseAs</strong> (optional) gives a unique URI which is <strong>owl:sameAs</strong> with this workflow bundle and its children.</li>
+<li><strong>workflow</strong> (required) All <a href="/documentation/scufl2/workflow">workflows</a> included in this bundle. 
+     Each workflow must have an <strong>rdfs:seeAlso</strong> link to the bundle resource that defines the workflow, 
+       typically <code>workflow/workflowName.rdf</code> corresponding to the non-information resource <code>workflow/workflowName/</code>.</li>
+<li><strong>mainWorkflow</strong> (optional) The reference to the top-level <a href="/documentation/scufl2/workflow">workflow</a> of this bundle. 
+   It is valid to have a workflow bundle without a main workflow, 
+      for instance if the bundled workflows are unconnected "workflow fragments". 
+   If there is a <strong>mainProfile</strong> the workflow bundle must also have a <strong>mainWorkflow</strong>. 
+   The main workflow must always be listed under <strong>workflow</strong>.</li>
+<li><strong>profile</strong> (optional) <a href="/wiki/display/developer/Scufl2-Profile">profiles</a> specifying how to <strong>execute</strong> the bundled workflows. In particular the profile provides a set of configured activities bound to the processors for a particular run environment. If no profiles are specified this is an abstract workflow bundle.</li></li>
+<li><strong>mainProfile</strong> (optional) the suggested <strong>main profile</strong>. Execution platforms unable to choose between the provided profiles can select this profile as a default. It is valid to have a workflow bundle without a main profile (even if it has other profiles), but any main profile must be listed under <strong>profile</strong>.</li></li>
+<li><strong>rdfs:seeAlso</strong> (optional) link to annotations about the workflow bundle and its content. Traditionally found in <code>annotation/workflowBundle.rdf</code>, which should contain further links to annotations from different sources, for instance <code>annotation/myExperiment.rdf</code> for annotations included from myExperiment.</li></li>
+</ul>
+<h2 id="bundle-links">Bundle links</h2>
+<p>The workflow bundle document is the starting point for finding all workflow bundle resources within the archive. 
+Each of the workflows and profiles must therefore have a <strong>rdfs:seeAlso</strong> link to the bundle resource that defines it.</p>
+<p>If alternate formats other than the required RDF/XML format is included in the bundle, 
+   these formats can therefore link to resources in other formats, for instance in an additional <code>workflowBundle.ttl</code> 
+   (<a href="http://www.w3.org/TeamSubmission/turtle/">Turtle format</a>):</p>
+<div class="codehilite"><pre><span class="p">@</span><span class="n">prefix</span> <span class="p">:</span> <span class="o">&lt;</span><span class="n">http</span><span class="p">:</span><span class="o">//</span><span class="n">ns</span><span class="p">.</span><span class="n">taverna</span><span class="p">.</span><span class="n">org</span><span class="p">.</span><span class="n">uk</span><span class="o">/</span>2010<span class="o">/</span><span class="n">scufl2</span>#<span class="o">&gt;</span> <span class="p">.</span>
+<span class="p">@</span><span class="n">prefix</span> <span class="n">rdfs</span><span class="p">:</span> <span class="o">&lt;</span><span class="n">http</span><span class="p">:</span><span class="o">//</span><span class="n">www</span><span class="p">.</span><span class="n">w3</span><span class="p">.</span><span class="n">org</span><span class="o">/</span>2000<span class="o">/</span>01<span class="o">/</span><span class="n">rdf</span><span class="o">-</span><span class="n">schema</span>#<span class="o">&gt;</span> <span class="p">.</span>
+
+<span class="o">&lt;./&gt;</span>     <span class="n">a</span> <span class="p">:</span><span class="n">WorkflowBundle</span><span class="p">;</span>
+     <span class="p">:</span><span class="n">mainProfile</span> <span class="o">&lt;</span><span class="n">profile</span><span class="o">/</span><span class="n">tavernaWorkbench</span><span class="o">/&gt;</span><span class="p">;</span>
+     <span class="p">:</span><span class="n">mainWorkflow</span> <span class="o">&lt;</span><span class="n">workflow</span><span class="o">/</span><span class="n">HelloWorld</span><span class="o">/&gt;</span><span class="p">;</span>
+     <span class="p">:</span><span class="n">name</span> &quot;<span class="n">HelloWorld</span>&quot;<span class="p">;</span>
+     <span class="p">:</span><span class="n">profile</span> <span class="o">&lt;</span><span class="n">profile</span><span class="o">/</span><span class="n">tavernaServer</span><span class="o">/&gt;</span><span class="p">,</span>
+            <span class="o">&lt;</span><span class="n">profile</span><span class="o">/</span><span class="n">tavernaWorkbench</span><span class="o">/&gt;</span><span class="p">;</span>
+     <span class="p">:</span><span class="n">sameBaseAs</span> <span class="o">&lt;</span><span class="n">http</span><span class="p">:</span><span class="o">//</span><span class="n">ns</span><span class="p">.</span><span class="n">taverna</span><span class="p">.</span><span class="n">org</span><span class="p">.</span><span class="n">uk</span><span class="o">/</span>2010<span class="o">/</span><span class="n">workflowBundle</span><span class="o">/</span>28<span class="n">f7c554</span><span class="o">-</span>4<span class="n">f35</span><span class="o">-</span>401<span class="n">f</span><span class="o">-</span><span class="n">b34b</span><span class="o">-</span>516<span class="n">e9a0ef731</span><span class="o">/&gt;</span><span class="p">;</span>
+     <span class="p">:</span><span class="n">workflow</span> <span class="o">&lt;</span><span class="n">workflow</span><span class="o">/</span><span class="n">HelloWorld</span><span class="o">/&gt;</span><span class="p">;</span>
+     <span class="n">rdfs</span><span class="p">:</span><span class="n">seeAlso</span> <span class="o">&lt;</span><span class="n">annotation</span><span class="o">/</span><span class="n">workflowBundle</span><span class="p">.</span><span class="n">ttl</span><span class="o">&gt;</span> <span class="p">.</span>
+
+<span class="o">&lt;</span><span class="n">profile</span><span class="o">/</span><span class="n">tavernaServer</span><span class="o">/&gt;</span>     <span class="n">a</span> <span class="p">:</span><span class="n">Profile</span><span class="p">;</span>
+     <span class="n">rdfs</span><span class="p">:</span><span class="n">seeAlso</span> <span class="o">&lt;</span><span class="n">profile</span><span class="o">/</span><span class="n">tavernaServer</span><span class="p">.</span><span class="n">ttl</span><span class="o">&gt;</span> <span class="p">.</span>
+
+<span class="o">&lt;</span><span class="n">profile</span><span class="o">/</span><span class="n">tavernaWorkbench</span><span class="o">/&gt;</span>     <span class="n">a</span> <span class="p">:</span><span class="n">Profile</span><span class="p">;</span>
+     <span class="n">rdfs</span><span class="p">:</span><span class="n">seeAlso</span> <span class="o">&lt;</span><span class="n">profile</span><span class="o">/</span><span class="n">tavernaWorkbench</span><span class="p">.</span><span class="n">ttl</span><span class="o">&gt;</span> <span class="p">.</span>
+
+<span class="o">&lt;</span><span class="n">workflow</span><span class="o">/</span><span class="n">HelloWorld</span><span class="o">/&gt;</span>     <span class="n">a</span> <span class="p">:</span><span class="n">Workflow</span><span class="p">;</span>
+     <span class="n">rdfs</span><span class="p">:</span><span class="n">seeAlso</span> <span class="o">&lt;</span><span class="n">workflow</span><span class="o">/</span><span class="n">HelloWorld</span><span class="p">.</span><span class="n">ttl</span><span class="o">&gt;</span> <span class="p">.</span>
+</pre></div>
+
+
+<h2 id="parsingwriting">Parsing/writing</h2>
+<p>SCUFL2 compliant writers, when producing the workflow bundle document:</p>
+<ul>
+<li><strong>Should</strong> write the workflow bundle RDF/XML document according to the SCUFL2 XML schema, 
+      use the default namespace <code>xmlns="http://ns.taverna.org.uk/2010/scufl2#"</code> and declare the 
+      <code>xsi:type="WorkflowBundleDocument"</code></li>
+<li><strong>Must</strong> ensure the workflow bundle RDF/XML document is valid <a href="http://www.w3.org/TR/REC-rdf-syntax/">RDF/XML</a> 
+     and includes the properties deemed required by this specification. 
+   Conforming to the XML schema should ensure this.</li>
+<li><strong>Should</strong> set the <code>xml:base</code> property to<code>"./</code></li>
+<li><strong>Should</strong> set <strong>rdf:about</strong> to <code>""</code> (or <code>"./"' if</code>xml:base` is not set))</li>
+<li><strong>Should</strong> declare a <strong>mainWorkflow</strong> and <strong>mainProfile</strong></li>
+<li><strong>Must</strong>ensure that any <strong>workflow</strong>/<strong>profile</strong> has a relative <strong>rdfs:seeAlso</strong> link to a bundle resource in 
+     <code>application/rdf+xml</code> which defines <br />
+    that <a href="/documentation/scufl2/workflow">workflow</a> / <a href="/documentation/scufl2/profile">profile</a>.</li>
+</ul>
+<p>SCUFL2 compliant readers, when parsing a workflow bundle document:</p>
+<p><strong>May</strong> assume that a declared workflow/profile is defined in the referenced representation. 
+  For instance, if:</p>
+<div class="codehilite"><pre><span class="nt">&lt;workflow&gt;</span>
+   <span class="nt">&lt;Workflow</span> <span class="na">rdf:about=</span><span class="s">&quot;workflow/SomeNestedWorkflow/&quot;</span><span class="nt">&gt;</span>
+      <span class="nt">&lt;rdfs:seeAlso</span> <span class="na">rdf:resource=</span><span class="s">&quot;workflow/SomeNestedWorkflow.rdf&quot;</span> <span class="nt">/&gt;</span>
+   <span class="nt">&lt;/Workflow&gt;</span>   
+<span class="nt">&lt;/workflow&gt;</span>
+</pre></div>
+
+
+<p>then <code>workflow/SomeNestedWorkflow.rdf</code>&gt; <strong>must</strong> contain a <a href="/documentation/scufl2/workflow">workflow definition</a> 
+   for <code>workflow/SomeNestedWorkflow/</code>. <br />
+<strong>May</strong> parse the <code>/workflowBundle.rdf</code> as RDF/XML <br />
+<strong>May</strong> parse the {/workflowBundle.rdf}} according to the XML schema if the <code>xsi:type="WorkflowBundleDocument"</code> 
+   is set on the <code>rdf:RDF</code> element.</p></div>
+
+    </div>
+
+        <footer class="footer">
+      <div class="container">
+           <p id="copyright" class="text-muted">
+              Copyright &#169; 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/scufl2/datalink.html
==============================================================================
--- websites/staging/taverna/trunk/content/documentation/scufl2/datalink.html (original)
+++ websites/staging/taverna/trunk/content/documentation/scufl2/datalink.html Wed Mar 11 08:49:34 2015
@@ -104,3 +104,226 @@
 					  <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>Scufl2-DataLink</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 definition of a data link.</p>
+<div class="codehilite"><pre><span class="n">Bundle</span> <span class="n">path</span><span class="p">:</span> <span class="o">/</span><span class="n">workflow</span><span class="o">/\</span>$<span class="n">workflowName</span><span class="p">.</span><span class="n">n3</span>
+</pre></div>
+
+
+<p>Datalink should be described in the same file as their containing workflow.</p>
+<h2 id="identifier">Identifier</h2>
+<p>Each datalink is uniquely identified by their source and destination ports, in addition to the optional merge position.</p>
+<p>Datalinks are globally identified as <a href="http://ns.taverna.org.uk/2010/researchObject/$researchObjectUUID/workflow/$workflow/datalink?from=$fromPort&amp;to=$toPort&amp;mergePosition=$mergePosition">http://ns.taverna.org.uk/2010/researchObject/$researchObjectUUID/workflow/$workflow/datalink?from=$fromPort&amp;to=$toPort&amp;mergePosition=$mergePosition</a> - for instance <a href="http://ns.taverna.org.uk/2010/researchObject/28f7c554-4f35-401f-b34b-516e9a0ef731/workflow/HelloWorld/datalink?from=processor/A/out/result&amp;to=processor/B/in/db">http://ns.taverna.org.uk/2010/researchObject/28f7c554-4f35-401f-b34b-516e9a0ef731/workflow/HelloWorld/datalink?from=processor/A/out/result&amp;to=processor/B/in/db</a> defines the link in workflow "HelloWorld" from the output port "result" in the processor "A" going to the input port "db" for the processor "B". As there is no mergePosition there can't be any other links going to the "db" port.</p>
+<p>As these URIs can be tricky to construct or maintain, feel free to use anonymous nodes, or construct alterative URIs as <datalink/$number>, the number here would not have any semantic meaning except it must be unique per datalink in that workflow.</p>
+<h2 id="example">Example</h2>
+<p>workflow/Helloworld.n3: (out of Date)</p>
+<div class="codehilite"><pre><span class="p">@</span><span class="n">base</span> <span class="o">&lt;</span><span class="n">workflow</span><span class="o">/</span><span class="n">Helloworld</span><span class="o">&gt;</span> <span class="p">.</span>
+<span class="p">@</span><span class="n">prefix</span> <span class="n">scufl2</span><span class="p">:</span> <span class="o">&lt;</span><span class="n">http</span><span class="p">:</span><span class="o">//</span><span class="n">ns</span><span class="p">.</span><span class="n">taverna</span><span class="p">.</span><span class="n">org</span><span class="p">.</span><span class="n">uk</span><span class="o">/</span>2010<span class="o">/</span><span class="n">scufl2</span><span class="o">/</span><span class="n">ontology</span><span class="o">/&gt;</span> <span class="p">.</span>
+<span class="p">@</span><span class="n">prefix</span> <span class="n">dc</span><span class="p">:</span> <span class="o">&lt;</span><span class="n">http</span><span class="p">:</span><span class="o">//</span><span class="n">purl</span><span class="p">.</span><span class="n">org</span><span class="o">/</span><span class="n">dc</span><span class="o">/</span><span class="n">elements</span><span class="o">/</span>1<span class="p">.</span>1<span class="o">/&gt;</span> <span class="p">.</span>
+
+<span class="o">&lt;&gt;</span>
+    <span class="n">a</span> <span class="n">scufl2</span><span class="p">:</span><span class="n">Workflow</span> <span class="p">;</span>
+    <span class="n">scufl2</span><span class="p">:</span><span class="n">name</span> &quot;<span class="n">Helloworld</span>&quot; <span class="p">;</span>
+    <span class="n">scufl2</span><span class="p">:</span><span class="n">workflowIdentifier</span> <span class="o">&lt;</span><span class="n">http</span><span class="p">:</span><span class="o">//</span><span class="n">ns</span><span class="p">.</span><span class="n">taverna</span><span class="p">.</span><span class="n">org</span><span class="p">.</span><span class="n">uk</span><span class="o">/</span>2010<span class="o">/</span><span class="n">workflow</span><span class="o">/</span>00626652<span class="o">-</span>55<span class="n">ae</span><span class="o">-</span>4<span class="n">a9e</span><span class="o">-</span>80<span class="n">d4</span><span class="o">-</span><span class="n">c8e9ac84e2ca</span><span class="o">/&gt;</span> <span class="p">;</span>
+    <span class="n">scufl2</span><span class="p">:</span><span class="n">inputWorkflowPort</span> <span class="o">&lt;</span><span class="n">in</span><span class="o">/</span><span class="n">yourName</span><span class="o">&gt;</span> <span class="p">;</span>
+    <span class="n">scufl2</span><span class="p">:</span><span class="n">outputWorkflowPort</span> <span class="o">&lt;</span><span class="n">out</span><span class="o">/</span><span class="n">results</span><span class="o">&gt;</span> <span class="p">;</span>
+    <span class="n">scufl2</span><span class="p">:</span><span class="n">datalink</span> <span class="n">_</span><span class="p">:</span><span class="n">datalink1</span><span class="p">,</span> <span class="o">&lt;</span><span class="n">datalink</span><span class="o">/</span>5<span class="o">&gt;</span><span class="p">,</span> <span class="o">&lt;</span><span class="n">datalink</span>?<span class="n">from</span><span class="p">=</span><span class="n">processor</span><span class="o">/</span><span class="n">Hello</span><span class="o">/</span><span class="n">out</span><span class="o">/</span><span class="n">greeting</span><span class="o">&amp;</span><span class="n">to</span><span class="p">=</span><span class="n">out</span><span class="o">/</span><span class="n">results</span><span class="o">&amp;</span><span class="n">mergePosition</span><span class="p">=</span>0<span class="o">&gt;</span> <span class="p">;</span>
+    <span class="n">scufl2</span><span class="p">:</span><span class="n">processor</span> <span class="o">&lt;</span><span class="n">processor</span><span class="o">/</span><span class="n">Hello</span><span class="o">&gt;</span> <span class="p">.</span>
+
+<span class="o">&lt;</span><span class="n">in</span><span class="o">/</span><span class="n">yourName</span><span class="o">&gt;</span> <span class="n">a</span> <span class="n">scufl2</span><span class="p">:</span><span class="n">InputWorkflowPort</span> <span class="p">;</span>
+    <span class="n">scufl2</span><span class="p">:</span><span class="n">name</span> &quot;<span class="n">yourName</span>&quot; <span class="p">;</span>
+    <span class="n">scufl2</span><span class="p">:</span><span class="n">portDepth</span> 0 <span class="p">.</span>
+
+<span class="o">&lt;</span><span class="n">out</span><span class="o">/</span><span class="n">results</span><span class="o">&gt;</span> <span class="n">a</span> <span class="n">scufl2</span><span class="p">:</span><span class="n">OutputWorkflowPort</span> <span class="p">;</span>
+    <span class="n">scufl2</span><span class="p">:</span><span class="n">name</span> &quot;<span class="n">results</span>&quot; <span class="p">.</span>
+
+<span class="n">_</span><span class="p">:</span><span class="n">datalink1</span> <span class="n">a</span> <span class="n">scufl2</span><span class="p">:</span><span class="n">DataLink</span> <span class="p">;</span>
+    <span class="n">scufl2</span><span class="p">:</span><span class="n">receivesFrom</span> <span class="o">&lt;</span><span class="n">in</span><span class="o">/</span><span class="n">yourName</span><span class="o">&gt;</span> <span class="p">;</span>
+    <span class="n">scufl2</span><span class="p">:</span><span class="n">sendsTo</span> <span class="o">&lt;</span><span class="n">processor</span><span class="o">/</span><span class="n">Hello</span><span class="o">/</span><span class="n">in</span><span class="o">/</span><span class="n">name</span><span class="o">&gt;</span> <span class="p">.</span>
+
+<span class="o">&lt;</span><span class="n">datalink</span><span class="o">/</span>5<span class="o">&gt;</span> <span class="n">a</span> <span class="n">scufl2</span><span class="p">:</span><span class="n">DataLink</span> <span class="p">;</span>
+    <span class="n">scufl2</span><span class="p">:</span><span class="n">receivesFrom</span> <span class="o">&lt;</span><span class="n">in</span><span class="o">/</span><span class="n">yourName</span><span class="o">&gt;</span> <span class="p">;</span>
+    <span class="n">scufl2</span><span class="p">:</span><span class="n">sendsTo</span> <span class="o">&lt;</span><span class="n">out</span><span class="o">/</span><span class="n">results</span><span class="o">&gt;</span> <span class="p">;</span>
+    <span class="n">scufl2</span><span class="p">:</span><span class="n">mergePosition</span> 1 <span class="p">.</span>
+
+<span class="o">&lt;</span><span class="n">datalink</span>?<span class="n">from</span><span class="p">=</span><span class="n">processor</span><span class="o">/</span><span class="n">Hello</span><span class="o">/</span><span class="n">out</span><span class="o">/</span><span class="n">greeting</span><span class="o">&amp;</span><span class="n">to</span><span class="p">=</span><span class="n">out</span><span class="o">/</span><span class="n">results</span><span class="o">&amp;</span><span class="n">mergePosition</span><span class="p">=</span>0<span class="o">&gt;</span> <span class="n">a</span> <span class="n">scufl2</span><span class="p">:</span><span class="n">DataLink</span> <span class="p">;</span>
+    <span class="n">scufl2</span><span class="p">:</span><span class="n">receivesFrom</span> <span class="o">&lt;</span><span class="n">processor</span><span class="o">/</span><span class="n">Hello</span><span class="o">/</span><span class="n">out</span><span class="o">/</span><span class="n">greeting</span><span class="o">&gt;</span> <span class="p">;</span>
+    <span class="n">scufl2</span><span class="p">:</span><span class="n">sendsTo</span> <span class="o">&lt;</span><span class="n">out</span><span class="o">/</span><span class="n">results</span><span class="o">&gt;</span> <span class="p">;</span>
+    <span class="n">scufl2</span><span class="p">:</span><span class="n">mergePosition</span> 0 <span class="p">.</span>
+</pre></div>
+
+
+<p>This example defines three datalinks.</p>
+<p>The first link <code>_:datalink1</code> is just an anonymous node without an identifier. It defines a data link from the input port "yourName" to the processor input port "name". This link could also have been written embedded with the workflow:</p>
+<div class="codehilite"><pre><span class="o">&lt;&gt;</span> <span class="n">a</span> <span class="n">scufl2</span><span class="p">:</span><span class="n">Workflow</span> <span class="p">;</span>
+  <span class="p">...</span>
+    <span class="n">scufl2</span><span class="p">:</span><span class="n">datalink</span> <span class="p">[</span>
+        <span class="n">scufl2</span><span class="p">:</span><span class="n">receivesFrom</span> <span class="o">&lt;</span><span class="n">in</span><span class="o">/</span><span class="n">yourName</span><span class="o">&gt;</span> <span class="p">;</span>
+        <span class="n">scufl2</span><span class="p">:</span><span class="n">sendsTo</span> <span class="o">&lt;</span><span class="n">processor</span><span class="o">/</span><span class="n">Hello</span><span class="o">/</span><span class="n">in</span><span class="o">/</span><span class="n">name</span><span class="o">&gt;</span>
+    <span class="p">]</span> <span class="p">.</span>
+</pre></div>
+
+
+<p>The second datalink <code>&lt;datalink/5&gt;&gt;</code> defines a link directly from the workflow input port "yourName" to the output port "results".
+Links must go from a scufl2:SendingPort sending to a scufl2:ReceivingPort, 
+   meaning from a workflow input port or processor output port, going to either a workflow output port or processor input port. 
+Several links can receive from the same sending port.
+    Merges</p>
+<blockquote>
+<p>Merges is a way Taverna allows you to connect several links to the
+same scufl2:ReceivingPort, that is to a processor input port or
+workflow output port. When executing, values from each link will be
+inserted into the specified scufl2:mergePosition in a new list.</p>
+<p>You only need to specify scufl2:mergePosition if more than one link is
+connected to the same processor input port or workflow output port. If
+there is more than one link connected to the same receiving port, all
+of them need to specify a unique mergePosition, starting from 0, with
+no gaps. If you specify a single link to the port with a mergePosition
+of 0, that port input would still be wrapped in a list.</p>
+</blockquote>
+<p>The third datalink, specified using the 'full' URI <code>&lt;datalink?from=processor/Hello/out/greeting&amp;to=out/results&amp;mergePosition=0&gt;</code>,
+  defines the link from the output port "out" in processor "Hello", linking to the workflow output port "results". 
+As now two links go to that receiving port, they both need to specify a unique mergePosition. 
+The second link specifies position 1, and the third position 0. 
+That means that the output port will receive a list Scufl2-DataLink. 
+The second element 'yourName' would arrive first (as it is sent before "Hello" produces "greeting"), 
+   but it would be arriving in position 1 rather than 0.</p>
+<blockquote>
+<p>URI templates not enough</p>
+<p>The full URIs such as
+<a href="http://ns.taverna.org.uk/2010/researchObject/28f7c554-4f35-401f-b34b-516e9a0ef731/workflow/HelloWorld/datalink?from=processor/A/out/result&amp;to=processor/B/in/db">http://ns.taverna.org.uk/2010/researchObject/28f7c554-4f35-401f-b34b-516e9a0ef731/workflow/HelloWorld/datalink?from=processor/A/out/result&amp;to=processor/B/in/db</a>
+are meant to be helpful, not defining. The workflow definitions should
+be complete without having to be parse these URIs. Such URIs are
+however useful to be able to annotate or talk about workflow elements
+outside of the workflow definition.</p>
+<p>Although a resource is specified using a full URI which uniquely
+identifies it, such as in the datalink above, the resource must still
+be defined, such as the datalink must define the properties
+scufl2:receivesFrom, scufl2:sendsTo (and optionally)
+scufl2:mergePosition. Similarly the input port <in/yourName> must
+still be defined with a scufl2:name "yourName".</p>
+</blockquote>
+<p>The nested resources for this workflow, such as InputProcessorPort ,
+OutputProcessorPort, DispatchStack, IterationStrategyStack and their
+children should be described in the same file as owning workflow
+itself. Additional metadata should be added to an /annotations/ file.</p>
+<h2 id="properties">Properties</h2>
+<ul>
+<li><em>scufl2:receivesFrom</em> (required) The <em>scufl2:SendingPort</em> this link is receiving data from. 
+   The port must be in the same workflow as the link.</li>
+<li><em>scufl2:sendsTo</em> (required) The <em>scufl2:ReceivingPort</em> this link is sending data to. 
+   The port must be in the same workflow as the link.</li>
+<li><em>scufl2:mergePosition</em> (optional) An integer, starting from 0. 
+   Must be set where more than one datalinks <em>sendsTo</em> the same ReceivingPort. 
+   The positions for a port must be sequentially assigned from 0 without gaps.</li>
+</ul></div>
+
+    </div>
+
+        <footer class="footer">
+      <div class="container">
+           <p id="copyright" class="text-muted">
+              Copyright &#169; 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/scufl2/index.html
==============================================================================
--- websites/staging/taverna/trunk/content/documentation/scufl2/index.html (original)
+++ websites/staging/taverna/trunk/content/documentation/scufl2/index.html Wed Mar 11 08:49:34 2015
@@ -104,3 +104,153 @@
 					  <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>SCUFL2 Taverna Language</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>SCUFL2 is the new (since Taverna 3) mechanism for specifying Taverna workflows. 
+SCUFL2 defines a model, a workflow bundle file format (.wfbundle), and a Java API for working with workflow structures. 
+SCUFL2 is the workflow language for Taverna 3, and replaces Taverna 2's t2flow format.</p>
+<h2 id="summary">Summary</h2>
+<p>SCUFL2 is the Taverna 3 mechanism for specifying Taverna workflows. 
+SCUFL2 adopts Linked Data technology and preservation methodologies to create a platform-independent workflow language 
+   that can be inspected, modified, created and executed.</p>
+<p>SCUFL2 comes with a <a href="/documentation/scufl2/api">Java API</a> that can be used for programmatic access to read and write SCUFL2 
+   <a href="/documentation/scufl2/bundle">workflow bundles</a>. 
+A workflow bundle is a structured ZIP file with the workflow definitions included as XML documents. 
+Those workflow documents are described by an XML Schema and are also valid RDF/XML. 
+The XML Schema allows tools to read and write SCUFL2 workflow definitions as regular structured XML. 
+The RDF allows RDF-enabled tools to link workflow definitions with external resources.</p>
+<p>The workflow structure is defined using an <a href="/documentation/scufl2/ontology">OWL ontology</a>
+   and annotated with URIs so that third parties can form semantic statements about any component of a Scufl2 workflow, 
+   for example to state that a particular service produces outputs of a certain type, 
+   or that a data link was added by a specific researcher.</p>
+<p>Semantic annotations and a manifest for the bundle declare the purpose of, 
+   and links between the different components forming a workflow. 
+This allows third parties to extract and append annotations about data and services used by the workflow.</p>
+<h2 id="motivation">Motivation</h2>
+<p>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 <em>XMLBeans</em>. 
+As the t2flow format is very verbose, it can be difficult to deal with for third party software to do 
+   <strong>inspection</strong> ("Which services does this workflow use?"), <strong>modification</strong> 
+   ("Change all calls to <em>broken.com</em> to <em>fixed.com</em>") and <strong>generation</strong> 
+   ("Build a custom workflow from a button").</p>
+<p>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.</p>
+<p>We have therefore decided to form a new serialisation format for workflows, called <strong>SCUFL2</strong>.</p>
+<h2 id="overview">Overview</h2>
+<p>SCUFL2 consists of:</p>
+<ul>
+<li><a href="/documentation/scufl2/language">SCUFL2 language</a></li>
+<li>SCUFL2 <a href="/documentation/scufl2/bundle">Workflow Bundle</a> format</li>
+<li><a href="/documentation/scufl2/api">SCUFL2 API</a> for Java</li>
+</ul></div>
+
+    </div>
+
+        <footer class="footer">
+      <div class="container">
+           <p id="copyright" class="text-muted">
+              Copyright &#169; 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