Publishing and workflow - ckan/ckan GitHub Wiki

Currently, a dataset is published or not by setting a drop-down menu called 'Visibility' on the edit screen. There are two options.

Visibility

This isn't very clear, and the logic seems wrong. Editing is about editing the metadata, whereas publishing is about making that metadata public. Instead publishing should be done separately from the edit screen by a simple 'Publish' (or 'Unpublish') button similar to Twitter's Follow/Unfollow button.

Follow

(I can't take a picture of an Unfollow button because of some javascript hack, but anyway.)

Some CKAN sites need a workflow feature so that a dataset can be in various stages of approval (draft, awaiting approval, approved-1, approved-2, whatever). It seems wrong to add 'Public' to this list - being published or not is quite different from being at a certain stage of the approvals process. Instead:

  • The approvals process is done by whatever system, e.g. the drop-down (presumably with users only seeing options depending on their level of approval).

  • When the final level of approval has been given ('Ready'), the 'Publish' button (as above) becomes available.

  • If a user tries to change the approval status of a published dataset from 'Ready' to something else, they get a warning pop-up ('This dataset is published. Unpublish and change approval level?')