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/10 18:39:27 UTC

svn commit: r943216 - in /websites/staging/taverna/trunk: cgi-bin/ content/ content/documentation/scufl2/bundle.html

Author: buildbot
Date: Tue Mar 10 17:39:27 2015
New Revision: 943216

Log:
Staging update by buildbot for taverna

Added:
    websites/staging/taverna/trunk/content/documentation/scufl2/bundle.html
Modified:
    websites/staging/taverna/trunk/cgi-bin/   (props changed)
    websites/staging/taverna/trunk/content/   (props changed)

Propchange: websites/staging/taverna/trunk/cgi-bin/
------------------------------------------------------------------------------
--- cms:source-revision (original)
+++ cms:source-revision Tue Mar 10 17:39:27 2015
@@ -1 +1 @@
-1665490
+1665631

Propchange: websites/staging/taverna/trunk/content/
------------------------------------------------------------------------------
--- cms:source-revision (original)
+++ cms:source-revision Tue Mar 10 17:39:27 2015
@@ -1 +1 @@
-1665490
+1665631

Added: websites/staging/taverna/trunk/content/documentation/scufl2/bundle.html
==============================================================================
--- websites/staging/taverna/trunk/content/documentation/scufl2/bundle.html (added)
+++ websites/staging/taverna/trunk/content/documentation/scufl2/bundle.html Tue Mar 10 17:39:27 2015
@@ -0,0 +1,492 @@
+<!DOCTYPE html>
+<html lang="en">
+      <head>
+    <meta charset="utf-8">
+    <meta http-equiv="X-UA-Compatible" content="IE=edge">	  
+    <meta name="viewport" content="width=device-width, initial-scale=1">      
+    <title>Apache Taverna - Scufl2-WorkflowBundle</title>
+
+    <meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
+    <meta property="og:image" content="/img/taverna-logo-145x134.png" />
+
+	<link rel="shortcut icon" href="/favicon.ico">
+	<link rel="icon" type="image/png" sizes="145x134" href="/img/taverna-logo-145x134.png">
+	<link rel="apple-touch-icon" sizes="145x134" href="/img/taverna-logo-145x134.png">
+
+    <link rel="stylesheet" href="/lib/bootstrap/css/bootstrap.min.css">
+    <link rel="stylesheet" href="/lib/bootstrap/css/bootstrap-theme.min.css">
+    <link rel="stylesheet" href="/css/sticky-footer-navbar.css">
+    <link rel="stylesheet" href="/css/taverna.css">
+    <link rel="stylesheet" href="/css/pygments.css">
+
+    
+
+    
+    <!-- Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements.  See the NOTICE file distributed with this work for additional information regarding copyright ownership.  The ASF licenses this file to you under the Apache License, Version 2.0 (the &quot;License&quot;); you may not use this file except in compliance with the License.  You may obtain a copy of the License at . http://www.apache.org/licenses/LICENSE-2.0 . Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an &quot;AS IS&quot; BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.  See the License for the specific language governing permissions and limitations under the License. -->
+
+    <!-- JSON-LD markup for Google Structured Data -->
+	
+	  <!-- generic JSON-LD for this page -->
+	  <script type="application/ld+json">  
+		{
+			"@context" : "http://schema.org",
+			"@type" : ["CreativeWork"],
+			"@id": "",
+			"name" : "Scufl2-WorkflowBundle",
+			"publisher" : {
+				"@type" : "Organization", 
+				"url" : "http://www.apache.org/",
+				"name" : "The Apache Software Foundation (ASF)" 
+			},
+			"license": { 
+				"@type": "CreativeWork",
+				"@id": "http://www.apache.org/licenses/LICENSE-2.0",
+				"url": "http://www.apache.org/licenses/LICENSE-2.0",
+				"name": "Apache License, Version 2.0"
+			}
+		}		
+</script>
+	  
+  </head>
+
+
+  <body>
+
+              <!-- Static navbar -->
+      <nav class="navbar navbar-default" role="navigation">
+        <div class="container">
+          <div class="navbar-header">
+            <button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#navbar" aria-expanded="false" aria-controls="navbar">
+              <span class="sr-only">Toggle navigation</span>
+              <span class="icon-bar"></span>
+              <span class="icon-bar"></span>
+              <span class="icon-bar"></span>
+            </button>
+			<a class="navbar-brand" href="/"><img src="/img/taverna-logo-145x134.png" alt="">Apache Taverna</a>
+			  
+          </div>
+          <div id="navbar" class="navbar-collapse collapse">
+            <ul class="nav navbar-nav">              
+                <li class="dropdown">
+					<a href="/introduction" data-toggle="dropdown" role="button" aria-expanded="false">Introduction<span class="caret"></span></a>
+					<ul class="dropdown-menu"  role="menu">
+					   <li><a href="/introduction/taverna-features">Taverna features</a></li>
+					   <li><a href="/introduction/why-use-workflows">Why use workflows?</a></li>
+					   <li><a href="/introduction/what-is-in-silico-experimentation">What is ‘in silico’ experimentation?</a></li>
+					   <li><a href="/introduction/what-is-a-workflow-management-system">What is a Workflow Management System?</a></li>
+					   <li><a href="/introduction/how-can-taverna-help-me">How can Taverna help me?</a></li>
+					   <li><a href="/introduction/services-in-taverna">Services in Taverna</a></li>
+					   <li><a href="/introduction/related-projects">Related projects</a></li>
+					   <li><a href="/introduction/chemistry-web-services">Chemistry-web-services</a></li>
+                       <li><a href="/introduction/taverna-in-use">Taverna in use</a></li>
+				       <li><a href="/introduction/works-with">Works with...</a></li>
+                       <li><a href="/introduction/roadmap">Raod Map</a></li>						
+					</ul>
+				</li>
+                <li class="dropdown">
+					<a href="/documentation" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-expanded="false">Documentation<span class="caret"></span></a>
+                  <ul class="dropdown-menu" role="menu">
+					  <li><a href="/documentation/glossary">Glossary</a></li>
+					  <li><a href="/documentation/quick-start-guide">Quick start guide</a></li>
+					  <li><a href="/documentation/components">Components</a></li>
+					  <li><a href="/documentation/interaction">Interactions</a></li>
+					  <li><a href="/documentation/tutorials">Tutorials</a></li>
+					  <li><a href="/documentation/videos">Videos</a></li>
+					  <li><a href="/documentation/example-workflows">Example workflows</a></li>
+					  <li><a href="/documentation/service-sets">Service sets</a></li>
+					  <li><a href="/documentation/provenance">Provenance management</a></li>
+					  <li><a href="/documentation/command-line">command-line</a></li>
+					  <li><a href="/documentation/server">Taverna Server</a></li>
+					  <li><a href="/documentation/taverna-player">Taverna Player</a></li>
+					  <li><a href="/documentation/plugins">Plugins</a></li>
+					  <li><a href="/documentation/training-and-workshops">Training and workshops</a></li>
+					  <li><a href="/documentation/web-service-developers">Web service developers</a></li>
+					  <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/lists">Mailing Lists</a></li>
+					  <li><a href="/community/irc">IRC chat</a></li>
+					  <li><a href="/community#contribute">Contribute</a></li>
+					  <li><a href="/community#reportbugs">Report a Bug</a></li>
+					  <li><a href="/community/edit">Edit website</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