paper <- demopaper()
mo <- module_run(paper, "ref_retraction")
mo$traffic_light#> [1] "info"
mo$summary_text#> [1] "You cited 1 article in the RetractionWatch database."
The ref_retraction module cross-references the paper’s cited references against the Retraction Watch database. Citing a retracted article — usually unknowingly — is a common and avoidable problem. The module flags any cited reference that appears in the Retraction Watch database so you can check whether the citation is still appropriate. The database records retractions, but also corrections and expressions of concern; the report shows which applies to each flagged reference.
This module runs offline: it matches references by DOI against a copy of the Retraction Watch database that ships with Metacheck, so the code below needs no internet connection. Only updating that copy with rw_update() (see Updating the database) downloads data.
This module also runs on Metacheck’s website: upload a paper under Run Metacheck on a Paper, and tick it under Checks (it is not one of the default checks). The Docker installation offers the same website on your own computer. The website runs the module with its default settings; to change them, run it in R as below.
demopaper() cites a reference that is in the Retraction Watch database.
paper <- demopaper()
mo <- module_run(paper, "ref_retraction")
mo$traffic_light#> [1] "info"
mo$summary_text#> [1] "You cited 1 article in the RetractionWatch database."
The table lists each cited reference found in the database:
mo <- module_run(psychsci[1:10], "ref_retraction")
mo$summary_tableA flagged reference is not automatically a mistake — retractions happen for many reasons, and a retracted paper is sometimes cited deliberately (for example, to discuss the retraction itself). The module’s job is to make sure you are aware, so you can decide. Follow up each flagged DOI before acting.
ref_retraction takes only the paper argument.
The module matches references against a data frame that ships with Metacheck, which the function retractionwatch() (or its short form rw()) returns. New retractions are recorded constantly, so the bundled copy gradually goes out of date. Two functions help you manage it:
rw_date() # the date the bundled database was last updated
rw_update() # download the newest version from Retraction Watchrw_update() downloads the latest Retraction Watch data (>50 MB), summarises it into a compact form (~0.5 MB), deletes the large original, and caches the result so subsequent checks use the fresh data. Run it occasionally — or before an important check — to make sure you are not missing recent retractions.
This is the same kind of check that reference managers such as Zotero perform, brought into the Metacheck workflow so it can run alongside the other reference checks.