R client for various CrossRef APIs
httr
and curl
(which httr
depends on). Will potentially be useful to
Crossref to know how many requests come from this R client (#100)cr_search()
and cr_search_free()
use old Crossref web services, so
are now marked deprecated, and will throw a deprecation message, but can
still be used. They will both be defunct in v0.6
of this package (#99)XML
replaced with xml2
(#98)httr::content()
calls: all parse to text then parse content
manually. in addition, encoding explicitly set to UTF-8
on
httr::content()
calls (#98)cr_journals()
- fix to parse correctly on some failed requests
(#97) thanks @nkorfcr_fundref()/cr_funders()
- parsing wasn't working correctly in
all casesSkipped v0.4
to v0.5
because of many changes - as described below.
cursor
, which accepts a cursor alphanumeric string or the special *
, which indicates that you want to initiate deep paging; cursor_max
, which is not in the Crossref API, but just used here in this package to indicate where to stop - otherwise, you'd get all results, even if there was 70 million, for example. A new internal R6
class used to make cursor requests easy (#77)id_converter()
to get a PMID from a DOI and vice versa (#49)cr_types()
, along with its low level equivalent cr_types_()
for when you just want a list or json back (#92)cr_funders_()
, cr_journals_()
, cr_licenses_()
, cr_members_()
, cr_prefixes_()
, cr_types_()
, cr_works_()
. These functions are a bit faster, and aren't subject to parsing errors in the event of a change in the Crossref API. (#93)filter_names()
and filter_details()
functions to get information on what filters
are available, the expected values, and what they mean.filter_names()
and filter_details()
(#73)cr_funders()
alias added to cr_fundref()
(#74)/funders
route,s in cr_funders()
(#79)sample
parameter ignored unless works=TRUE
(#81)cr_cn()
now checks that the user supplied content-type is supported for the DOI minting agency associated with the DOI (#88) (thanks @njahn82).progress
parameter use internally where it wasn't applicable.sample
parameter dropped from cr_licenses()
.cr_works()
parsing changed. We now don't attempt to flatten nested arrays, but instead give them back as data.frame's nested within the main data.frame. For example, author
often has many entries, so we return that as a single column, but indexing to that column gives back a data.frame with a row for each author, and N number of columns. Hopefully this doesn't break too much code downstream :)?rcrossref
) to explain: what you're actually searching when you search; deprecated and defunct functions; and explanation of high vs. low level API.cr_members()
to warn on error instead of stop during parsing (#68)cr_works()
to output links data, for full text links (#70)cr_cn()
example that didn't work (#80)affiliation
data inside author
object in Crossref search API returned data (#84)award
slot in Crossref search API returned data (#90)crosscite()
deprecated, will be removed in a future version of this package (#78)cr_fundref()
now has a deprecated message, and will be removed in the next version (#74)crosscite()
to work with the
Citeproc service (#60)httr
v1
(#65)cr_agency()
function,
back up and fixed now (#63)extract_pdf()
to extract text from pdfscr_ft_links()
to get links for full text content of an article (#10)cr_ft_text()
to gets full text content of an article. In addition,
cr_ft_pdf()
, cr_ft_plain()
, and cr_ft_xml()
are convenience functions that will get
the format pdf, plain text, or xml, respectively. You can of course specify format in the
cr_ft_text()
function with the type
parameter (#10) (#42)data.frame
in cr_works()
, which caused failure if
a non-Crossref DOI included (#52)pmid2doi()
and doi2pmid()
functions removed temporarily as the web service is down
temporarily, but will be online again soon from Crossref (#48)First release to CRAN