Valid Citation File Format files
- must be named
CITATION.cff
(note the capitalization); - are valid according to the Citation File Format schema version 1.2.0 outlined in schema.json;
- are valid YAML 1.2 (specification, validator).
String quoting: Note that in YAML you generally don't need to quote strings.
But you should use "
quotes when a string value
contains whitespace,
contains special characters (e.g., any of :{}[],&*#?|-<>=!%
, or any of `
and @
at the beginning),
consists only of numbers (e.g., is the string "42"
, not the number 42
),
or is "true"
, "false"
, "yes"
or "no"
.
In short: When a string value doesn't behave as expected, try putting it in "
quotes.
A minimal example of a valid CITATION.cff
file, that contains only the required keys, could look like this:
authors:
- family-names: Druskat
given-names: Stephan
cff-version: 1.2.0
message: "If you use this software, please cite it using these metadata."
title: "My Research Software"
For most software however, it is relatively easy to expand the minimal case with important information like the version, the date when it was last published, some keywords, etc.:
abstract: "This is my awesome research software. It does many things."
authors:
- family-names: Druskat
given-names: Stephan
orcid: "https://orcid.org/0000-0003-4925-7248"
cff-version: 1.2.0
date-released: "2021-07-18"
identifiers:
- description: "This is the collection of archived snapshots of all versions of My Research Software"
type: doi
value: 10.5281/zenodo.123456
- description: "This is the archived snapshot of version 0.11.2 of My Research Software"
type: doi
value: 10.5281/zenodo.123457
keywords:
- "awesome software"
- research
license: Apache-2.0
message: "If you use this software, please cite it using these metadata."
repository-code: "https://github.com/citation-file-format/my-research-software"
title: "My Research Software"
version: 0.11.2
When your software or data builds on what others have already done, it is good practice to add a references
section to your
CITATION.cff
file. This way, you give credit to the authors of works that your own work builds on.
The references
section works like a reference list in a paper,
but can also contain references to other software
(such as the dependencies of your software), other datasets,
and other (research) outputs.
authors:
- family-names: Druskat
given-names: Stephan
cff-version: 1.2.0
message: "If you use this software, please cite it using these metadata."
references:
- authors:
- family-names: Spaaks
given-names: "Jurriaan H."
title: "The foundation of Research Software"
type: software
- authors:
- family-names: Haines
given-names: Robert
title: "Ruby CFF Library"
type: software
version: 1.0
title: "My Research Software"
Sometimes you want to redirect any credit your work may receive towards a second work (typically one of your own). A
common example is, that when you write software and then write a paper about it, you may want to be credited for the paper
instead of for the software itself. For this case, your CITATION.cff
should contain metadata about the software at
the root of the CITATION.cff
file, but additionally, you can add a preferred-citation
key with the metadata of
the paper (or other work) you want people to cite. Usually, the message
also reflects the authors' wishes on how they want to be credited.
authors:
- family-names: Druskat
given-names: Stephan
cff-version: 1.2.0
message: "If you use this software, please cite both the article from preferred-citation and the software itself."
preferred-citation:
authors:
- family-names: Druskat
given-names: Stephan
title: "Software paper about My Research Software"
type: article
title: "My Research Software"
The next sections explain each key in more detail.
This section describes the valid keys in a CITATION.cff
file.
abstract
authors
(array of objects)cff-version
commit
contact
(object)date-released
doi
identifiers
(array of objects)keywords
license
license-url
message
preferred-citation
(object)references
(array of objects)repository
repository-artifact
repository-code
title
type
url
version
- type: Nonempty
string
- required:
false
- description: A description of the software or dataset.
- usage:
abstract: This software implements methods to do things.
- type: Array of
definitions.person
and/ordefinitions.entity
objects. - required:
true
- description: The authors of a software or dataset. (See also How to deal with unknown individual authors?)
- usage:
authors: - given-names: Stephan family-names: Druskat
authors: - name: "The Research Software project"
authors: - given-names: Stephan family-names: Druskat - name: "The Research Software project"
- type: Nonempty
string
- required:
true
- description: The Citation File Format schema version that the
CITATION.cff
file adheres to for providing the citation metadata. - usage:
cff-version: 1.2.0
cff-version: "1.2.0"
- type: Nonempty
string
- required:
false
- description: The commit hash or revision number of the software version.
- usage:
commit: 1ff847d81f29c45a3a1a5ce73d38e45c2f319bba
commit: "Revision: 8612"
- type: Array of
definitions.person
and/ordefinitions.entity
objects. - required:
false
- description: The contact person, group, company, etc. for the software or dataset.
- usage:
contact: - affiliation: "German Aerospace Center (DLR)" email: [email protected] family-names: Druskat given-names: Stephan
contact: - email: [email protected] name: "The Research Software project"
contact: - email: [email protected] family-names: Druskat given-names: Stephan - email: [email protected] name: "The Research Software project"
- type:
definitions.date
- required:
false
- description: The date the software or data set has been released. Format is 4-digit year, 2-digit month, 2-digit day of month, separated by dashes.
- usage:
date-released: "2020-01-31"
- type:
definitions.doi
- required:
false
- description: The DOI of the software or dataset. This notation is most useful when there is just one DOI you want to include. In
that case,
doi
can be used as shorthand for something like:
oridentifiers: - description: "The concept DOI of the work." type: doi value: 10.5281/zenodo.1003149
identifiers: - description: "The versioned DOI of the work." type: doi value: 10.5281/zenodo.4813122
- usage:
doi: 10.5281/zenodo.1003149
doi: "10.5281/zenodo.4813122"
-
type: Array of
definitions.identifier
objects. -
required:
false
-
description: The identifiers of the software or dataset.
-
usage:
identifiers: - description: "The concept DOI of the work." type: doi value: 10.5281/zenodo.1003149
identifiers: - description: "The versioned DOI for version 1.1.0 of the work." type: doi value: 10.5281/zenodo.4813122
identifiers: - description: "The concept DOI of the work." type: doi value: 10.5281/zenodo.1003149 - description: "The versioned DOI for version 1.1.0 of the work." type: doi value: 10.5281/zenodo.4813122
identifiers: - description: "The concept DOI of the work." type: doi value: 10.5281/zenodo.1003149 - description: "The versioned DOI for version 1.1.0 of the work." type: doi value: 10.5281/zenodo.4813122 - description: "The Software Heritage identifier for version 1.1.0 of the work." type: swh value: "swh:1:dir:bc286860f423ea7ced246ba7458eef4b4541cf2d" - description: "The GitHub release URL of tag 1.1.0." type: url value: "https://github.com/citation-file-format/citation-file-format/releases/tag/1.1.0" - description: "The GitHub release URL of the commit tagged with 1.1.0." type: url value: "https://github.com/citation-file-format/citation-file-format/tree/16192bf05e99bcb35d5c3e085047807b5720fafc"
- type: Array of nonempty
string
- required:
false
- description: Keywords that describe the work.
- usage:
keywords: - thefirstkeyword - thesecondkeyword - "a third keyword"
- type: (Array of)
definitions.license-enum
. - required:
false
- description: The SPDX license identifier(s) for the license(s) under which the work is made available. When there are multiple licenses, it is assumed their relationship is OR, not AND.
- usage:
license: Apache-2.0
license: - Apache-2.0 - MIT
license: - GPL-3.0 - GPL-3.0-or-later
- type:
definitions.url
- required:
false
- description: The URL of the license text under which the software or dataset is licensed (only for non-standard licenses not included in the SPDX License List).
- usage:
license-url: "https://obscure-licenses.com?id=1234"
- type: Nonempty
string
- required:
true
- default:
If you use this software, please cite it using the metadata from this file.
- description: A message to the human reader of the
CITATION.cff
file to let them know what to do with the citation metadata. - usage:
message: "If you use this software, please cite it using the metadata from this file."
message: "Please cite this software using these metadata."
message: "Please cite this software using the metadata from 'preferred-citation'."
message: "If you use this dataset, please cite it using the metadata from this file."
message: "Please cite this dataset using these metadata."
message: "Please cite this dataset using the metadata from 'preferred-citation'."
- type: A
definitions.reference
object. - required:
false
- description: A reference to another work that should be cited instead of the software or dataset itself. Note that the principles of software citation and data citation require that software should be cited on the same basis as any other research product such as a paper or a book. Adding a different preferred citation may result in a violation of the respective primary principle, "Importance", when others cite this work.
- usage:
preferred-citation: authors: - family-names: Famnames given-names: "Given Nam E." title: "Title of the work." type: generic year: 2021
- type: Array of
definitions.reference
objects. - required:
false
- description: Reference(s) to other creative works. Similar to a list of references in a paper, references of the software or dataset may include other software (dependencies), or other research products that the software or dataset builds on, but not work describing the software or dataset.
- usage:
references: - authors: - name: "The Dependency Project" date-released: "2021-07-26" doi: 10.5281/zenodo.x1234567 repository-code: "https://github.com/dependency-project/dependency" title: Dependency type: software version: 0.13.4 - authors: - family-names: Bielefeld given-names: Arthur name-particle: von doi: 10.9999/hardscifi-lang.42132 issue: 13 journal: "Journal of Hard Science Fiction" scope: "Cite this paper if you want to reference the general concepts of the software." title: "Towards a 100% accuracy syntax parser for all languages" type: article volume: 42 year: 2099
- type:
definitions.url
- required:
false
- description: The URL of the software or dataset in a repository/archive (when the repository is neither a source code repository nor a build artifact repository).
- usage:
repository: "https://ascl.net/2105.013"
- type:
definitions.url
- required:
false
- description: The URL of the work in a build artifact/binary repository (when the work is software).
- usage:
repository-artifact: "https://search.maven.org/artifact/org.corpus-tools/cff-maven-plugin/0.4.0/maven-plugin"
- type:
definitions.url
- required:
false
- description: The URL of the work in a source code repository.
- usage:
repository-code: "https://github.com/citation-file-format/cff-converter-python"
- type: Nonempty
string
- required:
true
- description: The name of the software or dataset.
- usage:
title: "cffconvert"
- type: enum (
software
ordataset
) - default:
software
- required:
false
- description: The type of the work that is being described by this
CITATION.cff
file. - usage:
type: software
type: dataset
- type:
definitions.url
- required:
false
- description: The URL of a landing page/website for the software or dataset.
- usage:
url: "https://citation-file-format.github.io/"
- type:
definitions.version
- required:
false
- description: The version of the software or dataset.
- usage:
version: "1.2.0"
version: 1.2
version: "21.10 (Impish Indri)"
Some values in CFF files are valid in different keys.
For example, repository-code
, url
and license-url
all take URLs as values.
The schema therefore has definitions
of smaller subschemas, that can be reused in the schema from the respective key,
instead of having to duplicate them.
For example, there is one definition for a valid URL value (definitions.url
),
that is being referenced from repository-code
, url
and license-url
.
Note: definitions
and its subkeys like definitions.alias
or definitions.entity.alias
should not be used as keys in CITATION.cff
files:
# incorrect
authors:
- definitions.alias: sdruskat
# incorrect
authors:
- definitions:
alias: sdruskat
# correct
authors:
- alias: sdruskat
definitions.address
definitions.alias
definitions.city
definitions.commit
definitions.country
definitions.date
definitions.doi
definitions.email
definitions.entity
(object)definitions.fax
definitions.identifier
(object)definitions.identifier-description
definitions.license
definitions.license-enum
definitions.orcid
definitions.person
(object)definitions.post-code
definitions.reference
(object)definitions.region
definitions.swh-identifier
definitions.tel
definitions.url
definitions.version
- type: Nonempty
string
- required: N/A
- description: An address.
- usage:
authors: - name: "The Research Software Project" address: "742 Evergreen Terrace"
- type: Nonempty
string
- required: N/A
- description: An alias.
- usage:
authors: - name: "The Research Software Project" alias: "RSP"
- type: Nonempty
string
- required: N/A
- description: A city.
- usage:
authors: - name: "The Research Software Project" city: "Berlin"
- type: Nonempty
string
- required: N/A
- description: The (e.g., Git) commit hash or (e.g., Subversion) revision number of the work.
- usage:
commit: "1ff847d81f29c45a3a1a5ce73d38e45c2f319bba"
commit: "Revision: 8612"
- type:
enum
with valuesAD
AE
AF
AG
AI
AL
AM
AO
AQ
AR
AS
AT
AU
AW
AX
AZ
BA
BB
BD
BE
BF
BG
BH
BI
BJ
BL
BM
BN
BO
BQ
BR
BS
BT
BV
BW
BY
BZ
CA
CC
CD
CF
CG
CH
CI
CK
CL
CM
CN
CO
CR
CU
CV
CW
CX
CY
CZ
DE
DJ
DK
DM
DO
DZ
EC
EE
EG
EH
ER
ES
ET
FI
FJ
FK
FM
FO
FR
GA
GB
GD
GE
GF
GG
GH
GI
GL
GM
GN
GP
GQ
GR
GS
GT
GU
GW
GY
HK
HM
HN
HR
HT
HU
ID
IE
IL
IM
IN
IO
IQ
IR
IS
IT
JE
JM
JO
JP
KE
KG
KH
KI
KM
KN
KP
KR
KW
KY
KZ
LA
LB
LC
LI
LK
LR
LS
LT
LU
LV
LY
MA
MC
MD
ME
MF
MG
MH
MK
ML
MM
MN
MO
MP
MQ
MR
MS
MT
MU
MV
MW
MX
MY
MZ
NA
NC
NE
NF
NG
NI
NL
NO
NP
NR
NU
NZ
OM
PA
PE
PF
PG
PH
PK
PL
PM
PN
PR
PS
PT
PW
PY
QA
RE
RO
RS
RU
RW
SA
SB
SC
SD
SE
SG
SH
SI
SJ
SK
SL
SM
SN
SO
SR
SS
ST
SV
SX
SY
SZ
TC
TD
TF
TG
TH
TJ
TK
TL
TM
TN
TO
TR
TT
TV
TW
TZ
UA
UG
UM
US
UY
UZ
VA
VC
VE
VG
VI
VN
VU
WF
WS
YE
YT
ZA
ZM
ZW
- required: N/A
- description: The ISO 3166-1 alpha-2 country code for a country.
- usage:
authors: - country: NL name: "The Authors Team"
references: - conference: country: DE type: conference
- type: Nonempty
string
- required: N/A
- description: A date. Format is 4-digit year, followed by 2-digit month, followed by 2-digit day of month, and separated by dashes. Note to tool implementers: it is necessary to cast YAML
date
objects tostring
objects when validating against the schema. - usage:
date-released: "2020-01-31"
references: - date-accessed: "2020-01-31" type: generic
references: - date-downloaded: "2020-01-31" type: generic
references: - date-published: "2020-01-31" type: generic
references: - date-released: "2020-01-31" type: generic
references: - conference: date-end: "2020-02-02" date-start: "2020-01-31" type: conference
- type: Nonempty
string
- required: N/A
- description: The DOI of the work (i.e.,
10.5281/zenodo.1003150
, not the resolver URLhttp://doi.org/10.5281/zenodo.1003150
). - usage:
doi: 10.5281/zenodo.1003150
- type: Nonempty
string
- required: N/A
- description: An email address.
- usage:
authors: - email: "[email protected]" name: "The Research Software project"
- type:
object
with the following keys: - required: N/A
- description: An entity. Entities are used in keys that can also take
definitions.person
objects. An entity can represent different types of entities, such as a team, an institution, a company, a conference, etc. - usage:
authors: - address: "742 Evergreen Terrace" alias: RSP city: Berlin country: DE date-end: "2018-07-27" date-start: "2021-07-27" email: [email protected] fax: +12-3456-7890 location: "Lovelace Building, room 0.42" name: "The Research Software Project" orcid: "https://orcid.org/0000-0003-4925-7248" post-code: 90210 region: Renfrewshire tel: +12-345-6789098 website: "https://research-software-project.org"
contact: - name: "The Research Software Project team"
references: - type: generic title: "A reference showing different keys that take entity objects" authors: - name: "The Research Software Project team" conference: name: "RC21 - Research Conference 2021" contact: - name: "Customer Support" database-provider: name: "Database Provider" editors: - name: "The Publication Editing Team" editors-series: - name: "The Publication Series Editing Team" institution: name: "Department of Research, Random University" location: name: "Museum of Postmodern Art" publisher: name: "Open Access Publishing House" recipients: - name: "The recipient institution of a personal communication" senders: - name: "The team sending a personal communication" translators: - name: "Research Translators, Ltd."
- type:
definitions.address
. - required:
false
- description: The entity's address.
- usage:
authors: - address: "742 Evergreen Terrace" name: "The Research Software Project"
- type:
definitions.alias
. - required:
false
- description: The entity's alias.
- usage:
authors: - alias: NASA name: "National Aeronautics and Space Administration"
- type:
definitions.city
. - required:
false
- description: The entity's city.
- usage:
authors: - city: Berlin name: "The Research Software Project"
- type:
definitions.country
. - required:
false
- description: The entity's country.
- usage:
authors: - name: "The Research Software Project" country: DE
- type:
definitions.date
. - required:
false
- description: The entity's ending date, e.g. when the entity is a conference.
- usage:
references: - authors: - name: "The Research Software Project" conference: date-end: "2021-07-27" name: "Research Conference 2021" title: "Conference Paper" type: conference-paper
- type:
definitions.date
. - required:
false
- description: The entity's starting date, e.g. when the entity is a conference.
- usage:
references: - type: conference-paper title: "Conference Paper" authors: - name: "The Research Software Project" conference: name: "Research Conference 2021" date-start: "2021-07-27"
- type:
definitions.email
. - required:
false
- description: The entity's email address.
- usage:
authors: - email: [email protected] name: "The Research Software Project"
- type:
definitions.fax
. - required:
false
- description: The entity's fax number.
- usage:
authors: - fax: +12-3456-7890 name: "The Research Software Project"
- type: Nonempty
string
- required:
false
- description: The entity's location.
- usage:
authors: - location: "Lovelace Building, room 0.42" name: "The Research Software Project"
- type: Nonempty
string
- required:
true
- description: The entity's name.
- usage:
authors: - name: "The Research Software Project"
- type:
definitions.orcid
. - required:
false
- description: The entity's ORCID identifier.
- usage:
authors: - name: "The Research Software Project" orcid: "https://orcid.org/0000-0003-4925-7248"
-
type:
definitions.post-code
. -
required:
false
-
description: The entity's post code.
-
usage:
authors: - name: "The Research Software Project" post-code: 90210
authors: - name: "The Research Software Project" post-code: "90210"
- type:
definitions.region
. - required:
false
- description: The entity's region.
- usage:
authors: - name: "The Research Software Project" region: Renfrewshire
- type:
definitions.tel
. - required:
false
- description: The entity's telephone number.
- usage:
authors: - name: "The Research Software Project" tel: +12-345-6789098
- type:
definitions.url
. - required:
false
- description: The entity's website.
- usage:
authors: - name: "The Research Software Project" website: "https://research-software-project.org"
- type: Nonempty
string
- required: N/A
- description: A fax number.
- usage:
authors: - name: "The Research Software Project" fax: +12-3456-7890
authors: - family-names: Druskat fax: +12-3456-7890 given-names: Stephan
- type: One of the following
object
types (click to expand/collapse):
-
DOI
-
type
:- type:
enum
with singular valuedoi
- required:
true
- description: The type of identifier.
- type:
-
value
:- type:
definitions.doi
- required:
true
- description: The value of the DOI, e.g.
10.5281/zenodo.1003149
- type:
-
description
:- type:
definitions.identifier-description
- required:
false
- description: The description of the DOI, e.g.
This is the DOI for version 0.11.4.
- type:
-
-
URL
-
type
:- type:
enum
with singular valueurl
- required:
true
- description: The type of identifier.
- type:
-
value
:- type:
definitions.url
- required:
true
- description: The value of the URL, e.g.
https://github.com/citation-file-format/citation-file-format
.
- type:
-
description
:- type:
definitions.identifier-description
- required:
false
- description: The description of the URL, e.g.
The homepage for the project
.
- type:
-
-
Software Heritage identifier
-
type
:- type:
enum
with singular valueswh
- required:
true
- description: The type of identifier.
- type:
-
value
:- type:
definitions.swh-identifier
- required:
true
- description: The value of the Software Heritage identifier, e.g.
swh:1:dir:bc286860f423ea7ced246ba7458eef4b4541cf2d
.
- type:
-
description
:- type:
definitions.identifier-description
- required:
false
- description: The description of the Software Heritage identifier, e.g.
The directory object of the repository as stored on Software Heritage.
.
- type:
-
-
Other
-
type
:- type:
enum
with singular valueother
- required:
true
- description: The type of identifier.
- type:
-
value
:- type: Nonempty
string
. - required:
true
- description: The value of the identifier, e.g.
arXiv:2103.06681
.
- type: Nonempty
-
description
:- type:
definitions.identifier-description
- required:
false
- description: The description of the identifier, e.g.
The ArXiv preprint of the paper.
.
- type:
-
-
- required: N/A
- description: An identifier.
- usage:
identifiers: - type: doi value: 10.5281/zenodo.1003149 description: "The concept DOI of the work."
identifiers: - type: doi value: 10.5281/zenodo.4813122 description: "The versioned DOI for version 1.1.0 of the work."
identifiers: - type: doi value: 10.5281/zenodo.1003149 description: "The concept DOI of the work." - type: doi value: 10.5281/zenodo.4813122 description: "The versioned DOI for version 1.1.0 of the work."
identifiers: - type: doi value: 10.5281/zenodo.1003149 description: "The concept DOI of the work." - type: doi value: 10.5281/zenodo.4813122 description: "The versioned DOI for version 1.1.0 of the work." - type: swh value: "swh:1:dir:bc286860f423ea7ced246ba7458eef4b4541cf2d" description: "The Software Heritage identifier for version 1.1.0 of the work." - type: url value: "https://github.com/citation-file-format/citation-file-format/releases/tag/1.1.0" description: "The GitHub release URL of tag 1.1.0." - type: url value: "https://github.com/citation-file-format/citation-file-format/tree/16192bf05e99bcb35d5c3e085047807b5720fafc" description: "The GitHub release URL of the commit tagged with 1.1.0."
preferred-citation: identifiers: - type: other value: "arXiv:2103.06681" description: The ArXiv preprint of the paper
- type: Nonempty
string
- required: N/A
- description: A description for a specific identifier value.
- usage:
doi: 10.5281/zenodo.4813121 identifiers: - type: doi value: 10.5281/zenodo.4813122 description: "The version DOI for this version, which has a relation childOf with the concept DOI specified in the doi key in the root of this file." - type: other value: "ar:1234/5678.ABCD" description: "The identifier provided by Archival Repository, which points to this version of the software."
- type: (Array of)
definitions.license-enum
objects. - required: N/A
- description: The SPDX license identifier(s) for the license(s) under which a work is made available. When there are multiple licenses, it is assumed their relationship is OR, not AND.
- usage:
license: Apache-2.0
license: - Apache-2.0 - MIT
- type:
enum
with values:0BSD
AAL
Abstyles
Adobe-2006
Adobe-Glyph
ADSL
AFL-1.1
AFL-1.2
AFL-2.0
AFL-2.1
AFL-3.0
Afmparse
AGPL-1.0
AGPL-1.0-only
AGPL-1.0-or-later
AGPL-3.0
AGPL-3.0-only
AGPL-3.0-or-later
Aladdin
AMDPLPA
AML
AMPAS
ANTLR-PD
ANTLR-PD-fallback
Apache-1.0
Apache-1.1
Apache-2.0
APAFML
APL-1.0
APSL-1.0
APSL-1.1
APSL-1.2
APSL-2.0
Artistic-1.0
Artistic-1.0-cl8
Artistic-1.0-Perl
Artistic-2.0
Bahyph
Barr
Beerware
BitTorrent-1.0
BitTorrent-1.1
blessing
BlueOak-1.0.0
Borceux
BSD-1-Clause
BSD-2-Clause
BSD-2-Clause-FreeBSD
BSD-2-Clause-NetBSD
BSD-2-Clause-Patent
BSD-2-Clause-Views
BSD-3-Clause
BSD-3-Clause-Attribution
BSD-3-Clause-Clear
BSD-3-Clause-LBNL
BSD-3-Clause-Modification
BSD-3-Clause-No-Nuclear-License
BSD-3-Clause-No-Nuclear-License-2014
BSD-3-Clause-No-Nuclear-Warranty
BSD-3-Clause-Open-MPI
BSD-4-Clause
BSD-4-Clause-Shortened
BSD-4-Clause-UC
BSD-Protection
BSD-Source-Code
BSL-1.0
BUSL-1.1
bzip2-1.0.5
bzip2-1.0.6
C-UDA-1.0
CAL-1.0
CAL-1.0-Combined-Work-Exception
Caldera
CATOSL-1.1
CC-BY-1.0
CC-BY-2.0
CC-BY-2.5
CC-BY-3.0
CC-BY-3.0-AT
CC-BY-3.0-US
CC-BY-4.0
CC-BY-NC-1.0
CC-BY-NC-2.0
CC-BY-NC-2.5
CC-BY-NC-3.0
CC-BY-NC-4.0
CC-BY-NC-ND-1.0
CC-BY-NC-ND-2.0
CC-BY-NC-ND-2.5
CC-BY-NC-ND-3.0
CC-BY-NC-ND-3.0-IGO
CC-BY-NC-ND-4.0
CC-BY-NC-SA-1.0
CC-BY-NC-SA-2.0
CC-BY-NC-SA-2.5
CC-BY-NC-SA-3.0
CC-BY-NC-SA-4.0
CC-BY-ND-1.0
CC-BY-ND-2.0
CC-BY-ND-2.5
CC-BY-ND-3.0
CC-BY-ND-4.0
CC-BY-SA-1.0
CC-BY-SA-2.0
CC-BY-SA-2.0-UK
CC-BY-SA-2.1-JP
CC-BY-SA-2.5
CC-BY-SA-3.0
CC-BY-SA-3.0-AT
CC-BY-SA-4.0
CC-PDDC
CC0-1.0
CDDL-1.0
CDDL-1.1
CDL-1.0
CDLA-Permissive-1.0
CDLA-Sharing-1.0
CECILL-1.0
CECILL-1.1
CECILL-2.0
CECILL-2.1
CECILL-B
CECILL-C
CERN-OHL-1.1
CERN-OHL-1.2
CERN-OHL-P-2.0
CERN-OHL-S-2.0
CERN-OHL-W-2.0
ClArtistic
CNRI-Jython
CNRI-Python
CNRI-Python-GPL-Compatible
Condor-1.1
copyleft-next-0.3.0
copyleft-next-0.3.1
CPAL-1.0
CPL-1.0
CPOL-1.02
Crossword
CrystalStacker
CUA-OPL-1.0
Cube
curl
D-FSL-1.0
diffmark
DOC
Dotseqn
DRL-1.0
DSDP
dvipdfm
ECL-1.0
ECL-2.0
eCos-2.0
EFL-1.0
EFL-2.0
eGenix
Entessa
EPICS
EPL-1.0
EPL-2.0
ErlPL-1.1
etalab-2.0
EUDatagrid
EUPL-1.0
EUPL-1.1
EUPL-1.2
Eurosym
Fair
Frameworx-1.0
FreeBSD-DOC
FreeImage
FSFAP
FSFUL
FSFULLR
FTL
GD
GFDL-1.1
GFDL-1.1-invariants-only
GFDL-1.1-invariants-or-later
GFDL-1.1-no-invariants-only
GFDL-1.1-no-invariants-or-later
GFDL-1.1-only
GFDL-1.1-or-later
GFDL-1.2
GFDL-1.2-invariants-only
GFDL-1.2-invariants-or-later
GFDL-1.2-no-invariants-only
GFDL-1.2-no-invariants-or-later
GFDL-1.2-only
GFDL-1.2-or-later
GFDL-1.3
GFDL-1.3-invariants-only
GFDL-1.3-invariants-or-later
GFDL-1.3-no-invariants-only
GFDL-1.3-no-invariants-or-later
GFDL-1.3-only
GFDL-1.3-or-later
Giftware
GL2PS
Glide
Glulxe
GLWTPL
gnuplot
GPL-1.0
GPL-1.0-only
GPL-1.0-or-later
GPL-1.0+
GPL-2.0
GPL-2.0-only
GPL-2.0-or-later
GPL-2.0-with-autoconf-exception
GPL-2.0-with-bison-exception
GPL-2.0-with-classpath-exception
GPL-2.0-with-font-exception
GPL-2.0-with-GCC-exception
GPL-2.0+
GPL-3.0
GPL-3.0-only
GPL-3.0-or-later
GPL-3.0-with-autoconf-exception
GPL-3.0-with-GCC-exception
GPL-3.0+
gSOAP-1.3b
HaskellReport
Hippocratic-2.1
HPND
HPND-sell-variant
HTMLTIDY
IBM-pibs
ICU
IJG
ImageMagick
iMatix
Imlib2
Info-ZIP
Intel
Intel-ACPI
Interbase-1.0
IPA
IPL-1.0
ISC
JasPer-2.0
JPNIC
JSON
LAL-1.2
LAL-1.3
Latex2e
Leptonica
LGPL-2.0
LGPL-2.0-only
LGPL-2.0-or-later
LGPL-2.0+
LGPL-2.1
LGPL-2.1-only
LGPL-2.1-or-later
LGPL-2.1+
LGPL-3.0
LGPL-3.0-only
LGPL-3.0-or-later
LGPL-3.0+
LGPLLR
Libpng
libpng-2.0
libselinux-1.0
libtiff
LiLiQ-P-1.1
LiLiQ-R-1.1
LiLiQ-Rplus-1.1
Linux-OpenIB
LPL-1.0
LPL-1.02
LPPL-1.0
LPPL-1.1
LPPL-1.2
LPPL-1.3a
LPPL-1.3c
MakeIndex
MirOS
MIT
MIT-0
MIT-advertising
MIT-CMU
MIT-enna
MIT-feh
MIT-Modern-Variant
MIT-open-group
MITNFA
Motosoto
mpich2
MPL-1.0
MPL-1.1
MPL-2.0
MPL-2.0-no-copyleft-exception
MS-PL
MS-RL
MTLL
MulanPSL-1.0
MulanPSL-2.0
Multics
Mup
NAIST-2003
NASA-1.3
Naumen
NBPL-1.0
NCGL-UK-2.0
NCSA
Net-SNMP
NetCDF
Newsletr
NGPL
NIST-PD
NIST-PD-fallback
NLOD-1.0
NLPL
Nokia
NOSL
Noweb
NPL-1.0
NPL-1.1
NPOSL-3.0
NRL
NTP
NTP-0
Nunit
O-UDA-1.0
OCCT-PL
OCLC-2.0
ODbL-1.0
ODC-By-1.0
OFL-1.0
OFL-1.0-no-RFN
OFL-1.0-RFN
OFL-1.1
OFL-1.1-no-RFN
OFL-1.1-RFN
OGC-1.0
OGDL-Taiwan-1.0
OGL-Canada-2.0
OGL-UK-1.0
OGL-UK-2.0
OGL-UK-3.0
OGTSL
OLDAP-1.1
OLDAP-1.2
OLDAP-1.3
OLDAP-1.4
OLDAP-2.0
OLDAP-2.0.1
OLDAP-2.1
OLDAP-2.2
OLDAP-2.2.1
OLDAP-2.2.2
OLDAP-2.3
OLDAP-2.4
OLDAP-2.5
OLDAP-2.6
OLDAP-2.7
OLDAP-2.8
OML
OpenSSL
OPL-1.0
OSET-PL-2.1
OSL-1.0
OSL-1.1
OSL-2.0
OSL-2.1
OSL-3.0
Parity-6.0.0
Parity-7.0.0
PDDL-1.0
PHP-3.0
PHP-3.01
Plexus
PolyForm-Noncommercial-1.0.0
PolyForm-Small-Business-1.0.0
PostgreSQL
PSF-2.0
psfrag
psutils
Python-2.0
Qhull
QPL-1.0
Rdisc
RHeCos-1.1
RPL-1.1
RPL-1.5
RPSL-1.0
RSA-MD
RSCPL
Ruby
SAX-PD
Saxpath
SCEA
Sendmail
Sendmail-8.23
SGI-B-1.0
SGI-B-1.1
SGI-B-2.0
SHL-0.5
SHL-0.51
SimPL-2.0
SISSL
SISSL-1.2
Sleepycat
SMLNJ
SMPPL
SNIA
Spencer-86
Spencer-94
Spencer-99
SPL-1.0
SSH-OpenSSH
SSH-short
SSPL-1.0
StandardML-NJ
SugarCRM-1.1.3
SWL
TAPR-OHL-1.0
TCL
TCP-wrappers
TMate
TORQUE-1.1
TOSL
TU-Berlin-1.0
TU-Berlin-2.0
UCL-1.0
Unicode-DFS-2015
Unicode-DFS-2016
Unicode-TOU
Unlicense
UPL-1.0
Vim
VOSTROM
VSL-1.0
W3C
W3C-19980720
W3C-20150513
Watcom-1.0
Wsuipa
WTFPL
wxWindows
X11
Xerox
XFree86-1.1
xinetd
Xnet
xpp
XSkat
YPL-1.0
YPL-1.1
Zed
Zend-2.0
Zimbra-1.3
Zimbra-1.4
Zlib
zlib-acknowledgement
ZPL-1.1
ZPL-2.0
ZPL-2.1
- required: N/A
- description: SPDX identifier for the license under which a work is made available. The list of identifiers originates from https://github.com/spdx/license-list-data/blob/bd8e963a41b13524b2ccb67f9335d2dd397c378e/json/licenses.json.
- usage:
license: Apache-2.0
license: - Apache-2.0 - MIT
- type:
uri
with patternhttps://orcid\.org/[0-9]{4}-[0-9]{4}-[0-9]{4}-[0-9]{3}[0-9X]{1}
- required: N/A
- description: An ORCID identifier.
- usage:
authors: - family-names: Druskat given-names: Stephan orcid: "https://orcid.org/0000-0003-4925-7248"
-
type:
object
with the following keys: -
required: N/A
-
description: A person. The Citation File Format aims to implement a culturally neutral model for personal names, according to the suggestions on splitting personal names by the W3C and the implementation of personal name splitting in BibTeX (Hufflen, 2006). To this end, the Citation File Format provides four generic keys to specify personal names:
- Values for
family-names
specify family names, including combinations of given and patronymic forms, such as Guðmundsdóttir or bin Osman; double names with or without hyphen, such as Leutheusser-Schnarrenberger or Sánchez Vicario. It can potentially also specify names that include prepositions or (nobiliary) particles, especially if they occur in between family names such as in Spanish- or Portuguese-origin names, such as Fernández de Córdoba. - Values for
given-names
specify given and any other names. - Values for
name-particle
specify nobiliary particles and prepositions, such as in Ludwig van Beethoven or Rafael van der Vaart. - Values for
name-suffix
specify suffixes such as Jr. or III (as in Frank Edwin Wright III).
- Values for
Note that these keys may still not be optimal for, e.g., Icelandic names which do not have the concept of family names, or Chinese generation names, but represent a best effort.
- usage:
authors: - address: "742 Evergreen Terrace" affiliation: "German Aerospace Center (DLR)" alias: sdruskat city: Berlin country: DE email: [email protected] family-names: Druskat fax: +12-3456-7890 given-names: Stephan name-particle: von name-suffix: III orcid: "https://orcid.org/0000-0003-4925-7248" post-code: 90210 region: Renfrewshire tel: +12-345-6789098 website: "https://research-project.org"
- type:
definitions.address
- required:
false
- description: The person's address.
- usage:
authors: - family-names: Druskat given-names: Stephan address: "742 Evergreen Terrace"
- type: Nonempty
string
- required:
false
- description: The person's affiliation.
- usage:
authors: - family-names: Druskat given-names: Stephan affiliation: "German Aerospace Center (DLR)"
- type:
definitions.alias
- required:
false
- description: The person's alias.
- usage:
authors: - family-names: Druskat given-names: Stephan alias: sdruskat
- type:
definitions.city
- required:
false
- description: The person's city.
- usage:
authors: - family-names: Druskat given-names: Stephan city: Berlin
- type:
definitions.country
- required:
false
- description: The person's country.
- usage:
authors: - family-names: Druskat given-names: Stephan country: DE
- type:
definitions.email
- required:
false
- description: The person's email address.
- usage:
authors: - family-names: Druskat given-names: Stephan email: [email protected]
- type: Nonempty
string
- required:
false
- description: The person's family names.
- usage:
authors: - family-names: Druskat given-names: Stephan
- type:
definitions.fax
- required:
false
- description: The person's fax number.
- usage:
authors: - family-names: Druskat given-names: Stephan fax: +12-3456-7890
- type: Nonempty
string
- required:
false
- description: The person's given names.
- usage:
authors: - family-names: Druskat given-names: Stephan
- type: Nonempty
string
- required:
false
- description: The person's name particle, e.g., a nobiliary particle or a [preposition] meaning 'of' or 'from' (for example 'von' in 'Alexander von Humboldt').
- usage:
authors: - family-names: Humboldt given-names: Alexander name-particle: von
- type: Nonempty
string
- required:
false
- description: The person's name suffix, e.g. 'Jr.' for Sammy Davis Jr. or 'III' for Frank Edwin Wright III.
- usage:
authors: - family-names: Davis given-names: Sammy name-suffix: Jr.
- type:
definitions.orcid
- required:
false
- description: The person's ORCID identifier.
- usage:
authors: - family-names: Druskat given-names: Stephan orcid: "https://orcid.org/0000-0003-4925-7248"
- type:
definitions.post-code
- required:
false
- description: The person's post code.
- usage:
authors: - family-names: Druskat given-names: Stephan post-code: 90210
authors: - family-names: Druskat given-names: Stephan post-code: "90210"
- type:
definitions.region
- required:
false
- description: The person's region.
- usage:
authors: - family-names: Druskat given-names: Stephan region: Renfrewshire
- type:
definitions.tel
- required:
false
- description: The person's telephone number.
- usage:
authors: - family-names: Druskat given-names: Stephan tel: +12-345-6789098
- type:
definitions.url
- required:
false
- description: The person's website.
- usage:
authors: - family-names: Druskat given-names: Stephan website: "https://research-project.org"
- type:
string
ornumber
- required: N/A
- description: A post code.
- usage:
authors: - name: "The Research Software Project" post-code: "G42 2PN"
authors: - name: "The Research Software Project" post-code: 12053
- type:
object
with the following keys:abbreviation
abstract
authors
collection-doi
collection-title
collection-type
commit
conference
contact
copyright
data-type
database-provider
database
date-accessed
date-downloaded
date-published
date-released
department
doi
edition
editors
editors-series
end
entry
filename
format
identifiers
institution
isbn
issn
issue
issue-date
issue-title
journal
keywords
languages
license
license-url
loc-end
loc-start
location
medium
month
nihmsid
notes
number
number-volumes
pages
patent-states
pmcid
publisher
recipients
repository
repository-artifact
repository-code
scope
section
senders
start
status
term
thesis-type
title
translators
type
url
version
volume
volume-title
year
year-original
- required: N/A
- description: A reference.
- usage:
references: - authors: - family-names: Smith given-names: "A. M." - family-names: Katz given-names: "D. S." - family-names: Niemeyer given-names: "K. E." - name: "FORCE11 Software Citation Working Group" doi: 10.7717/peerj-cs.86 journal: "PeerJ Computer Science" month: 9 start: e86 title: "Software citation principles" type: article volume: 2 year: 2016
references: - abbreviation: NP abstract: "This is a non-sensical example reference to show how the many different keys in a reference object can be used." authors: - name: "The Research Software Project" collection-doi: 10.5281/zenodo.1003149 collection-title: "Proceedings of the Research Conference 2021" collection-type: proceedings commit: 16192bf05e99bcb35d5c3e085047807b5720fafc conference: name: "Research Conference 2021" contact: - name: "The RC21 Organizing Committee" copyright: "© 2021 The Research Software Project team" data-type: YAML database: "Research Database" database-provider: name: "Research Databases Ltd." date-accessed: "2021-07-27" date-downloaded: "2021-07-27" date-published: "2021-07-26" date-released: "2021-07-26" department: "Department of Hard Science Fiction" doi: 10.5281/zenodo.4813122 edition: "2nd abridged edition" editors: - family-names: Inchief given-names: Editor - name: "The RCProc Editorial Team" editors-series: - family-names: Editor given-names: Series - name: "The Series Editors" end: 42 entry: "Citation <n. 1>" filename: CITATION.cff format: "Citation File Format" identifiers: - description: "The concept DOI of the work." type: doi value: 10.5281/zenodo.1003149 - description: "The versioned DOI for version 1.1.0 of the work." type: doi value: 10.5281/zenodo.4813122 - description: "The Software Heritage identifier for version 1.1.0 of the work." type: swh value: "swh:1:dir:bc286860f423ea7ced246ba7458eef4b4541cf2d" - description: "The GitHub release URL of tag 1.1.0." type: url value: "https://github.com/citation-file-format/citation-file-format/releases/tag/1.1.0" institution: name: "University of Arcadia" isbn: "9781603095075" issn: 2475-9066 issue: 42 issue-date: "November/December 2021" issue-title: "Special Issue: Software Citation" journal: "Journal of Open Source Software" keywords: - "software citation" - "citation file format" - research languages: - en - haw license: Apache-2.0 license-url: "https://obscure-licenses.com?id=1234" loc-end: 42 loc-start: 21 location: name: "Library of the Unseen University" medium: "5¼-inch floppy disk" month: 7 nihmsid: NIHMS236863 notes: "Excellent reference! TODO Read for thesis." number: 12053 number-volumes: 7 pages: 78 patent-states: - Canada pmcid: PMC3134971 publisher: name: "Open Access Publishing House" recipients: - name: "Recipient entity of personal communication" - family-names: Recipient given-names: Communication repository: "https://ascl.net/2105.013" repository-artifact: "https://search.maven.org/artifact/org.corpus-tools/cff-maven-plugin/0.4.0/maven-plugin" repository-code: "https://github.com/citation-file-format/my-research-software" scope: "Supplement 2: Additional material" section: 7 senders: - name: "Sender entity of personal communication" - family-names: Sender given-names: Communication start: 17 status: submitted term: Citation thesis-type: "PhD thesis" title: "Towards better software citation" translators: - name: "Research Translators Ltd." - family-names: Lator given-names: Trans type: conference-paper url: "https://citation-file-format.github.io/" version: 0.3.12 volume: 2 volume-title: "Volume II: How it went on" year: 2021 year-original: 1978
- type: Nonempty
string
- required:
false
- description: The abbreviation of a work.
- usage:
preferred-citation: abbreviation: ABC type: generic
references: - abbreviation: DEF type: generic
- type: Nonempty
string
- required:
false
- description: The abstract of the work.
- If the work is a journal paper or other academic work: The abstract of the work.
- If the work is a film, broadcast or similar: The synopsis of the work.
- usage:
preferred-citation: abstract: "This work describes the software or dataset that should be actually cited. etc." type: generic
references: - abstract: "This work implements an algorithm that we use in our software. etc." type: generic
- type: Array of
definitions.person
and/ordefinitions.entity
objects. - required:
true
- description: The authors of the work.
- usage:
preferred-citation: authors: - name: "The Research Software Project team" - family-names: Druskat given-names: Stephan type: generic
references: - authors: - name: "The Research Software Project team" - family-names: Druskat given-names: Stephan type: generic
To enable credit for the individuals that have created a work,
it is good practice to cite the respective individuals as authors.
Sometimes you may not be able to determine the person names of the relevant individuals to create
definitions.person
objects for them,
for example when a software you cite does not provide a CITATION.cff
file.
Then, the next best thing is to refer to those that you could not determine person names for
collectively as a "team" or "project" using the title of the work
in a definitions.entity
object:
authors:
- name: "The Research Software project"
authors:
- family-names: Spaaks
given-names: "Jurriaan H."
- family-names: Druskat
given-names: Stephan
- name: "The Research Software team"
This still represents the maximum knowledge you have about the authors.
It's also a good starting point to enable users of the citation metadata to determine the correct names themselves in the future,
especially if you also provide a source of information such as a repository-code
or a url
.
If the authors of a work are truly anonymous, you can represent this in the same way:
authors:
- name: anonymous
- type:
definitions.doi
- required:
false
- description: The DOI of a collection containing the work.
- usage:
preferred-citation: collection-doi: 10.5281/zenodo.1003149 type: generic
references: - collection-doi: 10.5281/zenodo.1003149 type: generic
- type: Nonempty
string
- required:
false
- description: The title of a collection or proceedings.
- usage:
preferred-citation: collection-title: "Proceedings of the Research Conference 2021" type: generic
references: - collection-title: "Proceedings of the Research Conference 2021" type: generic
- type: Nonempty
string
- required:
false
- description: The type of a collection.
- usage:
preferred-citation: collection-type: proceedings type: generic
references: - collection-type: proceedings type: generic
- type:
definitions.commit
- required:
false
- description: The (e.g., Git) commit hash or (e.g., Subversion) revision number of the work.
- usage:
preferred-citation: commit: "16192bf05e99bcb35d5c3e085047807b5720fafc" type: generic
references: - commit: "16192bf05e99bcb35d5c3e085047807b5720fafc" type: generic
- type:
definitions.entity
- required:
false
- description: The conference where the work was presented.
- usage:
preferred-citation: conference: name: "Research Conference 2021" type: generic
references: - conference: name: "Research Conference 2021" type: generic
- type: Array of
definitions.person
and/ordefinitions.entity
objects. - required:
false
- description: The contact person, group, company, etc. for a work.
- usage:
references: - contact: - name: "The RC21 Organizing Committee" - family-names: Druskat given-names: Stephan type: generic
preferred-citation: contact: - name: "The RC21 Organizing Committee" - family-names: Druskat given-names: Stephan type: generic
- type: Nonempty
string
- required:
false
- description: The copyright information pertaining to the work.
- usage:
preferred-citation: copyright: "© 2021 The Research Software Project team" type: generic
references: - copyright: "© 2021 The Research Software Project team" type: generic
- type: Nonempty
string
- required:
false
- description: The data type of a data set.
- usage:
preferred-citation: data-type: YAML type: generic
references: - data-type: YAML type: generic
- type:
definitions.entity
- required:
false
- description: The provider of the database where a work was accessed/is stored.
- usage:
preferred-citation: database-provider: name: "Research Databases Ltd." type: generic
references: - database-provider: name: "Research Databases Ltd." type: generic
- type: Nonempty
string
- required:
false
- description: The name of the database where a work was accessed/is stored.
- usage:
preferred-citation: database: "Research Database" type: generic
references: - database: "Research Database" type: generic
- type:
definitions.date
- required:
false
- description: The date the work was accessed.
- usage:
preferred-citation: date-accessed: "2021-07-27" type: generic
references: - date-accessed: "2021-07-27" type: generic
- type:
definitions.date
- required:
false
- description: The date the work has been downloaded.
- usage:
preferred-citation: date-downloaded: "2021-07-27" type: generic
references: - date-downloaded: "2021-07-27" type: generic
- type:
definitions.date
- required:
false
- description: The date the work has been published.
- usage:
references: - date-published: "2021-07-27" type: generic
preferred-citation: date-published: "2021-07-27" type: generic
- type:
definitions.date
- required:
false
- description: The date the work has been released.
- usage:
preferred-citation: date-released: "2021-07-27" type: generic
references: - date-released: "2021-07-27" type: generic
- type: Nonempty
string
- required:
false
- description: The department where a work has been produced.
- usage:
preferred-citation: department: "Department of Hard Science Fiction" type: generic
references: - department: "Department of Hard Science Fiction" type: generic
- type:
definitions.doi
- required:
false
- description: The DOI of the work.
- usage:
preferred-citation: doi: 10.5281/zenodo.4813122 type: generic
references: - doi: 10.5281/zenodo.4813122 type: generic
- type: Nonempty
string
- required:
false
- description: The edition of the work.
- usage:
preferred-citation: edition: "2nd abridged edition" type: generic
references: - edition: "2nd abridged edition" type: generic
- type: Array of
definitions.person
and/ordefinitions.entity
objects. - required:
false
- description: The editor(s) of a work.
- usage:
preferred-citation: editors: - family-names: Inchief given-names: Editor - name: "The RCProc Editorial Team" type: generic
references: - editors: - family-names: Inchief given-names: Editor - name: "The RCProc Editorial Team" type: generic
- type: Array of
definitions.person
and/ordefinitions.entity
objects. - required:
false
- description: The editor(s) of a series in which a work has been published.
- usage:
preferred-citation: editors-series: - family-names: Editor given-names: Series - name: "The Series Editors" type: generic
references: - editors-series: - family-names: Editor given-names: Series - name: "The Series Editors" type: generic
- type: Nonempty
string
orinteger
- required:
false
- description: The end page of the work.
- usage:
preferred-citation: end: "42" type: generic
preferred-citation: end: 42 type: generic
references: - end: "42" type: generic
references: - end: 42 type: generic
- type: Nonempty
string
- required:
false
- description: An entry in the collection that constitutes the work.
- usage:
preferred-citation: entry: "Citation <n. 1>" type: generic
references: - entry: "Citation <n. 1>" type: generic
- type: Nonempty
string
- required:
false
- description: The name of the electronic file containing the work.
- usage:
preferred-citation: filename: CITATION.cff type: generic
references: - filename: CITATION.cff type: generic
- type: Nonempty
string
- required:
false
- description: The format in which a work is represented.
- usage:
preferred-citation: format: "Citation File Format" type: generic
references: - format: "Citation File Format" type: generic
- type: Array of
definitions.identifier
objects. - required:
false
- description: The identifier(s) of the work.
- usage:
preferred-citation: identifiers: - description: "The concept DOI of the work." type: doi value: 10.5281/zenodo.1003149 - description: "The versioned DOI for version 1.1.0 of the work." type: doi value: 10.5281/zenodo.4813122 - description: "The Software Heritage identifier for version 1.1.0 of the work." type: swh value: "swh:1:dir:bc286860f423ea7ced246ba7458eef4b4541cf2d" - description: "The GitHub release URL of tag 1.1.0." type: url value: "https://github.com/citation-file-format/citation-file-format/releases/tag/1.1.0" type: generic
references: - identifiers: - description: "The concept DOI of the work." type: doi value: 10.5281/zenodo.1003149 - description: "The versioned DOI for version 1.1.0 of the work." type: doi value: 10.5281/zenodo.4813122 - description: "The Software Heritage identifier for version 1.1.0 of the work." type: swh value: "swh:1:dir:bc286860f423ea7ced246ba7458eef4b4541cf2d" - description: "The GitHub release URL of tag 1.1.0." type: url value: "https://github.com/citation-file-format/citation-file-format/releases/tag/1.1.0" type: generic
- type:
definitions.entity
- required:
false
- description: The institution where a work has been produced or published.
- usage:
preferred-citation: institution: name: "University of Arcadia" type: generic
references: - institution: name: "University of Arcadia" type: generic
- type:
string
with pattern^[0-9\- ]{10,17}X?$
- required:
false
- description: The ISBN of the work.
- usage:
preferred-citation: isbn: "9781603095075" type: generic
references: - isbn: "9781603095075" type: generic
- type:
string
with pattern^\d{4}-\d{3}[\dxX]$
- required:
false
- description: The ISSN of the work.
- usage:
preferred-citation: issn: "2475-9066" type: generic
references: - issn: "2475-9066" type: generic
- type: Nonempty
string
ornumber
- required:
false
- description: The issue of a periodical in which a work appeared.
- usage:
preferred-citation: issue: "42" type: generic
references: - issue: "42" type: generic
preferred-citation: issue: 42 type: generic
references: - issue: 42 type: generic
- type: Nonempty
string
- required:
false
- description: The publication date of the issue of a periodical in which a work appeared.
- usage:
preferred-citation: issue-date: "November/December 2021" type: generic
references: - issue-date: "November/December 2021" type: generic
preferred-citation: issue-date: "2021-12-31" type: generic
references: - issue-date: "2021-12-31" type: generic
- type: Nonempty
string
- required:
false
- description: The name of the issue of a periodical in which the work appeared.
- usage:
preferred-citation: issue-title: "Special Issue: Software Citation" type: generic
references: - issue-title: "Special Issue: Software Citation" type: generic
- type: Nonempty
string
- required:
false
- description: The name of the journal/magazine/newspaper/periodical where the work was published.
- usage:
preferred-citation: journal: "Journal of Open Source Software" type: generic
references: - journal: "Journal of Open Source Software" type: generic
- type: Array of nonempty
string
- required:
false
- description: Keywords pertaining to the work.
- usage:
preferred-citation: keywords: - "software citation" - "citation file format" - research type: generic
references: - keywords: - "software citation" - "citation file format" - research type: generic
- type: Array of ISO 639
string
with 2 or 3 characters and pattern^[a-z]{2,3}$
- required:
false
- description: The language identifier(s) of the work according to ISO 639 language strings.
- usage:
preferred-citation: languages: - en - haw type: generic
references: - languages: - en - haw type: generic
- type: (Array of)
definitions.license-enum
. - required:
false
- description: The SPDX license identifier(s) for the license(s) under which the work is made available. When there are multiple licenses, it is assumed their relationship is OR, not AND.
- usage:
preferred-citation: license: Apache-2.0 type: generic
references: - license: Apache-2.0 type: generic
preferred-citation: license: - Apache-2.0 - MIT type: generic
references: - license: - Apache-2.0 - MIT type: generic
- type:
definitions.url
- required:
false
- description: The URL of the license text under which the work is licensed (only for non-standard licenses not included in the SPDX License List).
- usage:
preferred-citation: license-url: "https://obscure-licenses.com?id=1234" type: generic
references: - license-url: "https://obscure-licenses.com?id=1234" type: generic
- type: Nonempty
string
orinteger
- required:
false
- description: The line of code in the file where the work ends.
- usage:
preferred-citation: loc-end: "42" type: generic
preferred-citation: loc-end: 42 type: generic
references: - loc-end: "42" type: generic
references: - loc-end: 42 type: generic
- type: Nonempty
string
orinteger
- required:
false
- description: The line of code in the file where the work starts.
- usage:
preferred-citation: loc-start: "21" type: generic
preferred-citation: loc-start: 21 type: generic
references: - loc-start: "21" type: generic
references: - loc-start: 21 type: generic
- type:
definitions.entity
- required:
false
- description: The location of the work.
- usage:
preferred-citation: location: name: "Library of the Unseen University" type: generic
references: - location: name: "Library of the Unseen University" type: generic
- type: Nonempty
string
- required:
false
- description: The medium of the work.
- usage:
preferred-citation: medium: "5¼-inch floppy disk" type: generic
references: - medium: "5¼-inch floppy disk" type: generic
- type:
integer
in range1-12
orenum
with values:1
2
3
4
5
6
7
8
9
10
11
12
- required:
false
- description: The month in which a work has been published.
- usage:
preferred-citation: month: 7 type: generic
preferred-citation: month: "7" type: generic
references: - month: 7 type: generic
references: - month: "7" type: generic
- type: Nonempty
string
- required:
false
- description: The NIHMSID of a work.
- usage:
preferred-citation: nihmsid: NIHMS236863 type: generic
references: - nihmsid: NIHMS236863 type: generic
- type: Nonempty
string
- required:
false
- description: Notes pertaining to the work. Note that this key should contain notes that may be picked up by some downstream tooling (e.g., reference managers), but not others (e.g., a software index).
- usage:
preferred-citation: notes: "Excellent reference! TODO Read for thesis." type: generic
references: - notes: "Excellent reference! TODO Read for thesis." type: generic
- type:
string
ornumber
- required:
false
- description: The (library) accession number for a work.
- usage:
preferred-citation: number: "005.1-ABC" type: generic
references: - number: "005.1-ABC" type: generic
preferred-citation: number: 1234567 type: generic
references: - number: 1234567 type: generic
preferred-citation: number: 1.4 type: generic
references: - number: 1.4 type: generic
- type: Nonempty
string
orinteger
- required:
false
- description: The number of volumes making up the collection in which the work has been published.
- usage:
preferred-citation: number-volumes: "4" type: generic
preferred-citation: number-volumes: 4 type: generic
references: - number-volumes: "4" type: generic
references: - number-volumes: 4 type: generic
- type: Nonempty
string
orinteger
- required:
false
- description: The number of pages of the work.
- usage:
preferred-citation: pages: "123" type: generic
preferred-citation: pages: 123 type: generic
references: - pages: "123" type: generic
references: - pages: 123 type: generic
- type: Array of nonemtpy
string
- required:
false
- description: The states for which a patent is granted.
- usage:
preferred-citation: patent-states: - Canada - IL type: generic
references: - patent-states: - Canada - IL type: generic
- type:
string
with pattern^PMC[0-9]{7}$
- required:
false
- description: The PMCID of a work.
- usage:
preferred-citation: pmcid: PMC3134971 type: generic
references: - pmcid: PMC3134971 type: generic
- type:
definitions.entity
- required:
false
- description: The publisher who has published the work.
- usage:
preferred-citation: publisher: name: "Open Access Publishing House" type: generic
references: - publisher: name: "Open Access Publishing House" type: generic
- type: Array of
definitions.person
and/ordefinitions.entity
objects. - required:
false
- description: The recipient(s) of a personal communication.
- usage:
preferred-citation: recipients: - name: "Recipient entity of personal communication" - family-names: Recipient given-names: Communication type: generic
references: - recipients: - name: "Recipient entity of personal communication" - family-names: Recipient given-names: Communication type: generic
- type:
definitions.url
- required:
false
- description: The URL of the work in a repository/archive (when the repository is neither a source code repository nor a build artifact repository).
- usage:
preferred-citation: repository: "https://ascl.net/2105.013" type: generic
references: - repository: "https://ascl.net/2105.013" type: generic
- type:
definitions.url
- required:
false
- description: The URL of the work in a build artifact/binary repository.
- usage:
preferred-citation: repository-artifact: "https://search.maven.org/artifact/org.corpus-tools/cff-maven-plugin/0.4.0/maven-plugin" type: generic
references: - repository-artifact: "https://search.maven.org/artifact/org.corpus-tools/cff-maven-plugin/0.4.0/maven-plugin" type: generic
- type:
definitions.url
- required:
false
- description: The URL of the work in a source code repository.
- usage:
preferred-citation: repository-code: "https://github.com/citation-file-format/my-research-software" type: generic
references: - repository-code: "https://github.com/citation-file-format/my-research-software" type: generic
- type: Nonempty
string
- required:
false
- description: The scope of the reference, e.g., the section of the work it adheres to.
- usage:
preferred-citation: scope: "Supplement 2: Additional material" type: generic
references: - scope: "Supplement 2: Additional material" type: generic
- type:
string
ornumber
- required:
false
- description: The section of a work that is referenced.
- usage:
preferred-citation: section: "Section 7: Software citation" type: generic
references: - section: "Section 7: Software citation" type: generic
preferred-citation: section: 7 type: generic
references: - section: 7 type: generic
preferred-citation: section: 7.1 type: generic
references: - section: 7.1 type: generic
- type: Array of
definitions.person
and/ordefinitions.entity
objects. - required:
false
- description: The sender(s) of a personal communication.
- usage:
preferred-citation: senders: - name: "Sender entity of personal communication" - family-names: Sender given-names: Communication type: generic
references: - senders: - name: "Sender entity of personal communication" - family-names: Sender given-names: Communication type: generic
- type: Nonempty
string
orinteger
- required:
false
- description: The start page of the work.
- usage:
preferred-citation: start: "42" type: generic
preferred-citation: start: 42 type: generic
references: - start: "42" type: generic
references: - start: 42 type: generic
- type:
enum
with values:abstract
advance-online
in-preparation
in-press
preprint
submitted
- required:
false
- description: The publication status of the work.
- usage:
preferred-citation: status: submitted type: generic
references: - status: submitted type: generic
- type: Nonempty
string
- required:
false
- description: The term being referenced if the work is a dictionary or encyclopedia.
- usage:
preferred-citation: term: Citation type: generic
references: - term: Citation type: generic
- type: Nonempty
string
- required:
false
- description: The type of the thesis that is the work.
- usage:
preferred-citation: thesis-type: "PhD thesis" type: generic
references: - thesis-type: "PhD thesis" type: generic
- type: Nonempty
string
- required:
true
- description: The title of the work.
- usage:
preferred-citation: title: "Towards better software citation" type: generic
references: - title: "Towards better software citation" type: generic
- type: Array of
definitions.person
and/ordefinitions.entity
objects. - required:
false
- description: The translator(s) of a work.
- usage:
preferred-citation: translators: - name: "Research Translators Ltd." - family-names: Lator given-names: Trans type: generic
references: - translators: - name: "Research Translators Ltd." - family-names: Lator given-names: Trans type: generic
- type:
enum
with values:art
article
audiovisual
bill
blog
book
catalogue
conference-paper
conference
data
database
dictionary
edited-work
encyclopedia
film-broadcast
generic
government-document
grant
hearing
historical-work
legal-case
legal-rule
magazine-article
manual
map
multimedia
music
newspaper-article
pamphlet
patent
personal-communication
proceedings
report
serial
slides
software-code
software-container
software-executable
software-virtual-machine
software
sound-recording
standard
statute
thesis
unpublished
video
website
- required:
true
- description: The type of the work.
- usage:
preferred-citation: type: generic
references: - type: generic
- type:
definitions.url
- required:
false
- description: The URL of the work.
- usage:
preferred-citation: type: generic url: "https://citation-file-format.github.io/"
references: - type: generic url: "https://citation-file-format.github.io/"
- type:
definitions.version
- required:
false
- description: The version of the work.
- usage:
preferred-citation: type: generic version: 0.3.12
references: - type: generic version: 0.3.12
- type: Nonempty
string
orinteger
- required:
false
- description: The volume of the periodical in which a work appeared.
- usage:
preferred-citation: type: generic volume: "5"
preferred-citation: type: generic volume: 5
references: - type: generic volume: "5"
references: - type: generic volume: 5
- type: Nonempty
string
- required:
false
- description: The title of the volume in which the work appeared.
- usage:
preferred-citation: type: generic volume-title: "Volume II: How it went on"
references: - type: generic volume-title: "Volume II: How it went on"
- type: Nonempty
string
orinteger
- required:
false
- description: The year in which a work has been published.
- usage:
preferred-citation: type: generic year: "2021"
preferred-citation: type: generic year: 2021
references: - type: generic year: "2021"
references: - type: generic year: 2021
- type: Nonempty
string
orinteger
- required:
false
- description: The year of the original publication.
- usage:
preferred-citation: type: generic year-original: "1978"
preferred-citation: type: generic year-original: 1978
references: - type: generic year-original: "1978"
references: - type: generic year-original: 1978
- type: Nonempty
string
- required: N/A
- description: A region.
- usage:
authors: - name: "The Research Software Project" region: Renfrewshire
- type:
string
with pattern^swh:1:(snp|rel|rev|dir|cnt):[0-9a-fA-F]{40}$
- required: N/A
- description: The Software Heritage identifier (without further qualifiers such as origin, visit, anchor, path). Note: Software Heritage identifiers are documented here: https://docs.softwareheritage.org/devel/swh-model/persistent-identifiers.html.
- usage:
identifiers: - type: swh value: "swh:1:rev:309cf2674ee7a0749978cf8265ab91a60aea0f7d"
- type: Nonempty
string
- required: N/A
- description: A telephone number.
- usage:
authors: - family-names: Druskat given-names: Stephan tel: +12-345-6789098
authors: - name: "The Research Software Project" tel: +12-345-6789098
- type: Nonempty
string
- required: N/A
- description: A URL. Supported URLs start with one of:
https://
http://
ftp://
sftp://
- usage
url: "https://citation-file-format.github.io/"
authors: - name: "The Research Software Project" website: "https://research-software-project.org"
references: - type: generic url: "sftp://files.research-software-project.org"
- type: Nonempty
string
ornumber
- required: N/A
- description: The version of a work.
- usage:
version: "1.2.0"
version: 1.2
version: "21.10 (Impish Indri)"