<?xml version='1.0'?>
<!DOCTYPE art SYSTEM 'http://www.biomedcentral.com/xml/article.dtd'>
<art>
	<ui>1471-2105-8-S1-S2</ui>
	<ji>1471-2105</ji>
	<fm>
		<dochead>Research</dochead>
		<bibl>
			<title>
				<p>BioWMS: a web-based Workflow Management System for bioinformatics</p>
			</title>
			<aug>
				<au id="A1" ca="yes">
					<snm>Bartocci</snm>
					<fnm>Ezio</fnm>
					<insr iid="I1"/>
					<email>ezio.bartocci@unicam.it</email>
				</au>
				<au id="A2">
					<snm>Corradini</snm>
					<fnm>Flavio</fnm>
					<insr iid="I1"/>
					<email>flavio.corradini@unicam.it</email>
				</au>
				<au id="A3">
					<snm>Merelli</snm>
					<fnm>Emanuela</fnm>
					<insr iid="I1"/>
					<email>emanuela.merelli@unicam.it</email>
				</au>
				<au id="A4">
					<snm>Scortichini</snm>
					<fnm>Lorenzo</fnm>
					<insr iid="I1"/>
					<email>lorenzo.scortichini@unicam.it</email>
				</au>
			</aug>
			<insg>
				<ins id="I1">
					<p>Dipartimento di Matematica e Informatica, Universit&#224; di Camerino, Via Madonna delle Carceri n.9, Camerino(MC), I-62032, Italy</p>
				</ins>
			</insg>
			<source>BMC Bioinformatics</source>
			<supplement>
				<title>
					<p>Italian Society of Bioinformatics (BITS): Annual Meeting 2006</p>
				</title>
				<editor>Rita Casadio, Manuela Helmer-Citterich, Graziano Pesole</editor>
				<note>Research</note>
			</supplement>
			<conference>
				<title>
					<p>Italian Society of Bioinformatics (BITS): Annual Meeting 2006</p>
				</title>
				<location>Bologna, Italy</location>
				<date-range>28&#8211;29 April, 2006</date-range>
				<url>http://www.biocomp.unibo.it/bits2006/</url>
			</conference>
			<issn>1471-2105</issn>
			<pubdate>2007</pubdate>
			<volume>8</volume>
			<issue>Suppl 1</issue>
			<fpage>S2</fpage>
			<url>http://www.biomedcentral.com/1471-2105/8/S1/S2</url>
			<xrefbib>
				<pubidlist><pubid idtype="pmpid">17430564</pubid><pubid idtype="doi">10.1186/1471-2105-8-S1-S2</pubid>
				</pubidlist></xrefbib>
		</bibl>
		<history>
			<pub>
				<date>
					<day>8</day>
					<month>3</month>
					<year>2007</year>
				</date>
			</pub>
		</history>
		<cpyrt>
			<year>2007</year>
			<collab>Bartocci et al; licensee BioMed Central Ltd.</collab>
			<note>This is an open access article distributed under the terms of the Creative Commons Attribution License (<url>http://creativecommons.org/licenses/by/2.0</url>), which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.</note>
		</cpyrt>
		<abs>
			<sec>
				<st>
					<p>Abstract</p>
				</st>
				<sec>
					<st>
						<p>Background</p>
					</st>
					<p>An in-silico experiment can be naturally specified as a workflow of activities implementing, in a standardized environment, the process of data and control analysis. A workflow has the advantage to be reproducible, traceable and compositional by reusing other workflows. In order to support the daily work of a bioscientist, several Workflow Management Systems (WMSs) have been proposed in bioinformatics. Generally, these systems centralize the workflow enactment and do not exploit standard process definition languages to describe, in order to be reusable, workflows. While almost all WMSs require heavy stand-alone applications to specify new workflows, only few of them provide a web-based process definition tool.</p>
				</sec>
				<sec>
					<st>
						<p>Results</p>
					</st>
					<p>We have developed BioWMS, a Workflow Management System that supports, through a web-based interface, the definition, the execution and the results management of an in-silico experiment. BioWMS has been implemented over an agent-based middleware. It dynamically generates, from a user workflow specification, a domain-specific, agent-based workflow engine. Our approach exploits the proactiveness and mobility of the agent-based technology to embed, inside agents behaviour, the application domain features. Agents are workflow executors and the resulting workflow engine is a multiagent system &#8211; a distributed, concurrent system &#8211; typically open, flexible, and adaptative. A demo is available at <url>http://litbio.unicam.it:8080/biowms</url>.</p>
				</sec>
				<sec>
					<st>
						<p>Conclusion</p>
					</st>
					<p>BioWMS, supported by Hermes mobile computing middleware, guarantees the flexibility, scalability and fault tolerance required to a workflow enactment over distributed and heterogeneous environment. BioWMS is funded by the FIRB project LITBIO (Laboratory for Interdisciplinary Technologies in Bioinformatics).</p>
				</sec>
			</sec>
		</abs>
	</fm>
	<bdy>
		<sec>
			<st>
				<p>Background</p>
			</st>
			<p>Over the past few years, new high-throughput methods for data collection in life science have greatly increased data generation. Parallel to the rise of biological databases, many bioinformatics tools, to query and analyze biological data, have been made available. As consequence, the traditional scientific process has become computationally intensive and in-silico experiments &#8211; described as processes of activities to test hypotheses, derive a summary and search for patterns <abbrgrp><abbr bid="B1">1</abbr></abbrgrp> &#8211; are labouriously executed in a large, distributed and dynamic environment.</p>
			<p>Since the execution of an in-silico experiment may simultaneously demand data integration from several application domains (e.g. biology, biochemistry, oncology), tool integration &#8211; analysis techniques (e.g. data mining and text mining) computational methods often offered as services that are dynamically updated, added or removed <abbrgrp><abbr bid="B2">2</abbr></abbrgrp> &#8211;, it can be naturally specified as workflows of activities that implement data and control analysis processes in standardized but dynamic environments. The workflow has the advantage to be reproducible, traceable and to reuse intermediate results; fundamental features to validate a scientific experiment.</p>
			<p>The software component that "defines, manages and executes workflows through the execution of software whose order of execution is driven by a computer representation of the workflow logic", according to Workflow Management Coalition (WfMC) Reference Model <abbrgrp><abbr bid="B3">3</abbr></abbrgrp>, is named Workflow Management System (WMS). In bioinformatics, several WMSs-like <abbrgrp><abbr bid="B4">4</abbr><abbr bid="B5">5</abbr><abbr bid="B6">6</abbr><abbr bid="B7">7</abbr></abbrgrp> have been already developed and adopted to support the daily work of a bioscientist.</p>
			<p>Taverna <abbrgrp><abbr bid="B4">4</abbr></abbrgrp> &#8211; a part of MyGrid project <abbrgrp><abbr bid="B8">8</abbr></abbrgrp> &#8211; has mainly the aim to integrate Web Services by workflows specified in a choreography language: <it>XML Simple conceptual unified flow language </it>(XScufl). Being Taverna editor embedded with its engine in a Java stand-alone application, it is quite heavy, for an end-user, to download it.</p>
			<p>Biopipe <abbrgrp><abbr bid="B5">5</abbr></abbrgrp> framework, instead, provides a set of wrappers to directly interface resources like executable programs and data adaptors. It does not support the use of synchronization operators, like fork and join, because a bioinformatics experiment is considered just a sequential pipeline.</p>
			<p>Wildfire <abbrgrp><abbr bid="B7">7</abbr></abbrgrp> is another WMS that provides an integrated environment for the construction and execution of workflows based only on Jemboss <abbrgrp><abbr bid="B9">9</abbr></abbrgrp> applications.</p>
			<p>Pegasys <abbrgrp><abbr bid="B6">6</abbr></abbrgrp> system enables bioscientists to create and manage sequence analysis workflows. It includes numerous analytical tools and provides database capacities to maximize information captured during the execution of a workflow.</p>
			<p>All the above mentioned WMSs describe, often with different expressive power, an in-silico experiment without using standard workflow specification languages. Only recently, Garcia, in <abbrgrp><abbr bid="B10">10</abbr></abbrgrp>, has proposed a meta-analysis of syntactic components and algebraic operators capable of representing analytical workflows in bioinformatics. Remarkable are also standard process definition languages &#8211; i.e XPDL <abbrgrp><abbr bid="B11">11</abbr></abbrgrp>, BPEL <abbrgrp><abbr bid="B12">12</abbr></abbrgrp> &#8211; are well-studied from the <it>control-flow </it>perspective; they allow to describe activities and their execution ordering through different constructs as <it>sequence</it>, <it>choice</it>, <it>parallelism</it>, <it>join synchronization</it>, etc.. Standard languages are also equipped of several tools to graphically edit workflow specifications, characteristic that is useful for a user not expert in programming.</p>
			<p>Another significant feature that characterizes most of WMSs is their client/server architectural style, in which the workflow enactment is entrusted to a central component, that acts as a server and is responsible for the correct workflow execution. A monolithic architecture, as that of above mentioned WMSs, does not allow the execution of workflow, or parts of it, over a distributed and heterogeneous environments due to lack of flexibility, scalability and fault tolerance, features required for a distributed cross-organizational workflow.</p>
			<p>An attempt to overcome these limitations, has been proposed by Cichocki in <abbrgrp><abbr bid="B13">13</abbr></abbrgrp> in the Migrating Workflow Model (MWM). In this model, instances of a workflow or parts of it can migrate among sites participating in the workflow execution; it means, the code and the whole execution state, including all data gathered during the execution, might be transferred to another site. This model provides two main benefits: the first regards the migrating workflow with respect to the decrease of traffic network; often it is less heavy to transfer the code implementing workflow specification than the amount of data needed during its execution. The second asset concerns the possibility for the workflow to be executed even in mobile and weekly connected network of devices. But, the MWM requires a suitable middleware that guarantees code mobility support.</p>
			<p>In this paper, we present BioWMS, a Workflow Management System which, from the one hand, provides a web-based user interface for the definition, the execution and the results management of an in-silico experiment and from the other, it exploits the agent-oriented technology to implement a Migrating Workflow Model. BioWMS dynamically generates the workflow engine associated with a single user workflow specification. The agent-based technology allows to embed application domain features inside the agents knowledge and proactiveness and mobility inside the agent behaviour. The resulting workflow engine is a multiagent system &#8211; a distributed, concurrent system &#8211; typically open, flexible, adaptive and mobile.</p>
		</sec>
		<sec>
			<st>
				<p>Results and Discussion</p>
			</st>
			<p>The Workflow Management Coalition (WfMC) defines a WMS as a "system that defines, creates and manages the execution of workflows through the use of software, running on one or more workflow engines, which is able to interpret the process definition, interact with workflow participants and, where required, invoke the use of IT tools and applications" <abbrgrp><abbr bid="B3">3</abbr></abbrgrp>. According to this definition we have developed BioWMS as an automated framework to define, create and manage the execution of an in-silico experiment defined as a workflow of user domain activities. Figure <figr fid="F1">1</figr> shows BioWMS according to the Workflow Reference Model introduced by the WfMC in <abbrgrp><abbr bid="B3">3</abbr></abbrgrp>.</p>
			<fig id="F1">
				<title>
					<p>Figure 1</p>
				</title>
				<caption>
					<p>BioWMS according to WfMC reference model</p>
				</caption>
				<text>
					<p><b>BioWMS according to WfMC reference model</b>. The WfMC Reference Model specifies a framework for workflow systems, identifying their characteristics, functions and interfaces.</p>
				</text>
				<graphic file="1471-2105-8-S1-S2-1"/>
			</fig>
			<p><it>Process definition tools </it>are used to create the process description of a workflow in a computer processable form. The workflow editor is the program that supports the workflow specification by composing activities in a graphical environment. BioWMS provides a web-based editor, called WebWFlow, that enables the definifion of a workflow in the XML Process Definition Language (XPDL) <abbrgrp><abbr bid="B11">11</abbr></abbrgrp>, a WfMC standard. As a consequence, the workflow specification can be edited also by other applications compliant to this standard as for example the JaWE <abbrgrp><abbr bid="B14">14</abbr></abbrgrp> editor.</p>
			<p><it>Workflow client applications </it>are used to execute existing or previous saved workflows, to check the workflow execution state and to manage the produced results. WebWFlow, the web-based editor of BioWMS, provides also these facilities. Another workflow client application developed for BioWMS is BioWEP <abbrgrp><abbr bid="B15">15</abbr></abbrgrp>, a web portal suitable for the ontology-based selection and enactment of predefined and annotated workflows.</p>
			<p>The <it>workflow enactment service </it>provides the run-time environment in which process instantiation and activation occur, utilising one or more workflow management engines, responsible for interpreting and activating part, or all, of the process definition and interacting with the external resources -<it>invoked applications</it>- necessary to process the various activities. The workflow enactment in BioWMS is supported by the Hermes <abbrgrp><abbr bid="B16">16</abbr></abbrgrp> agent-based middleware. The XpdlCompiler is an Hermes special component that generates a mobile multiagent system &#8211; workflow executors &#8211; from the user workflow specification. The workflow specification is the coordination model that describes how the generated agents cooperate with each other to reach a particular goal. The middleware provides the necessary software infrastructure that allows the migration of the workflow executors to different sites transparently to users.</p>
			<p>The Hermes Graphical User Interface (GUI) is an <it>administration and monitoring tool </it>that allows checking, at any time, of the computational resources available, the memory consumption and the agents that are running.</p>
			<sec>
				<st>
					<p>An example of workflow in BioWMS</p>
				</st>
				<p>In this section we provide an example of workflow in BioWMS. The goal is to obtain a global alignment of the Arthrobacter koreensis partial 16S rRNA gene sequence [GI:70663476] with the first three best hits of a BLAST <abbrgrp><abbr bid="B17">17</abbr></abbrgrp> alignment in the DDBJ <abbrgrp><abbr bid="B18">18</abbr></abbrgrp> database. Figure <figr fid="F2">2</figr> shows how the workflow appears in BioWMS. BioWMS provides a repository of user domain activities that can be customizable by configuring properly their parameters. As first activity we choose one that receives as parameters a sequence and other blast parameters and gets the best hits using the BLAST alignment. If an exception is thrown during the execution of this activity we want to notify the error to BioWMS &#8211; activity 2 &#8211; to handle the errors &#8211; activity 3 &#8211; and to proceed in the workflow execution, else we retrieve concurrently &#8211; activities 4,5 and 6 &#8211; the sequences of the three best hits obtained. At the end of all of these three activities we want to join the sequences and store them &#8211; activity 7 &#8211; into BioWMS in a FASTA <abbrgrp><abbr bid="B19">19</abbr></abbrgrp> representation.</p>
				<fig id="F2">
					<title>
						<p>Figure 2</p>
					</title>
					<caption>
						<p>Example of a workflow in BioWMS</p>
					</caption>
					<text>
						<p><b>Example of a workflow in BioWMS</b>. Screenshot of a workflow example in BioWMS. The goal is to obtain a global alignment of the Arthrobacter koreensis partial 16S rRNA gene sequence [GI:70663476] with the first three best hits of a BLAST [17] alignment in the DDBJ [18] database.</p>
					</text>
					<graphic file="1471-2105-8-S1-S2-2"/>
				</fig>
				<p>To get the global alignment we choose an activity &#8211; activity 8 &#8211; that receives as parameter a list of sequences in FASTA and calculates the global alignment using ClustalW <abbrgrp><abbr bid="B20">20</abbr></abbrgrp> tool. For further details of this example we provide in <abbrgrp><abbr bid="B21">21</abbr></abbrgrp> a videoclip of the workflow definition and execution phases in BioWMS.</p>
			</sec>
			<sec>
				<st>
					<p>Designing a workflow</p>
				</st>
				<p>The activities used in a workflow can be configured with several parameters, in this way it is possible to reuse the same activity for different workflows. In the previous example, the BLAST activity takes in input a sequence and blast parameters such as the blast tool &#8211; e.g. blastn &#8211; and the database &#8211; e.g. ddbj &#8211; to choose. This activity can be re-used in each workflow that needs a local alignment of a particular sequence with others in a specific database.</p>
				<p>Any workflow can be specified by using the graphical notation offered by the WebWFlow the BioWMS editor. A workflow can be started and ended by special graphical elements those shown in Figure <figr fid="F3">3</figr>, in particular, the <it>Workflow end </it>element is the point in which the workflow has to be terminated. In the same figure is shown the graphical notation of an activity element.</p>
				<fig id="F3">
					<title>
						<p>Figure 3</p>
					</title>
					<caption>
						<p>Graphical notation of Workflow elements available in WebWFlow</p>
					</caption>
					<text>
						<p><b>Graphical notation of Workflow elements available in WebWFlow</b>. BioWMS has three main elements: 1) Workflow-Start element; 2) Workflow-Stop element; 3) Workflow-Activity element.</p>
					</text>
					<graphic file="1471-2105-8-S1-S2-3"/>
				</fig>
				<p>WebWFlow, the BioWMS editor, enables the composition of both primitive and complex activities. A primitive activity is an activity that can be directly executed. A complex activity is a user activity that must be specified before it can be used; the specification of a complex activity is a workflow of complex and simple activities. By using complex activities the specification of workflows is simplified because they enhance both hierarchical specification and reuse: we can use an already existing complex activity without caring of its specification. In the previous example, we can use the <it>BLAST activity</it>, without knowing that it relies on the <it>CallWebService </it>primitive activity that in turns it collects the results from BLAST. In this case, user can customize BLAST activity without knowing what is a WebService. Users can use complex activities and stored workflows to increase productivity when specifying new workflows. Moreover, large libraries of both domain specific primitives and complex activities can be loaded to specialize the editor for a specific application domain. Figure <figr fid="F4">4</figr> shows the steps required by WebWFlow to add and customize an activity and Table <tblr tid="T1">1</tblr> shows the libraries of domain-specific activities actually available in BioWMS. A user can specify the order of activities execution using special control-flow patterns. The <it>Sequence </it>pattern, shown in Figure <figr fid="F5">5</figr>, allows to execute an activity after another. It is generally used when the output of an activity must be piped as input of the subsequent. In the workflow example in Figure <figr fid="F2">2</figr>, the sequences in FASTA format obtained by activity 7 are piped as input of the activity 8 that performs the global alignment.</p>
				<fig id="F4">
					<title>
						<p>Figure 4</p>
					</title>
					<caption>
						<p>Setting up an activity: step-by-step</p>
					</caption>
					<text>
						<p><b>Setting up an activity: step-by-step</b>. Steps required to add and set a domain specific activity: 1) Select the <it>activity </it>item from the multiple choice box; 2) Edit the added activity; 3) Specify the activity performer; 4) Select the activity application domain; 5) Select the user domain activity; 6) Fill the input/output formal parameters; 7) The activity is added and set.</p>
					</text>
					<graphic file="1471-2105-8-S1-S2-4"/>
				</fig>
				<tbl id="T1">
					<title>
						<p>Table 1</p>
					</title>
					<caption>
						<p>Application domain libraries available</p>
					</caption>
					<tblbdy cols="2">
						<r>
							<c ca="left">
								<p>
									<b>Application domain library</b>
								</p>
							</c>
							<c ca="left">
								<p>
									<b>Description</b>
								</p>
							</c>
						</r>
						<r>
							<c cspan="2">
								<hr/>
							</c>
						</r>
						<r>
							<c ca="left">
								<p>AIXO</p>
							</c>
							<c ca="left">
								<p>A set of primitive activities to convert a format to XML</p>
							</c>
						</r>
						<r>
							<c ca="left">
								<p>Alignment</p>
							</c>
							<c ca="left">
								<p>A set of primitive and complex activities for sequence alignment</p>
							</c>
						</r>
						<r>
							<c ca="left">
								<p>BioWMS</p>
							</c>
							<c ca="left">
								<p>A set of primitive activities to store and to log messages in BioWMS</p>
							</c>
						</r>
						<r>
							<c ca="left">
								<p>Email</p>
							</c>
							<c ca="left">
								<p>A set of primitive activities to send emails</p>
							</c>
						</r>
						<r>
							<c ca="left">
								<p>Hermes</p>
							</c>
							<c ca="left">
								<p>A set of primitive activities to exploit Hermes middleware</p>
							</c>
						</r>
						<r>
							<c ca="left">
								<p>O2I</p>
							</c>
							<c ca="left">
								<p>A set of complex activities wrapping O2I SoapLab services</p>
							</c>
						</r>
						<r>
							<c ca="left">
								<p>Taverna Output</p>
							</c>
							<c ca="left">
								<p>A set of primitive activities to store data in Taverna format</p>
							</c>
						</r>
						<r>
							<c ca="left">
								<p>Util</p>
							</c>
							<c ca="left">
								<p>A set of primitive and complex activities to manage data</p>
							</c>
						</r>
						<r>
							<c ca="left">
								<p>WebServices</p>
							</c>
							<c ca="left">
								<p>A set of primitive activities to invoke a Web Service</p>
							</c>
						</r>
						<r>
							<c ca="left">
								<p>XML Manipulation</p>
							</c>
							<c ca="left">
								<p>A set of primitive and complex activities using XSLT and XQuery</p>
							</c>
						</r>
					</tblbdy>
				</tbl>
				<fig id="F5">
					<title>
						<p>Figure 5</p>
					</title>
					<caption>
						<p>Sequence Workflow patterns available using WebWFlow</p>
					</caption>
					<text>
						<p>Sequence Workflow patterns available using WebWFlow.</p>
					</text>
					<graphic file="1471-2105-8-S1-S2-5"/>
				</fig>
				<p>Figure <figr fid="F6">6</figr> shows the <it>Concurrence </it>pattern that enables the parallel execution of two or more activities. It is possible to assign each of these concurrent activities to different performers corresponding to the Workflow Executors. In this case, the code mobility, supported by Hermes middleware, can be exploited to improve the computational load balancing of a workflow. In the workflow example we use this pattern to retrieve concurrently -activities 4,5 and 6- the sequences of the best hits.</p>
				<fig id="F6">
					<title>
						<p>Figure 6</p>
					</title>
					<caption>
						<p>Concurrence Workflow patterns available using WebWFlow</p>
					</caption>
					<text>
						<p>Concurrence Workflow patterns available using WebWFlow.</p>
					</text>
					<graphic file="1471-2105-8-S1-S2-6"/>
				</fig>
				<p>Figure <figr fid="F7">7</figr> shows the <it>If </it>pattern that defines a conditional routing where the choice of the activity to be executed is case-driven. An error or exception can be caught and considered as special case, so that the workflow becomes fault tolerant and the execution can select an alternative path when something goes wrong. In the example in Figure <figr fid="F2">2</figr> we use <it>if </it>pattern to have a decision point when activity 1 generates or not an exception.</p>
				<fig id="F7">
					<title>
						<p>Figure 7</p>
					</title>
					<caption>
						<p>If Workflow patterns available using WebWFlow</p>
					</caption>
					<text>
						<p>If Workflow patterns available using WebWFlow.</p>
					</text>
					<graphic file="1471-2105-8-S1-S2-7"/>
				</fig>
				<p>The <it>Iteration</it>, whose graphical notation is shown in Figure <figr fid="F8">8</figr>, is a pattern enabling the cyclic execution of one or more activities. When a special case occurs the control-flow leaves the cycle and the workflow execution continues. The arrow on the left hand side of the graphical notation addresses the direction of the execution. All possible workflow patterns and elements allowed in BioWMS by using WebWFlow editor are summarized in Figure <figr fid="F9">9</figr>.</p>
				<fig id="F8">
					<title>
						<p>Figure 8</p>
					</title>
					<caption>
						<p>Iterator Workflow patterns available using WebWFlow</p>
					</caption>
					<text>
						<p>Iterator Workflow patterns available using WebWFlow.</p>
					</text>
					<graphic file="1471-2105-8-S1-S2-8"/>
				</fig>
				<fig id="F9">
					<title>
						<p>Figure 9</p>
					</title>
					<caption>
						<p>Workflow patterns available using WebWFlow</p>
					</caption>
					<text>
						<p><b>Workflow patterns available using WebWFlow</b>. The basic workflow elements are: workflow-start element, workflow-end element and activity element. The control-flow patterns available in WebWFlow are: <it>sequence</it>, <it>concurrence</it>, <it>if </it>and <it>iterator</it>.</p>
					</text>
					<graphic file="1471-2105-8-S1-S2-9"/>
				</fig>
			</sec>
			<sec>
				<st>
					<p>Loading and executing a workflow</p>
				</st>
				<p>Workflows stored in BioWMS can be <it>public </it>or <it>private</it>. While a public workflow is provided by BioWMS and is visible to all users, a private one is available only for the user that has previously defined it. The web-interface allows to view workflow both with a graphical notation and with the corresponding XPDL workflow specification. After a user has defined its workflow and has submitted it, BioWMS compiles it in a multiagent system by exploiting the agent-based middleware. BioWMS supports long-running activities and the execution is independent from the user control.</p>
			</sec>
			<sec>
				<st>
					<p>Managing results</p>
				</st>
				<p>At any time users can check the workflow execution state and the partial produced results. Figure <figr fid="F10">10</figr> shows a screenshot of "manage data" web page. This interface provides the elapsed time for each workflow execution. Partial results can be stored during the enactment in several formats applying XSLT <abbrgrp><abbr bid="B22">22</abbr></abbrgrp> stylesheets or using Taverna format. To do this, user has to choose, during the workflow definition phase, the domain-specific activities from the "XML manipulation" or "Taverna Output" libraries.</p>
				<fig id="F10">
					<title>
						<p>Figure 10</p>
					</title>
					<caption>
						<p>Managing results</p>
					</caption>
					<text>
						<p><b>Managing results</b>. User can check at any time the state of the submitted workflows and the corresponding produced results. For each workflow is provided a measure of its execution time.</p>
					</text>
					<graphic file="1471-2105-8-S1-S2-10"/>
				</fig>
			</sec>
			<sec>
				<st>
					<p>Conclusions and future work</p>
				</st>
				<p>We have developed BioWMS, a Workflow Management System for the design of an activity-based in-silico experiment. BioWMS, provides a web-based user editor interface and is supported by mobile agent-based technology, it guarantees the flexibility, scalability and fault tolerance required for the workflow enactment over distributed and heterogeneous systems.</p>
				<p>As a future work we aim to extend BioWMS with a component called Resourceome <abbrgrp><abbr bid="B23">23</abbr></abbrgrp> on which we are in parallel working on. Resourceome is a system that keeps "alive" an index of resources in the bioinformatics domain using a specific ontology of resource information. The Resourceome directly assists scientists in the hard navigation in the ocean of bioinformatics resources. The integration of BioWMS with Resourceome might support the final user both in selecting the most suitable activity and to setting-up a new one. The Resourceome itself would dynamically support workflow enactment, providing all the required resources available at runtime. We believe that the workflow technology together with an effective and effcient resource management system could be a good start to face the complexity that surrounds scientist's work and then to help him/her in taking advantage of the huge amount of available resources.</p>
			</sec>
		</sec>
		<sec>
			<st>
				<p>Methods</p>
			</st>
			<p>A workflow is a distributed application that involves the coordinated execution of human and system activities, usually, in an heterogeneous environment. We consider a workflow as coordination model for a pool of mobile agents -workflow executors- that implements the workflow engine for a specific workflow instance. In this context agents are autonomous active entities, encapsulate the execution of independent activities and execute their tasks concurrently to the work of the other agents. A collection of agents able to cooperate, in their autonomy, for a common goal forms a multiagent system (MAS) <abbrgrp><abbr bid="B24">24</abbr></abbrgrp>.</p>
			<sec>
				<st>
					<p>Workflow compilation</p>
				</st>
				<p>In our approach, the generation of the workflow engine is performed by a compiler <abbrgrp><abbr bid="B16">16</abbr></abbrgrp> in a two phase agent-generation procedure. In the first step a User Level Workflow (ULW), specified by a workflow specification language, is mapped to an Agent Level Workflow (ALW). This mapping is performed by recursively substituting activities of the user-level specification with a workflow of primitive agent-level activities. A User-Level Activity Database (ULAD) maintains the correspondence between user-level activities and ALW. The ALW specifies all entities involved in the execution of a workflow; thus the constraint of spatial and temporal coupling communication can be respected since the compiler knows exactly when communication takes place and which are the receivers and which the senders. In the second step, the compiler concretely generates agents from the ALW specification. To achieve this result, the compiler uses the User- Level Activity Implementation Database (ULAID) and the Database of Skeleton (DoS). The ULAID stores the implementation of agent-level activities, and DoS stores empty implementation of agents (the skeletons). A WE is obtained by plugging the specific behavior into the skeleton. The resulting set of WEs gives rise to an agent-based workflow engine whose role will be compliant to the WMS architecture as before described in Figure <figr fid="F1">1</figr>. The above approach has been implemented on Hermes <abbrgrp><abbr bid="B16">16</abbr></abbrgrp> architecture whose detailed description is given in the next section.</p>
			</sec>
			<sec>
				<st>
					<p>Hermes architecture</p>
				</st>
				<p>Hermes <abbrgrp><abbr bid="B16">16</abbr><abbr bid="B25">25</abbr></abbrgrp> is an agent-based mobile middleware, for the design and execution of activity-based applications in distributed environments. It is structured as a component-based, agent-oriented system with a 3-layer software architecture: user layer, system layer and run-time layer. Each layer is customizable and is independent from the others.</p>
				<p>BioWMS is a distributed oriented application that relies on Hermes middleware architecture as Figure <figr fid="F11">11</figr> shows. User layer allows designers to specify their application as a workflow of activities using the graphical notation provided by WebWFlow. System layer provides a context-aware compiler to generate a pool of user mobile agents from the workflow specification. Run-time layer supports the activation of a set of specialized service agents, and it provides all necessary components to allow agent discovery, mobility, creation, communication and security. Service-Agents (SAs) in the run-time layer are localized to one platform to interface with the local execution environment. User-Agents (UAs) in the system layer are Workflow Executors (WEs), created for a specific goal that, in theory, can be reached in a finite time by interacting with other agents; afterward the agent will die by killing itself. At the end of a two steps process a compiler translates XPDL to a Multi Agent System (MAS) as Java bytecode ready to be executed in Hermes middleware.</p>
				<fig id="F11">
					<title>
						<p>Figure 11</p>
					</title>
					<caption>
						<p>BioWMS has been implemented over Hermes middleware</p>
					</caption>
					<text>
						<p><b>BioWMS has been implemented over Hermes middleware</b>. Entities located at each layer of Hermes Architecture. Any user level workflow is mapped into an agent-level workflow and compiled to a pool of mobile user agents, the Workflow Executors (WEs) which interact with Service Agents (SAs).</p>
					</text>
					<graphic file="1471-2105-8-S1-S2-11"/>
				</fig>
				<p>Hermes can be configured for specific application domains by adding domain-specific component libraries and thus customizing in a proper way through service agents. It represents a flexible environment suitably designed to support the bioscientist's activities during an in-silico experiment. The main functionalities of BioWMS are provided by Hermes through a set of cooperative bio-service agents (SA). These are shown in Figure <figr fid="F11">11</figr> and are described as follows:</p>
				<sec>
					<st>
						<p>Data and Tools Integration</p>
					</st>
					<p>AIXO <abbrgrp><abbr bid="B26">26</abbr></abbrgrp> SA provides a set of wrappers able to access and to present any data source as a collection of XML documents. AIXO (Any Input XML Output) is flexible and modular, it allows to manage many input data sources from HTML to XML, database, flat file, CGI and command line programs;</p>
				</sec>
				<sec>
					<st>
						<p>Web Services</p>
					</st>
					<p>WSIF SA Service Agent allows other agents to dynamically invoke a Web Service.</p>
					<p>Moreover, SoapLab SA <abbrgrp><abbr bid="B27">27</abbr></abbrgrp> can control a set of Web Services providing programmatic access to many bioinformatics applications on remote computers;</p>
				</sec>
				<sec>
					<st>
						<p>XML Manipulation</p>
					</st>
					<p>XQuery <abbrgrp><abbr bid="B28">28</abbr></abbrgrp> and XSLT <abbrgrp><abbr bid="B22">22</abbr></abbrgrp> SAs provide tools to transform, manipulate and query an XML document creating a suitable view of a Web Service invocation or a wrapper output;</p>
				</sec>
				<sec>
					<st>
						<p>Distributed Annotation System (DAS)</p>
					</st>
					<p>DAS SA enables the access to DAS <abbrgrp><abbr bid="B29">29</abbr></abbrgrp> sources;</p>
				</sec>
				<sec>
					<st>
						<p>Input and Output Management</p>
					</st>
					<p>BioWMS SA allows the storage of partial results during the execution. Furthermore, Email SA allows user to receive the final and intermediate results by email.</p>
				</sec>
			</sec>
		</sec>
		<sec>
			<st>
				<p>Authors' contributions</p>
			</st>
			<p>EB wrote the paper and participated in tool design and in its development. LS implemented the Web-based interface of BioWMS. EM and FC conceived the study, participated and coordinated the paper and tool design, and helped to draft the manuscript. All authors read and approved the final manuscript.</p>
		</sec>
	</bdy>
	<bm>
		<ack>
			<sec>
				<st>
					<p>Acknowledgements</p>
				</st>
				<p>This work is supported by the <it>Investment Funds for Basic Research </it>(FIRB) project <it>Laboratory of Interdisciplinary Technologies in Bioinformatics </it>(LITBIO).</p>
				<p>This article has been published as part of <it>BMC Bioinformatics</it> Volume 8, Supplement 1, 2007: Italian Society of Bioinformatics (BITS): Annual Meeting 2006. The full contents of the supplement are available online at <url>http://www.biomedcentral.com/1471-2105/8?issue=S1</url>.</p>
			</sec>
		</ack>
		<refgrp>
			<bibl id="B1">
				<title>
					<p>Performing in silico experiments on the Grid: a users perspective</p>
				</title>
				<aug>
					<au>
						<snm>Stevens</snm>
						<fnm>R</fnm>
					</au>
					<au>
						<snm>Glover</snm>
						<fnm>K</fnm>
					</au>
					<au>
						<snm>Greenhalgh</snm>
						<fnm>C</fnm>
					</au>
					<au>
						<snm>Jennings</snm>
						<fnm>C</fnm>
					</au>
					<au>
						<snm>Pearce</snm>
						<fnm>S</fnm>
					</au>
					<au>
						<snm>Li</snm>
						<fnm>P</fnm>
					</au>
					<au>
						<snm>Radenkovic</snm>
						<fnm>M</fnm>
					</au>
					<au>
						<snm>Wipat</snm>
						<fnm>A</fnm>
					</au>
				</aug>
				<source>Proceedings of UK e-Science All Hands Meeting: 2&#8211;4 September 2003; Nottingham</source>
				<editor>Cox SJ</editor>
				<pubdate>2003</pubdate>
				<fpage>43</fpage>
				<lpage>50</lpage>
			</bibl>
			<bibl id="B2">
				<title>
					<p>Creating a bioinformatics nation</p>
				</title>
				<aug>
					<au>
						<snm>Stein</snm>
						<fnm>L</fnm>
					</au>
				</aug>
				<source>Nature</source>
				<pubdate>2002</pubdate>
				<volume>417</volume>
				<issue>6885</issue>
				<fpage>119</fpage>
				<lpage>120</lpage>
				<xrefbib>
					<pubidlist>
						<pubid idtype="doi">10.1038/417119a</pubid>
						<pubid idtype="pmpid" link="fulltext">12000935</pubid>
					</pubidlist>
				</xrefbib>
			</bibl>
			<bibl id="B3">
				<title>
					<p>The Workflow Reference Model</p>
				</title>
				<aug>
					<au>
						<snm>Hollinsworth</snm>
						<fnm>D</fnm>
					</au>
				</aug>
				<source>Tech Rep TC00-Workflow Management Coalition</source>
				<pubdate>1994</pubdate>
			</bibl>
			<bibl id="B4">
				<title>
					<p>Taverna: a tool for the composition and enactment of bioinformatics workflows</p>
				</title>
				<aug>
					<au>
						<snm>Oinn</snm>
						<fnm>T</fnm>
					</au>
					<au>
						<snm>Addis</snm>
						<fnm>M</fnm>
					</au>
					<au>
						<snm>Ferris</snm>
						<fnm>J</fnm>
					</au>
					<au>
						<snm>Marvin</snm>
						<fnm>D</fnm>
					</au>
					<au>
						<snm>Senger</snm>
						<fnm>M</fnm>
					</au>
					<au>
						<snm>Greenwood</snm>
						<fnm>M</fnm>
					</au>
					<au>
						<snm>Carver</snm>
						<fnm>T</fnm>
					</au>
					<au>
						<snm>Glover</snm>
						<fnm>K</fnm>
					</au>
					<au>
						<snm>Pocock</snm>
						<fnm>M</fnm>
					</au>
					<au>
						<snm>Wipat</snm>
						<fnm>A</fnm>
					</au>
					<au>
						<snm>Li</snm>
						<fnm>P</fnm>
					</au>
				</aug>
				<source>Bioinformatics</source>
				<pubdate>2004</pubdate>
				<volume>20</volume>
				<issue>17</issue>
				<fpage>3045</fpage>
				<lpage>3054</lpage>
				<xrefbib>
					<pubidlist>
						<pubid idtype="doi">10.1093/bioinformatics/bth361</pubid>
						<pubid idtype="pmpid" link="fulltext">15201187</pubid>
					</pubidlist>
				</xrefbib>
			</bibl>
			<bibl id="B5">
				<title>
					<p>Biopipe: a flexible framework for protocol-based bioinformatics analysis</p>
				</title>
				<aug>
					<au>
						<snm>Hoon</snm>
						<fnm>S</fnm>
					</au>
					<au>
						<snm>Ratnapu</snm>
						<fnm>K</fnm>
					</au>
					<au>
						<snm>Chia</snm>
						<fnm>J</fnm>
					</au>
					<au>
						<snm>Kumarasamy</snm>
						<fnm>B</fnm>
					</au>
					<au>
						<snm>Juguang</snm>
						<fnm>X</fnm>
					</au>
					<au>
						<snm>Clamp</snm>
						<fnm>M</fnm>
					</au>
					<au>
						<snm>Stabenau</snm>
						<fnm>A</fnm>
					</au>
					<au>
						<snm>Potter</snm>
						<fnm>S</fnm>
					</au>
					<au>
						<snm>Clarke</snm>
						<fnm>L</fnm>
					</au>
					<au>
						<snm>Stupka</snm>
						<fnm>E</fnm>
					</au>
				</aug>
				<source>Genome Res</source>
				<pubdate>2003</pubdate>
				<volume>13</volume>
				<issue>8</issue>
				<fpage>1904</fpage>
				<lpage>1915</lpage>
				<xrefbib>
					<pubidlist>
						<pubid idtype="pmcid">403782</pubid>
						<pubid idtype="pmpid" link="fulltext">12869579</pubid>
					</pubidlist>
				</xrefbib>
			</bibl>
			<bibl id="B6">
				<title>
					<p>Pegasys: software for executing and integrating analyses of biological sequences</p>
				</title>
				<aug>
					<au>
						<snm>Shah</snm>
						<fnm>S</fnm>
					</au>
					<au>
						<snm>He</snm>
						<fnm>D</fnm>
					</au>
					<au>
						<snm>Sawkins</snm>
						<fnm>J</fnm>
					</au>
					<au>
						<snm>Druce</snm>
						<fnm>J</fnm>
					</au>
					<au>
						<snm>Quon</snm>
						<fnm>G</fnm>
					</au>
					<au>
						<snm>Lett</snm>
						<fnm>D</fnm>
					</au>
					<au>
						<snm>Zheng</snm>
						<fnm>G</fnm>
					</au>
					<au>
						<snm>Xu</snm>
						<fnm>T</fnm>
					</au>
					<au>
						<snm>Ouellette</snm>
						<fnm>B</fnm>
					</au>
				</aug>
				<source>BMC Bioinformatics</source>
				<pubdate>2004</pubdate>
				<volume>5</volume>
				<fpage>40</fpage>
				<xrefbib>
					<pubidlist>
						<pubid idtype="pmcid">406494</pubid>
						<pubid idtype="pmpid" link="fulltext">15096276</pubid>
						<pubid idtype="doi">10.1186/1471-2105-5-40</pubid>
					</pubidlist>
				</xrefbib>
			</bibl>
			<bibl id="B7">
				<title>
					<p>Wildfire: distributed, Grid-enabled workflow construction and execution</p>
				</title>
				<aug>
					<au>
						<snm>Tang</snm>
						<fnm>F</fnm>
					</au>
					<au>
						<snm>Chua</snm>
						<fnm>C</fnm>
					</au>
					<au>
						<snm>Ho</snm>
						<fnm>L</fnm>
					</au>
					<au>
						<snm>Lim</snm>
						<fnm>Y</fnm>
					</au>
					<au>
						<snm>Issac</snm>
						<fnm>P</fnm>
					</au>
					<au>
						<snm>Krishnan</snm>
						<fnm>A</fnm>
					</au>
				</aug>
				<source>BMC Bioinformatics</source>
				<pubdate>2005</pubdate>
				<volume>6</volume>
				<fpage>69</fpage>
				<xrefbib>
					<pubidlist>
						<pubid idtype="pmcid">1274263</pubid>
						<pubid idtype="pmpid" link="fulltext">15788106</pubid>
						<pubid idtype="doi">10.1186/1471-2105-6-69</pubid>
					</pubidlist>
				</xrefbib>
			</bibl>
			<bibl id="B8">
				<title>
					<p>myGrid: personalised bioinformatics on the information grid</p>
				</title>
				<aug>
					<au>
						<snm>Stevens</snm>
						<fnm>R</fnm>
					</au>
					<au>
						<snm>Robinson</snm>
						<fnm>A</fnm>
					</au>
					<au>
						<snm>Goble</snm>
						<fnm>C</fnm>
					</au>
				</aug>
				<source>Bioinformatics</source>
				<pubdate>2003</pubdate>
				<volume>19</volume>
				<issue>Suppl 1</issue>
				<fpage>i302</fpage>
				<lpage>4</lpage>
				<xrefbib>
					<pubidlist>
						<pubid idtype="doi">10.1093/bioinformatics/btg1041</pubid>
						<pubid idtype="pmpid" link="fulltext">12855473</pubid>
					</pubidlist>
				</xrefbib>
			</bibl>
			<bibl id="B9">
				<title>
					<p>The design of Jemboss: a graphical user interface to EMBOSS</p>
				</title>
				<aug>
					<au>
						<snm>Carver</snm>
						<fnm>T</fnm>
					</au>
					<au>
						<snm>Bleasby</snm>
						<fnm>A</fnm>
					</au>
				</aug>
				<source>Bioinformatics</source>
				<pubdate>2003</pubdate>
				<volume>19</volume>
				<issue>14</issue>
				<fpage>1837</fpage>
				<lpage>1843</lpage>
				<xrefbib>
					<pubidlist>
						<pubid idtype="doi">10.1093/bioinformatics/btg251</pubid>
						<pubid idtype="pmpid" link="fulltext">14512356</pubid>
					</pubidlist>
				</xrefbib>
			</bibl>
			<bibl id="B10">
				<title>
					<p>Workflows in bioinformatics: meta-analysis and prototype implementation of a workflow generator</p>
				</title>
				<aug>
					<au>
						<snm>Garcia Castro</snm>
						<fnm>A</fnm>
					</au>
					<au>
						<snm>Thoraval</snm>
						<fnm>S</fnm>
					</au>
					<au>
						<snm>Garcia</snm>
						<fnm>L</fnm>
					</au>
					<au>
						<snm>Ragan</snm>
						<fnm>M</fnm>
					</au>
				</aug>
				<source>BMC Bioinformatics</source>
				<pubdate>2005</pubdate>
				<volume>6</volume>
				<fpage>87</fpage>
				<xrefbib>
					<pubidlist>
						<pubid idtype="pmcid">1090554</pubid>
						<pubid idtype="pmpid" link="fulltext">15813976</pubid>
						<pubid idtype="doi">10.1186/1471-2105-6-87</pubid>
					</pubidlist>
				</xrefbib>
			</bibl>
			<bibl id="B11">
				<title>
					<p>XML Process Definition Language</p>
				</title>
				<url>http://xml.coverpages.org/XPDL20010522.pdf</url>
			</bibl>
			<bibl id="B12">
				<title>
					<p>OASIS WSBPEL Specification Draft</p>
				</title>
				<url>http://docs.oasis-open.org/wsbpel/2.0/wsbpel-v20-rddl.html</url>
			</bibl>
			<bibl id="B13">
				<title>
					<p>Providing Transactional Properties for Migrating Workflows</p>
				</title>
				<aug>
					<au>
						<snm>Cichocki</snm>
						<fnm>A</fnm>
					</au>
					<au>
						<snm>Rusinkiewicz</snm>
						<fnm>M</fnm>
					</au>
				</aug>
				<source>MONET</source>
				<pubdate>2004</pubdate>
				<volume>9</volume>
				<issue>5</issue>
				<fpage>473</fpage>
				<lpage>480</lpage>
			</bibl>
			<bibl id="B14">
				<title>
					<p>Enhydra JaWE</p>
				</title>
				<url>http://www.enhydra.org/workflow/jawe/index.html</url>
			</bibl>
			<bibl id="B15">
				<title>
					<p>Biowep: a workflow enactment portal for bioinformatics applications</p>
				</title>
				<aug>
					<au>
						<snm>Romano</snm>
						<fnm>P</fnm>
					</au>
					<au>
						<snm>Bartocci</snm>
						<fnm>E</fnm>
					</au>
					<au>
						<snm>Bertolini</snm>
						<fnm>G</fnm>
					</au>
					<au>
						<snm>De Paoli</snm>
						<fnm>F</fnm>
					</au>
					<au>
						<snm>Marra</snm>
						<fnm>D</fnm>
					</au>
					<au>
						<snm>Mauri</snm>
						<fnm>G</fnm>
					</au>
					<au>
						<snm>Merelli</snm>
						<fnm>E</fnm>
					</au>
					<au>
						<snm>Milanesi</snm>
						<fnm>L</fnm>
					</au>
				</aug>
				<source>BMC Bioinformatics</source>
				<pubdate>2006</pubdate>
				<volume>8</volume>
				<issue>Suppl 1</issue>
				<fpage>S19</fpage>
				<xrefbib>
					<pubid idtype="doi">10.1186/1471-2105-8-S1-S19</pubid>
				</xrefbib>
			</bibl>
			<bibl id="B16">
				<title>
					<p>Hermes: agent-base middleware for mobile computing</p>
				</title>
				<aug>
					<au>
						<snm>Corradini</snm>
						<fnm>F</fnm>
					</au>
					<au>
						<snm>Merelli</snm>
						<fnm>E</fnm>
					</au>
				</aug>
				<source>Mobile Computing, LNCS</source>
				<pubdate>2005</pubdate>
				<volume>3465</volume>
				<fpage>234</fpage>
				<lpage>270</lpage>
			</bibl>
			<bibl id="B17">
				<title>
					<p>BLAST: improvements for better sequence analysis</p>
				</title>
				<aug>
					<au>
						<snm>Ye</snm>
						<fnm>J</fnm>
					</au>
					<au>
						<snm>McGinnis</snm>
						<fnm>S</fnm>
					</au>
					<au>
						<snm>Madden</snm>
						<fnm>T</fnm>
					</au>
				</aug>
				<source>Nucleic Acids Res</source>
				<pubdate>2006</pubdate>
				<volume>34</volume>
				<fpage>W6</fpage>
				<lpage>W9</lpage>
				<xrefbib>
					<pubidlist>
						<pubid idtype="pmcid">1538791</pubid>
						<pubid idtype="pmpid" link="fulltext">16845079</pubid>
						<pubid idtype="doi">10.1093/nar/gkl164</pubid>
					</pubidlist>
				</xrefbib>
			</bibl>
			<bibl id="B18">
				<title>
					<p>DNA Data Bank of Japan</p>
				</title>
				<url>http://www.ddbj.nig.ac.jp/</url>
			</bibl>
			<bibl id="B19">
				<title>
					<p>FASTA format</p>
				</title>
				<url>http://en.wikipedia.org/wiki/Fasta_format</url>
			</bibl>
			<bibl id="B20">
				<title>
					<p>CLUSTAL W: improving the sensitivity of progressive multiple sequence alignment through sequence weighting, position-specific gap penalties and weight matrix choice</p>
				</title>
				<aug>
					<au>
						<snm>Thompson</snm>
						<fnm>J</fnm>
					</au>
					<au>
						<snm>Higgins</snm>
						<fnm>D</fnm>
					</au>
					<au>
						<snm>Gibson</snm>
						<fnm>T</fnm>
					</au>
				</aug>
				<source>Nucleic Acids Res</source>
				<pubdate>1994</pubdate>
				<volume>22</volume>
				<issue>22</issue>
				<fpage>4673</fpage>
				<lpage>4680</lpage>
				<xrefbib>
					<pubidlist>
						<pubid idtype="pmcid">308517</pubid>
						<pubid idtype="pmpid" link="fulltext">7984417</pubid>
						<pubid idtype="doi">10.1093/nar/22.22.4673</pubid>
					</pubidlist>
				</xrefbib>
			</bibl>
			<bibl id="B21">
				<title>
					<p>A flash presentation of BioWMS</p>
				</title>
				<url>http://litbio.cs.unicam.it/biowms/video.html</url>
			</bibl>
			<bibl id="B22">
				<title>
					<p>XSLT: XSL Transformations</p>
				</title>
				<url>http://www.w3.org/TR/xslt</url>
			</bibl>
			<bibl id="B23">
				<title>
					<p>Time to Organize the Bioinformatics Resourceome</p>
				</title>
				<aug>
					<au>
						<snm>Cannata</snm>
						<fnm>N</fnm>
					</au>
					<au>
						<snm>Merelli</snm>
						<fnm>E</fnm>
					</au>
					<au>
						<snm>Altman</snm>
						<fnm>R</fnm>
					</au>
				</aug>
				<source>PloS Computational Biology</source>
				<pubdate>2005</pubdate>
				<volume>1</volume>
				<issue>7</issue>
				<url>http://dx.doi.org/10.1371/journal.pcbi.0010076</url>
				<xrefbib>
					<pubidlist>
						<pubid idtype="pmcid">1323464</pubid>
						<pubid idtype="pmpid" link="fulltext">16738704</pubid>
					</pubidlist>
				</xrefbib>
			</bibl>
			<bibl id="B24">
				<title>
					<p>On Agent based Software Engineering</p>
				</title>
				<aug>
					<au>
						<snm>Jennings</snm>
						<fnm>N</fnm>
					</au>
					<au>
						<snm>R</snm>
						<fnm>N</fnm>
					</au>
				</aug>
				<source>Artificial Intelligence</source>
				<pubdate>2000</pubdate>
				<volume>117</volume>
				<issue>2</issue>
				<fpage>277</fpage>
				<lpage>296</lpage>
				<xrefbib>
					<pubid idtype="doi">10.1016/S0004-3702(99)00107-1</pubid>
				</xrefbib>
			</bibl>
			<bibl id="B25">
				<title>
					<p>Site of HermesV2</p>
				</title>
				<url>http://hermes.cs.unicam.it/</url>
			</bibl>
			<bibl id="B26">
				<title>
					<p>An XML view of the "World"</p>
				</title>
				<aug>
					<au>
						<snm>Bartocci</snm>
						<fnm>E</fnm>
					</au>
					<au>
						<snm>Mariani</snm>
						<fnm>L</fnm>
					</au>
					<au>
						<snm>Merelli</snm>
						<fnm>E</fnm>
					</au>
				</aug>
				<source>ICEIS (1)</source>
				<pubdate>2003</pubdate>
				<fpage>19</fpage>
				<lpage>27</lpage>
			</bibl>
			<bibl id="B27">
				<title>
					<p>Soaplab &#8211; a unified Sesame door to analysis tools pages</p>
				</title>
				<aug>
					<au>
						<snm>Senger</snm>
						<fnm>M</fnm>
					</au>
					<au>
						<snm>Rice</snm>
						<fnm>P</fnm>
					</au>
					<au>
						<snm>Oinn</snm>
						<fnm>T</fnm>
					</au>
				</aug>
				<source>Proceedings of UK e-Science All Hands Meeting: 2&#8211;4 September 2003; Nottingham</source>
				<editor>Cox SJ</editor>
				<pubdate>2003</pubdate>
				<fpage>515</fpage>
				<lpage>519</lpage>
			</bibl>
			<bibl id="B28">
				<title>
					<p>XQuery 1.0: An XML Query Language</p>
				</title>
				<url>http://www.w3.org/TR/xquery/</url>
			</bibl>
			<bibl id="B29">
				<title>
					<p>The distributed annotation system</p>
				</title>
				<aug>
					<au>
						<snm>Dowell</snm>
						<fnm>R</fnm>
					</au>
					<au>
						<snm>Jokerst</snm>
						<fnm>R</fnm>
					</au>
					<au>
						<snm>Day</snm>
						<fnm>A</fnm>
					</au>
					<au>
						<snm>Eddy</snm>
						<fnm>S</fnm>
					</au>
					<au>
						<snm>Stein</snm>
						<fnm>L</fnm>
					</au>
				</aug>
				<source>BMC Bioinformatics</source>
				<pubdate>2001</pubdate>
				<volume>2</volume>
				<fpage>7</fpage>
				<xrefbib>
					<pubidlist>
						<pubid idtype="pmcid">58584</pubid>
						<pubid idtype="pmpid" link="fulltext">11667947</pubid>
						<pubid idtype="doi">10.1186/1471-2105-2-7</pubid>
					</pubidlist>
				</xrefbib>
			</bibl>
		</refgrp>
	</bm>
</art>

