From: Steve F. <sfi...@pc...> - 2005-02-04 01:09:36
|
Folks- I am discovering other controlled vocab issues. First, ReviewStatus. On the wiki, there is a set of values for this: annotated not reviewed unknown At CBIL, we have: reviewed, correct unreviewed reviewed, incorrect updated needs re-review What's worse, many tables required a non-null ReviewStatus, and many plugins use hard-coded review_status_ids in the code. Often, the logic of a plugin is "update this row with the newly-computed data, unless the row has been reviewed (review_status_id == 1), in which case, assume it is correct, and leave it alone." My feeling is that ReviewStatus should be optional. So, i think that it should always be nullable. I also think that different sites will want to define this differently. So, I would say that: 1. plugins that test review status to decide whether to update the data or not should take on their command line a list of review status terms that indicate "don't update." The plugin should query the db to find the review_status_ids for those (failing if not found). If none are supplied to the plugin, then the plugin should not bother checking review status. 2. plugins that write review status info should take a mapping from the values found in the input to review status terms. They should check that the review status terms are in the db, failing if not. then, they can map the input to the proper review status id, and write the data to the db. The upshot is that i don't think the GUS install should provide values for ReviewStatus. It should be optional and site specific. steve |