The science blog archive Rogue Scholar this week started supporting versioning of blog posts. This is a core feature of the InvenioRDM repository platform used by Rogue Scholar, but Rogue Scholar uses DOIs from Crossref rather than DataCite, the default DOI registration agency for InvenioRDM.

Crossref versioning was made possible with the Crossref schema 5.4.0 released in March. Adding Crossref DOI support to InvenioRDM means that you can now use InvenioRDM with Crossref in basically the same way as DataCite before, with the important limitation that Crossref only supports text-based content types such as journal articles, books, or preprints. There are two reasons to consider Crossref instead of DataCite when using InvenioRDM: a) a pricing model (in particular the annual fee) that better aligns with smaller organizations, and b) better integration of the metadata into downstream services such as OpenAlex.

InvenioRDM by default uses one DOI prefix per repository, whereas Rogue Scholar and the InvenioRDM Crossref integration use one DOI prefix per InvenioRDM community. Rogue Scholar uses blog communities to group blog posts by blog, and mapping DOI prefixes to communities makes sense. Using a dedicated DOI prefix per blog allows easier migration of DOI registration later on, e.g. from Crossref to DataCite or to/from a prefix not managed by Rogue Scholar. Some Rogue Scholar blogs register their own DOIs they are treated in InvenioRDM as external DOIs without versioning.

Use cases for blog post versioning

Versioning is essential for content types such as datasets or software, but less critical for blog posts. Still, there are some important use cases:

  • Major content changes in the results or discussion
  • Editorially significant updates that require a formal correction
  • Changes responding to peer review
  • Changes in attached media files such as images or audio (which require a new version in InvenioRDM)

The first three use cases happen occasionally and have so far been handled with a major update of the blog post (with optionally stating what has changed), or with a new blog post without a formal relation to the previous version. Peer review of blog posts is still very rare but happens, and the added versioning support makes Rogue Scholar (together with long-term archiving and assigning DOIs) a suitable platform for peer-reviewed blog posts.

As Rogue Scholar is currently archiving the full-text of all posts with image links (and separately via the Internet Archive Archive-It service), storing the images themselves as file attachments will require new blog post versions, and this is planned for the coming months.

Version support in RSS feeds

Rogue Scholar automatically imports blog post metadata and content via blog RSS feeds (or Atom, JSON Feed, or a JSON API). Unfortunately there is no standard metadata in these feeds to indicate the blog post version. As a workaround for static site generators (Hugo, Jekyll, Quarto, etc.), we can customize the RSS or Atom feed by adding a link attribute that points to the previous version of the post:

<link rel="prev" href="https://doi.org/10.5555/12345" />

For JSONFeed, you can add custom metadata (starting with an underscore) to an item (post):

"_prev_id": "https://doi.org/10.5555/12345" />

For blogs with a JSON API (e.g. WordPress) one could extend the API to include the GUID/ID of the previous version of the post. This is more work and not always possible, e.g. because the blogging platform uses proprietary software (Blogger, Substack, etc.). For the time being, it is probably easiest to do versioning semi-manually. Please send an email to support if you have published a blog post with Rogue Scholar that is a new version of another post.

References

  1. Feeney, P. (2025, March 19). Version 5.4.0 metadata schema update now available. Crossref Blog. https://doi.org/10.13003/325070
  2. Marcum, C. S. (2025, April 8). Peer-Review for a Blog Post? My Experience with MetaROR. Upstream. https://doi.org/10.54900/bymaz-4fw37