<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Archiving and Interchange DTD v1.0 20120330//EN" "JATS-archivearticle1.dtd">
<article xmlns:xlink="http://www.w3.org/1999/xlink">
  <front>
    <journal-meta />
    <article-meta>
      <title-group>
        <article-title>MoSGrid: Progress of Workflow driven Chemical Simulations</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Georg Birkenheuer</string-name>
          <xref ref-type="aff" rid="aff4">4</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Dirk Blunk</string-name>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Sebastian Breuers</string-name>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Andr e´ Brinkmann</string-name>
          <xref ref-type="aff" rid="aff4">4</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Gregor Fels</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Sandra Gesing</string-name>
          <xref ref-type="aff" rid="aff6">6</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Richard Grunzke</string-name>
          <xref ref-type="aff" rid="aff7">7</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Sonja Herres-Pawlis</string-name>
          <xref ref-type="aff" rid="aff2">2</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Oliver Kohlbacher</string-name>
          <xref ref-type="aff" rid="aff6">6</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Jens Kr u¨ger</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Ulrich Lang</string-name>
          <xref ref-type="aff" rid="aff5">5</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Lars Packschies</string-name>
          <xref ref-type="aff" rid="aff5">5</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Ralph M u¨ller-Pfefferkorn</string-name>
          <xref ref-type="aff" rid="aff7">7</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Patrick Sch a¨fer</string-name>
          <xref ref-type="aff" rid="aff3">3</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Johannes Schuster</string-name>
          <xref ref-type="aff" rid="aff4">4</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Thomas Steinke</string-name>
          <xref ref-type="aff" rid="aff3">3</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Klaus-Dieter Warzecha</string-name>
          <xref ref-type="aff" rid="aff5">5</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Martin Wewior</string-name>
          <xref ref-type="aff" rid="aff5">5</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Department Chemie, Universita ̈ t Paderborn</institution>
        </aff>
        <aff id="aff1">
          <label>1</label>
          <institution>Department fu ̈ r Chemie, Universita ̈ t zu Ko ̈ ln</institution>
        </aff>
        <aff id="aff2">
          <label>2</label>
          <institution>Fakulta ̈ t Chemie, Technische Universita ̈ t Dortmund</institution>
        </aff>
        <aff id="aff3">
          <label>3</label>
          <institution>Konrad-Zuse-Institut f u ̈r Informationstechnik Berlin</institution>
        </aff>
        <aff id="aff4">
          <label>4</label>
          <institution>Paderborn Center for Parallel Computing, Universita ̈ t Paderborn</institution>
        </aff>
        <aff id="aff5">
          <label>5</label>
          <institution>Regionales Rechenzentrum, Universita ̈ t zu K o ̈ln</institution>
        </aff>
        <aff id="aff6">
          <label>6</label>
          <institution>Zentrum fu ̈ r Bioinformatik, Eberhard-Karls-Universita ̈ t Tu ̈ bingen</institution>
        </aff>
        <aff id="aff7">
          <label>7</label>
          <institution>Zentrum fu ̈ r Informationsdienste und Hochleistungsrechnen, Technische Universita ̈ t Dresden</institution>
        </aff>
      </contrib-group>
      <pub-date>
        <year>2011</year>
      </pub-date>
      <abstract>
        <p>Motivation: Web-based access to computational chemistry grid resources has proven to be a viable approach to simplify the use of simulation codes. The introduction of recipes allows to reuse already developed chemical workflows. By this means, workflows for recurring basic compute jobs can be provided for daily services. Nevertheless, the same platform has to be open for active workflow development by experienced users. This paper provides an overview of recent developments of the MoSGrid project on providing tools and instruments for building workflow recipes. Contact: birke@uni-paderborn.de</p>
      </abstract>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>INTRODUCTION</title>
      <p>The BMBF funded MoSGrid project supports the computational
chemistry community with an easy access to powerful compute
resources. The developed MoSGrid portal1 offers access to
molecular simulation codes available on the German Grid resources.
Chemical scientists are supported with instruments to handle and
orchestrate complex molecular simulation methods.</p>
      <p>
        The complexity of the various chemical recipes projected by
the simulations are mapped to workflows. Commonly used simple
workflows can be accessed and directly used by the users. A
workflow editor based on WS-PGRADE allows users to develop,
improve, and publish complex workflow constructs. First results are
presented in [
        <xref ref-type="bibr" rid="ref1 ref2">1, 2</xref>
        ].
      </p>
      <p>In this paper, we describe the recent developments for the creation
of the MoSGrid infrastructure and the embedded workflow system.
We start with a description of the integration of the gUSE workflow
system from WS-PGRADE into the MoSGrid portal in Section 2.
Parallel to the extension of WS-PGRADE and gUSE for generic
workflows, MoSGrid started to implement intuitive portlets for the
orchestration of specific workflows. The workflow application for
Molecular Dynamics is described in Section 3, followed by the
workflow application for Quantum Mechanics in Section 4. Section
5 covers the distributed data management for the workflow systems.
2</p>
    </sec>
    <sec id="sec-2">
      <title>THE WORKFLOW-ENABLED GRID PORTAL IN</title>
    </sec>
    <sec id="sec-3">
      <title>MOSGRID</title>
      <p>
        The MoSGrid portal is developed on top of WS-PGRADE [
        <xref ref-type="bibr" rid="ref3 ref4">3, 4</xref>
        ], a
workflow-enabled grid portal. The chosen WS-PGRADE version is
based on the open-source portal framework Liferay [
        <xref ref-type="bibr" rid="ref5">5</xref>
        ] and supports
the standards JSR168 [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ] and its successor JSR286 [
        <xref ref-type="bibr" rid="ref7">7</xref>
        ]. The choice
of using these standards assures the sustainability of the developed
portlets.
      </p>
      <p>Users are enabled to create, change, invoke, and monitor
workflows via WS-PGRADE, which contains a graphical workflow
editor. WS-PGRADE functions as a highly flexible graphical user
interface for the grid User Support Environment (gUSE). This
virtualization environment provides a set of services for distributed
computing infrastructures, where developers and end users
can share sophisticated workflows, workflow graphs, workflow
templates, and workflow applications via a repository (cf. figure 1).</p>
      <p>gUSE contains a data-driven workflow engine and the
dependencies of single steps in a workflow are represented by
their connections between their input and output. The workflow
engine facilitates the management of workflows, which are based
on directed acyclic graphs (DAGs). DAGs allow following workflow
constructs:
to whom correspondence should be addressed
1 Access to the MoSGrid portal: http://mosgrid.de/portal
Steps: A single step in the workflow describes a job with its
parameters, the input and the output.</p>
      <p>Copyright c 2011 for the individual papers by the papers’ authors. Copying permitted only for private and academic purposes.</p>
      <p>User interface
WS-PGRADE
High-level
middleware
service layer</p>
      <p>gUSE
Grid resources
middleware layer</p>
      <p>UNICORE 6
Fig. 1. The gUSE Architecture.</p>
      <p>Conditions: The workflow engine uses conditions to select the
next step to be processed.</p>
      <p>Splits: A split is unconditional and delivers data for the next
parallel steps.</p>
      <p>Joins: A join is executed after parallel steps are finished and
have delivered their output.</p>
      <p>Loops can be represented by parameter sweeps, which allow to
specify varying parameters for single steps or workflows. Hence, the
workflow engine invokes the same job multiple times with different
parameters. Furthermore, the user can integrate generator steps and
collector steps. A generator step produces multiple datasets, which
are presented in the workflow graph as one output file. Hence, the
input of the corresponding collector step is presented in the graph as
one input file and internally the multiple files included in the input
are processed by the collector step.</p>
      <p>
        The workflow engine encapsulates the single steps and invokes
so-called submitters (Java-based applications) for each job. Via
these submitters, gUSE offers the possibility to submit jobs to grid
middleware environments like Globus Toolkit and gLite, desktop
grids, clouds and clusters, and unique web-services. MoSGrid
extends the features of gUSE by integrating UNICORE 6 [
        <xref ref-type="bibr" rid="ref8">8</xref>
        ]. The
submitter has to provide the following methods:
actionJobSubmit: Submission of a job including authentication,
authorization, and data staging
actionJobAbort: Cancel a job
actionJobOutput: Get the output of a job
actionJobStatus: Query the status of a job
actionJobResource: Return the resource, where the job was
submitted to
The developed UNICORE submitter is based on the UCC
(UNICORE commandline client) libraries. In contrast to
programming interfaces like HiLA, the UCC libraries allow to process
UNICORE workflows [
        <xref ref-type="bibr" rid="ref9">9</xref>
        ]. The adapted WS-PGRADE portal allows
users to submit jobs to UNICORE [
        <xref ref-type="bibr" rid="ref10">10</xref>
        ] or to local resources. Hence,
short pre-processing and/or post-processing steps of the workflow
can be invoked on the gUSE server and the resource-consuming
steps can be invoked in grid infrastructures.
3
      </p>
    </sec>
    <sec id="sec-4">
      <title>WORKFLOW APPLICATION BY MOLECULAR</title>
    </sec>
    <sec id="sec-5">
      <title>DYNAMICS</title>
      <p>The MoSGrid project implemented the first portlet for Molecular
Dynamic (MD) simulations, (i) a submission interface for Gromacs
portable run input (tpr) files and (ii) a molecular equilibration
for protein simulations in explicit water are available. Figure 2
shows a screenshot of the portal user interface for the latter protein
simulation. The design of the portlet allows an easy integration of
further workflows for chemical recipes. The Gromacs simulation
toolkit supports calculations with many instruments, which have to
be orchestrated by a workflow system.</p>
      <p>The UNICORE 6 infrastructure with an embedded workflow
engine was already available for the implementation. Unfortunately,
the use of this infrastructure was limited to the UNICORE
Rich Client or the UCC. Already available APIs for accessing
the UNICORE infrastructure like HiLA did not support the full
workflow functionality.</p>
      <p>In order to use the UNICORE workflow infrastructure for the
MoSGrid MD portlet, we decided to implement a solution named
UccAPI. The API has been implemented using the abilities of the
UCC client. This strategy allows us to use well-tested code. We
decided to submit even singular jobs as workflows through the MD
portlet. This design decision eases the creation of the UccAPI, since
only the workflow dependent commands needed to be implemented.</p>
      <p>However, UccAPI does not need a separated UCC client,
all necessary functionality is provided either embedded in UCC
libraries or has been adapted, because of some parameters hidden
deeply in the source-code.</p>
      <p>Other extensions to the UCC were necessary, because it was
designed to be used as stand-alone application and not as supporting
library. Some of the extensions implemented the error handling.</p>
      <p>The reason is that most errors are difficult to trace, because they
occur only in complex test scenarios. Static variables were another
challenge as UCC is designed to be used once for one job and not
for multiple executions in parallel threads. This means that some
static variables are wrongly set from the last submission or are
not properly synchronized. This weakness raises the risk of errors
during multiple and parallel execution.</p>
      <p>The user of the MD portlet has most likely no UNICORE server
installation available. Therefore, file uploads need to be handled
separately. The upload of the files is processed as follows. Firstly,
the user uploads the data for the workflow. Then, an appropriate
number of compute nodes has to be chosen, the simulation length
has to be set, and it has to be defined how many nanoseconds the
job should simulate. At last, according to this input the configuration
files were adapted.</p>
      <p>The workflow description of UNICORE does not include a data
stage-in from the client. The solution for the first prototype is to
transparently define the input files in a separate job-file and transfer
them by a predecessor job from the portlet to the UNICORE global
storage. At a later stage of the project, an XtreemFS connection
should avoid this kind of data stage-in, as described in Section 5.</p>
      <p>The UCC API represents workflows by the use of end point
references (EPRs). This is a well designed standard for service
identification but does not improve readability. To avoid confusing
users, it was decided to hide the EPRs and instead to show only
conclusive workflow names. An exemplary name is the combination
of user name, time stamp, and workflow recipe.
4</p>
    </sec>
    <sec id="sec-6">
      <title>WORKFLOW APPLICATION BY QUANTUM</title>
    </sec>
    <sec id="sec-7">
      <title>MECHANICS</title>
      <p>
        With respect to a previous user survey in the MoSGrid community,
the first prototype of the Quantum Mechanics-Portlet [
        <xref ref-type="bibr" rid="ref11">11</xref>
        ] aimed for
the implementation of Workflows for the Gaussian [
        <xref ref-type="bibr" rid="ref12">12</xref>
        ] suite, while
the support for Turbomole [
        <xref ref-type="bibr" rid="ref13">13</xref>
        ], GAMESS-US [
        <xref ref-type="bibr" rid="ref14 ref15">14, 15</xref>
        ] and other
relevant quantum chemical suites was shifted to a later time.
Fig. 3. A screenshot of the QM-Portlet.
      </p>
      <p>Gaussian compute jobs are described in a single input file, which
includes the molecular geometry and a route card that defines the
task.</p>
      <p>During a calculation, the progress is written to an unstructured
output stream, the log file. In addition, calculated molecular
properties are stored in a platform-dependent binary checkpoint file.</p>
      <p>In contrast to its major competitors, the Gaussian program
package does not allow to independently call separate executables
for different tasks. Instead, a single executable parses the input file,
determines the requested calculations and devises a strategy to call
a series of subroutines, known as links. This intrinsic workflow
concept, although seemingly comfortable for the end user, renders
a direct override or a more granular control on the calculation level
difficult.</p>
      <p>While the multi-step job option of Gaussian allows the
concatenation of compute jobs reusing previous results, workflows
beyond this stage can only be achieved via external control, as
realized in the Quantum Mechanics-Portlet described here.</p>
      <p>This workflow, while at present directly implemented in the
portlet, will eventually be managed through the facilities provided
by WS-PGRADE.</p>
      <p>Typically, the workflow for a quantum chemical calculation with
Gaussian, as implemented in the portlet, consists of three phases,
namely a pre-processing phase, the execution of the job, and a
postprocessing phase.</p>
      <p>In the pre-processing phase, two basic workflows are currently
available. A user may opt to upload a valid Gaussian input file
previously prepared. In this workflow, no limits regarding rare
keywords or exotic options exist. Less experienced users will
however prefer the assistance provided by a graphical user interface
in the second workflow. Here, jobs may be configured by choosing
among reasonable parameters (e.g. basis sets) and tasks. Once
created, these jobs are open to further editing and adjustment of
parameters prior to submission.</p>
      <p>The job execution is realized using the UNICORE command line
client (UCC). A simple wrapper class encapsulates the UCC tool
and emulates basic user interaction while providing the client’s
messages. This approach was chosen until a more sophisticated
solution becomes available. This could have been the library which
was developed later along with the MD-Portlet or, as it now is
available, the framework provided by WS-PGRADE.</p>
      <p>The results of a successful Gaussian run are retrieved and stored
on the portal server. The portlet initiates different post-processing
scripts.</p>
      <p>
        Early attempts to process the Gaussian log file via shell scripting
using tools from the Unix tool chain (e.g. grep tr, etc.) turned out
to be tedious, ineffective and where thus soon replaced by scripts
written in Python [
        <xref ref-type="bibr" rid="ref16">16</xref>
        ].
      </p>
      <p>The Python scripts currently operative were written in close
cooperation with colleagues from the chemical community to match
their specific requirements. The total energy of each step in the
course of a geometry optimisation is routinely parsed from log files.
In addition to this common task in quantum chemical calculations,
thermochemical data, infrared and raman absorption spectra, as well
as the outcome of natural bond order (NBO) analysis are retrieved.</p>
      <p>These results are stored to platform-independent csv files,
displayed in the portlet and made available for download.</p>
      <p>
        At the current stage, optimized molecular geometries can
be retrieved through Python scripts from machine independent
Gaussian outputs (e.g. formatted checkpoint files) with the use of
the free Pybel [
        <xref ref-type="bibr" rid="ref17">17</xref>
        ] module, which provides Python bindings to the
OpenBabel [
        <xref ref-type="bibr" rid="ref18 ref19">18, 19</xref>
        ] library.
5
5.1
      </p>
    </sec>
    <sec id="sec-8">
      <title>DISTRIBUTED DATA MANAGEMENT IN</title>
    </sec>
    <sec id="sec-9">
      <title>WORKFLOWS WITH XTREEMFS AND UNICORE</title>
      <sec id="sec-9-1">
        <title>Data Flow</title>
        <p>Data management is an integral part of the MoSGrid portal. The data
flow within a MoSGrid workflow originally passed four sites:</p>
        <sec id="sec-9-1-1">
          <title>1. the WS-PGRADE portal in Tu¨bingen,</title>
          <p>2. the ZIH in Dresden being resource provider with the</p>
          <p>UNICORE 6 middleware,</p>
        </sec>
        <sec id="sec-9-1-2">
          <title>3. frontend nodes of the D-Grid clusters and</title>
        </sec>
        <sec id="sec-9-1-3">
          <title>4. compute nodes within a D-Grid cluster.</title>
          <p>The simulation results were propagated using the reverse path.
When dealing with large-scale or a large number of jobs, this
introduces a lot of network traffic between clusters and the portal,
which will eventually become a bottleneck.</p>
          <p>
            In order to safeguard the scientific data and provide a distributed
access all data is stored redundantly in the Grid file system
XtreemFS [
            <xref ref-type="bibr" rid="ref20">20</xref>
            ]. Compared to the original approach, when uploading
data for a simulation, XtreemFS handles the placement of replicas
of the data at the according cluster instead of using less efficient
data transfers via UNICORE. Additionally, the portal server does
not need to store any data. However, uploads and downloads of
simulation data are still realized via the portal.
          </p>
          <p>In a first step the data flow using XtreemFS is as follows:
Input data flow: A user uploads simulation input data to the
Grid file system using a web interface on the portal server. The
workflow engine propagates the location of these files within
XtreemFS to the UNICORE 6 middleware, which then takes
care of transferring the files from the frontend node to the
compute nodes of a cluster.</p>
          <p>Output data flow: The compute nodes produce simulation
results, which will be passed to XtreemFS by the UNICORE 6
middleware at the end of a simulation. Finally, the data is
available for access by the user via the web interface on the
portal server.
5.2</p>
        </sec>
      </sec>
      <sec id="sec-9-2">
        <title>XtreemFS</title>
        <p>XtreemFS is a distributed Grid and Cloud file system. The
advantages of using XtreemFS are
the ability to minimize data transfers especially between portal
server and the grid clusters,
the ability to manage replicated data for redundancy reasons,
and
the Grid Security Infrastructure (GSI) based authorization and
authentication.</p>
        <p>The requirement for deploying XtreemFS in MoSGrid is its
seamless integration with UNICORE, WS-PGRADE and the
software stack on D-Grid clusters.</p>
        <p>XtreemFS is an object-based file system, i.e., file data and
metadata are stored on different servers (Figure 4). The object
storage devices (OSDs) store the contents of a file split into fixed
size chunks of data (the objects). The metadata and replica catalogs
(MRCs) contain the filename, unique file identifier, owner and
directory tree, for example. XtreemFS provides packages for the
most common Linux distributions and a Filesystem in
Userspacebased (FUSE) client for seamless integration. The client acts like a
local file system by translating POSIX file system calls into requests
to the MRCs and OSDs. XtreemFS seems to be a large, secure and
replicated local file system for its users.</p>
        <p>XtreemFS provides custom pluggable security policies, X.509
(proxy-)certificates, Globus gridmap and UNICORE UUDB files.
Furthermore, XtreemFS implements POSIX access rights and ACLs
based on the distinguished name (DN) entries of the user X.509
certificates for authorization.</p>
        <p>The support of GSI enables us to seamlessly integrate XtreemFS
with the portal and UNICORE.
5.3</p>
        <p>The Integration of XtreemFS in UNICORE and the
Portal
Integration in WS-PGRADE: A JSR286 compliant portlet,
deployed in WS-PGRADE, provides simple access to XtreemFS
using a web browser. It manages the authentication and the upload
of simulation input data to XtreemFS.</p>
        <p>Integration in the UNICORE 6 middleware: XtreemFS is mounted
on the frontend node of each grid cluster using the node’s host
certificate and the UNICORE UUDB, which is a mapping of DN
entries or full public keys of certificates to local system users. On
this node the UNICORE Target System Interface (TSI) is installed,
which communicates with the batch system and makes storage
available. By integrating XtreemFS with the TSI the data becomes
available through UNICORE. Data transfers in the MoSGrid context
are now mediated by the UNICORE 6 middleware.
6</p>
      </sec>
    </sec>
    <sec id="sec-10">
      <title>CONCLUSIONS AND FUTURE WORK</title>
      <p>This paper has shown an overview of recent developments of the
MoSGrid project. MoSGrid has embedded chemical simulation
tools for Molecular Dynamics and Quantum Mechanics in workflow
recipes and allows an easy access to this instruments over the
portal. With the ongoing integration of WS-PGRADE the creation
of workflows will be eased and interoperability of MoSGrids portal
solution will be extended.</p>
      <p>WS-PGRADE: At the moment, users can upload executables (e.g.
shell scripts) for the configuration of single steps in WS-PGRADE.
MoSGrid plans to integrate the Incarnation Database (IDB) of
UNICORE to further simplify the users’ interaction with the portal.
The IDB contains information about the applications, which are
installed on the different available UNICORE target systems. The
list of available applications will be offered for selection in a
drop-down menu.</p>
      <p>
        MD: A portlet for the submission of Molecular Dynamics
in MoSGrid is available. A connection to the UNICORE
workflow system allows the submission of single computations
or equilibration workflows. The next step of the development
in MD will be to replace the UNICORE workflow environment
by the gUSE/WS-PGRADE workflow management system that is
interoperable with other Grid middleware or Cloud environments.
QM: In order to allow for data exchange between different
computational chemistry suites, e.g. in the context of more complex
workflows, a non-proprietary, highly structured data format is
required. The Chemical Markup Language (CML) [
        <xref ref-type="bibr" rid="ref21 ref22 ref23">21, 22, 23</xref>
        ], an
XML-based data format, seems a viable and promising approach.
      </p>
      <p>
        Currently, optimized molecular geometries from machine
independent Gaussian outputs (e.g. formatted checkpoint files) can
be processed using the free Pybel [
        <xref ref-type="bibr" rid="ref17">17</xref>
        ] module. This module
provides Python bindings to the OpenBabel [
        <xref ref-type="bibr" rid="ref18 ref19">18, 19</xref>
        ] library and
enables to store the fundamental geometrical data in syntactically
valid CML files.
      </p>
      <p>The retrieval of further molecular properties, job-specific data,
and their subsequent processing to CML files is under investigation.</p>
      <p>The storage of both molecular data as well as computational
recipes (i.e., workflows) in a common system-independent language
and on a distributed file system, such as XtreemFS, will eventually
allow for cross-domain workflows (e.g. combinations of quantum
chemical calculations and Molecular Dynamics studies) and
moreover render a sustainable data management possible.
Distributed Data Management: SAML trust delegation support for
XtreemFS is currently being developed. It is planned to integrate
XtreemFS and UNICORE at all participating resource providers
to further minimize data traffic overhead. Support for metadata is
planned, thus being able to query for simulation results. Future
work includes an applet for directly uploading simulation input
data to XtreemFS and the direct access from the compute nodes to
XtreemFS, thus avoiding the portal and the frontend nodes for data
transfer altogether.</p>
    </sec>
    <sec id="sec-11">
      <title>ACKNOWLEDGEMENT</title>
      <p>We would like to thank Bernd Schuller, Istva´n Ma´rton, Miklos
Kozlovszky, and A´ kos Balask o´ for the fruitful discussions and for
the bug fixing for the UNICORE integration into WS-PGRADE.
Funding: This work is supported by the German Ministry
of Education and Research under project grant #01IG09006
(MoSGrid) and by the European Commission FP7 Capacities
Program under grant agreement nr RI-261556 (EDGI).</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          [1]
          <string-name>
            <given-names>O.</given-names>
            <surname>Nieho</surname>
          </string-name>
          ¨rster, G. Birkenheuer,
          <string-name>
            <given-names>A.</given-names>
            <surname>Brinkmann</surname>
          </string-name>
          , B. Elsa¨sser,
          <string-name>
            <given-names>D.</given-names>
            <surname>Blunk</surname>
          </string-name>
          , S. HerresPawlis, J. Kru¨ger, J.Nieho¨rster, L.Packschies, and
          <string-name>
            <given-names>G.</given-names>
            <surname>Fels</surname>
          </string-name>
          .
          <article-title>Providing scientific software as a service in consideration of service level agreements</article-title>
          .
          <year>2009</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          [2]
          <string-name>
            <given-names>Georg</given-names>
            <surname>Birkenheuer</surname>
          </string-name>
          ,
          <string-name>
            <given-names>Sebastian</given-names>
            <surname>Breuers</surname>
          </string-name>
          , Ande´ Brinkmann, Dirk Blunk, Gregor Fels, Sandra Gesing, Sonja Herres-Pawlis, Oliver Kohlbacher, Jens Kru¨ger, and Lars Packschies.
          <article-title>Grid-Workflows in Molecular Science</article-title>
          .
          <source>In Proceedings of the Grid Workflow Workshop (GWW)</source>
          ,
          <year>February 2010</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          [3]
          <string-name>
            <given-names>Peter</given-names>
            <surname>Kacsuk</surname>
          </string-name>
          .
          <article-title>P-GRADE portal family for grid infrastructures</article-title>
          .
          <source>Concurrency and Computation: Practice and Experience</source>
          ,
          <year>2011</year>
          . in print.
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          [4]
          <string-name>
            <given-names>Zoltan</given-names>
            <surname>Farkas</surname>
          </string-name>
          and
          <string-name>
            <given-names>Peter</given-names>
            <surname>Kacsuk. P-GRADE Portal</surname>
          </string-name>
          <article-title>: a generic workflow system to support user communities</article-title>
          .
          <source>Future Generation Computer Systems</source>
          ,
          <year>2011</year>
          . in print.
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          [5]
          <string-name>
            <surname>Inc</surname>
          </string-name>
          . Liferay. Liferay. http://www.liferay.com.
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          [6]
          <string-name>
            <given-names>Alejandro</given-names>
            <surname>Abdelnur</surname>
          </string-name>
          and
          <string-name>
            <given-names>Stefan</given-names>
            <surname>Hepper</surname>
          </string-name>
          . JSR 168:
          <article-title>Portlet specification</article-title>
          . http: //www.jcp.org/en/jsr/detail?id=168,
          <string-name>
            <surname>Oct</surname>
          </string-name>
          <year>2003</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          [7]
          <string-name>
            <given-names>M.S.</given-names>
            <surname>Nicklous</surname>
          </string-name>
          and
          <string-name>
            <given-names>Stefan</given-names>
            <surname>Hepper</surname>
          </string-name>
          .
          <source>JSR 286: Portlet specification 2</source>
          .0. http: //www.jcp.org/en/jsr/detail?id=286,
          <year>June 2008</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          [8]
          <string-name>
            <given-names>Sandra</given-names>
            <surname>Gesing</surname>
          </string-name>
          , Istvan Marton, Georg Birkenheuer, Bernd Schuller, Richard Grunzke, Jens Kru¨ger, Sebastian Breuers, Dirk Blunk, Georg Fels, Lars Packschies, Andre Brinkmann, Oliver Kohlbacher, and
          <string-name>
            <given-names>Miklos</given-names>
            <surname>Kozlovszky</surname>
          </string-name>
          .
          <article-title>Workflow Interoperability in a Grid Portal for Molecular Simulations</article-title>
          . In Roberto Barbera, Giuseppe Andronico, and Giuseppe La Rocca, editors,
          <source>Proceedings of the International Workshop on Science Gateways (IWSG10)</source>
          , pages
          <fpage>44</fpage>
          -
          <lpage>48</lpage>
          .
          <string-name>
            <surname>Consorzio</surname>
            <given-names>COMETA</given-names>
          </string-name>
          ,
          <year>2010</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          [9]
          <string-name>
            <given-names>UNICORE</given-names>
            <surname>Tea</surname>
          </string-name>
          .
          <article-title>High Level API for Grid Applications</article-title>
          . http://www. unicore.eu/community/development/hila-reference.pdf,
          <year>August 2010</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          [10]
          <string-name>
            <given-names>A.</given-names>
            <surname>Streit</surname>
          </string-name>
          , P. Bala,
          <string-name>
            <given-names>A.</given-names>
            <surname>Beck-Ratzka</surname>
          </string-name>
          ,
          <string-name>
            <given-names>K.</given-names>
            <surname>Benedyczak</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>Bergmann</surname>
          </string-name>
          ,
          <string-name>
            <given-names>R.</given-names>
            <surname>Breu</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J. M.</given-names>
            <surname>Daivandy</surname>
          </string-name>
          ,
          <string-name>
            <given-names>B.</given-names>
            <surname>Demuth</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Eifer</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Giesler</surname>
          </string-name>
          ,
          <string-name>
            <given-names>B.</given-names>
            <surname>Hagemeier</surname>
          </string-name>
          ,
          <string-name>
            <given-names>V.</given-names>
            <surname>Huber S. Holl</surname>
          </string-name>
          ,
          <string-name>
            <given-names>N.</given-names>
            <surname>Lamla</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            <surname>Mallmann</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A. S.</given-names>
            <surname>Memon</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M. S.</given-names>
            <surname>Memon</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Rambadt</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Riedel</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Romberg</surname>
          </string-name>
          ,
          <string-name>
            <given-names>B.</given-names>
            <surname>Schuller</surname>
          </string-name>
          ,
          <string-name>
            <given-names>T.</given-names>
            <surname>Schlauch</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Schreiber</surname>
          </string-name>
          ,
          <string-name>
            <given-names>T.</given-names>
            <surname>Soddemann</surname>
          </string-name>
          , and
          <string-name>
            <given-names>W.</given-names>
            <surname>Ziegler</surname>
          </string-name>
          . Unicore 6
          <article-title>- recent and future advancements</article-title>
          .
          <source>JUEL-4319</source>
          ,
          <year>February 2010</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          [11]
          <string-name>
            <surname>Martin</surname>
            <given-names>Wewior</given-names>
          </string-name>
          , Lars Packschies, Dirk Blunk, Daniel Wickeroth,
          <string-name>
            <surname>Klaus-Dieter</surname>
            <given-names>Warzecha</given-names>
          </string-name>
          , Sonja Herres-Pawlis, Sandra Gesing,
          <string-name>
            <given-names>Sebastian</given-names>
            <surname>Breuers</surname>
          </string-name>
          , Jens Kru¨ger, Georg Birkenheuer, and
          <string-name>
            <given-names>Ulrich</given-names>
            <surname>Lang</surname>
          </string-name>
          .
          <article-title>The MoSGrid Gaussian Portlet - Technologies for the Implementation of Portlets for Molecular Simulations</article-title>
          . In Roberto Barbera, Giuseppe Andronico, and Giuseppe La Rocca, editors,
          <source>Proceedings of the International Workshop on Science Gateways (IWSG10)</source>
          , pages
          <fpage>39</fpage>
          -
          <lpage>43</lpage>
          .
          <string-name>
            <surname>Consorzio</surname>
            <given-names>COMETA</given-names>
          </string-name>
          ,
          <year>2010</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          [12]
          <string-name>
            <surname>M. J. Frisch</surname>
            ,
            <given-names>G. W.</given-names>
          </string-name>
          <string-name>
            <surname>Trucks</surname>
            ,
            <given-names>H. B.</given-names>
          </string-name>
          <string-name>
            <surname>Schlegel</surname>
            ,
            <given-names>G. E.</given-names>
          </string-name>
          <string-name>
            <surname>Scuseria</surname>
            ,
            <given-names>M. A.</given-names>
          </string-name>
          <string-name>
            <surname>Robb</surname>
            ,
            <given-names>J. R.</given-names>
          </string-name>
          <string-name>
            <surname>Cheeseman</surname>
            ,
            <given-names>J. A.</given-names>
          </string-name>
          <string-name>
            <surname>Montgomery</surname>
            , Jr.,
            <given-names>T.</given-names>
          </string-name>
          <string-name>
            <surname>Vreven</surname>
            ,
            <given-names>K. N.</given-names>
          </string-name>
          <string-name>
            <surname>Kudin</surname>
            ,
            <given-names>J. C.</given-names>
          </string-name>
          <string-name>
            <surname>Burant</surname>
            ,
            <given-names>J. M.</given-names>
          </string-name>
          <string-name>
            <surname>Millam</surname>
            ,
            <given-names>S. S.</given-names>
          </string-name>
          <string-name>
            <surname>Iyengar</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          <string-name>
            <surname>Tomasi</surname>
            ,
            <given-names>V.</given-names>
          </string-name>
          <string-name>
            <surname>Barone</surname>
            ,
            <given-names>B.</given-names>
          </string-name>
          <string-name>
            <surname>Mennucci</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          <string-name>
            <surname>Cossi</surname>
            , G. Scalmani,
            <given-names>N.</given-names>
          </string-name>
          <string-name>
            <surname>Rega</surname>
            ,
            <given-names>G. A.</given-names>
          </string-name>
          <string-name>
            <surname>Petersson</surname>
            ,
            <given-names>H.</given-names>
          </string-name>
          <string-name>
            <surname>Nakatsuji</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          <string-name>
            <surname>Hada</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          <string-name>
            <surname>Ehara</surname>
            ,
            <given-names>K.</given-names>
          </string-name>
          <string-name>
            <surname>Toyota</surname>
            ,
            <given-names>R.</given-names>
          </string-name>
          <string-name>
            <surname>Fukuda</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          <string-name>
            <surname>Hasegawa</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          <string-name>
            <surname>Ishida</surname>
            ,
            <given-names>T.</given-names>
          </string-name>
          <string-name>
            <surname>Nakajima</surname>
            ,
            <given-names>Y.</given-names>
          </string-name>
          <string-name>
            <surname>Honda</surname>
            ,
            <given-names>O.</given-names>
          </string-name>
          <string-name>
            <surname>Kitao</surname>
            ,
            <given-names>H.</given-names>
          </string-name>
          <string-name>
            <surname>Nakai</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          <string-name>
            <surname>Klene</surname>
            ,
            <given-names>X.</given-names>
          </string-name>
          <string-name>
            <surname>Li</surname>
            ,
            <given-names>J. E.</given-names>
          </string-name>
          <string-name>
            <surname>Knox</surname>
            ,
            <given-names>H. P.</given-names>
          </string-name>
          <string-name>
            <surname>Hratchian</surname>
            ,
            <given-names>J. B.</given-names>
          </string-name>
          <string-name>
            <surname>Cross</surname>
            ,
            <given-names>V.</given-names>
          </string-name>
          <string-name>
            <surname>Bakken</surname>
            ,
            <given-names>C.</given-names>
          </string-name>
          <string-name>
            <surname>Adamo</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          <string-name>
            <surname>Jaramillo</surname>
            ,
            <given-names>R.</given-names>
          </string-name>
          <string-name>
            <surname>Gomperts</surname>
            ,
            <given-names>R. E.</given-names>
          </string-name>
          <string-name>
            <surname>Stratmann</surname>
            ,
            <given-names>O.</given-names>
          </string-name>
          <string-name>
            <surname>Yazyev</surname>
            ,
            <given-names>A. J.</given-names>
          </string-name>
          <string-name>
            <surname>Austin</surname>
            ,
            <given-names>R.</given-names>
          </string-name>
          <string-name>
            <surname>Cammi</surname>
            ,
            <given-names>C.</given-names>
          </string-name>
          <string-name>
            <surname>Pomelli</surname>
            ,
            <given-names>J. W.</given-names>
          </string-name>
          <string-name>
            <surname>Ochterski</surname>
            ,
            <given-names>P. Y.</given-names>
          </string-name>
          <string-name>
            <surname>Ayala</surname>
            ,
            <given-names>K.</given-names>
          </string-name>
          <string-name>
            <surname>Morokuma</surname>
            ,
            <given-names>G. A.</given-names>
          </string-name>
          <string-name>
            <surname>Voth</surname>
            ,
            <given-names>P.</given-names>
          </string-name>
          <string-name>
            <surname>Salvador</surname>
            ,
            <given-names>J. J.</given-names>
          </string-name>
          <string-name>
            <surname>Dannenberg</surname>
            ,
            <given-names>V. G.</given-names>
          </string-name>
          <string-name>
            <surname>Zakrzewski</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          <string-name>
            <surname>Dapprich</surname>
            ,
            <given-names>A. D.</given-names>
          </string-name>
          <string-name>
            <surname>Daniels</surname>
            ,
            <given-names>M. C.</given-names>
          </string-name>
          <string-name>
            <surname>Strain</surname>
            ,
            <given-names>O.</given-names>
          </string-name>
          <string-name>
            <surname>Farkas</surname>
            ,
            <given-names>D. K.</given-names>
          </string-name>
          <string-name>
            <surname>Malick</surname>
            ,
            <given-names>A. D.</given-names>
          </string-name>
          <string-name>
            <surname>Rabuck</surname>
            ,
            <given-names>K.</given-names>
          </string-name>
          <string-name>
            <surname>Raghavachari</surname>
            ,
            <given-names>J. B.</given-names>
          </string-name>
          <string-name>
            <surname>Foresman</surname>
            ,
            <given-names>J. V.</given-names>
          </string-name>
          <string-name>
            <surname>Ortiz</surname>
            ,
            <given-names>Q.</given-names>
          </string-name>
          <string-name>
            <surname>Cui</surname>
            ,
            <given-names>A. G.</given-names>
          </string-name>
          <string-name>
            <surname>Baboul</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          <string-name>
            <surname>Clifford</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          <string-name>
            <surname>Cioslowski</surname>
            ,
            <given-names>B. B.</given-names>
          </string-name>
          <string-name>
            <surname>Stefanov</surname>
            , G. Liu,
            <given-names>A.</given-names>
          </string-name>
          <string-name>
            <surname>Liashenko</surname>
            ,
            <given-names>P.</given-names>
          </string-name>
          <string-name>
            <surname>Piskorz</surname>
            ,
            <given-names>I. Komaromi</given-names>
          </string-name>
          ,
          <string-name>
            <given-names>R. L.</given-names>
            <surname>Martin</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D. J.</given-names>
            <surname>Fox</surname>
          </string-name>
          ,
          <string-name>
            <given-names>T.</given-names>
            <surname>Keith</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M. A.</given-names>
            <surname>Al-Laham</surname>
          </string-name>
          ,
          <string-name>
            <given-names>C. Y.</given-names>
            <surname>Peng</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Nanayakkara</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Challacombe</surname>
          </string-name>
          ,
          <string-name>
            <given-names>P. M. W.</given-names>
            <surname>Gill</surname>
          </string-name>
          ,
          <string-name>
            <given-names>B.</given-names>
            <surname>Johnson</surname>
          </string-name>
          , W. Chen,
          <string-name>
            <given-names>M. W.</given-names>
            <surname>Wong</surname>
          </string-name>
          ,
          <string-name>
            <given-names>C.</given-names>
            <surname>Gonzalez</surname>
          </string-name>
          , , and
          <string-name>
            <given-names>J. A.</given-names>
            <surname>Pople</surname>
          </string-name>
          . Gaussian 03,
          <string-name>
            <surname>Revision</surname>
            <given-names>C.</given-names>
          </string-name>
          <year>02</year>
          ,
          <year>2004</year>
          . Gaussian, Inc.,
          <string-name>
            <surname>Wallingford</surname>
            <given-names>CT</given-names>
          </string-name>
          .
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          <source>[13]TURBOMOLE V6</source>
          .
          <article-title>2 2010, a development of University of Karlsruhe and Forschungszentrum Karlsruhe GmbH,</article-title>
          <year>1989</year>
          -
          <fpage>2007</fpage>
          , TURBOMOLE GmbH, since
          <year>2007</year>
          . http://www.turbomole.com.
        </mixed-citation>
      </ref>
      <ref id="ref14">
        <mixed-citation>
          [14]
          <string-name>
            <given-names>M. W.</given-names>
            <surname>Schmidt</surname>
          </string-name>
          ,
          <string-name>
            <given-names>K. K.</given-names>
            <surname>Baldridge</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.A.</given-names>
            <surname>Boatz</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S. T.</given-names>
            <surname>Elbert</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.S.</given-names>
            <surname>Gordon</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J. H.</given-names>
            <surname>Jensen</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>Koseki</surname>
          </string-name>
          ,
          <string-name>
            <given-names>N.</given-names>
            <surname>Matsunaga</surname>
          </string-name>
          ,
          <string-name>
            <given-names>K. A.</given-names>
            <surname>Nguyen</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>Su</surname>
          </string-name>
          ,
          <string-name>
            <given-names>T. L.</given-names>
            <surname>Windus</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Dupuis</surname>
          </string-name>
          , and
          <string-name>
            <given-names>J.A.</given-names>
            <surname>Montgomery</surname>
          </string-name>
          .
          <article-title>General Atomic and Molecular Electronic Structure System</article-title>
          .
          <source>J. Comput. Chem</source>
          .,
          <volume>14</volume>
          :
          <fpage>1347</fpage>
          -
          <lpage>1363</lpage>
          ,
          <year>1993</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref15">
        <mixed-citation>
          [15]
          <string-name>
            <surname>Mark</surname>
            <given-names>S.</given-names>
          </string-name>
          <string-name>
            <surname>Gordon</surname>
            and
            <given-names>Michael W.</given-names>
          </string-name>
          <string-name>
            <surname>Schmidt</surname>
          </string-name>
          .
          <article-title>Advances in electronic structure theory: GAMESS a decade later</article-title>
          . In C. E. Dykstra, G. Frenking,
          <string-name>
            <given-names>K. S.</given-names>
            <surname>Kim</surname>
          </string-name>
          , and G. E. Scuseria, editors,
          <source>Theory and Applications of Computational Chemistry: the first forty years</source>
          , pages
          <fpage>1167</fpage>
          -
          <lpage>1189</lpage>
          . Elsevier, Amsterdam,
          <year>2005</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref16">
        <mixed-citation>
          [16]
          <article-title>The Python Language Reference</article-title>
          . http://docs.python.org/ reference/,
          <year>2011</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref17">
        <mixed-citation>
          [17]
          <string-name>
            <surname>Noel O'Boyle</surname>
            ,
            <given-names>Chris</given-names>
          </string-name>
          <string-name>
            <surname>Morley</surname>
            , and
            <given-names>Geoffrey</given-names>
          </string-name>
          <string-name>
            <surname>Hutchison</surname>
          </string-name>
          .
          <article-title>Pybel: a Python wrapper for the OpenBabel cheminformatics toolkit</article-title>
          .
          <source>Chemistry Central Journal</source>
          ,
          <volume>2</volume>
          (
          <issue>1</issue>
          ):
          <fpage>5</fpage>
          -
          <lpage>12</lpage>
          ,
          <year>2008</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref18">
        <mixed-citation>
          [18]
          <string-name>
            <surname>Rajarshi</surname>
            <given-names>Guha</given-names>
          </string-name>
          , Michael T. Howard,
          <string-name>
            <surname>Geoffrey R. Hutchison</surname>
            ,
            <given-names>Peter</given-names>
          </string-name>
          <string-name>
            <surname>Murray-Rust</surname>
          </string-name>
          , Henry Rzepa, Christoph Steinbeck, Jo¨rg Wegner, and
          <string-name>
            <surname>Egon</surname>
            <given-names>L.</given-names>
          </string-name>
          <string-name>
            <surname>Willighagen</surname>
          </string-name>
          .
          <article-title>The Blue Obelisk - Interoperability in Chemical Informatics</article-title>
          .
          <source>Journal of Chemical Information and Modeling</source>
          ,
          <volume>46</volume>
          (
          <issue>3</issue>
          ):
          <fpage>991</fpage>
          -
          <lpage>998</lpage>
          ,
          <year>2006</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref19">
        <mixed-citation>
          [19]
          <string-name>
            <surname>Open</surname>
            <given-names>Babel:</given-names>
          </string-name>
          <article-title>The Open Source Chemistry Toolbox</article-title>
          . http://openbabel. org/,
          <year>2011</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref20">
        <mixed-citation>
          [20]
          <string-name>
            <surname>Felix</surname>
            <given-names>Hupfeld</given-names>
          </string-name>
          , Toni Cortes, Bjrn Kolbeck, Jan Stender, Erich Focht, Matthias Hess, Jesus Malo, Jonathan Marti, and
          <string-name>
            <given-names>Eugenio</given-names>
            <surname>Cesario</surname>
          </string-name>
          .
          <article-title>The xtreemfs architecturea case for object-based file systems in grids</article-title>
          .
          <source>Concurrency and Computation: Practice and Experience</source>
          ,
          <volume>20</volume>
          (
          <issue>17</issue>
          ):
          <fpage>20492060</fpage>
          ,
          <year>2008</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref21">
        <mixed-citation>
          [21]
          <string-name>
            <given-names>Peter</given-names>
            <surname>Murray-Rust</surname>
          </string-name>
          and
          <article-title>Henry S. Rzepa. Chemical Markup, XML, and the Worldwide Web. 1</article-title>
          .
          <string-name>
            <given-names>Basic</given-names>
            <surname>Principles</surname>
          </string-name>
          .
          <source>Journal of Chemical Information and Computer Sciences</source>
          ,
          <volume>39</volume>
          (
          <issue>6</issue>
          ):
          <fpage>928</fpage>
          -
          <lpage>942</lpage>
          ,
          <year>1999</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref22">
        <mixed-citation>
          [22]
          <string-name>
            <given-names>Peter</given-names>
            <surname>Murray-Rust</surname>
          </string-name>
          and
          <article-title>Henry S. Rzepa. Chemical Markup, XML and the WorldWide Web. 2. Information Objects and the CMLDOM</article-title>
          .
          <source>Journal of Chemical Information and Computer Sciences</source>
          ,
          <volume>41</volume>
          (
          <issue>5</issue>
          ):
          <fpage>1113</fpage>
          -
          <lpage>1123</lpage>
          ,
          <year>2001</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref23">
        <mixed-citation>
          [23]
          <string-name>
            <given-names>Peter</given-names>
            <surname>Murray-Rust</surname>
          </string-name>
          and
          <string-name>
            <given-names>Henry S.</given-names>
            <surname>Rzepa</surname>
          </string-name>
          .
          <source>Chemical Markup, XML, and the World Wide Web. 4</source>
          .
          <string-name>
            <given-names>CML</given-names>
            <surname>Schema</surname>
          </string-name>
          .
          <source>Journal of Chemical Information and Computer Sciences</source>
          ,
          <volume>43</volume>
          (
          <issue>3</issue>
          ):
          <fpage>757</fpage>
          -
          <lpage>772</lpage>
          ,
          <year>2003</year>
          .
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>