Roslin Bioinformatics - ArkMAP - JEnsembl API

The Biomart Web Services used by the original ArkMAP have been replaced by integration of the JEnsembl API. The current version of ArkMAP(JEnsembl), available as a Web Start download, and is configured (by the ensembl-config jar artifact) to connect to the currently available datasources available at Ensembl or EnsemblGenomes, giving access to a wider range of Vertebrate, Plant, Fungi, Protist, Metazoan and Bacterial genomes than provided by Biomart web service.

The JEnsembl architecture allows for updating the ensembl-config artifact as new releases become available and any changes to the the mapping rules between release version, data schema, data queries and API objects are captured. However, the backwards compatibility of JEnsembl configuration allows ArkMAP to connect to earlier known releases of Ensembl datasources. In contrast the original ArkMAP(Biomart) application was vulnerable to changes in the Biomart schema or web services, and could only provide data from a single current Ensembl vertebrates release.

The figures presented below capture a typical usage of ArkMAP(JEnsembl) to retrieve gene-annotated chromosome maps from Ensembl, and demonstrate use of comparative genomics functionality to retrieve gene orthologies and chromosomal regions of conserved synteny between species.

Code snips are shown to provide a flavour of the JEnsembl API usage: 

   ArkMAP application code is in grey;
   JEnsembl API code is in black;

Figure 1: The refactored ArkMAP application uses the JEnsembl API to retrieve data from Ensembl (vertebrate) datasources or Ensembl Genomes datasources.

A particular database release can be selected from those available at each data source - or 'ALL' releases loaded. (NOTE: loading 'ALL' available releases may take several minutes, especially for the Bacterial resource which contains many thousands of species).

Figure 2: Any species discovered at the chosen datasource is available for analysis, and any configured Ensembl release version.

  DBRegistry eRegistry 
                    = new DBRegistry(DataSource.ENSEMBLDB);
  Collection<DBSpecies> spp = ensRegistry.getSpecies();
  DBSpecies chimp = eRegistry.getSpeciesByAlias("chimp");

Figure 3a, b: The gene map for an entire or partial chromosome is selected; gene maps downloaded from Ensembl datasources may be configured and zoomed like any other map in ArkMAP

DAChromosome chrX = chimp..getChromosomeByName("X");

List<DAGene> genes = chrX.getGenesOnRegion(1, 10000000);

EnsemblMap map = new EnsemblMap(chrX, 1, 10000000);

for (Mapping m : chrX.getMappings(FeatureType.gene)) {

Figure 4a, b: Details for individual genes may be displayed, and orthologies within and between selected species discovered. This is facilitated by JEnsembl providing access to the 'compara' databases.

DAGene gene = mappingView.getMapping().getGene(); 
DBSpecies human = eRegistry.getSpeciesByAlias("human");
List<DAHomologyPairRelationship> homos 
                                             = gene.getHomologies(human);

Figure 5: Again using JEnsembl access to the 'compara' data, any selected chromosome region may be searched for regions of conserved synteny in any available target species.

Coordinate coord 
           = new Coordinate(range[0].intValue(), range[1].intValue());
DBSpecies human = eRegistry.getSpeciesByAlias("human");

HashMap<DADNASequence, MappingSet> syntenies 
       = chr1.getRegionsOfConservedSynteny(coord, human);
for (DADNASequence seq : syntenies.keySet()) {
     if  (seq  instanceof  DAChromosome)  {
          Coordinate coords = syntenies.get(seq).getExtent();
          EnsemblMap map = new EnsemblMap((DAChromosome) seq, 
                             coords.getStart(), coords.getEnd());

Figure 6: The potential regions of conserved regions can be aligned in ArkMAP and re-orientated, displaying colour-coded orthology relationships.

Figure 7: Complex multiple alignments of regions of conserved synteny may be built up, allowing chromosomal evolution to be explored.

Figure 8: Drag-and-drop repositioning, rescaling and configurability of each map displayed in ArkMAP provides novel visualisation tool with which to explore these evolutionary patterns.