<!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>Flexible Integration and Visualisation of Drosophila melanogaster Datasets</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Martijn P. van Iersel</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Julian A. T. Dow</string-name>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Nadia Anwar</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>General Bioinformatics Ltd.</institution>
          ,
          <addr-line>Reading</addr-line>
          ,
          <country country="UK">UK</country>
        </aff>
        <aff id="aff1">
          <label>1</label>
          <institution>Institute of Molecular Cell and Systems Biology, University of Glasgow</institution>
          ,
          <addr-line>Glasgow</addr-line>
          <country country="UK">UK</country>
        </aff>
      </contrib-group>
      <pub-date>
        <year>2010</year>
      </pub-date>
      <abstract>
        <p>The challenge in bioinformatics is not integration by itself, which could be achieved with ad-hoc scripting, but to do so in a manner that is repeatable, customisable, and enables powerful queries and visualisations. Here we present a case study which should provide some valuable insights. We set out to integrate public datasets from Drosophila melanogaster, including pathway data from BioCyc and tissue expression pro les from FlyAtlas. Cytoscape and PathVisio were used for visualisation of networks and pathways. We used existing ontologies, such as BioPAX, where possible. We found situations where the existing standard had to be amended, for example we inferred new Xref classes using Identi ers.org IRI's. For the purposes of repeatability and provenance, we made every aspect of our system fully scripted. We discovered that Cytoscape visualisations work best to answer questions about the whole dataset, such as \Which submodules of the data are primarily active in one tissue?". The PathVisio tool is more adept at answering detail-oriented questions, such as \Which enzymes are gatekeepers to the glycolysis, and in which tissues are they active?". Our position is that semantic technologies provide more exibility; repeatability through scripting is of utmost importance; and multiple visualisation tools can be combined to address a broader range of biological questions. Availability: The integrated data is available as RDF dumps, cytoscape session and a SPARQL endpoint at http:// y.cloud.generalbioinformatics.com</p>
      </abstract>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>Introduction</title>
      <p>Integration of diverse data is a recurring problem in life sciences. The challenge
is not integration by itself, which could be achieved with ad-hoc scripting, but to
do so in a manner that is repeatable, customisable, and enables powerful queries
and visualisations. In short, data integration should be exible. We believe that
semantic integration provides this exibility although it is not completely
sufcient to deliver a \cradle to grave" solution. Here we describe a case study,
which gives insights into the roads toward the desired exibility.</p>
      <p>General Bioinformatics performs bespoke data integration and visualisation
for customers, using customer data combined with public domain data and tools.
Semantic web technologies allow integration and management of multifarious
biological data. Biological questions are often di use in nature and require the
ability to explore datasets. Thus, integration and knowledge management must
be complemented with powerful visualisations. Semantic integration of data
delivers the basis for generation of those visualisations.</p>
    </sec>
    <sec id="sec-2">
      <title>Integration and Visualisation of Fly Data</title>
      <p>
        We aimed to integrate and visualise public datasets concerning the fruit y
Drosophila melanogaster. We employed only open source software, namely
Virtuoso for the triple store, Apache Jena, Rd ib and R for data processing, and
Cytoscape [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ] and PathVisio [10] for visualisation. We used public ontologies
where possible, in particular BioPAX [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ] for biological concepts and
Identiers.org [
        <xref ref-type="bibr" rid="ref5">5</xref>
        ] for identi er resolution. An overview of our architecture is shown
in the Appendix in Figure 1.
      </p>
      <p>The system is a collection of linked data, with the graphs stored in
Virtuoso's triple store. We used the following datasets: pathways from BioCyc [6] and
WikiPathways[8], tissue expression pro les from FlyAtlas, and gene and protein
descriptions from FlyBase. In general, our approach is as follows: rst, data is
converted into triple format if not already available as such and loaded into
Virtuoso. Each datasource is imported into a separate graph to allow independent
updating. The second step is to create a layer of inferences to \loosely" integrate
the data. After loading the data, it is available for querying, though the data is
not yet \linked". Linking depends on two aspects: the use of common predicates
or ontologies, and the use of common IRI's. Both can be inferred using SPARQL
CONSTRUCT queries. We relied on Identi ers.org to provide common resolvable
IRI's for biological concepts.</p>
      <p>We consider repeatability of primary importance, and therefore all data
preparation steps are performed using scripts, either in Python using Rd ib,
or Groovy using Jena.</p>
      <sec id="sec-2-1">
        <title>Integration</title>
        <p>What follows is a more detailed description of some of the integration steps and
inferences we used.</p>
        <p>FlyAtlas [9] is a collection of tissue speci c gene expression pro les of fruit
ies. We obtained this data from open ydata.org in RDF form. (The RDF is
shown in the Appendix as the black parts of Figure 2) For visualisation of
FlyAtlas, both in PathVisio and in Cytoscape, it was necessary to calculate log
foldchanges. Untransformed fold-changes map poorly to a linear range of colours
since fold-changes between 0 and 1 correspond to the same dynamic range as
fold-changes between 1 and in nity. We calculated log fold-changes using a
separate script in the R statistical programming language and augmented the graph
with these triples. The FlyAtlas data was combined with probe-to-gene
mappings, using gene identi ers from FlyBase[7]. Similarly, linking to BioCyc, was
achieved through creating triples using Identi ers.org IRI's for each ybase gene,
using biopax:xref as predicate.</p>
        <p>
          BioCyc is a collection of organism-speci c databases of gene annotations,
metabolic reactions, and pathways. For Drosophila this combined database is
called FlyCyc and is available as BioPAX [
          <xref ref-type="bibr" rid="ref3">3</xref>
          ]. FlyCyc uses it's own identi er
system for most y proteins (with standard Uniprot being used for only a handful
of proteins). However, we found that it was possible to create standard IRI's by
performing text transformation.
        </p>
        <p>
          WikiPathways [
          <xref ref-type="bibr" rid="ref1">1</xref>
          ] is a pathway database which accepts contributions from
anyone. Although WikiPathways is less accurate, it has much broader coverage
of topics, including signalling and regulatory pathways not found in BioCyc. To
incorporate WikiPathways into the system we had to ensure the availability of
su cient y-speci c pathways. Therefore, we created translations of pathways
based on ortholog mappings provided by Inparanoid [
          <xref ref-type="bibr" rid="ref2">2</xref>
          ].
        </p>
      </sec>
      <sec id="sec-2-2">
        <title>Visualisation</title>
        <p>The integrated data can be visualised di erently depending on the biological
question to be addressed.</p>
        <p>To get a global overview of the data, it is possible to load the whole network of
enzymes and metabolites into Cytoscape, and project the expression pro les on
top. Network visualisation in Cytoscape can give answers to the following type
of question: which submodules of the metabolic network are tissue dependent?
Cytoscape also allows one to apply di erent layout algorithms, and to see the
connections between pathways.</p>
        <p>The transfer from triple store to Cytoscape takes two steps. First, the
backbone of the Cytoscape graph is generated using a SPARQL SELECT query with
three output columns, representing source node, edge type and target node. The
result is stored in Simple Interaction Format (SIF), which is imported into
Cytoscape. In the second step, any number of node and edge attributes can be
extracted with further SPARQL SELECT queries.</p>
        <p>We used Groovy scripts to automate the procedure of querying our triple
store and saving the data to SIF format. We then load this data into Cytoscape
from within the same script, and generate network views, by using the Cytoscape
RPC plug-in. (Figure 4 in the Appendix shows what the result looks like in
Cytoscape and this Cytoscape session is also available for download from our
website.)</p>
        <p>Cytoscape provides a complete overview of a network, and it can be hard to
get a detailed view of just a single pathway. PathVisio is better at displaying
pathways, and better at answering pathway-oriented questions, such as: in which
tissue is a given pathway active?</p>
        <p>To answer this question, we also need to know which tissue the constituent
genes are primarily active in. Simply assigning a gene to the tissue where it is
most highly expressed is not statistically sound, since a gene could be just a
fraction higher than average in one tissue due to random chance. Therefore we used
an unsupervised clustering to group genes with similar expression patterns. We
performed k-means clustering in R to assign genes to clusters. One characteristic
of k-means clustering is that the number of clusters has to be chosen a priori.
After several attempts we settled on 16 clusters, as that appeared the optimal
number where clusters appeared to have a distinct, biologically interesting
prole. Cluster numbers were added to flyatlas:CalculatedValues for the whole
y (See also Figure 2, pink node in the Appendix below).</p>
        <p>For example, cluster number 1 contains genes that are over expressed in the
fatbody tissue. To see the e ect of this, we ranked pathways by enrichment
of this cluster. Indeed, the resulting ranking shows a clear pattern, with many
pathways related to fat metabolism (For further details please see Table1 in the
Appendix). We created similar rankings for each of the 16 clusters, which are
available for download from our website.</p>
        <p>PathVisio allows for a more detailed view of what is happening in pathways.
Examination of the glycolysis pathway image quickly leads us to nd tissue
speci c-e ects occurring in CG10924, the rst step of the gluconeogenesis, which
is highly overexpressed in fatbody. This is shown in the Appendix in Figure 1.
Also SLC2A1, a glucose transporter with a gatekeeper function, appears to be
regulated in a highly tissue-speci c manner.</p>
      </sec>
    </sec>
    <sec id="sec-3">
      <title>Discussion</title>
      <p>During the course of this project we encountered some pitfalls, and it may be
instructive to mention them here. For starters, we heavily relied on existing
ontologies and actively encourage the use of existing standards such as BioPAX.
BioPAX is a mature standard for pathway exchange. However, we found that
we needed to add to the BioPAX standard. For visualisation in Cytoscape, we
wished to create a bipartite graph representation of metabolic reactions, where
each node corresponds either to an entity (metabolite or enzyme) or to a process
(reaction or transport). Transformation of the BioPAX graph to a bipartite
representation is made di cult by the fact that each connection between
biochemical reactions and enzymes is mediated by a catalysis object. A catalysis
object ties the enzyme (BP:controller) and the reaction (BP:controlled),
plus a few more properties. Therefore, we inferred a third relationship directly
between BioPAX BiochemicalReaction and enzyme named BP:controlledBy
(See Figure 3, red parts). With this extra axiom it is now possible to extract the
complete bipartite metabolic network in a single query.</p>
      <p>We faced a generic problem with BioPAX EntityReferences.</p>
      <p>EntityReference is a class with two datatype properties, one to refer to a
bioinformatics database, e.g. \FlyBase", and one for a local identi er of that
database, such as \FBgn0013682". The local identi er by itself is not enough to
uniquely identify a biomolecule. Links across graphs based on EntityReference
are complex operations that involve comparing two literals at the same time.
Matching in SPARQL is more e cient when the nodes use an IRI. We inferred
new bp:xref's for each existing bp:xref, using a standard IRI from Identi ers.org.
(This is depicted in the Appendix in Figure 3, purple parts). Identi ers.org
enables convenient identi er resolution, as well as direct URI-based linking. These
are customisations for BioPAX that we nd useful, and we believe that
wellwritten tools that consume BioPAX ought to be tolerant to this layer of
inferences and adopt the fully exible open world assumption that is o ered by using
semantic technologies. Although most BioPAX tools assume a closed world, we
suggest that a more exible approach in these tools would be more appropriate
and will encourage consumer use of BioPAX data.</p>
      <p>In this study we had di culties using blank nodes in RDF. The problem
we faced was to add additional calculated data to the yatlas:TissueVals nodes,
which were all blank nodes. We were generating a graph with calculated values.
We wanted to combine this with the existing graph, but it is close to impossible
to merge two graphs on blank nodes - on import, new blank nodes get generated,
leading to all kinds of problems in querying the data. The solution in our case
was to construct new nodes with assigned IRI, and re-assert triples for each
triple asserted for that blank node. The generated IRI is not resolvable, but it
is identi able. And that makes it still preferable over blank nodes, which are
neither resolvable nor identi able. We believe the use of blank nodes should be
avoided for resources where new triples might be asserted in the future. Given
that it is hard to predict the future use of data, our general advice is to avoid
blank nodes altogether when possible.</p>
      <p>Ideally, a fully exible system would achieve complete decoupling between
data and tools, using only the semantic layer as intermediate. In essence, none of
the output tools depend on any of the input tools: such that we could swap input
data and each tool can be easily adapted to use fresh data. Thus, WikiPathways
could replace BioCyc as a source of pathway data, and Ensembl could replace
Flybase as a gene database. However, this is not always possible to achieve
because of data dependencies of tools. For example, although PathVisio can
read high-throughput data from our system, it can not yet read pathway data
in triple form and relies on a direct link to WikiPathways. In this respect our
system could be improved.</p>
    </sec>
    <sec id="sec-4">
      <title>Conclusion</title>
      <p>The exibility that we strive for is di cult to de ne, we believe that integration
should be t for purpose and yet it is impossible to predict how data can be used
and reused as technologies progress. Given this, integration should be as exible
as current technologies allow. We feel strongly that semantic web technologies
provide this exibility. In semantic reasoning, it is important to pragmatically
focus on the problem at hand. We recommend to use simple identi er schemes
such as Identi ers.org, and we readily expand the boundaries of BioPAX with
new inferences when it serves our purpose. Semantic integration relies on
common IRI's used by the subjects in the triples and the ontologies used in the
predicates. In this project we used a loose integration approach and added
layers of inferences on top of FlyAtlas and other datasets. The beauty of semantic
technologies is that new assertions can be easily added in the RDF or OWL as
needs dictate, giving a fully exible data representation.</p>
      <p>In our opinion any analysis must be easily reproducible. Therefore, every
part of the exercise should be scripted in a manner that allows not just for
repeatability but allow tweaks. For example, If triple loading and construct queries
were done manually, we would quickly lose track of the source of a given triple,
and lose the ability to make small improvements to the process. In this respect,
our choice of software was not arbitrary: we picked tools for their scriptability
(and this requirement incidentally favours open source software). We created a
custom API to enable scripted access to Virtuoso and scripted all Cytoscape
visualisations using its RPC interface.</p>
      <p>Finally, we want to emphasize the usefulness of combining visualisation tools
with semantic technologies. In our experience biological questions require the
transformation of data, re-purposing and re-spinning data into speci c contexts
and delivering it in a format that can be visually understood. Data that has been
integrated is by de nition more complex than the individual sources. The sum
is greater than the parts. We found that data integration is not su cient when
answering biological questions and that being able to visualise integrated data in
the contexts of the biological questions is what makes the integration valuable.
Furthermore, we believe that the use of multiple independent visualisation tools
helps to address a broad range of biological questions. Too heavy reliance on
a single piece of software would hurt this capability, on the other hand, being
able to take the data and visualise for speci c purposes is a considerable asset.
The Cytoscape network visualisation tool shines when used for whole-dataset
questions. For example, it can quickly generate visualisations to answer questions
such as \what fraction of enzymes have been measured in FlyAtlas?", \which
submodules of the data are primarily active in one tissue?". PathVisio, on the
other hand, is more adept at answering detail-oriented questions, such as \Which
enzymes are gatekeepers to the glycolysis, and in which tissues are they active?".</p>
      <p>For our clients we nd the semantic web approach to data integration is not
only e ective, it is more e cient and more scalable. However, biological questions
rarely come in the form that can be delivered in a single SPARQL query, and it
is the visualisation of integrated data that has bene ted our clients in particular.
6. Ron Caspi et al. The metacyc database of metabolic pathways and enzymes and the
biocyc collection of pathway/genome databases. Nucleic Acids Res, 38(Database
7. Susan Tweedie et al. Flybase: enhancing drosophila gene ontology annotations.</p>
      <p>Nucleic Acids Res, 37(Database issue):D555{D559, Jan 2009.
8. Thomas Kelder et al. Wikipathways: building research communities on biological
pathways. Nucleic Acids Res, 40(Database issue):D1301{D1307, Jan 2012.
9. Venkateswara R. Chintapalli et al.</p>
      <p>Using
yatlas to identify better drosophila
melanogaster models of human disease. Nat Genet, 39(6):715{720, Jun 2007.
10. Martijn P. van Iersel et al. Presenting and exploring biological pathways with
pathvisio. BMC Bioinformatics, 9:399, 2008.</p>
    </sec>
    <sec id="sec-5">
      <title>Appendix</title>
      <p>Further details of the data, integration and visualisation are provided below. Our
results are available on our public website. There is a SPARQL endpoint and
downloadable RDF of the integrated data, a Cytoscape session containing the
network visualisation, and a collection of pathway visualisations created with
PathVisio. This and more details can be found at
http:// y.cloud.generalbioinformatics.com</p>
      <p>For visualisation of tissue enriched pathways we created pathway rankings
for each of the 16 clusters. An example of the ranking for Cluster 1 is shown
below:</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          1.
          <string-name>
            <surname>Alexander R. Pico</surname>
          </string-name>
          et al.
          <article-title>Wikipathways: pathway editing for the people</article-title>
          .
          <source>PLoS Biol</source>
          ,
          <volume>6</volume>
          (
          <issue>7</issue>
          ):e184,
          <year>Jul 2008</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          2.
          <string-name>
            <surname>Ann-Charlotte Berglund</surname>
          </string-name>
          et al.
          <article-title>Inparanoid 6: eukaryotic ortholog clusters with inparalogs</article-title>
          .
          <source>Nucleic Acids Res</source>
          ,
          <volume>36</volume>
          (Database issue):
          <source>D263{D266</source>
          ,
          <string-name>
            <surname>Jan</surname>
          </string-name>
          <year>2008</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          3.
          <string-name>
            <given-names>Emek</given-names>
            <surname>Demir</surname>
          </string-name>
          et al.
          <article-title>The biopax community standard for pathway data sharing</article-title>
          .
          <source>Nat Biotechnol</source>
          ,
          <volume>28</volume>
          (
          <issue>9</issue>
          ):
          <volume>935</volume>
          {
          <fpage>942</fpage>
          ,
          <string-name>
            <surname>Sep</surname>
          </string-name>
          <year>2010</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          4.
          <string-name>
            <surname>Michael</surname>
            <given-names>E.</given-names>
          </string-name>
          <string-name>
            <surname>Smoot</surname>
          </string-name>
          et al.
          <source>Cytoscape</source>
          <volume>2</volume>
          .
          <article-title>8: new features for data integration and network visualization</article-title>
          .
          <source>Bioinformatics</source>
          ,
          <volume>27</volume>
          (
          <issue>3</issue>
          ):
          <volume>431</volume>
          {
          <fpage>432</fpage>
          ,
          <string-name>
            <surname>Feb</surname>
          </string-name>
          <year>2011</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          5.
          <string-name>
            <given-names>Nick</given-names>
            <surname>Juty</surname>
          </string-name>
          et al.
          <article-title>Identi ers.org and miriam registry: community resources to provide persistent identi cation</article-title>
          .
          <source>Nucleic Acids Res</source>
          ,
          <volume>40</volume>
          (Database issue):
          <source>D580{D586</source>
          ,
          <string-name>
            <surname>Jan</surname>
          </string-name>
          <year>2012</year>
          .
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>