aboutsummaryrefslogtreecommitdiff

TODO Construct SPARQL query results from JSON instead of CSV   minor easy

<2021-12-24 Fri> sparql-query-results in visualize-schema.scm should retrieve SPARQL query results in JSON instead of CSV. CSV ignores type information and returns everything as a string. This results in unnecessary conversions such as using string->number.

TODO Specification of field alias in define-dump is a leaky abstraction   wish

<2021-12-24 Fri> In define-dump expressions, database fields can be referenced by (field TABLE COLUMN ALIAS) in addition to (field TABLE COLUMN). Specification of the field alias in the first form is a leak in the abstraction. There is no need for the caller to know anything about field aliases. define-dump should be able to set up aliases transparently.

TODO Guess string encodings   grave

<2021-12-24 Fri> Over the years, strings have been stored in the database using different character encodings. That is why when they are all interpreted in UTF-8, they appear to have unprintable characters. Somehow, guess the encoding of the retrieved strings and compensate.

TODO Fix table size estimates   minor easy

<2021-12-24 Fri> The tables function in dump.scm estimates the table size from the datalength column of the informationschema.tables table. But, this is correct only for MyISAM tables. Generalize it.

TODO Dump table and field annotations to RDF   minor easy

<2021-12-27 Mon> The TableComments and TableFieldAnnotations tables partially document the database schema. GeneNetwork 1 uses this to generate http://gn1.genenetwork.org/webqtl/main.py?FormID=schemaShowPage. We dump this to an org mode format in the dump-schema-annotations function. Dump these tables to RDF instead so that they can be shown as tooltip text in our database visualization.