Closed eboileau closed 5 months ago
For now, we leave the DB dumps out (Download view), maybe we don't actually need this functionality.
Browse (client/src/views/BrowseView.vue). We want to allow users to download a specific dataset in EUF/bedRMod format. In the Browse view, a row matches a dataset, and is identified with it's EUFID. The Data
table contains the records, Association
the dataset id (EUFID). We also need to add a header. Information for the header is partly in Dataset
. fileformat
is fixed in https://github.com/dieterich-lab/scimodom/blob/4e638f37bd33f83194ffebbc32884d09065feea9/server/src/scimodom/utils/specifications.py#L20 (last entry in list), and uses https://github.com/dieterich-lab/scimodom/blob/4e638f37bd33f83194ffebbc32884d09065feea9/server/src/scimodom/utils/specifications.py#L11 (e.g. bedRModv1.7). organism
is taken from Association
-> Selection
-> Organism
, but should already be available from the Browse records (FE). modification_type
is RNA. assembly
, annotation_source
and annotation_version
are fixed for the DB (Assembly
and Annotation
, using version). Remaining header fields are from Dataset
. General specs are here: https://dieterich-lab.github.io/scimodom/bedrmod.html (follow the link to bedRModv1.7.pdf
). Final output file should be named using Title
+ bedrmod extension.
Search (client/src/views/SearchView.vue). Allow Export
to export "all" selected records, not only those lazy loaded and shown on the screen. But for "big queries" this can be a big file... We currently rely on exportCSV()
, for that we will need to create our own function. Note that query filters are subject to change, as discussed earlier.
I suggest to add a Download service under scimodom/services to handle all download-related code. The API code can probably go to the existing scimodom/api/public.py.
For search data export, check also https://github.com/dieterich-lab/scimodom/issues/62
Exporter service added, Browse export functional, removed Download (selective dumps?), Search Export not yet addressed, but refactoring/improvements can be relegated to end of Q2/Q3.
Aims/objectives.
We need a bedRMod formatter/class for download.
A clear and concise description of todo items.