The BioQ web application uses several relational database models to provide documentation and query tools for the various genomic databases. All schemas and ER diagrams can be found in the MySQL Workbenchdocument
perl/dbdoc/db_doc_model.mwb |
on our Subversion server.
This entity-relationship (ER) diagram shows the core relational model for our database documentation (from subversion revision 70).
Our BERT relational model is designed to document a genomic database by tracing the experimental source of the data. The key entities in the models are the biologics, the experiments and the experimental results as illustrated in the following diagram.
In the model, the tables in a relational database are grouped into flow groups that can input, output or reference material for the various experiments and processes that determined the data. Here is an example from our BioQ web application of the BERT model being applied to linkage disequilibrium (LD) data from the HapMap database. In BioQ, the diagram is interactive and can be used to navigate documentation and query the actual data.
The following ER diagram shows the relational database implementation of the BERT model (from subversion revision 70, see the MySQL Workbench file
perl/dbdoc/db_doc_model.mwb |
).
This is our model for storing queries in the documentation database. This information is used to populate the BioQ queries for each database.
These provide descriptions of database, tables and columns, respectively, in the BioQ genomic databases.
Bibliographic references.
Web links.
In the BERT model, a flow group is a group of tables that can be input or output for a specific process.
The tables in a flow group.
Tags that describe a flow group. These are not the same as filters.
A process in the BERT model.
A group of tables, columns and/or databases which are input/output for a process or experiment in the BERT model. It's possible to have multiple groups with the same name for different processes. Each process must have a group and groups may be singletons.
Tags that describe a process. These can also be used as filters. No entries as of version 70.
A query used in the BioQ web application.
This is used in Process.pm to look up information about columns being queried.
Reference table showing things like Subversion revision number.
For recording and describing relationships between tables in genomic databases. No entries as of version 70.
For each table with table_type='result', determine if it can be traced to subjects and/or biologics.
Items used in the the dbDoc autocomplete search tool.
Tags are used to group tables into categories. The 'tags' table contains names and descriptions of the tags.
This records which tags go with which tables.
This is used to take an existing genomic database, such as HapMap, and set up entries in the dbDoc database for all the tables and columns in the database. This will ensure that entries for the different tables and columns exist so that more detailed documentation can be added.
Example: see /projects/bioinf/ssaccone/hapmap/dbdoc/hapmap_p3r3_dbsnp132.sh