Skip to content

Latest commit

 

History

History
866 lines (772 loc) · 33.8 KB

BOSC_cofest2019_log.md

File metadata and controls

866 lines (772 loc) · 33.8 KB
  1. Zotero connector browser plugin:
  1. Fetch reference from github repository
  1. From bibtex file
  2. From .cff file
  3. From zenodo/doi badge on github
  1. Explore crossref and eventdata
  1. Crossref DOI -> metadata: https://search.crossref.org/
  2. Datacite DOI -> metadata: https://search.datacite.org/
  1. How is this different from altmetrics?
  1. Open source, not mystery algorithm
  1. Other ways people publish software (can we fetch reference information from them)
  1. Journal of Open Source Software
  2. Journal of Open Research Software
  3. SoftwareX
  4. GigaScience
  1. Generate CITATION.cff based on GH info
  1. what can we get from API

Notes:

Datacite v4.2 scheme: https://schema.datacite.org/meta/kernel-4.2/doc/DataCite-MetadataKernel_v4.2.pdf

https://blog.datacite.org/doi-registrations-software/

“As of May 16, 2018, 58,301 DOIs have been registered for software. We can break down this number by repository where the software source code is hosted – most DOIs for software have been registered at Zenodo.”

CERN.ZENODO - ZENODO - Research. Shared.        41346

FIGSHARE.ARS - figshare Academic Research System        4226

PURDUE.NCIB - National Cancer Institute, Bioconductor        2769

PURDUE.EZID - Purdue University        2463

OSTI.DOE - DOE Generic        736

INIST.INRA - Institut National de Recherche Agronomique        223

OCEAN.OCEAN - Code Ocean        206

CRUI.INFNCNAF - Istituto Nazionale di Fisica Nucleare. Centro Nazionale Analisi Fotogrammi        190

CDL.UCI - UC Irvine Library        120

ETHZ.DA-RD - ETHZ Data Archive - Research Data

FORCE11 Software Citation Implementation Working Group (SCIWG): https://github.com/force11/force11-sciwg

RDA software source code identification WG: https://www.rd-alliance.org/groups/software-source-code-identification

Browser plugin:

https://github.com/zotero/zotero-connectors

Github API

REST API endpoints

users/

  • name
  • company
  • location

repos/

  • name
  • full_name : [org]/[reponame]
  • Created_at

Github - CFF mapping

CFF Key

CFF Data Type

Description

Github

Github query

abbreviation

String

The abbreviation of the work

-

-

abstract

String

The abstract of a work

Repo description

https://api.github.com/repos/org/repo field is ‘description”

authors

Collection of entity or person objects

The author of a work

Contributor names?

https://api.github.com/repos/org/repo 

‘contributors_url’

collection-doi

String

The DOI of a collection containing the work

collection-title

String

The title of a collection or proceedings

collection-type

String

The type of a collection

commit

String

The (e.g., Git) commit hash or (e.g., Subversion) revision number of the work

Git commit hash

conference

Entity object

The conference where the work was presented

contact

Collection of entity or person objects

The contact person, group, company, etc. for a work

copyright

String

The copyright information pertaining to the work

data-type

String

The data type of a data set

database

String

The name of the database where a work was accessed/is stored

database-provider

Entity object

The provider of the database where a work was accessed/is stored

date-accessed

Date

The date the work has been last accessed

date-downloaded

Date

The date the work has been downloaded

date-published

Date

The date the work has been published

date-released

Date

The date the work has been released

department

String

The department where a work has been produced

doi

String

The DOI of the work

edition

String

The edition of the work

editors

Collection of entity or person objects

The editors of a work

editors-series

Collection of entity or person objects

The editors of a series in which a work has been published

end

Integer

The end page of the work

entry

String

An entry in the collection that constitutes the work

filename

String

The name of the electronic file containing the work

format

String

The format in which a work is represented

institution

Entity object

The institution where a work has been produced or published

isbn

String

The ISBN of the work

issn

String

The ISSN of the work

issue

Integer

The issue of a periodical in which a work appeared

issue-date

String

The publication date of the issue of a periodical in which a work appeared - see note below

issue-title

String

The name of the issue of a periodical in which the work appeared

journal

String

The name of the journal/magazine/newspaper/periodical where the work was published

keywords

Collection of strings

Keywords pertaining to the work

languages

Collection of ISO 639 language strings

The language of the work

license

License string

The license under which a work is licensed

License

license-url

String (URL)

The URL of the license text under which a work is licensed

License-URL?

location

Entity object

The location of the work

loc-start

Integer

The line of code in the file where the work starts

loc-end

Integer

The line of code in the file where the work ends

medium

String

The medium of the work

month

Integer

The month in which a work has been published

nihmsid

String

The NIHMSID of a work

notes

String

Notes pertaining to the work

number

String

The accession number for a work

number-volumes

Integer

The number of volumes making up the collection in which the work has been published

pages

Integer

The number of pages of the work

patent-states

Collection of strings

The states for which a patent is granted

pmcid

String

The PMCID of a work

publisher

Entity object

The publisher who has published the work

recipients

Collection of entity or person objects

The recipient of a personal communication

repository

String (URL)

The repository where the work is stored

Repo URL

repository-code

String (URL)

The version control system where the source code of the work is stored

Github?

repository-artifact

String (URL)

The repository where the (executable/binary) artifact of the work is stored

scope

String

The scope of the reference, e.g., the section of the work it adheres to

section

String

The section of a work that is referenced

senders

Collection of entity or person objects

The sender of a personal communication

status

Status string

The publication status of the work

start

Integer

The start page of the work

term

String

The term being referenced if the work is a dictionary or encyclopedia

thesis-type

String

The type of the thesis that is the work

title

String

The title of the work

Repo name

translators

Collection of entity or person objects

The translator of a work

type

Reference types string

The type of the work

url

String (URL)

The URL of the work

Repo URL

version

String

The version of the work

release/version?

volume

Integer

The volume of the periodical in which a work appeared

volume-title

String

The title of the volume in which the work appeared

year

Integer

The year in which a work has been published

created_at -> extract year?

year-original

Integer

The year of the original publication

created_at -> extract year?

Person object

CFF keys

CFF property

Github

Github query

family-names

String

given-names

String

name-particle

String

name-suffix

String

affiliation

String

User company

https://api.github.com/users/yochannah

Field is “company”

address

String

city

String

User location

https://api.github.com/users/yochannah

Field is “location”

region

String

post-code

String

country

String

orcid

String (ORCID URL)

email

String

User email

https://api.github.com/users/yochannah

Field is “email”

tel

String

fax

String

website

String (URL)

User blog

https://api.github.com/users/yochannah

Field is “blogl”

Citation.js

  • https://citation.js.org/demo Try out: Can generate various citation formats from a DOI or another ID or citation format.
  • https://citation.js.org Promises also CFF, but for now it can’t be found it in the code or the docs.
  • Any new input formats with parsers can be added as plugins, and built-in ones can be overridden
  • https://doi.org/10.7287/peerj.preprints.27466v2 (Lars G. Willighagen 2019, PeerJ Preprints)
  • https://doi.org/10.5281/zenodo.1005176 (Willighagen & Willighagen et al. 2017-2018, Zenodo)
  • Issue (just like Zotero): It DOES NOT retrieve the version of software from Zenodo :-(
  • Open question: Is it possible to plug in also new serialisations == output formats? That could solve the above issue

Future work - at eLife sprint:

  • Deprecate node app and consider converting to a flask app, because there are helper apps
  • Extend zenodo to pull good cff data, make the artifact deposit, and then zenodo says
  •  “we suggest you update your cff to include this DOI - download the new file here
  • Could also contain your orcid if not present.
  • or copy/paste your creds into the file
  • Auto-add to cff ON github. Seems a bit scary.