All issues for this milestone are closed.
You may close the milestone now.
Open
Milestone
Query builder stubs
As discussed, we will be developing some sort of visual query builder. To shield from the complexity and time needed to build a fully fledged interface, this should be a collaborative effort. This milestone covers the basic requirements of a useful query builder.
Documentation items are a must-have, stubs are based on time available and ranking by "bang-for-buck" and collaboration with @timrepke .
Documentation
We need some documentation for users (pro users—those who could write SQL; and other users—those who would normally use WoS query builder).
- easy to understand description of basics
- basic logic of
websearch_totsquery(|,&,<->,",...) - behaviour of quotes
- ...
- basic logic of
- Brief introduction to the basic SQL statements and gotchas, ideally as part of https://gitlab.pik-potsdam.de/mcc-apsis/nacsos/nacsos-docs (ask @mhansen)
Helpful stubs for query builder
@timrepke will build an interface for NACSOS, any help towards that is greatly appreciated, e.g.:
- define schema to represent query logic to abstract SQL
- query builder (from json schema [to be defined] to prepared SQL statement, maybe including virtual fields like title&abstract that convert to a join)
- translate publication in OpenAlex to a dict following the
AcademicItemModelschema definition (see https://apsis.mcc-berlin.net/nacsos-core/docs) - on-the-fly query statistics to (heuristically) estimate the scope of a query (e.g. by hinting the user of how common terms contained in the query are or how many papers are published in the selected years; whatever postgres data profiling gives us)
- query overlaps (only left set, inner, only right set)
- on-the-fly statistics, such as relative time histogram difference, overlap of authors, overlap of venues, ...; whatever is fast and easy;
- sample of query results for the sets
Interface sketch
The interface will probably be somewhat similar to this: https://developer.twitter.com/apitools/query
Roughly:
- add search parameter
- select field
- based on type, add conditions / value
- add group
- for group/parameters, select logical relation (AND/OR)
Loading
Loading
Loading
Loading