For full Software Citation Principles see:
Smith AM, Katz DS, Niemeyer KE, FORCE11 Software Citation Working Group. (2016) Software citation principles. PeerJ Computer Science 2:e86 https://doi.org/10.7717/peerj-cs.86
DataCite Schema v. 4.1
Unique identifier – recommend a DOI
For software a decision may need to be made about whether the ID is for a specific version of a piece of software (recommended by Force11 Software Citation Principles), for a piece of software i.e. all versions or for the latest version.
May be the title of a dataset or the name of a piece of software.
May include those responsible for software creation.
For software, if there is an alternate entity that “holds, archives, publishes, prints, distributes, releases, issues, or produces the code, use the contributorType “HostingInstitution” for the code repository.
See Definition in contributorType Appendix: Distributor: Includes distribution of software.
See Version example: Software engineering practice follows this approach of tracking changes and giving new version numbers.
Publisher or Contributor/contributorType ‘HostingInstitution’
For software, use Publisher for Code Repository, following the data model. If there is an alternate entity that "holds, archives, publishes, prints, distributes, releases, issues, or produces" the code, use the contributorType "hostingInstitution" for the code repository."
RelationTypes of use for software.
HasVersion - The registered resource such as a software package or code repository has a versioned instance (indicates A has the instance B) e.g. it may be used to relate an un- versioned code repository to one of its specific software versions.
IsNewVersionOf: can be used for “edition or software release etc.”
IsDerivedFrom and IsSourceOf: Can be used to denote software that is a fork of other software or is the origin of a fork.
IsPartOf and HasPart: may be used for individual software modules
IsDocumentedBy and Documents: e.g. points to software documentation
IsVariantFormOf and IsOriginalFormOf: May be used for different software operating systems or compiler formats, for example. Indicates that A is a variant or different form or packaging of B.
IsRequiredBy: the registered resource A is called by or is required by software resource B.
See example: May be used for software licenses.
Description with descriptionType ‘TechnicalInfo’
Description with descriptionType ‘Abstract’
TechnicalInfo: for software description, this may include a readme.text, and necessary environmental information (hardware, operational software, applications/programs) that cannot be described using other properties such as ‘Format/version’ or ‘Description/summary’
Existing guidance applies: Subject, keyword, classification code, or key phrase describing the resource.
Updated about a year ago