Tracking changes to dynamic properties
This is a perpetual umbrella issue to keep track of changes to dynamic properties, as proposed in Development guidelines.
It is mainly meant as two-way communication channel between those who come up with new properties (esp. modellers during mapping new sources) and who need to implement these (developers).
Source of truth for how it should be is the 'Properties'-tab in the mapping spreadsheet.
Source of truth for which properties currently actually are defined is the API: https://sshoc-marketplace-api.acdh-dev.oeaw.ac.at/api/property-types
Please remember that the definition of the dynamic properties is part of the data model and is stored in the database. Thus a clean instance will have no dynamic properties defined. Therefore next to adding individual new properties via the API, we need to keep up to date a script that allows to recreate all new properties. (see backend#38 ) Mark also that the script is only to be run against an empty instance, thus in the normal case of incremental addition of properties they need to be added to the script AND via the API to the current (dev) instance.
Therefore, following stages need to be distinguished and should be reported here:
Adding new property
- Modeller: a new property (or set of properties) has been identified, is recorded in the spreadsheet and marked with
status=integrate
- Ingester or Developer: the property has been added via API, status set to
available
- Ingester or Developer: the property has been added to the generation script, status set to
permanently available
Removing a property
- Modeller: an existing property (or set of properties) has been deprecated, marked in spreadsheet with
status=deprecate
- Ingester or Developer: the property has been added via API, status set to
deprecated
- Ingester or Developer: the property has been added to the generation script, status set to
permanently deprecated
The spreadsheet should keep a complete list of the properties including all the deprecated ones, at least during the development, to fight collective amnesia.
(notify: @mkozak, @wytrazek, @ymoranv, @lbarbot, @klaus.illmayer, @sotiris.karampatakis, @frank.fischer01 )