From a citation, extracts the title and searches the corresponding DOI on the Web of Science database using the WOS Lite API (https://developer.clarivate.com/apis/woslite) and the R package rwoslite (https://github.com/frbcesab/rwoslite).

Important: an API token must be first obtained and stored locally. See https://github.com/frbcesab/rwoslite for further information.

The extraction of the title is performed by the function title_from_citation and may fail if the citation is malformed.

If the argument limit is higher than 1, candidate titles (i.e. titles of the references returned by the WOS Lite API) are compared to the original title, and the DOI of the one that has the best match is returned. This string distance is performed using the function stringdist::stringdist.

search_in_wos(x, limit = 1)

Arguments

x

a character of length 1. A citation written as "Authors Year Title. Journal...". See title_from_citation for further detail.

limit

an integer of length 1. The maximum number of records to test to identify the match. Must be strictly positive and < 100,0000.

Value

A data.frame with one row and the following 4 columns:

  • search_term: the cleaned title extracted from the citation used as the query terms in WOS API;

  • wos_best_title: the title of the best reference returned by WOS;

  • wos_best_doi: the DOI corresponding to the best reference returned by WOS;

  • wos_string_dist: the string distance (Optimal string aligment, osa) between the original title and the one returned by WOS. See stringdist::stringdist for further information.

Examples

if (FALSE) {
ref <- paste0("Quainoo, A.K., Wetten, A.C., Allainguillaume, J., 2008. The ",
              "effectiveness of somatic embryogenesis in eliminating the ", 
              "cocoa swollen shoot virus from infected co- coa trees. ", 
              "J. Virol. Methods 149, 91e96.")
              
search_in_wos(ref)
}