<?xml version="1.0"?>
<!--

 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
 "License"); 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
 "AS IS" 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.

-->

<rdf:RDF xmlns="http://ns.taverna.org.uk/2010/scufl2#"
	xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#"
	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	xsi:schemaLocation="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"
	xsi:type="WorkflowBundleDocument" xml:base="./">
	<WorkflowBundle rdf:about="">
		<name>HelloWorld</name>
		<globalBaseURI
			rdf:resource="http://ns.taverna.org.uk/2010/workflowBundle/28f7c554-4f35-401f-b34b-516e9a0ef731/" />		
		<mainWorkflow rdf:resource="workflow/HelloWorld/" />
		<workflow>
			<Workflow rdf:about="workflow/HelloWorld/">
				<rdfs:seeAlso rdf:resource="workflow/HelloWorld.rdf" />
			</Workflow>
		</workflow>
		<!--
		<workflow>
			<Workflow rdf:about="workflow/SomeNestedWorkflow/">
				<rdfs:seeAlso rdf:resource="workflow/SomeNestedWorkflow.rdf" />
			</Workflow>
		</workflow>
		-->
		<mainProfile rdf:resource="profile/tavernaWorkbench/" />
		<profile>
			<Profile rdf:about="profile/tavernaServer/">
				<rdfs:seeAlso rdf:resource="profile/tavernaServer.rdf" />
			</Profile>
		</profile>
		<profile>
			<Profile rdf:about="profile/tavernaWorkbench/">
				<rdfs:seeAlso rdf:resource="profile/tavernaWorkbench.rdf" />
			</Profile>
		</profile>
		<rdfs:seeAlso rdf:resource="annotation/workflowBundle.rdf" />
	</WorkflowBundle>

</rdf:RDF>
