Fork me on GitHub

BridgeDB: Middleware for ID mapping

Many complementary solutions are available for the identifier mapping problem. This creates an opportunity for bioinformatics tool developers. Tools can be made to flexibly support multiple mapping services or mapping services could be combined to get broader coverage. This approach requires an interface layer between tools and mapping services.

This is the background behind a paper on BridgeDB by Iersel, et al. BridgeDB is an ID mapping framework that provides a standardized interface which can be used to connect bioinformatics tools to different identifier mapping services. Without pushing it myself, I can only comment on intent, and this is exactly the kind of idea that some of us have been encouraging bioinformatics types to develop and use.

One of the most important aspects of building scalable applications is to remove dependencies and to keep things loosely coupled. We are increasingly seeing loosely-coupled tools being developed and encouraged in the life science space, and this is an excellent example of this trend. BridgeDB seeks to abstract away any dependencies to specific mapping services by providing a layer that allows the tools developer to switch between flat files, relational databases and several different web services.

BriedgeDB is distributed as a Java library and is open source, under an Apache license, which is ideal for libraries. There is also a REST web service, which is very neat (although many of the examples threw exceptions at me). You can pull in a list of sources using this query (which also has some duplication problems). But since the library is available, setting up servers should be relatively trivial.

Check the paper out as an example of the kinds of middleware libraries and services.

Reblog this post [with Zemanta]

This entry was posted in Genes, Informatics, Omics, Open Source, Software & Internet. Bookmark the permalink. Post a comment or leave a trackback: Trackback URL.

4 Comments

  1. Posted January 12, 2010 at 13:50 | Permalink

    Thanks for the encouraging words.

    Please let me know when you see those exceptions again. I really want to make sure that everything works “as advertised”. You can email us at bridgedb-discuss {AT} googlegroups.com.

  2. Posted January 12, 2010 at 13:55 | Permalink

    @Neil That will never happen, for several reasons: First it would require a huge collaboration effort which is unpractical. Second, you need identifier mapping anyway for between e.g. microarray reporters and genes. Finally, the way identifiers are used depends on your point of view. For example, are lactate and lactic acid a single entity or two separate entities? The answer depends on whether you are a biologist or a chemist. See also http://www.helixsoft.nl/blog/?p=133

  3. Posted January 12, 2010 at 20:50 | Permalink

    Thanks for the encouraging words.

    Please let me know when you see those exceptions again. I really want to make sure that everything works “as advertised”. You can email us at bridgedb-discuss {AT} googlegroups.com.

  4. Posted January 12, 2010 at 20:55 | Permalink

    @Neil That will never happen, for several reasons: First it would require a huge collaboration effort which is unpractical. Second, you need identifier mapping anyway for between e.g. microarray reporters and genes. Finally, the way identifiers are used depends on your point of view. For example, are lactate and lactic acid a single entity or two separate entities? The answer depends on whether you are a biologist or a chemist. See also http://www.helixsoft.nl/blog/?p=133

2 Trackbacks

  1. [...] a comment » Yesterday, Deepak wrote about BridgeDB, a software package to deal with the “identifier mapping problem”. Put simply, [...]

  2. By BridgeDb paper published « Helixsoft on January 12, 2010 at 13:43

    [...] Deepak Singh uses the term “middleware”, which is a good way to explain it, if that sort of word means anything to you. [...]

Post a Comment

Your email is never published nor shared. Required fields are marked *

*
*

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

blog comments powered by Disqus
  • Archives

  • Disclaimer

    All opinions on this blog are my own and do not reflect those of my employers, past or present