|
gesel
Validating Gesel database files
|
The Gesel database uses client-side HTTP range requests to extract gene sets and other details. This document describes the file formats used by Gesel clients. Once created, the files can be hosted on a static file server without requiring any more logic.
The Gesel database files contain information about the gene set collections. Links to the specifications for these files are listed below:
The Gesel gene annotation files contain information about the genes involved in the gene sets. Links to the specifications for these files are listed below:
Check out the feedstock repository for some concrete instances of these specifications.
Given a suite of Gesel files, we can use the gesel C++ library to validate their formatting.
This takes the path prefix to a species-specific suite of Gesel files and validates their contents, throwing an error if any invalid formatting is detected. Note that the gene mapping files can be stored in a different directory from the other files.
Check out the reference documentation for more information.
The following table lists the correspondence between the gesel library and the various Gesel file specifications.
| Library | Database | Gene |
|---|---|---|
| 0.1.* | 0.1.0 | 0.1.0 |
| 0.2.* | 0.1.0 | 0.1.0, 0.2.0 |
If you're using CMake, you just need to add something like this to your CMakeLists.txt:
Then you can link to gesel to make the headers available during compilation:
Alternatively, you can install the library by cloning a suitable version of this repository and running the following commands:
Then you can use find_package() as usual:
If you're not using CMake, the simple approach is to just copy the files in the include/ subdirectory - either directly or with Git submodules - and include their path during compilation with, e.g., GCC's -I. You will also need to link to the dependencies listed in the extern/CMakeLists.txt directory.