Skip to contents

Check a set of DOIs or PMIDs for retraction

Usage

check_dois(
  x,
  sources = getOption("retraction.sources", "xera"),
  offline = FALSE,
  flag_nature = c("Retraction", "Expression of Concern"),
  allow_fuzzy = TRUE,
  resolve_ids = TRUE,
  progress = TRUE,
  strict = FALSE
)

Arguments

x

A character vector of DOIs and/or PMIDs (mixed is fine; each value is auto-detected).

sources

Sources to query. A character vector of names from list_backends(), or "all". Defaults to getOption("retraction.sources", "xera").

offline

If TRUE, match against the local snapshot built by retraction_sync() instead of querying the network.

flag_nature

Notice labels that count as "flag this citation". Defaults to Retraction and Expression of Concern.

allow_fuzzy

Allow fuzzy title matching for references without a usable identifier.

resolve_ids

If TRUE, resolve PMID-only references to a DOI via OpenAlex before matching.

progress

Show a progress bar in interactive sessions.

strict

If TRUE, error when any reference cannot be checked (an unchecked row from a network or source failure) instead of returning it, so a failure cannot be mistaken for a clean result. Useful in CI.

Value

A retraction_result tibble.

Examples

# \donttest{
check_dois(c("10.1016/S0140-6736(97)11096-0", "10.1126/science.aac4716"))
#> 
#> ── retraction: 2 references checked ────────────────────────────────────────────
#>  1 retracted or flagged
#>  1 clean
#> 
#> ── Flagged citations ──
#> 
#>10.1016/s0140-6736(97)11096-0: Ileal-lymphoid-nodular Hyperplasia,
#> Non-specific Colitis, and Pervasive Developmental Disorder in Children
#> (retracted 2010-02-06; source: xera)
#> 
#>  Full table: `as.data.frame(x)` or `tibble::as_tibble(x)`.
# }