Introduction

Genome annotations are often published as plain text files describing genomic features and their subcomponents by an implicit annotation graph. In this paper, we present the GenomeTools, a convenient and efficient software library and associated software tools for developing bioinformatics software intended to create, process or convert annotation graphs. The GenomeTools strictly follow the annotation graph approach, offering a unified graph-based representation. This gives the developer intuitive and immediate access to genomic features and tools for their manipulation. To process large annotation sets with low memory overhead, we have designed and implemented an efficient pull-based approach for sequential processing of annotations. This allows to handle even the largest annotation sets, such as a complete catalogue of human variations. Our object-oriented C-based software library enables a developer to conveniently implement their own functionality on annotation graphs and to integrate it into larger workflows, simultaneously accessing compressed sequence data if required. The careful C implementation of the GenomeTools does not only ensure a light-weight memory footprint while allowing full sequential as well as random access to the annotation graph, but also facilitates the creation of bindings to a variety of script programming languages (like Python and Ruby) sharing the same interface.

Publications

  1. GenomeTools: a comprehensive software library for efficient processing of structured genome annotations.
    Cite this
    Gremme G, Steinbiss S, Kurtz S, 2013-05-01 - IEEE/ACM transactions on computational biology and bioinformatics

Credits

  1. Gordon Gremme
    Developer

  2. Sascha Steinbiss
    Developer

  3. Stefan Kurtz
    Investigator

Community Ratings

UsabilityEfficiencyReliabilityRated By
0 user
Sign in to rate
Summary
AccessionBT002498
Tool TypeApplication
Category
PlatformsLinux/Unix
TechnologiesC, C++
User InterfaceTerminal Command Line
Download Count0
Submitted ByStefan Kurtz