Skip to content

Declarative 'patch' system

Jonathan A Rees edited this page Oct 15, 2019 · 1 revision

Documentation needs to be written.

The declarative patch system is a third attempt. It is intended to replace the API described here which in turn replaced Interim taxonomy patch feature

The general idea is documented here (written before any implementation): Expressing phylogenetic claims and here: Thoughts on 'third generation' community taxonomy editing system

The code is here: https://github.com/OpenTreeOfLife/reference-taxonomy/blob/master/util/proposition.py - for now this will have to serve as the usage documentation, together with the examples.

There are some examples here: https://github.com/OpenTreeOfLife/reference-taxonomy/blob/master/curation/adjustments.py

and here: https://github.com/OpenTreeOfLife/reference-taxonomy/blob/master/curation/amendments.py

To find the examples, search in these files for proclaim

The idea is that you write a set of statements that you would like to either check or assert against a taxonomy, and then provide a taxonomy to check against or assert to. You can get success, failure, or "don't know" (DUNNO), but you shouldn't get an error.