CrossRef manual registration workflow

In OJS 2.x, when manually registering DOIs with CrossRef it appears the workflow looks like this:

  1. Select articles or issues via the plugin.
  2. Click “Register”
  3. The status changes:
    a. If the article is already registered outside of OJS, the status changes from “-” to “found”.
    b. If the article is not already registered, the status changes from “-” to “submitted”. (Note that the action “Register” does not change to “Update”)
  4. Click Register or Update again.
  5. The status changes again to “completed”.

@bozana, @jmacgreg, how much of the above workflow is intentional? It seems very convoluted. Or am I missing something obvious?

Hi @ctgraham

As far as I understand it:

a) The status is calculated/actualized only on the DOI registration (function updateDepositStatus here: ojs/ at ojs-stable-2_4_8 · pkp/ojs · GitHub)

b) The Crossref statuses are following:

If the status is reported as completed (deposited), the following URL is used to see if the DOI is registered (ready) – apparently, there could be a delay between a deposit completing successfully and a DOI being ‘ready’:
This returns 404 or 200 and is apparently displayed in OJS as “-” i.e. “found”.

c) For the action link (register vs. update), the object setting “crossref::registeredDoi” is looked for (s. ojs/articles.tpl at ojs-stable-2_4_8 · pkp/ojs · GitHub), but apparently the setting is only set/used if “Mark registered” button is used.

Thus, I believe the status actualization could/should happen somehow differently (so that also marked registered would be correct), and the action links (register vs. update) should be unified.

I have no Crossref account so that I could see all this – this is all I understand from the code and else – so I might be wrong…


One more thing I have just figured out:
When using to find out if DOI is registered (ready), the mark registered function is called i.e. the c) above is not quite right.
If I then understand it correctly, if you would once again click Register in your example, the action link could change to Update – in case the DOI is ready in the meantime (from completed to ready).
I.e. the action links are apparently fine/consistent, and the way the status is updated would only stay to be improved…

I also tried out the automated process last night on a set of articles that had already been registered manually by upload outside of OJS.

Interestingly, the status on each of these remains “-”, while the action link has changed from “Register” to “Update”.

More details to come…