Keywords
Android app, Genomics data, Gene search, InterMine
Android app, Genomics data, Gene search, InterMine
InterMine is a data integration and analysis software system that has been used to create a suite of both inter-connected and stand-alone biological databases for the analysis of large and complex biological data sets. InterMine databases have been developed for the major model organisms budding yeast1, nematode worm, fruit fly2, zebrafish, mouse3 and rat4, (which we will refer to as the Model Organism Database (MOD-) InterMines, together with a human database and databases for plants, bees and wasps5, cows6, Medicago truncatula7, mitochondrial proteomics8 and drug targets9 (Table 1; https://registry.intermine.org/). Together, the InterMine databases provide access to extensive data across multiple organisms (for full listings of data included see the website for each individual InterMine, Table 1). To provide more convenient access to these data from Android mobile devices, we have developed the InterMine app10, an application that can be run on any Android mobile phone or tablet.
Database | Data | Organisation | url |
---|---|---|---|
FlyMine | Fruit fly | InterMine | http://www.flymine.org |
HumanMine | Human | InterMine | http://www.humanmine.org |
MedicMine | Medicago truncatula | JCVI | http://medicmine.jcvi.org |
MouseMine | MGI | MGI | http://www.mousemine.org |
PhytoMine | Multiple plant genomes | Phytozome | https://phytozome.jgi.doe.gov |
RatMine | Rat | RGD | http://ratmine.mcw.edu |
TargetMine | Support for drug discovery | NIBIO | http://targetmine.mizuguchilab.org |
ThaleMine | Thale cress | Araport | https://apps.araport.org/thalemine |
WormMine | Nematode | WormBase | http://intermine.wormbase.org/tools/wormmine |
YeastMine | Budding yeast | SGD | http://yeastmine.yeastgenome.org/yeastmine |
ZebrafishMine | Zebrafish | ZFIN | http://zebrafishmine.org/ |
HymenopteraMine | Various Hymenoptera | University of Missouri | http://hymenopteragenome.org/hymenopteramine |
BovineMine | Bos taurus | Bovine Genome Database Project | http://bovinegenome.org/bovinemine |
The InterMine app provides a single interface for data access, search and exploration of the above databases. It can be used to retrieve information on genes and gene lists, and their relatives across species. Simple searches can be used to access a range of data about a specific gene, while links to the InterMine databases provide access to more detailed report pages and gene list analysis tools.
The app is available from the Google Play Store at https://play.google.com/store/apps/details?id=org.intermine.app.
The InterMine app allows users to search a default subset of InterMine data warehouses (Table 1). This list is configurable, and so users are able to refine or add mines to match their interests. See https://registry.intermine.org for the full list of known public InterMine instances.
InterMine databases typically integrate data from many resources. For instance BioGRID11, IntAct12, UniProt13, and can include high quality curated data (from the Model Organism Databases), genome-wide high-throughput data and data from smaller more focused studies (See individual InterMine websites for more details).
The InterMine app provides several ways to search and explore the data available, including a keyword search, sets of pre-defined template searches and list analysis functionality. These features are described in more detail in the use case section.
The InterMine App draws all data from the RESTful Application Programming Interfaces (APIs) that InterMine databases provide14. RoboSpice, an Open Source (Apache 2.0 Licence) Android communications library15, provides core network communication functionality. Data are loaded asynchronously over HTTP or HTTPS, depending on the preferred protocol of the database being accessed. For performance enhancement, most web service responses are stored on the device if headers state an appropriate cache lifetime.
When the app receives a JSON response from the web service, it transforms the data from a table-structured format to a more hierarchical view, which presents data more effectively on smaller-screened mobile devices.
Each InterMine database is discrete and often maintained by different organisations. If a user wishes to authenticate with multiple InterMines - perhaps to view private gene lists stored on different databases - they will need to provide separate authentication details for each InterMine database. However this is only necessary once, as after a user has successfully authenticated in a given InterMine via a username/password pair, the app retrieves and stores an API authentication token. This ensures that the user can authenticate in the future without having to re-enter or store sensitive password details.
All of the user configuration settings and authentication tokens are stored locally on the device via SharedPreferences, Android’s dedicated settings storage mechanism16.
Tabular data, such as favourite genes within the app, are not suited to the key/value pair storage used in SharedPreferences17, and therefore are stored within an SQLite database on the user’s device. Data stored include the InterMine instance the data originated from, the (e.g.) gene’s identifiers, description, organism, and genomic coordinates.
Keyword search is available across lists, templates and gene search results. Search results from different databases are presented to the user as a single result set, sorted by the search relevance score generated by each originating database. Search results can be shared via email, instant messaging, and other sharing media in text format, using Android’s ACTION_SEND Intent functionality18.
InterMine also includes advanced analysis tools - particularly data visualisations - which may not be available via the API. To access the extended information about genes or gene lists, a user can load InterMine’s advanced report pages within the app itself. This is implemented via Android’s WebView19 functionality which allows live web pages to be embedded in an application (for example, Figure 2 shows an example of an embedded InterMine WebView).
The app is implemented in accordance with Google Material Design20 guidelines, providing a predictable environment for the user, and also supports Android version 4.0 and above, ensuring it is able to run on over 99% of active Android phones as of November 201821.
The keyword search simultaneously searches all InterMine databases selected through the settings option. Thus, a cross-organism overview of data available for further investigation is provided. Link-outs from the search results to each originating InterMine database provide access to detailed gene report pages. These pages collate information integrated for that gene and typically include functional summaries, ontology annotation, pathway, expression, interaction and disease data and links to additional related data.
As an example, searching for ‘dopamine’ returns dopamine-related genes from PhytoMine, MouseMine, HumanMine, TargetMine, FlyMine, RatMine, ZebrafishMine, WormMine, YeastMine, ThaleMine and HymenoperaMine (Figure 1; see Table 1 for urls). Selecting a gene from the results, for instance the human gene DRD4 (dopamine receptor D4) displays summary information about the gene, with a link to the full gene report available from the HumanMine database. Here we learn, for example, that polymorphisms in the DRD4 gene are associated with the disorder attention deficit hyperactivity disorder (ADHD) (Figure 2), a condition associated with low dopamine levels. The search results therefore facilitate rapid exploration across multiple organisms and kinds of data.
In addition to cross-organism gene search, the InterMine databases provide libraries of pre-built searches, called template searches. Such searches provide a user-friendly interface where the parameters for search filters can be specified. These templates range from simple searches, such as for a specified gene (or genes), return the corresponding Gene Ontology terms (represented as “Gene → Gene Ontology terms”), to more complex searches combining data of more than one type, such as “Tissue + interaction → genes”, which returns any genes expressed in the specified tissue that also interact with the product of a specified gene. Templates from each InterMine database are available within the InterMine App. The results are provided with a simple keyword search to facilitate further data browsing. For instance, continuing the above dopamine example, we can use a template search to identify genes in Drosophila associated with ADHD: on the templates page for the FlyMine database, we find the template “Disease -> Human genes and Orthologues” (Figure 3). This template allows one to specify disease names that contains “attention deficit”, and on running the template, this returns the disease Attention deficit-hyperactivity disorder along with associated human genes and their orthologues from the available InterMine databases. Using the ability to search within the results we are able to verify that the human gene we are interested in (DRD4) is associated with this condition, and that this gene has a predicted orthologue in Drosophila melanogaster, FBgn0053517, Dop2R. Through such iterative searching we can continue our investigation of this fly orthologue to identify, for instance, interacting partners, pathway and Gene Ontology annotations.
InterMine databases are especially suited to the analysis of lists of genes or other entities. Users can create their own lists, which can be stored between sessions if the user has an account for the relevant InterMine database. Again, direct links from lists to the underlying InterMine databases provide access to list analysis tools, for instance enrichment statistics that help identify surprising properties, such as publications that cite an unexpectedly large number of the list members, or GO terms or protein domains that are associated with an unexpectedly large number of list members.
Public lists, which are typically interesting sets of genes derived from publications and other studies, are often provided by the database operators. For instance, in FlyMine, eleven of the public lists provide sets of genes whose expression increases at defined times during drosophila embryogenesis, as derived from Hooper et al22. Further lists show genes that are expressed at increased levels in various adult fly tissues according to data from the FlyAtlas resource23. Within one of these sets, PL FlyAtlas_brain_top, we can identify a set of genes up-regulated in the brain. Checking within this list, we find that the dopamine receptor gene Dop2R (FBgn0053517) identified above is present. By following the link to the corresponding list analysis page on the underlying FlyMine website, and examining the enrichment statistics, we find that the Dop2R gene is part of a set in which the Gene Ontology term dopamine receptor signaling pathway (GO:0007212) occurs unexpectedly frequently (p-value 0.001303, with Holm-Bonferroni correction). It is also apparent that two other fly dopamine receptors, Dop1R1 (FBgn0011582) and Dop1R2 (FBgn0266137) are also found in this list (Figure 5).
The InterMine app provides a convenient way of searching for biological information across many model organism and other databases, allowing an overview of gene function and gene relationships to be pursued. Importantly, the InterMine app reduces the effort required to obtain data available in a range of InterMine databases by removing the need to visit each one individually. Further development of the app is planned, including a single sign-in for all of the InterMine instances through oAuth2; further search and analysis capabilities including extending the keyword search to include all data types (instead of just genes); better cross-InterMine search result ordering; an offline mode with data cached in a local database for access when no internet connection is available, and a more sophisticated query construction capability for more advanced users.
All data underlying the results are available as part of the article and no additional source data are required.
The InterMine app is available from the Google Play Store: https://play.google.com/store/apps/details?id=org.intermine.app.
Source code available from: https://github.com/intermine/intermine-android.
Archived source code at time of publication: https://doi.org/10.5281/zenodo.147864610.
License: GNU General Public License v2.
This work was supported by the Wellcome Trust (Grant number: 099133).
The funders had no role in study design, data collection and analysis, decision to publish, or preparation of the manuscript.
Views | Downloads | |
---|---|---|
F1000Research | - | - |
PubMed Central
Data from PMC are received and updated monthly.
|
- | - |
Is the rationale for developing the new software tool clearly explained?
No
Is the description of the software tool technically sound?
Partly
Are sufficient details of the code, methods and analysis (if applicable) provided to allow replication of the software development and its use by others?
Partly
Is sufficient information provided to allow interpretation of the expected output datasets and any results generated using the tool?
Partly
Are the conclusions about the tool and its performance adequately supported by the findings presented in the article?
Partly
Competing Interests: No competing interests were disclosed.
Reviewer Expertise: Bioinformatics
Is the rationale for developing the new software tool clearly explained?
Yes
Is the description of the software tool technically sound?
Yes
Are sufficient details of the code, methods and analysis (if applicable) provided to allow replication of the software development and its use by others?
Yes
Is sufficient information provided to allow interpretation of the expected output datasets and any results generated using the tool?
Yes
Are the conclusions about the tool and its performance adequately supported by the findings presented in the article?
Yes
Competing Interests: No competing interests were disclosed.
Reviewer Expertise: Bioinformatics, software development, genomics
Alongside their report, reviewers assign a status to the article:
Invited Reviewers | ||
---|---|---|
1 | 2 | |
Version 2 (revision) 07 Jun 19 |
read | |
Version 1 22 Nov 18 |
read | read |
Provide sufficient details of any financial or non-financial competing interests to enable users to assess whether your comments might lead a reasonable person to question your impartiality. Consider the following examples, but note that this is not an exhaustive list:
Sign up for content alerts and receive a weekly or monthly email with all newly published articles
Already registered? Sign in
The email address should be the one you originally registered with F1000.
You registered with F1000 via Google, so we cannot reset your password.
To sign in, please click here.
If you still need help with your Google account password, please click here.
You registered with F1000 via Facebook, so we cannot reset your password.
To sign in, please click here.
If you still need help with your Facebook account password, please click here.
If your email address is registered with us, we will email you instructions to reset your password.
If you think you should have received this email but it has not arrived, please check your spam filters and/or contact for further assistance.
Comments on this article Comments (0)