## ----include = FALSE---------------------------------------------------------- knitr::opts_chunk$set(collapse = TRUE, comment = "#>") ## ----setup-------------------------------------------------------------------- library(scopusflow) ## ----------------------------------------------------------------------------- baseline <- example_records nrow(baseline) ## ----------------------------------------------------------------------------- later_raw <- list(entry = list( # carried over from the baseline list(`dc:identifier` = "SCOPUS_ID:85000000001", `prism:doi` = "10.1038/s41586-019-0001-1", `dc:title` = "Genome editing with CRISPR-Cas9: principles and applications", `prism:coverDate` = "2019-04-12"), list(`dc:identifier` = "SCOPUS_ID:85000000002", `prism:doi` = "10.1038/s41586-020-0002-2", `dc:title` = "Deep learning for medical image analysis: a review", `prism:coverDate` = "2020-02-20"), list(`dc:identifier` = "SCOPUS_ID:85000000006", `prism:doi` = "10.1103/PhysRevLett.116.061102", `dc:title` = "Observation of gravitational waves from a binary black hole merger", `prism:coverDate` = "2016-02-11"), # newly indexed since the baseline list(`dc:identifier` = "SCOPUS_ID:85000000007", `prism:doi` = "10.1126/science.abc1234", `dc:title` = "A room-temperature superconductor candidate", `prism:coverDate` = "2023-03-08"), list(`dc:identifier` = "SCOPUS_ID:85000000008", `prism:doi` = "10.1038/s41586-023-0008-8", `dc:title` = "Large language models for scientific discovery", `prism:coverDate` = "2023-06-01") )) later <- scopus_records(later_raw, query = "illustrative later retrieval") nrow(later) ## ----------------------------------------------------------------------------- changes <- scopus_diff_dois(old = baseline, new = later) changes ## ----------------------------------------------------------------------------- changes[changes$status == "added", ] ## ----------------------------------------------------------------------------- combined <- scopus_combine(baseline, later, dedupe = TRUE) nrow(combined) ## ----------------------------------------------------------------------------- path <- file.path(tempdir(), "baseline.rds") write_scopus_records(baseline, path) identical(read_scopus_records(path), baseline) ## ----eval = FALSE------------------------------------------------------------- # later <- scopus_fetch("TITLE-ABS-KEY(CRISPR)", field = "TITLE-ABS-KEY") # scopus_diff_dois(old = read_scopus_records(path), new = later)