SUMMARY: Dalliance is a new genome viewer which offers a high level of interactivity while running within a web browser. All data is fetched using the established distributed annotation system (DAS) protocol, making it easy to customize the browser and add extra data. AVAILABILITY AND IMPLEMENTATION: Dalliance runs entirely within your web browser, and relies on existing DAS server infrastructure. Browsers for several mammalian genomes are available at http://www.biodalliance.org/, and the use of DAS means you can add your own data to these browsers. In addition, the source code (Javascript) is available under the BSD license, and is straightforward to install on your own web server and embed within other documents.
SUMMARY: Dalliance is a new genome viewer which offers a high level of interactivity while running within a web browser. All data is fetched using the established distributed annotation system (DAS) protocol, making it easy to customize the browser and add extra data. AVAILABILITY AND IMPLEMENTATION: Dalliance runs entirely within your web browser, and relies on existing DAS server infrastructure. Browsers for several mammalian genomes are available at http://www.biodalliance.org/, and the use of DAS means you can add your own data to these browsers. In addition, the source code (Javascript) is available under the BSD license, and is straightforward to install on your own web server and embed within other documents.
Since the early days of the draft human genome, web-based genome browsers such as Ensembl, GBrowse and the UCSC browser have been popular and important tools for biologists working on datasets large and small (Hubbard ; Rhead ; Stein ). Despite increasing sophistication of data production and analysis methods, the importance of ‘eyeballing’ data to generate hypotheses or simply check the results of new analyses cannot be understated. Perhaps surprisingly, while genome browsing tools remain under very active development, the general approach taken by the major browsers has remained constant: a complex piece of server software reads databases, integrates information and creates bitmap image files that are displayed in the user's web browser window. This approach is reliable and places low demands on the end user's machine. However, it imposes serious limits on the level of interactivity, since any change in the display requires a full reload. There has been some interest in desktop applications, such as IGV (Robinson ), which shift more work to the client side and increase the level of interactivity. Examples such as Apollo (Lewis ) and Otterlace/Zmap (Searle ) have become important tools to support the specialized activity of genome annotation. However, given the availability of reasonably functional tools which run in the web browser, the majority of users have been reluctant to install a heavyweight desktop client.With that said, the web browser is not a static target, and the possibility of writing rich client applications in Javascript that run in web browsers has increased steadily over the last few years. In particular, making calls back to the server and fetching additional information without fully refreshing the page (‘AJAX’) has become a standard part of many web developers' toolkits. There have already been several attempts to improve genome browsing using a degree of client side interactivity. One approach uses large sets of pre-rendered image tiles, analogous to online mapping applications (Yates ) while others have used CSS to perform limited drawing within the user's browser (Skinner ). However, the former seriously limits the flexibility of the system—especially when it comes to adding new data—while the latter offers only limited graphical capabilities. We believe that the time is ripe for a new and uncompromising approach to combine the best features of web-based and desktop genome browsers.To address the limitations in current browsers, we have developed Dalliance, a new genomics tool which runs within the web browser but uses a number of recent technologies—most importantly, the W3C scalable vector graphic model (SVG)—to offer a level of interactivity which is competitive with desktop applications. Dalliance uses the standard distributed annotation system (DAS) protocol (Jenkinson ), already used to add extra tracks to the web-based browsers including Ensembl and Gbrowse, to fetch sequence, annotations and alignments from servers around the network, before integrating the data into a smoothly-scrolling vector graphics display (Fig. 1).
Fig. 1.
Typical display from the Dalliance genome browser. Quantitative data from functional genomics experiments can be displayed in a range of styles, configured using DAS stylesheets.
Typical display from the Dalliance genome browser. Quantitative data from functional genomics experiments can be displayed in a range of styles, configured using DAS stylesheets.Taking this approach offers a number of advantages. Following the DAS model means that researchers wanting to show their own data in a browser can easily do so without hosting their own copies of the reference genome and basic annotation databases, and allows data consumers to combine datasets in novel ways. Our choice of SVG gives a rich graphics platform comparable with APIs available on desktop platforms: we currently implement all the glyph types from the DAS stylesheet specification, and it would be straightforward to add more. SVG takes a scene graph approach (i.e. the rendering code builds a tree of objects describing what should be drawn, rather than calling rendering primitives directly), which means that smooth scrolling and export of high-quality vector graphics in SVG or, with some straightfoward server support, PDF format for publication or presentation are both straightforward. Because each ‘track’ of features is fetched using a separate—although usually concurrent—network request, and displayed as soon as the data arrives, one slow data source does not hold up the display of the rest of the data. And by fetching some excess data on each side of what is currently being displayed, the loading time can often be hidden from the user entirely.In recognition that the reference genome sequences of most species are still moving targets, and that data released a few years ago may still be valuable today, even if it isn't actively maintained, we allow DAS sources targeted to one version of a genome (e.g. human NCBI36/hg18) to be remapped on the fly to another (e.g. GRCh37/hg19). The DAS protocol is used even for this. We use the standard DAS alignment command—although in a somewhat novel way—to retrieve the alignment data used for the mapping step, and metadata from the DAS registry tells the client when remapping is necessary.Dalliance's model of accessing data from multiple sources (via DAS), rather than from a single central server, is also ideally suited to an emerging strategy for the handling of next generation sequencing datasets. The dramatically increased output and decreased costs of sequencing has led to it being used as an assay tool for a wide range of experiment types including genome variation, transcriptional expression, a readout for DNA protein binding. Traditionally, after mapping to a reference genome, sequence reads are processed and stored in a database in order to provide access for users. However, the high overhead in maintaining such databases does not scale to the amounts of data now being generated by such experiments. Kent have instead proposed processing the output of mapping pipelines for an entire experiment into a single, indexed flat file, made accessible to users by simply placing it on a local web server. This is efficient since browsers can be configured to access portions of these flat files, only downloading data for the region currently being displayed. This indexed file based approach is in the process of being adopted as a submission standard to short read archives at EBI and NCBI using the BAM format implementing Kent's strategy (Li ), which will make these files very widely available. As part of the Dalliance project, a lightweight BAMMappingSource has been developed to allow Dalliance to access such indexed files as if they were DAS sources.Dalliance is written in standard Javascript, using APIs which are being standardized under the HTML5 banner. It places relatively high demands on the web browser, but is tested regularly and runs smoothly on Mozilla Firefox (3.6 or later), Safari (5.0 or later) and Google Chrome (5.0 or later). Microsoft Internet Explorer does not currently include SVG support, but it is promised for version 9, and we are optimistic that at that point it will be possible to support up-to-date versions of all major web browsers. The source code is freely available, and is written as a self contained object which can be inserted into almost any HTML page, so it can be combined with blogs, wikis, etc., or added as a browser component to an existing HTML database interface.Dalliance is a practical genome browser that provides a smooth, interactive, user experience while handling large volumes of data. Since all data is loaded via DAS, it is straightforward to add additional data, or even a complete new genome dataset. The modern web browser offers a rich platform for data visualization, including complex scientific datasets, and we expect to see similar technological approaches deployed widely in the future.
Authors: Lincoln D Stein; Christopher Mungall; ShengQiang Shu; Michael Caudy; Marco Mangone; Allen Day; Elizabeth Nickerson; Jason E Stajich; Todd W Harris; Adrian Arva; Suzanna Lewis Journal: Genome Res Date: 2002-10 Impact factor: 9.043
Authors: Mitchell E Skinner; Andrew V Uzilov; Lincoln D Stein; Christopher J Mungall; Ian H Holmes Journal: Genome Res Date: 2009-07-01 Impact factor: 9.043
Authors: Andrew M Jenkinson; Mario Albrecht; Ewan Birney; Hagen Blankenburg; Thomas Down; Robert D Finn; Henning Hermjakob; Tim J P Hubbard; Rafael C Jimenez; Philip Jones; Andreas Kähäri; Eugene Kulesha; José R Macías; Gabrielle A Reeves; Andreas Prlić Journal: BMC Bioinformatics Date: 2008-07-22 Impact factor: 3.169
Authors: Brooke Rhead; Donna Karolchik; Robert M Kuhn; Angie S Hinrichs; Ann S Zweig; Pauline A Fujita; Mark Diekhans; Kayla E Smith; Kate R Rosenbloom; Brian J Raney; Andy Pohl; Michael Pheasant; Laurence R Meyer; Katrina Learned; Fan Hsu; Jennifer Hillman-Jackson; Rachel A Harte; Belinda Giardine; Timothy R Dreszer; Hiram Clawson; Galt P Barber; David Haussler; W James Kent Journal: Nucleic Acids Res Date: 2009-11-11 Impact factor: 16.971
Authors: T J P Hubbard; B L Aken; S Ayling; B Ballester; K Beal; E Bragin; S Brent; Y Chen; P Clapham; L Clarke; G Coates; S Fairley; S Fitzgerald; J Fernandez-Banet; L Gordon; S Graf; S Haider; M Hammond; R Holland; K Howe; A Jenkinson; N Johnson; A Kahari; D Keefe; S Keenan; R Kinsella; F Kokocinski; E Kulesha; D Lawson; I Longden; K Megy; P Meidl; B Overduin; A Parker; B Pritchard; D Rios; M Schuster; G Slater; D Smedley; W Spooner; G Spudich; S Trevanion; A Vilella; J Vogel; S White; S Wilder; A Zadissa; E Birney; F Cunningham; V Curwen; R Durbin; X M Fernandez-Suarez; J Herrero; A Kasprzyk; G Proctor; J Smith; S Searle; P Flicek Journal: Nucleic Acids Res Date: 2008-11-25 Impact factor: 16.971
Authors: S E Lewis; S M J Searle; N Harris; M Gibson; V Lyer; J Richter; C Wiel; L Bayraktaroglu; E Birney; M A Crosby; J S Kaminker; B B Matthews; S E Prochnik; C D Smithy; J L Tupy; G M Rubin; S Misra; C J Mungall; M E Clamp Journal: Genome Biol Date: 2002-12-23 Impact factor: 13.583
Authors: Alejandro Reyes; Simon Anders; Robert J Weatheritt; Toby J Gibson; Lars M Steinmetz; Wolfgang Huber Journal: Proc Natl Acad Sci U S A Date: 2013-09-03 Impact factor: 11.205
Authors: Christoph N Schlaffner; Georg J Pirklbauer; Andreas Bender; Judith A J Steen; Jyoti S Choudhary Journal: J Vis Exp Date: 2018-05-22 Impact factor: 1.355