colouring-cities / colouring-britain

Developed out of the Colouring London prototype. Collecting data on Britain's buildings and testing new core features
https://colouringbritain.org/
GNU General Public License v3.0
10 stars 2 forks source link

Add mechanism to submit bulk edits to Colouring London via automated methods #250

Open edwardchalstrey1 opened 2 years ago

edwardchalstrey1 commented 2 years ago

We want to be able to make bulk edits to the Colouring London database.

These "Computational" edits (as opposed to manual/crowdsourced) should be somehow made via website API OR at least make sure these are recorded as edits, rather than just changing the values in the database.

Python/SQL scripts for these edits should be added to the /etl dir and their use described in the README.

We should also add different icons (doesn't need to be these exact ones) to the edit history and/or next to each filled in field that differentiate the source of edits:

We want the option to have a manual edit and a computational edit on the same field (multiple emojis/icons).

edwardchalstrey1 commented 2 years ago

AlanTuring_ComGenTest has some computational edits already

edwardchalstrey1 commented 2 years ago

I've started the above on branch auto-methods

edwardchalstrey1 commented 2 years ago

Automated methods examples

garages

tomalrussell commented 2 years ago

There are scripts which run against the API which have been used for bulk uploads - e.g. https://github.com/colouring-cities/colouring-london/blob/54a40d3d8c07af5b90d0c3f979a0c561e0f931b6/etl/join_building_data/load_csv.py

Thinking aloud: this feature looks like it requires something like additional "edit metadata" to record the edit source type. Should this be a field in the edit history?

I would assume the frontend presentation is always the latest edit by default, and there is no change needed to the buildings table or the core process of making updates and entries in the edit history, except adding this additional field.

Should the source type (computational/crowdsourced/public/streamed...) be self-certified? i.e. something that is POSTed alongside the building data when making an edit? Should it be associated with the user - so a single user always makes a certain kind of edit? (then we could derive it server-side).

edwardchalstrey1 commented 2 years ago

^ brilliant, great to see there is a precedent for bulk uploads against the API.

thanks for the suggestions on source type too - will need to think carefully about best approach

polly64 commented 8 months ago

@matkoniecz can you add link to this from bulk upload issue and close?