tools icon indicating copy to clipboard operation
tools copied to clipboard

Add citation information following the citation file format

Open sven1103 opened this issue 5 years ago β€’ 20 comments

Here at BOSC CodeFest, we got encouraged to use the human and machine-readable citation file format CFF, which provides citation metadata for software.

Please have a look at the current specification of CFF.

I want to bring this up here, so we can discuss if we want to incorporate this in our tools and pipeline repositories.

I know that @mkuzak and others are working on a Zotero browser plugin that reads CFF files to add it automatically in the bibliography. Changes are, that for other reference managers this will be possible too.

What do you think?

sven1103 avatar Jul 27 '19 17:07 sven1103

Sounds good! How does this compare to .bib bibTex files? Those have been around forever and are supported everywhere.

Should probably be implemented as part of https://github.com/nf-core/tools/issues/236 - that one started to get a bit complicated and stalled..

ewels avatar Jul 28 '19 06:07 ewels

I think the bibTex specification does not cover software as a native entry type: https://en.wikipedia.org/wiki/BibTeX#Entry_types

If you have a look at the current CFF core specification, it is targeted for software. Entries like:

  • license
  • copyright
  • repository
  • repository-code
  • repository-artifact
  • software-container
  • orcid
  • ....

are some i just cherry-picked which I found super useful. You can even reference a git commit hash!

sven1103 avatar Jul 28 '19 07:07 sven1103

Nice! πŸ‘

ewels avatar Jul 30 '19 13:07 ewels

Should be easy enough to cover both, no?

maxulysse avatar Jul 30 '19 13:07 maxulysse

Have you guys checked the CSL style out: https://citationstyles.org/developers/

Used it for Manubot: https://github.com/manubot/manubot

vsmalladi avatar Sep 20 '19 23:09 vsmalladi

@vsmalladi if I understand correctly, CSL is another way to add citation information in a machine-readable way, it deas not address software citation per se. Is that correct?

mkuzak avatar Sep 22 '19 12:09 mkuzak

Yes that is correct. It’s a option so that we can store citation and export to journal specific format

vsmalladi avatar Sep 22 '19 13:09 vsmalladi

Alternative option is codemeta, it has a lot of crosswalks to other systems

mkuzak avatar Sep 22 '19 13:09 mkuzak

GitHub now has native support for this file type: https://twitter.com/natfriedman/status/1420122675813441540?s=21

ewels avatar Jul 28 '21 05:07 ewels

Only issue is that with the GitHub native support it doesn't allow display/citation information for an actual publication - it only ever displays 'repository metadata'. This maybe an issue for pipelines that have been published

jfy133 avatar Jul 28 '21 07:07 jfy133

Only issue is that with the GitHub native support it doesn't allow display/citation information for an actual publication - it only ever displays 'repository metadata'. This maybe an issue for pipelines that have been published

FWIW, the GitHub feature was shipped very quickly, and the new CFF version (1.2.0) that we're currently in the process of finalizing will have a preferred-citation field for publications that aren't software publications (papers, etc.), so that you will be able to reference "actual publications".

Having said that, please note that good practice as laid out in the software citation principles includes that you should also cite the software itself, and you can provide metadata for software publications (e.g., on Zenodo with a DOI) in CFF, that's what it was created for :slightly_smiling_face:.

sdruskat avatar Jul 28 '21 08:07 sdruskat

https://www.softwareheritage.org/2020/05/26/citing-software-with-style/ is working on software citation for bibtex

retorquere avatar Jul 28 '21 23:07 retorquere

https://www.softwareheritage.org/2020/05/26/citing-software-with-style/ is working on software citation for bibtex

In a way. They've created a package for biblatex that can take care of different "slices" of software output to style them. They are also working on supporting CFF in the future: https://forge.softwareheritage.org/T3078.

sdruskat avatar Jul 29 '21 08:07 sdruskat

This should be ready to implement now. Both in the template (for all pipelines) and also in the core repos (tools, website, modules etc).

Example CFF files with syntax for specific publications here: https://github.com/ewels/MultiQC/blob/master/CITATION.cff

Publication that we want to cite: https://www.nature.com/articles/s41587-020-0439-x

ewels avatar Jul 08 '22 08:07 ewels

Closing due to merge of #1663.

ErikDanielsson avatar Jul 11 '22 15:07 ErikDanielsson

Great! You did it in the root of tools but it should also be in the root of the pipeline template :)

Also nf-core/modules, nf-co.re and any other active core repos.

ewels avatar Jul 11 '22 16:07 ewels

Ok, I'll create a few more PRs then :)

ErikDanielsson avatar Jul 11 '22 16:07 ErikDanielsson

And I did my 🀠 duty there too πŸ˜† ☝🏻 but with proper reviews!

apeltzer avatar Jul 12 '22 08:07 apeltzer

Thanks @apeltzer! There are two more to be merged before we are done though: https://github.com/nf-core/configs/pull/397 and https://github.com/nf-core/test-datasets/pull/569

ErikDanielsson avatar Jul 12 '22 09:07 ErikDanielsson