NLP4All is a learning platform for educational institutions to help students that are not in data-oriented fields to understand natural language processing techniques and applications.
I think the best option here, because we now have postgres, is to use a defined structure for required columns that we can pull in
id, data_source_id, text and category (maybe(?)), then user_data
the data source manager can then have an id, name, description, project(?), and structure which describes the fields within the jsonb user_data column.
Postgres supports JSONB format, which can be used for querying data within json columns, we can validate app-side before it goes to the database, but we have the structure for that data source defined.
I think the best option here, because we now have postgres, is to use a defined structure for required columns that we can pull in
id
,data_source_id
,text
andcategory
(maybe(?)), thenuser_data
the data source manager can then have an
id
,name
,description
,project(?)
, andstructure
which describes the fields within the jsonbuser_data
column.Postgres supports JSONB format, which can be used for querying data within json columns, we can validate app-side before it goes to the database, but we have the structure for that data source defined.
See: https://medium.com/geekculture/postgres-jsonb-usage-and-performance-analysis-cdbd1242a018
also: https://docs.sqlalchemy.org/en/20/dialects/postgresql.html#sqlalchemy.dialects.postgresql.JSONB