Tracking experimental procedures and recording all the data related to biological samples is fundamental to monitoring molecular and in vivo experiments. However, researchers also aim at integrating such heterogeneous information to generate new knowledge. The Query Module can extract all information of interest from the operative tier in a uniform way by exploiting graphical tools. To date, the module includes the following functionalities.
Query generator aims performing queries and/or defining templates representing frequent queries. The query set is defined as a workflow composed of blocks, named query blocks. Each query block defines the object that will be retrieved (e.g., aliquot, xenopatient), its related information of interest and the filtering conditions. Before retrieving the data from the corresponding modules, the workflow is analyzed to detect improperly defined operations (e.g., intersections among disjoint sets of objects) and define an optimal execution plan on the distributed databases. The templates and/or translators defined by the user will only be shared with users belonging to the WGs of the owner. The query blocks are shown on the left hand side of the editor (block A in Figure 7) and categorized according to the source from which the data are drawn (e.g., the flask icon for biobank data, the mouse icon for xenopatient data). The user can drag and drop the query blocks on the workflow editor (block B) and build the workflow of the query by connecting them. Filtering conditions may be specified for each block by clicking the funnel icon. Set operators (union, intersection, difference) and special operators (group-count, template blocks), listed in block C, can also be used in the workflow. Once the workflow has been defined, the user can assign a title and description to the query (block D). Finally, she can simply run the query or save it in the system to be reused in the future for different purposes.
Figure 7- Query generator interface
When the results of a query include shareable Bioentities (e.g., Aliquots, Biomice, Cell Lines), enabled users (see “User profiles” in the “Authentication” section) can share a set of of records with one or more WGs.
Each user can visualize a chronological list of his/her own launched queries, with some additional information. Given a query, the user can (i) visualize the query workflow (the query generator will be opened), (ii) directly re-run the query, or (iii) visualize the results from past runs.
Templates can be visualized and modified by users within the same WGs as the template owner. When the edited template is submitted, if the template structure (in terms of query blocks) has changed, a new template will be saved, and no modification will be made to the original template. On the other hand, if only filter constraints and/or filter names have been modified, the original template will be updated accordingly.
Translators can be visualized and modified by users within the same WGs as the translator owner. When the edited translators is submitted, if the query structure (in terms of query blocks) has changed, a new translator will be saved, and no modification will be made to the original translator. On the other hand, if only filter constraints have been modified, the original template will be updated accordingly.