This package has been archived. The former README is now in README-not.<
ropensci-archive / rorcid Goto Github PK
View Code? Open in Web Editor NEW:warning: ARCHIVED :warning: A programmatic interface the Orcid.org API
License: Other
:warning: ARCHIVED :warning: A programmatic interface the Orcid.org API
License: Other
This package has been archived. The former README is now in README-not.<
With the rorcid 0.3.0 version I could run:
require(devtools)
install_version("rorcid", version = "0.3.0", repos = "http://cran.us.r-project.org")
out <- works(orcid_id("0000-0001-7678-8656"))$data
And get the citation information for all the works from the column work-citation.citation
.
In the 0.4.0 version when I get the works, lots of the old columns are gone, including the citation:
require(devtools)
install_version("rorcid", version = "0.4.0", repos = "http://cran.us.r-project.org")
out <- works(orcid_id("0000-0001-7678-8656"))
There is any way to get the complete ORCID works info with the new rorcid package?
PS: Thanks for bringing up to speed the rorcid package with the orcid_fundings() and all the other new functions!
Session info --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
setting value
version R version 3.4.3 (2017-11-30)
system x86_64, linux-gnu
ui RStudio (1.1.423)
language (EN)
collate en_US.UTF-8
tz America/Santiago
date 2018-02-14
Packages ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
package * version date source
assertthat 0.2.0 2017-04-11 CRAN (R 3.4.1)
base * 3.4.3 2017-12-01 local
bib2df 1.0.0 2018-02-13 Github (ottlngr/bib2df@a7d71aa)
bibtex * 0.4.2 2017-06-30 CRAN (R 3.4.1)
bindr 0.1 2016-11-13 CRAN (R 3.4.1)
bindrcpp * 0.2 2017-06-17 CRAN (R 3.4.1)
broom 0.4.3 2017-11-20 CRAN (R 3.4.2)
cellranger 1.1.0 2016-07-27 CRAN (R 3.4.1)
cli 1.0.0 2017-11-05 CRAN (R 3.4.2)
colorspace 1.3-2 2016-12-14 CRAN (R 3.4.1)
compiler 3.4.3 2017-12-01 local
crayon 1.3.4 2017-09-16 CRAN (R 3.4.2)
crul 0.5.0 2018-01-22 CRAN (R 3.4.3)
curl 3.1 2017-12-12 CRAN (R 3.4.3)
data.table 1.10.4-3 2017-10-27 CRAN (R 3.4.2)
datasets * 3.4.3 2017-12-01 local
devtools 1.13.4 2017-11-09 CRAN (R 3.4.2)
digest 0.6.15 2018-01-28 CRAN (R 3.4.3)
dplyr * 0.7.4 2017-09-28 CRAN (R 3.4.2)
forcats * 0.2.0 2017-01-23 CRAN (R 3.4.1)
foreign 0.8-69 2017-06-21 CRAN (R 3.4.0)
ggplot2 * 2.2.1 2016-12-30 CRAN (R 3.4.3)
glue 1.2.0 2017-10-29 CRAN (R 3.4.2)
graphics * 3.4.3 2017-12-01 local
grDevices * 3.4.3 2017-12-01 local
grid 3.4.3 2017-12-01 local
gtable 0.2.0 2016-02-26 CRAN (R 3.4.1)
haven 1.1.1 2018-01-18 CRAN (R 3.4.3)
hms 0.4.1 2018-01-24 CRAN (R 3.4.3)
httr 1.3.1 2017-08-20 CRAN (R 3.4.1)
humaniformat 0.6.0 2016-04-24 CRAN (R 3.4.2)
jsonlite 1.5 2017-06-01 CRAN (R 3.4.1)
lattice 0.20-35 2017-03-25 CRAN (R 3.4.0)
lazyeval 0.2.1 2017-10-29 CRAN (R 3.4.2)
lubridate 1.7.2 2018-02-06 CRAN (R 3.4.3)
magrittr 1.5 2014-11-22 CRAN (R 3.4.1)
memoise 1.1.0 2017-04-21 CRAN (R 3.4.1)
methods * 3.4.3 2017-12-01 local
mnormt 1.5-5 2016-10-15 CRAN (R 3.4.1)
modelr 0.1.1 2017-07-24 CRAN (R 3.4.1)
munsell 0.4.3 2016-02-13 CRAN (R 3.4.1)
nlme 3.1-131 2017-02-06 CRAN (R 3.4.0)
openssl 1.0 2018-02-02 CRAN (R 3.4.3)
pacman * 0.4.6 2017-05-14 CRAN (R 3.4.1)
parallel 3.4.3 2017-12-01 local
pillar 1.1.0 2018-01-14 CRAN (R 3.4.3)
pkgconfig 2.0.1 2017-03-21 CRAN (R 3.4.1)
plyr 1.8.4 2016-06-08 CRAN (R 3.4.1)
psych 1.7.8 2017-09-09 CRAN (R 3.4.1)
purrr * 0.2.4 2017-10-18 CRAN (R 3.4.2)
R6 2.2.2 2017-06-17 CRAN (R 3.4.1)
Rcpp 0.12.15 2018-01-20 CRAN (R 3.4.3)
readr * 1.1.1 2017-05-16 CRAN (R 3.4.1)
readxl 1.0.0 2017-04-18 CRAN (R 3.4.1)
reshape2 1.4.3 2017-12-11 CRAN (R 3.4.3)
rlang 0.1.6.9003 2018-02-11 Github (tidyverse/rlang@616fd4d)
rorcid * 0.4.0 2018-02-11 CRAN (R 3.4.3)
rstudioapi 0.7 2017-09-07 CRAN (R 3.4.1)
rvest * 0.3.2 2016-06-17 CRAN (R 3.4.1)
scales 0.5.0.9000 2018-02-11 Github (hadley/scales@d767915)
stats * 3.4.3 2017-12-01 local
stringi 1.1.6 2017-11-17 CRAN (R 3.4.2)
stringr * 1.2.0 2017-02-18 CRAN (R 3.4.1)
tibble * 1.4.2 2018-01-22 CRAN (R 3.4.3)
tidyr * 0.8.0 2018-01-29 CRAN (R 3.4.3)
tidyverse * 1.2.1 2017-11-14 CRAN (R 3.4.2)
tools 3.4.3 2017-12-01 local
triebeard 0.3.0 2016-08-04 CRAN (R 3.4.1)
urltools 1.7.0 2018-01-20 CRAN (R 3.4.3)
utf8 1.1.3 2018-01-03 CRAN (R 3.4.3)
utils * 3.4.3 2017-12-01 local
withr 2.1.1.9000 2018-02-11 Github (jimhester/withr@df18523)
xml2 * 1.2.0 2018-01-24 CRAN (R 3.4.3)
yaml 2.1.16 2017-12-12 CRAN (R 3.4.3)
The citation information seems to have some problems with "non-standard" characters (e.g. " ' ", "(", "&", "é", etc.)
Please, see the following example:
x = orcid_works("0000-0001-8642-6325", put_code = "26222298")
x$`0000-0001-8642-6325`$citation
The citation-value column is:
citation-value
1 @article{Juillerat_2015,doi = {10.4067/s0718-48082015000300006},url = {http://dx.doi.org/10.4067/s0718-48082015000300006},year = 2015,month = {dec},publisher = {{SciELO} Comision Nacional de Investigacion Cientifica Y Tecnologica ({CONICYT})},volume = {33},number = {3},pages = {221--238},author = {Karen L Juillerat and Felipe A Cornejo and Ram{\\'{o}}n D Castillo and Sergio E Chaigneau},title = {Procesamiento sem{\\'{a}}ntico de palabras epist{\\'{e}}micas y metaf{\\'{\\i}}sicas en ni{\\~{n}}os y adolescentes con Trastorno de Espectro Autista ({TEA}) y con Desarrollo T{\\'{\\i}}pico ({DT})},journal = {Terapia psicol{\\'{o}}gica}}
As you can see, the "non-standard" characters are shown between {}, in a weird way. See below the specific problems in this particular reference (plus some others I've found).
shown -> expected
-------------------
{\\'{o}} -> ó
{\\'{a}} -> á
{\\'{e}} -> é
{\\'{\\i}} -> í
{\\~{n}} -> ñ
({TEA}) -> (TEA)
({DT})} -> (DT)
{\\&} -> &
{\\'a} -> á
{\textquotesingle} -> '
To make it more interesting, there are some inconsistencies (for example, "á" is sometimes codified as "{\'{a}}", and others as "{\'a}").
Below the session's info. (I am using rorcid's dev version):
Packages -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
package * version date source
assertthat 0.2.0 2017-04-11 CRAN (R 3.4.0)
backports 1.1.2 2017-12-13 CRAN (R 3.4.3)
base * 3.4.4 2018-03-16 local
bib2df * 1.0.0 2017-09-18 CRAN (R 3.4.2)
bindr 0.1.1 2018-03-13 CRAN (R 3.4.3)
bindrcpp * 0.2 2017-06-17 CRAN (R 3.4.0)
bookdown 0.7 2018-02-18 CRAN (R 3.4.3)
broom 0.4.3 2017-11-20 CRAN (R 3.4.2)
cellranger 1.1.0 2016-07-27 CRAN (R 3.4.0)
cli 1.0.0 2017-11-05 CRAN (R 3.4.2)
colorspace 1.3-2 2016-12-14 cran (@1.3-2)
compiler 3.4.4 2018-03-16 local
crayon 1.3.4 2017-09-16 CRAN (R 3.4.1)
crul 0.5.2 2018-02-24 CRAN (R 3.4.3)
curl 3.1 2017-12-12 CRAN (R 3.4.3)
data.table 1.10.4-3 2017-10-27 CRAN (R 3.4.2)
datasets * 3.4.4 2018-03-16 local
devtools 1.13.5 2018-02-18 CRAN (R 3.4.3)
digest 0.6.15 2018-01-28 CRAN (R 3.4.3)
dplyr * 0.7.4 2017-09-28 CRAN (R 3.4.1)
evaluate 0.10.1 2017-06-24 CRAN (R 3.4.0)
forcats * 0.3.0 2018-02-19 CRAN (R 3.4.3)
foreign 0.8-69 2017-06-21 CRAN (R 3.4.0)
ggplot2 * 2.2.1 2016-12-30 CRAN (R 3.4.4)
glue 1.2.0 2017-10-29 CRAN (R 3.4.2)
graphics * 3.4.4 2018-03-16 local
grDevices * 3.4.4 2018-03-16 local
grid 3.4.4 2018-03-16 local
gtable 0.2.0 2016-02-26 cran (@0.2.0)
haven 1.1.1 2018-01-18 CRAN (R 3.4.3)
hms 0.4.2 2018-03-10 CRAN (R 3.4.3)
htmltools 0.3.6 2017-04-28 CRAN (R 3.4.0)
httr 1.3.1 2017-08-20 CRAN (R 3.4.1)
humaniformat 0.6.0 2016-04-24 CRAN (R 3.4.2)
jsonlite 1.5 2017-06-01 CRAN (R 3.4.0)
knitr 1.20 2018-02-20 CRAN (R 3.4.3)
lattice 0.20-35 2017-03-25 CRAN (R 3.3.3)
lazyeval 0.2.1 2017-10-29 CRAN (R 3.4.2)
lubridate 1.7.3 2018-02-27 CRAN (R 3.4.3)
magrittr 1.5 2014-11-22 CRAN (R 3.2.1)
memoise 1.1.0 2017-04-21 CRAN (R 3.4.0)
methods * 3.4.4 2018-03-16 local
mnormt 1.5-5 2016-10-15 CRAN (R 3.4.0)
modelr 0.1.1 2017-07-24 CRAN (R 3.4.1)
munsell 0.4.3 2016-02-13 cran (@0.4.3)
nlme 3.1-131.1 2018-02-16 CRAN (R 3.4.3)
openssl 1.0.1 2018-03-03 CRAN (R 3.4.3)
pacman * 0.4.6 2017-05-14 CRAN (R 3.4.0)
parallel 3.4.4 2018-03-16 local
pillar 1.2.1 2018-02-27 CRAN (R 3.4.3)
pkgconfig 2.0.1 2017-03-21 cran (@2.0.1)
plyr 1.8.4 2016-06-08 cran (@1.8.4)
psych 1.7.8 2017-09-09 CRAN (R 3.4.1)
purrr * 0.2.4 2017-10-18 CRAN (R 3.4.2)
R6 2.2.2 2017-06-17 CRAN (R 3.4.0)
Rcpp 0.12.16 2018-03-13 CRAN (R 3.4.3)
readr * 1.1.1 2017-05-16 CRAN (R 3.4.0)
readxl * 1.0.0 2017-04-18 CRAN (R 3.4.0)
reshape2 1.4.3 2017-12-11 CRAN (R 3.4.3)
rlang 0.2.0 2018-02-20 CRAN (R 3.4.3)
rmarkdown 1.9 2018-03-01 CRAN (R 3.4.3)
rorcid * 0.4.0.9444 2018-03-28 Github (58d1141)
rprojroot 1.3-2 2018-01-03 CRAN (R 3.4.3)
rstudioapi 0.7 2017-09-07 CRAN (R 3.4.1)
rvest 0.3.2 2016-06-17 CRAN (R 3.4.0)
scales 0.5.0.9000 2018-02-03 Github (r-lib/scales@d767915)
stats * 3.4.4 2018-03-16 local
stringi 1.1.7 2018-03-12 CRAN (R 3.4.3)
stringr * 1.3.0 2018-02-19 CRAN (R 3.4.3)
tibble * 1.4.2 2018-01-22 CRAN (R 3.4.3)
tictoc 1.0 2014-06-17 CRAN (R 3.4.3)
tidyr * 0.8.0 2018-01-29 CRAN (R 3.4.3)
tidyverse * 1.2.1 2017-11-14 CRAN (R 3.4.2)
tools 3.4.4 2018-03-16 local
triebeard 0.3.0 2016-08-04 CRAN (R 3.4.0)
urltools 1.7.0 2018-01-20 CRAN (R 3.4.3)
utf8 1.1.3 2018-01-03 CRAN (R 3.4.3)
utils * 3.4.4 2018-03-16 local
withr 2.1.2 2018-03-15 CRAN (R 3.4.3)
xfun 0.1 2018-01-22 CRAN (R 3.4.3)
xml2 1.2.0 2018-01-24 CRAN (R 3.4.3)
yaml 2.1.18 2018-03-08 CRAN (R 3.4.3)
</details>
@rcpeters It appears we need to switch over to v2.0 API from v1.2, correct? Seems that public and member will soon be only 2.0, correct?
Do you have a changelog or so? It seems some routes in v1.2 are now gone in v2.0. e,g, /search/orcid-bio
from v1.2 doesn't seem to exist in v2.0 - or am I wrong ?
Any update on when v1.2 will be dropped completely?
When using rOrcid for multiple to get multiple ORCID, and this didn't happen before, just like the example in the tutorial:
ids <- c("0000-0003-1620-1408", "0000-0002-9341-7985")
lapply(orcid_id(orcid = ids), "[[", "orcid-identifier")
Returns this. I believe is a ddply problem with summarize, maybe mutate will solve the problem.
> Error: length(orcid) == 1 is not TRUE
This seems to be coming from the ORCID side (maybe?) but I'm getting it through rorcid and can't figure out what's going on.
It literally just started:
> as.orcid("0000-0002-2700-4605")
Error: lexical error: invalid char in json text.
<!DOCTYPE html><html><head><tit
(right here) ------^
>
So it seems like a whole page is being returned instead of the original JSON. Any thoughts?
It is not clear to me what orcid_doi actually does, or how the search results are meaningful. The DOI: 10.1890/130001 goes to a paper in Frontiers in Ecology and Evolution that was obviously written by a very talented person, but when I search for the DOI I get a list that only vaguely resembles the author list, and includes only one of the authors of the paper:
orcid_doi(dois = '10.1890/130001', fuzzy = FALSE)[[1]]$data$'personal-details.given-names'
[1] "Judit" "Simon" "José Gabriel" "Sebastian" "Harry" "Daimeng"
[7] "Luchino" "Meteb M" "Zhen-Jun" "Céline"
So what is actually happening here?
not so great for printing to screen for summaries,
look in to
not sure yet if any use cases make sense in R
This is now happening:
> find.simon <- orcid(query='Simon Goring')
Error in parseJSON(txt) : lexical error: invalid char in json text.
<?xml version="1.0" encoding="U
(right here) ------^
The right here
arrow should be pointing to the question mark.
see https://groups.google.com/forum/#!topic/orcid-api-users/tMS7-OnwOU0 for progress
the API has changed, and the API routes that were used in that fxn are changed.
/{orcid}/orcid-bio
is gone AFAICT/{orcid}/orcid-profile
is gone AFAICT/{orcid}/orcid-works
has changed to /{orcid}/works
- but data structure is different anywayAll searches with orcid()
return the same problem:
orcid("10.1087/20120404")
Error in strsplit(names(x), "\\.")
Dear sckott,
I was wondering if there is a way to get the "Education", "Employment" and "Funding" sections from the ORCID profiles. Right now, as far as I can see, you can only get the "Works" section.
Cheers!
The new code returns a lot more Scopus IDs (EIDs). Is there an easy way to convert EIDs to DOIs? Thanks.
I'm trying to use rorcid to automatically make a CV (code at https://github.com/bomeara/cv). Orcid should suffice for this: it has info on grants, employment history, etc (i.e., http://orcid.org/0000-0002-0337-5997). However, I can't seem to get at this using rorcid; in fact, I don't see a way to get at this using ORCID's API, so the problem may lie there. However, this seems like something that should be available -- am I just missing it somewhere?
Hi @mfenner ,
Since you are familiar with the Orcid API and data, I wonder if you could help with use cases that could become functions in rorcid. That is, just as you have done with the PLoS ALM API though rplos, what kind of things would you want to do with the Orcid API in R?
Thanks! Scott
Fields to return- Perhaps we can make an "orcid" class, the default has all fields, but we will just return from the function call only a subset of the fields: how about just returning: relevancy-score, orcid, given-names, and family-name
I assume this is because of a mismatch in the data types (what I'm assuming they are vs. what they actually are, but this:
find.simon <- orcid(query='simon+goring')
simon.record <- orcid_id(orcid = find_simon$data$'orcid-identifier.path'[1], profile="works")
simon.papers <- simon.record[[1]][[5]][[2]][[1]] # this is where the papers are.
works okay, although it was a lot of digging to get to the papers. A helper function might be of use here. The problem comes when I want to pull out my paper titles.
> colnames(simon.papers)
[1] "put-code" "work-title" "work-citation"
[4] "work-type" "publication-date" "work-external-identifiers"
[7] "url" "work-contributors" "work-source"
[10] "visibility"
works, but a bunch of these are actually data.frame
s, so I can't really pull out the work title (I just get the journal name if I use simon.papers$'work-title'
, I have to use simon.papers$'work-title'[,1]
.
I think it's okay, but it's certainly not intuitive to muck around in these data structures. Anyway, I'll mess around a bit more. It's a fun toy to play with!
@mfenner suggested:
BTW, a hack to figure out that ORCID has currently registered about 66244 researchers:
orcid("orcid:*", start=66200, rows=50)
You have to increase the start until the query returns 0 results. Maybe you can add an error handler, as an empty result currently throws an error.
I'm not very good at manipulating json / deeply nested list data.
How can I get a nice flat list (i.e. a data.frame) from orcid, using rorcid
?
I got as far as this:
(out <- works(orcid_id("0000-0002-3520-2046")))
<WORKS> 0000-0002-3520-2046
Count: 22 - First 10
- Sampling diverse characters improves phylogenies: Craniodental and postcranial characters of vertebrates often imply different trees
- Sampling diverse characters improves phylogenies: Craniodental and postcranial characters of vertebrates often imply different trees
- Dark Research: information content in many modern research papers is not easily discoverable online
- Publishing the research process
- Open Data And Palaeontology
- AMI-diagram: Mining Facts from Images
- Enriched biodiversity data as a resource and service
- Moving toward a sustainable ecological science: don’t let data go to waste!
- Cladistic data
- Easy steps towards open scholarship
> out$data$`work-external-identifiers.work-external-identifier`
[[1]]
work-external-identifier-type work-external-identifier-id.value
1 DOI 10.1111/evo.12884
[[2]]
work-external-identifier-type work-external-identifier-id.value
1 DOI 10.1111/evo.12884
2 EID 2-s2.0-84960192280
[[3]]
work-external-identifier-type work-external-identifier-id.value
1 DOI 10.7287/peerj.preprints.773v1
[[4]]
work-external-identifier-type work-external-identifier-id.value
1 DOI 10.3897/rio.1.e7547
[[5]]
work-external-identifier-type work-external-identifier-id.value
1 DOI 10.5334/ban
[[6]]
work-external-identifier-type work-external-identifier-id.value
1 DOI 10.1045/november14-murray-rust
[[7]]
work-external-identifier-type work-external-identifier-id.value
1 DOI 10.3897/bdj.2.e1125
2 ISSN 1314-2828
[[8]]
work-external-identifier-type work-external-identifier-id.value
1 DOI 10.4033/iee.2013.6b.14.f
[[9]]
NULL
[[10]]
NULL
[[11]]
work-external-identifier-type work-external-identifier-id.value
1 ISSN 0095-4403
2 DOI 10.1002/bult.2013.1720390406
[[12]]
NULL
[[13]]
work-external-identifier-type work-external-identifier-id.value
1 DOI 10.5061/dryad.h6pf365t
[[14]]
NULL
[[15]]
work-external-identifier-type work-external-identifier-id.value
1 DOI 10.1186/1756-0500-5-574
[[16]]
work-external-identifier-type work-external-identifier-id.value
1 DOI 10.1038/nature10266
[[17]]
work-external-identifier-type work-external-identifier-id.value
1 DOI 10.1038/npre.2011.6048
[[18]]
NULL
[[19]]
NULL
[[20]]
NULL
[[21]]
NULL
[[22]]
NULL
How can I return just the "work-external-identifier-id.value" 's that are a DOI, as a dataframe, with or without the NULLs preserved, I don't mind?
With 0.2.0 I get error:
> library(rorcid)
> as.orcid(x="0000-0002-1642-628X")
Error in mat[, seq_len(n), drop = FALSE] : incorrect number of dimensions
In addition: Warning messages:
1: In mapply(FUN = f, ..., SIMPLIFY = FALSE) :
longer argument not a multiple of length of shorter
2: In mapply(FUN = f, ..., SIMPLIFY = FALSE) :
longer argument not a multiple of length of shorter
With 0.2.0.9100 loaded with devtools, it works fine.
> library(rorcid)
> as.orcid(x="0000-0002-1642-628X")
<ORCID> 0000-0002-1642-628X
Name: Boettiger, Carl
URL (first): http://www.carlboettiger.info
Country: US
Keywords: Ecology, Evolution, Regime Shifts, Stochastic Dynamics
Submission date: 2012-11-01 20:57:23
Issue seems to be fixed in newest version, but I don't see the issue mentioned. Just wanted to make sure devs were aware.
I'm getting an error for this specific researcher who has over 100 papers. The same error appears if I change the type to 'eid' or 'pmid'.
d = works(orcid_id(orcid = "0000-0002-2787-8484"))
dois = identifiers(d, type='doi')
Error in z[tolower(z$external-id-type
) %in% type, "external-id-value"] :
incorrect number of dimensions
From Martin (issue #1)
Two use cases I used in ScienceCard are the following:
A third interesting one is:
I have successfully been using this package for quite a while (Thank you!!), but starting yesterday (after being away for a couple of weeks), I can no longer authenticate.
I get:
"no ORCID token found; attempting OAuth authentication" it then some times just hangs there for a while and throws a 404 error (Error: Not Found (HTTP 404). - 404 Not Found: The resource was not found.,") or it sends me to the oAuth form like before, but then returns an error of "Redirect URI doesn't match your registered redirect URIs.". In Rstudio, it then shows a prompt of "Enter authorization code: ".
As I mentioned this has been working fine before, so I am not sure what has changed.
Also, is there any documentation on how to create the token file that is mentioned in the source code?
Thanks,
Jonas
Hi @mfenner , Only some DOIs work correctly using quotes (or %22).
For example:
This works:
orcid_doi(dois="10.1087/20120404", fuzzy=FALSE)
But this doesn't work:
orcid_doi(dois="10.1371/journal.pone.0025995", fuzzy=FALSE)
I am guessing it is the fact that the second DOI has periods in it, while the first one doesn't. The failure happens at this line in the orcid_doi
function, where the return form the API is like:
[1] "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?>\n<orcid-message xmlns=\"http://www.orcid.org/ns/orcid\"/>\n"
attr(,"Content-Type")
qs
"application/vnd.orcid+xml" "5"
Hi,
This package looks wonderful, thanks. I'm just getting started, so apologies if it is an easy one. I'd like to grab DOIs for my papers, so I'm trying the following:
me = "0000-0001-8607-8025"
out <- works(orcid_id(me))
I think the DOI can be extracted with the following recipe:
paper.ids = out$data[1,"work-external-identifiers.work-external-identifier"][[1]]
doi.row = which(paper.ids[,1] == "DOI")
doi = paper.ids[doi.row,2]
but is there an easier way that I'm missing?
For context: what I'm hoping to do is mine ORCID for recent publications, and print them out like:
require(RefManageR)
GetBibEntryWithDOI(doi)
so if you can recommend other ropensci tools for working with DOIs, I'd be interested to hear them.
Looks like rocid is using 1.2 API? 2.0 supports much richer queries: http://members.orcid.org/api/tutorial/search-orcid-registry . In particular, I'd like to be able search by user email (or user first/last name) to see if a user has an ORCID id. (not sure how many orcid users actually expose their email in their record, maybe searching by names would be best ).
Anyway, the current version just seems to throw NAs for the search tables (e.g. in the vignette, though maybe that's just a coercion error going on?) Also the current search doesn't seem to specify the field, clearly it would be more reliable to indicate that, say, "Jones" is the surname.
Thoughts? Looks like one needs to authenticate with a token to use 2.0? may still be worth while having support for it. Or maybe it's there and I'm just missing it?
Hey @cboettig, hoping you can help figure out how to parse these citations from Orcid? This is an example call using Peter Binfields Orcid ID. You have any functions from knitcitations
that we can use to parse this? And probably use those bibtext like citations too?
> temp <- getURL("http://pub.orcid.org/0000-0002-9341-7985/orcid-works")
> xmlParse(temp)
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<orcid-message xmlns="http://www.orcid.org/ns/orcid">
<message-version>1.0.7</message-version>
<orcid-profile type="user">
<orcid>0000-0002-9341-7985</orcid>
<orcid-history>
<creation-method>website</creation-method>
<completion-date>2012-10-16T13:08:32.715+01:00</completion-date>
<submission-date>2012-10-16T12:39:18.211+01:00</submission-date>
<claimed>true</claimed>
<email-verified>true</email-verified>
</orcid-history>
<orcid-activities>
<orcid-works>
<orcid-work put-code="380908">
<work-title>
<title>Academic journal publishing</title>
<subtitle>Serials Librarian</subtitle>
</work-title>
<work-citation>
<work-citation-type>bibtex</work-citation-type>
<citation>@article { binfield2008,
title = {Academic journal publishing},
journal = {Serials Librarian},
year = {2008},
volume = {54},
number = {1-2},
pages = {141-153},
author = {Binfield, , P. and Rolnik, , Z. and Brown, , C. and Cole, , K.}
}
</citation>
</work-citation>
<publication-date>
<year>2008</year>
</publication-date>
<work-external-identifiers>
<work-external-identifier>
<work-external-identifier-type>doi</work-external-identifier-type>
<work-external-identifier-id>10.1080/03615260801973992</work-external-identifier-id>
</work-external-identifier>
</work-external-identifiers>
<url>http://www.scopus.com/inward/record.url?eid=2-s2.0-67650844237&partnerID=MN8TOARS</url>
</orcid-work>
<orcid-work put-code="380909">
<work-title>
<title>Image quality factors affecting the reconstruction of laser transmission holograms: interim results</title>
<subtitle>IEE Conference Publication</subtitle>
</work-title>
<work-citation>
<work-citation-type>bibtex</work-citation-type>
<citation>@article { binfield1993,
title = {Image quality factors affecting the reconstruction of laser transmission holograms: interim results},
journal = {IEE Conference Publication},
year = {1993},
number = {379},
pages = {122-128},
author = {Binfield, , P. and Watson, , J.}
}
</citation>
</work-citation>
<publication-date>
<year>1993</year>
</publication-date>
<url>http://www.scopus.com/inward/record.url?eid=2-s2.0-0027813935&partnerID=MN8TOARS</url>
</orcid-work>
<orcid-work put-code="380910">
<work-title>
<title>Modern developments in holography and its materials</title>
<subtitle>Optics and Laser Technology</subtitle>
</work-title>
<work-citation>
<work-citation-type>bibtex</work-citation-type>
<citation>@article { binfield1992,
title = {Modern developments in holography and its materials},
journal = {Optics and Laser Technology},
year = {1992},
volume = {24},
number = {5},
pages = {307-308},
author = {Binfield, , P.}
}
</citation>
</work-citation>
<publication-date>
<year>1992</year>
</publication-date>
<url>http://www.scopus.com/inward/record.url?eid=2-s2.0-44049114346&partnerID=MN8TOARS</url>
</orcid-work>
<orcid-work put-code="380911">
<work-title>
<title>Publishing 101: The basics of academic publishing</title>
<subtitle>Serials Librarian</subtitle>
</work-title>
<work-citation>
<work-citation-type>bibtex</work-citation-type>
<citation>@article { binfield2008,
title = {Publishing 101: The basics of academic publishing},
journal = {Serials Librarian},
year = {2008},
volume = {54},
number = {1-2},
pages = {37-42},
author = {Rolnik, , Z. and Binfield, , P. and Graves, , T.}
}
</citation>
</work-citation>
<publication-date>
<year>2008</year>
</publication-date>
<work-external-identifiers>
<work-external-identifier>
<work-external-identifier-type>doi</work-external-identifier-type>
<work-external-identifier-id>10.1080/03615260801973414</work-external-identifier-id>
</work-external-identifier>
</work-external-identifiers>
<url>http://www.scopus.com/inward/record.url?eid=2-s2.0-67650815254&partnerID=MN8TOARS</url>
</orcid-work>
<orcid-work put-code="380912">
<work-title>
<title>Reciprocity failure in continuous wave holography</title>
<subtitle>Applied Optics</subtitle>
</work-title>
<work-citation>
<work-citation-type>bibtex</work-citation-type>
<citation>@article { binfield1993,
title = {Reciprocity failure in continuous wave holography},
journal = {Applied Optics},
year = {1993},
volume = {32},
number = {23},
pages = {4337-4343},
author = {Binfield, , P. and Galloway, , R. and Watson, , J.}
}
</citation>
</work-citation>
<publication-date>
<year>1993</year>
</publication-date>
<url>http://www.scopus.com/inward/record.url?eid=2-s2.0-0027639305&partnerID=MN8TOARS</url>
</orcid-work>
<orcid-work put-code="380913">
<work-title>
<title>Reputation, authority and incentives. Or: How to get rid of the Impact Factor</title>
</work-title>
<work-citation>
<work-citation-type>formatted-unspecified</work-citation-type>
<citation>Brembs, B, Brembs, B & Binfield, P, 2009, 'Reputation, authority and incentives. Or: How to get rid of the Impact Factor', <i>Nature Precedings</i>.</citation>
</work-citation>
<publication-date>
<year>2009</year>
<month>01</month>
<day>21</day>
</publication-date>
<work-external-identifiers>
<work-external-identifier>
<work-external-identifier-type>doi</work-external-identifier-type>
<work-external-identifier-id>10.1038/npre.2009.2801</work-external-identifier-id>
</work-external-identifier>
</work-external-identifiers>
<work-contributors>
<contributor>
<contributor-attributes>
<contributor-sequence>first</contributor-sequence>
<contributor-role>author</contributor-role>
</contributor-attributes>
</contributor>
</work-contributors>
</orcid-work>
</orcid-works>
</orcid-activities>
</orcid-profile>
</orcid-message>
Okay, I think it would be better to have an argument in the function for doing exact or fuzzy matches. If they choose exact matching, users pass in "10.1087/20120404", then we can take care of the encoding in the function. If they choose fuzzy matching, we can leave out the url encoding.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.