softwaresaved / fuji

FAIRsFAIR Research Data Object Assessment Service
MIT License
0 stars 1 forks source link

[Feature]: [FRSM-04] Does the software include descriptive metadata which helps define its purpose? #5

Open karacolada opened 7 months ago

karacolada commented 7 months ago

D5.2 p14, p25

Detailed Description

Software requires descriptive metadata to support indexing, search and discoverability.

Domain-agnostic comments

There are several common places for descriptive metadata to be found, including intrinsic metadata that is part of the software source code such as README files, requirements files that describe dependencies, POM, CodeMeta or CFF files, or in the extrinsic metadata available through resolving the software identifier. It may also be directly embedded in software source code files. The implementation of this metric will depend on the coding standards for the programming language as well as community norms for which descriptive metadata is used. It is hard to check the relevance / correctness of unstructured metadata such as a text description, but it is possible to automatically check for existence.

CESSDA comments

CESSDA technical guidelines on CMA1: Documentation define what is required from end-user documentation, operational documentation, and development documentation but these are not machine-accessible. The CESSDA Software Requirements also demand that all tools and products have a comprehensive README.

Context

F2: Software is described with rich metadata. R1: Software is described with a plurality of accurate and relevant attributes. R3: Software meets domain-relevant community standards.

Possible Implementation

domain-agnostic

requirements software source code, software identifier
method Check if the software and/or software identifier has machine-readable descriptive metadata associated with it that describe its purpose.
essential The software includes a README or other file which includes the software title and description.
important The software includes other descriptive metadata such as domain, funder, programming language, date created, and keywords.
useful The metadata is contained in a format such as CodeMeta or ProjectObjectModel that enables full machine actionability.

CESSDA

requirements software identifier (DOI) provided by Zenodo
method Query the metadata provided by the Zenodo record for the software.
essential Zenodo metadata includes the software name and description.
important Zenodo metadata includes other descriptive metadata as recommended in CESSDA Software Requirements.
useful n/a.
karacolada commented 1 month ago

Expand evaluator for minimal metadata: https://github.com/softwaresaved/fuji/blob/1778e730c80852f691e135a1b288bc2796914c46/fuji_server/evaluators/fair_evaluator_minimal_metadata.py#L12