miRMaid: a unified programming interface for microRNA data resources
© Jacobsen et al; licensee BioMed Central Ltd. 2010
Received: 11 August 2009
Accepted: 14 January 2010
Published: 14 January 2010
MicroRNAs (miRNAs) are endogenous small RNAs that play a key role in post-transcriptional regulation of gene expression in animals and plants. The number of known miRNAs has increased rapidly over the years. The current release (version 14.0) of miRBase, the central online repository for miRNA annotation, comprises over 10.000 miRNA precursors from 115 different species. Furthermore, a large number of decentralized online resources are now available, each contributing with important miRNA annotation and information.
We have developed a software framework, designated here as miRMaid, with the goal of integrating miRNA data resources in a uniform web service interface that can be accessed and queried by researchers and, most importantly, by computers. miRMaid is built around data from miRBase and is designed to follow the official miRBase data releases. It exposes miRBase data as inter-connected web services. Third-party miRNA data resources can be modularly integrated as miRMaid plugins or they can loosely couple with miRMaid as individual entities in the World Wide Web. miRMaid is available as a public web service but is also easily installed as a local application. The software framework is freely available under the LGPL open source license for academic and commercial use.
miRMaid is an intuitive and modular software platform designed to unify miRBase and independent miRNA data resources. It enables miRNA researchers to computationally address complex questions involving the multitude of miRNA data resources. Furthermore, miRMaid constitutes a basic framework for further programming in which microRNA-interested bioinformaticians can readily develop their own tools and data sources.
MicroRNAs (miRNAs) are short regulatory RNA molecules that are encoded in the genomes of animals, plants and viruses. They function as post-transcriptional regulators of mRNAs and have gained high interest due to their importance in many biological processes [1–3] and their potential as drug targets . The relatively recent discovery and the main mechanism of action of miRNA-based regulation, which is based on Watson-Crick base pairing, has led to a recent explosion in algorithms, websites and databases that provide different data about microRNAs.
The large number of miRNAs discovered during the last couple of years has been supported by miRBase as the central clearing house for miRNA nomenclature and annotation [5, 6]. At the miRBase web site, scientists can submit newly discovered miRNAs and information about sequences and homologies in other species. Today miRBase has become a central and highly useful website for scientists who search for information about specific miRNAs. A number of flat files in different formats are made available with each release of miRBase to support computational analysis. In addition to miRBase, a variety of miRNA data resources has been developed by other research groups. These include resources that deal with genomic contexts and evolutionary conservation of miRNAs (miROrtho , miRGen , miRfunc , microTranspoGene ), prediction and validation of miRNA targets (TargetScan , miRNAMap , microRNA.org , miRDB , miRecords , TarBase ) and biological functions and phenotypes of individual miRNAs (miR2Disease , DIANA-mirPath , MMIA ). These miRNA resources are primarily available online as point-and-click web sites.
It is currently a burdensome task to do an integrated computational analysis using data from one or more of the online miRNA resources. For each resource, it requires manually downloading raw data files (if available), understanding the sometimes arcane format and structure of the resource in question and finally, construction of a script to parse the content and various identifiers. The researcher has to go through all these steps, and repeat them each time a resource is updated. A more simple procedure would reduce errors, increase reproducibility of the scientific results and make the data analysis less labor-intensive. miRMaid is a software framework designed to eliminate the aforementioned preprocessing steps. It provides non-redundant, structured and inter-connected data that are accessible both through an object oriented interface (using the Ruby programming language) and as web-based resources that are accessible remotely using most computer programming languages. The web-based resources follow a set of design principles, Representational State Transfer (REST) , implying that every resource is uniquely and uniformly addressable using an URL. The effect is that the web resources can be accessed equivalently by computer programs and researchers using a web browser.
The miRNA precursor, processed from longer primary transcripts by endonucleases.
name, accession, description, sequence, comment
Mature,GenomeContext, GenomePosition, Paper, PrecursorCluster, Species, PrecursorFamily
The mature miRNA, processed from the miRNA precursor by Dicer.
name, accession, evidence, experiment, similarity, sequence
The taxonomic species having miRNAs encoded in the genome.
abbreviation, name, division, taxonomy, genome_assembly
The miRBase grouping of precursors into families.
name, accession, description
Other gene models overlapping the miRNA precursor in genome.
overlap_sense, overlap_type, transcript_source, transcript_name
The position of the miRNA precursor in the genome.
xsome, contig_start, contig_end, strand
A grouping of precursors occurring close to each other in the genome - presumably transcribed together.
A grouping of mature miRNAs based on the 6mer seed (bases 2-7) or 7mer seed (bases 2-8).
Papers related to the annotation and identification of a miRNA as reported in miRBase.
medline, title, author, journal
Results and Discussion
Maintenance and lifecycle of miRMaid
miRBase is the data source of the core miRMaid framework. With every data release of miRBase there will be a corresponding public version of the miRMaid web service) while older miRMaid versions will be kept available for a limited time period. Besides being a public web service, miRMaid can easily be installed locally. When a new version of MirBase is released, a local installation can be updated simply by reinstalling the miRMaid framework (together with optional plugins) using a single command on the command line. The source code for miRMaid is under the LGPL license and utilizes the Git multi-user versioning system (accessible via http://www.github.com). When changes are committed and released in the miRMaid project repository, it is a simple task to pull the changes and update a local miRMaid installation.
In miRMaid, there are unit tests for all models and RESTful resources. This is done to assist development and so that end-users can verify that their local miRMaid installation behaves as expected. The test suite can be run from the command-line. Plugins must also specify tests for models, RESTful resources and connections between the plugin and the core framework. The plugin unit tests are straightforward to implement and they are automatically evaluated together with the core test suite in miRMaid.
Local Ruby clients with direct access to data models
As detailed earlier, data and functionality in miRMaid can be extended by plugins. We have developed a proof-of-concept plugin using data from the miR2Disease web service . The plugin extends miRMaid with two data models and RESTful resources: diseases and disease links. A disease link associates a mature miRNA and a disease and it carries information about the association, for example PubMed reference and target genes. A specific disease instance can be reached using the URL,/m2d_diseases/DOID, where DOID is the Disease Ontology identifier. Disease links are identified by a concatenation of DOID, mature miRNA name and PubMed ID. Figure 3 demonstrates how the plugin connects with miRMaid to integrate the disease link model and resource with the miRMaid mature model and resource. The plugin should also define HTML representations for the resources that are being introduced. These plugin HTML representations are accessible from a web browser and are automatically integrated in the menu layout of the miRMaid web site. The net effect is a complete integration of miRMaid and plugin in both the web site and application interface. We host a public version of miRMaid with example plugins activated at http://plugins.mirmaid.org.
First of all, miRMaid is a software framework aiming at easing the manual workload for researchers when doing computational analyses involving miRNA data. miRMaid provides a uniform, intuitive and flexible application interface that is independent of programming language. miRMaid is designed to live as a public service as well as being installed locally. The public service should be used when doing a simple and quick analysis and for integration with other web services. The local installation (using the Ruby data models) is recommended when a more data extensive analysis is needed. miRMaid is open-source software and users can contribute to the framework through the public source code repository or they can develop a miRMaid plugin that can be shared with the rest of the community. Furthermore, individual users or labs can integrate private data as miRMaid plugins or they can couple existing information systems loosely to miRMaid using the RESTful API.
We believe that the miRMaid platform can pave a new and exciting way for scientists to share data and programs that involve miRNAs. miRMaid follows a design philosophy that web services and resources should be able to integrate: web services should participate in the web instead of merely living on the top of it. We envision that if new data resources are released as miRMaid plugins, or at least follow the RESTful design principles for web services, then this would be a big step towards a global integration of miRNA data. By developing miRMaid we hope that such an effort can be coordinated not only by huge centralized software development teams at Ensembl and the UCSC genome browser, but also by a community that shares a common scientific interest.
Availability and requirements
Project name: miRMaid
Project home page: http://www.mirmaid.org.
Operating systems: Server software: Linux and Mac OSX, Client software: Platform independent.
Programming language; Server software: Ruby. RESTful clients: most modern programming languages.
Other requirements; Database management system: PostgreSQL, MySQL or SQLite. Other minor requirements are detailed at http://www.mirmaid.org.
License: Free for academic and commercial users under the GNU Lesser General Public License (LGPL).
Public servers: A public server running the current miRMaid release can be found at http://current.mirmaid.org and a server instance with example plugins activated can be found at http://plugins.mirmaid.org.
AJ was funded by grants from the BioSys Innovation Network and the Novo Nordisk Foundation.
- Bartel DP: MicroRNAs: Genomics, Biogenesis, Mechanism, and Function. Cell 2004, 116: 281–297. 10.1016/S0092-8674(04)00045-5View ArticlePubMedGoogle Scholar
- Chekulaeva M, Filipowicz W: Mechanisms of miRNA-mediated post-transcriptional regulation in animal cells. Current Opinion in Cell Biology 2009, 21: 452–460. 10.1016/j.ceb.2009.04.009View ArticlePubMedGoogle Scholar
- Medina PP, Slack FJ: microRNAs and cancer: an overview. Cell Cycle 2008, 7: 2485–2492.View ArticlePubMedGoogle Scholar
- Petri A, Lindow M, Kauppinen S: MicroRNA silencing in primates: towards development of novel therapeutics. Cancer Res 2009, 69: 393–395. 10.1158/0008-5472.CAN-08-2749View ArticlePubMedGoogle Scholar
- Griffiths-Jones S, Saini HK, van Dongen S, Enright AJ: miRBase: tools for microRNA genomics. Nucleic Acids Res 2008, 36: D154–158. 10.1093/nar/gkm952View ArticlePubMedPubMed CentralGoogle Scholar
- Ambros V, Bartel B, Bartel DP, et al.: A uniform system for microRNA annotation. RNA 2003, 9: 277–279. 10.1261/rna.2183803View ArticlePubMedPubMed CentralGoogle Scholar
- Gerlach D, Kriventseva EV, Rahman N, Vejnar CE, Zdobnov EM: miROrtho: computational survey of microRNA genes. Nucleic Acids Res 2009, 37: D111–117. 10.1093/nar/gkn707View ArticlePubMedPubMed CentralGoogle Scholar
- Megraw M, Sethupathy P, Corda B, Hatzigeorgiou AG: miRGen: a database for the study of animal microRNA genomic organization and function. Nucleic Acids Res 2007, 35: D149–155. 10.1093/nar/gkl904View ArticlePubMedPubMed CentralGoogle Scholar
- Taccioli C, Fabbri E, Visone R, et al.: UCbase & miRfunc: a database of ultraconserved sequences and microRNA function. Nucleic Acids Res 2009, 37: D41–48. 10.1093/nar/gkn702View ArticlePubMedPubMed CentralGoogle Scholar
- Levy A, Sela N, Ast G: TranspoGene and microTranspoGene: transposed elements influence on the transcriptome of seven vertebrates and invertebrates. Nucleic Acids Res 2008, 36: D47–52. 10.1093/nar/gkm949View ArticlePubMedPubMed CentralGoogle Scholar
- Lewis B, Burge C, Bartel D: Conserved seed pairing, often flanked by adenosines, indicates that thousands of human genes are microRNA targets. Cell 2005, 120: 20. 15. 15. 10.1016/j.cell.2004.12.035View ArticleGoogle Scholar
- Hsu S, Chu C, Tsou A, et al.: miRNAMap 2.0: genomic maps of microRNAs in metazoan genomes. Nucleic Acids Res 2008, 36: D165–169. 10.1093/nar/gkm1012View ArticlePubMedPubMed CentralGoogle Scholar
- Betel D, Wilson M, Gabow A, Marks DS, Sander C: The microRNA.org resource: targets and expression. Nucleic Acids Res 2008, 36: D149–153. 10.1093/nar/gkm995View ArticlePubMedPubMed CentralGoogle Scholar
- Wang X: miRDB: a microRNA target prediction and functional annotation database with a wiki interface. RNA 2008, 14: 1012–1017. 10.1261/rna.965408View ArticlePubMedPubMed CentralGoogle Scholar
- Xiao F, Zuo Z, Cai G, et al.: miRecords: an integrated resource for microRNA-target interactions. Nucleic Acids Res 2009, 37: D105–110. 10.1093/nar/gkn851View ArticlePubMedPubMed CentralGoogle Scholar
- Papadopoulos GL, Reczko M, Simossis VA, Sethupathy P, Hatzigeorgiou AG: The database of experimentally supported targets: a functional update of TarBase. Nucleic Acids Res 2009, 37: D155–8. 10.1093/nar/gkn809View ArticlePubMedPubMed CentralGoogle Scholar
- Jiang Q, Wang Y, Hao Y, et al.: miR2Disease: a manually curated database for microRNA deregulation in human disease. Nucleic Acids Res 2009, 37: D98–104. 10.1093/nar/gkn714View ArticlePubMedPubMed CentralGoogle Scholar
- Papadopoulos GL, Alexiou P, Maragkakis M, Reczko M, Hatzigeorgiou AG: DIANA-mirPath: Integrating human and mouse microRNAs in pathways. Bioinformatics 2009, 25: 1991–1993. 10.1093/bioinformatics/btp299View ArticlePubMedGoogle Scholar
- Nam S, Li M, Choi K, et al.: MicroRNA and mRNA integrated analysis (MMIA): a web tool for examining biological functions of microRNA expression. Nucleic Acids Res 2009, 37: W356–362. 10.1093/nar/gkp294View ArticlePubMedPubMed CentralGoogle Scholar
- Fielding RT, Taylor RN: Principled design of the modern Web architecture. ACM Trans Internet Technol 2002, 2: 115–150. 10.1145/514183.514185View ArticleGoogle Scholar
- R Development Core Team: R: A Language and Environment for Statistical Computing. Version 2.10.1 2009.Google Scholar
- Jiang Q, Wang Y, Hao Y, et al.: miR2Disease: a manually curated database for microRNA deregulation in human disease. Nucleic Acids Res 2009, 37: D98-D104. 10.1093/nar/gkn714View ArticlePubMedPubMed CentralGoogle Scholar
This article is published under license to BioMed Central Ltd. This is an Open Access article distributed under the terms of the Creative Commons Attribution License (http://creativecommons.org/licenses/by/2.0), which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.