GULP: Difference between revisions
Created page with "'''GULP''' (Generic Unified List Processor) is [https://gulp.toolforge.org/ a tool] to collaboratively store, modify, and retrieve lists. == Example == Check out [https://gulp.toolforge.org/#/list/4 a list of Wikidata items and potential images on Commons]. == Data == List columns can be generic (text) or of a specific type (eg Wiki page/item). == Snapshots == Each list can have multiple revisions. A revision is created by taking a ''snapshot'' of the current revision..." |
|||
(5 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
[[File:GULP_early_prototype.png|thumb|Early prototype screenshot.]] |
|||
'''GULP''' (Generic Unified List Processor) is [https://gulp.toolforge.org/ a tool] to collaboratively store, modify, and retrieve lists. |
'''GULP''' (Generic Unified List Processor) is [https://gulp.toolforge.org/ a tool] to collaboratively store, modify, and retrieve lists. |
||
== |
== Examples == |
||
* [https://gulp.toolforge.org/#/list/4 a list of Wikidata items and potential images on Commons]. |
|||
* [https://gulp.toolforge.org/#/list/18 a short list of Wikipedia pages and coordinates]. |
|||
== Data == |
== Data == |
||
List columns can be generic (text) or of a specific type (eg Wiki page/item). |
List columns can be generic (text) or of a specific type (eg Wiki page/item). |
||
Each list row contains a value ("cell") for each column. Rows are internally stored as JSON arrays. Depending on column type, these can be a string, number, ''null'', or JSON. Each row has a row number, to be able to change the value of a specific row. If a row gets deleted, its number will not be given out again, so row numbers are not necessarily sequential. |
|||
Rows are unique by content; trying to add a new row with the same cells as an existing row will cause the row to be skipped. |
|||
== Snapshots == |
== Snapshots == |
||
Each list can have multiple revisions. A revision is created by taking a ''snapshot'' of the current revision of the list. Snapshots are "zero cost", that is, creating a snapshot does not duplicate any data; rather, new or altered rows in a revision will be stored in addition to the old revisions. This way, every revision can be accessed later. |
Each list can have multiple revisions. A revision is created by taking a ''snapshot'' of the current revision of the list. Snapshots are "zero cost", that is, creating a snapshot does not duplicate any data; rather, new or altered rows in a revision will be stored in addition to the old revisions. This way, every revision remains stable and can be accessed later. |
||
== Status == |
== Status == |
Latest revision as of 19:31, 20 March 2023
GULP (Generic Unified List Processor) is a tool to collaboratively store, modify, and retrieve lists.
Examples[edit]
- a list of Wikidata items and potential images on Commons.
- a short list of Wikipedia pages and coordinates.
Data[edit]
List columns can be generic (text) or of a specific type (eg Wiki page/item).
Each list row contains a value ("cell") for each column. Rows are internally stored as JSON arrays. Depending on column type, these can be a string, number, null, or JSON. Each row has a row number, to be able to change the value of a specific row. If a row gets deleted, its number will not be given out again, so row numbers are not necessarily sequential.
Rows are unique by content; trying to add a new row with the same cells as an existing row will cause the row to be skipped.
Snapshots[edit]
Each list can have multiple revisions. A revision is created by taking a snapshot of the current revision of the list. Snapshots are "zero cost", that is, creating a snapshot does not duplicate any data; rather, new or altered rows in a revision will be stored in addition to the old revisions. This way, every revision remains stable and can be accessed later.
Status[edit]
- working: browse and download lists
- to-do: an interface to upload/update/modify lists, integration with other tools