|
17 | 17 | "[`https://www.crossref.org/works`](https://api.crossref.org/works)\n",
|
18 | 18 | "\n",
|
19 | 19 | "\n",
|
20 |
| - "This means the REST API is pretty easy to use with basic low level HTTP libraries(e.g. Python's `requests`), but for this tutorial we are going to use a [higher level python library](https://github.com/fabiobatalha/crossrefapi) developed by Fabio Batalha C. Santos at [Scielo](www.scielo.org).\n", |
| 20 | + "This means the REST API is pretty easy to use with basic low level HTTP libraries(e.g. Python's `requests`), but for this tutorial we are going to use a [higher level python library](https://github.com/fabiobatalha/crossrefapi) developed by Fabio Batalha C. Santos at [SciELO](http://www.scielo.org).\n", |
21 | 21 | "\n",
|
22 | 22 | "The examples here are in Python 3. Sorry- but you're going to have to make the move sometime ;)\n",
|
23 | 23 | "\n",
|
|
91 | 91 | "source": [
|
92 | 92 | "## Working with \"works\"\n",
|
93 | 93 | "\n",
|
94 |
| - "Let's start by looking briefly looking at\"works\". The route refers to items identified by a DOI in the index. These can be articles, books, components, etc.\n", |
| 94 | + "Let's start by looking briefly at\"works\". The route refers to items identified by a DOI in the index. These can be articles, books, components, etc.\n", |
95 | 95 | "\n",
|
96 | 96 | "**TIP:** Crossref does not use \"works\" in the [FRBR](https://en.wikipedia.org/wiki/Functional_Requirements_for_Bibliographic_Records) sense of the word. In Crossref parlance, a \"work\" is just a thing identified by a DOI. In practice, Crossref DOIs are used as citation identifiers. So, in FRBR terms, this means, that a Crossref DOI tends to refer to one _expression_ which might include multiple _manifestations_. So, for example, the ePub, HTML and PDF version of an article will share a Crossref DOI because the differences between them should not effect the interpretation or crediting of the content. In short, they can be cited interchangeably. The same is true of the \"accepted manuscript\" and the \"version-of-record\" of that accepted manuscript.\n",
|
97 | 97 | "\n",
|
|
153 | 153 | }
|
154 | 154 | },
|
155 | 155 | "source": [
|
156 |
| - "Note that above I said \"How many Crossref DOIs\". There are several other [DOI registration agencies](https://www.doi.org/registration_agencies.html). Crossref is by far the largest DOI RA, and the other RAs tend to specialize in orthogonal areas (e.g. Music & Video, Local language translations of publications, etc.) but it is important to note that this API will not work with non-Crossref DOIs (though [DataCite](www.datacite.org]), another RA, provides a very similar API).\n", |
| 156 | + "Note that above I said \"How many Crossref DOIs\". There are several other [DOI registration agencies](https://www.doi.org/registration_agencies.html). Crossref is by far he largest DOI RA, and the other RAs tend to specialize in orthoganal areas (e.g. Music & Video, Local language translations of publications, etc.) but it is important to not that this API will not work with non-Crossref DOIs (though [DataCite](https://www.datacite.org/), another RA, provides a very similar API).\n", |
157 | 157 | "\n",
|
158 | 158 | "**TIP:** Not all DOIs are Crossref DOIs. If you are having trouble using a DOI with Crossref's API, check to see if it is a Crossref DOI.\n",
|
159 | 159 | "\n",
|
|
303 | 303 | "source": [
|
304 | 304 | "Um... That was complicated. What does 'vor' mean?\n",
|
305 | 305 | "\n",
|
306 |
| - "**TIP:** Publishers sometimes record information for multiple versions of the content identified by a DOI. These versions should be interchangeable from the point of view of citation, but sometimes one version has more \"features\" than another. For example, it might be typset or have references linked, etc. The two versions might also have different licenses and different URLs. The terminology publishers use for identifying versions comes from the [NISO standard called JAV (Journal Artcle Version)](http://www.niso.org/publications/rp/RP-8-2008.pdf) and, although this terminology is [sometimes problematic](https://f1000research.com/articles/6-608/v1), you should be aware of it. In particular, you will see two terms used in Crossref metadata:\n", |
| 306 | + "**TIP:** Publishers sometimes record information for multiple versions of the content identified by a DOI. These versions should be interchaneable from the point of view of citation, but sometimes one version has more \"features\" than another. For example, it might be typset or have references linked, etc. The two versions might also have different licenses and different URLs. The terminology publishers use for identifying versions comes from the [NISO standard call JAV (Journal Article Version)](http://www.niso.org/publications/rp/RP-8-2008.pdf) and, although this terminology is [sometimes problematic](https://f1000research.com/articles/6-608/v1), you should be aware of it. In particualr, you will see two terms used in Crossref metadata:\n", |
307 | 307 | "\n",
|
308 | 308 | "- `VOR` = Version of Record\n",
|
309 | 309 | "- `AM` = Accepted Manuscript\n",
|
|
332 | 332 | "cell_type": "markdown",
|
333 | 333 | "metadata": {},
|
334 | 334 | "source": [
|
335 |
| - "The above has given us a brief overview of how to get a record and elements of a record identified with a Crossref DOI. Obviously, the goald is to do this in bulk. That is, to select and process records for multiple Crossref DOIs. Before we do that, it is helpful to familiarise yourself with some of the other \"routes\" supported by the REST API. This is because more advanced usage of the API typically involves combining information from several routes. " |
| 335 | + "The above has given us a brief overview of how to get a record and elements of a record identified with a Crossref DOI. Obviously, the goal is to do this in bulk. That is, to select and process records for multiple Crossref DOIs. Before we do that, it is helpful to familiarise yourself with some of the other \"routes\" supported by the REST API. This is because more advanced usage of the API typically involveds combining information from several routes. " |
336 | 336 | ]
|
337 | 337 | },
|
338 | 338 | {
|
|
867 | 867 | "source": [
|
868 | 868 | "from crossref.restful import Works\n",
|
869 | 869 | "works = Works()\n",
|
870 |
| - "zika_sample = [work for work in works.query('zika').sample(10)]\n", |
871 |
| - "zika_sample" |
| 870 | + "works.query('zika').url" |
872 | 871 | ]
|
873 | 872 | },
|
874 | 873 | {
|
|
886 | 885 | "source": [
|
887 | 886 | "from crossref.restful import Works\n",
|
888 | 887 | "works = Works()\n",
|
889 |
| - "works.query('zika').url" |
| 888 | + "zika_sample = [work for work in works.query('zika').sample(10)]\n", |
| 889 | + "zika_sample" |
890 | 890 | ]
|
891 | 891 | },
|
892 | 892 | {
|
|
0 commit comments