Skip to content

ConnOSS Metadata Schema

Version: 0.0.1
License: CC BY-SA 4.0
Download JSON-LD , .ttl
Status: Draft (under review)

Description

We have defined a metadata schema for describing research software in a structured and interoperable way within the ConnOSS project. The schema captures metadata elements relevant to research software, including software identity, source code, distribution, contributors, technical requirements, and publication-related information. It reuses existing terms primarily from Schema.org and CodeMeta, complemented by 13 additional properties derived from a crosswalk analysis of 21 metadata schemas, vocabularies, and ontologies.

The ConnOSS schema is centered around a unified Software type, which integrates properties from the Schema.org types SoftwareSourceCode, SoftwareApplication, CreativeWork, and Thing. These types capture different aspects of research software, including its implementation, execution environment, and distribution. While many properties are shared across these representations, each reflects a distinct conceptual perspective on software — its development state, deployment context, or usage requirements. Bringing them together enables a more comprehensive and flexible description of research software than any single type provides on its own.

The schema is organized into a core set of 65 properties drawn from Schema.org and CodeMeta, plus an extension set of 13 ConnOSS-specific properties. It will be further complemented by a metadata profile defining obligation levels (mandatory, recommended, optional), cardinality constraints, and usage guidance — enabling consistent, context-aware metadata descriptions while supporting diverse use cases across domains.


ConnOSS Types

connoss:Software

(parent type) SoftwareApplication , SoftwareSourceCode - (type) connoss:Software

Extension to schema.org and CodeMeta to describe software source code, software applications, and software releases.

This type includes properties from schema.org types: Thing, CreativeWork, SoftwareApplication and SoftwareSourceCode, plus the properties below.

Properties
PropertyExpected TypeDescription
connoss:applicationDomain DefinedTerm or Text or URL The discipline, area, or research/application domain to which this software aligns or belongs to.
codemeta:buildInstructions URL Link to the installation instructions/documentation.
contactPoint ContactPoint A contact point for a person or organization.
codemeta:continuousIntegration URL Link to the continuous integration service.
connoss:developerDocumentation CreativeWork Documentation for developers, maintainers, and infrastructure people.
codemeta:developmentStatus Text Description of development status, e.g. Active, inactive, suspended. See repostatus.org.
connoss:documentation CreativeWork Resources that describe the software's installation, usage, configuration, development, and deployment intended to support users and developers in understanding and applying the software.
codemeta:embargoEndDate Date Software may be embargoed from public access until a specified date (e.g. pending publication, 1 year from publication).
fair4ml:ethicalSocialConsiderations Text A documented concern, requirement, or consideration related to the software's design, deployment, or impact across ethical and social dimensions. Enables transparent disclosure of constraints and mitigation strategies.
codemeta:hasSourceCode SoftwareSourceCode Link that states where the software code is for a given software. For example a software registry may indicate that one of its software entries hasSourceCode in a GitHub repository.
connoss:implementsSpecification CreativeWork A specification that a software implements, including a standard, API or legally defined level of conformance. e.g., the HTTP standard, the OpenAPI spec, OAuth2.
connoss:input bioschemas:FormalParameter A formal specification of the data, files, or parameters that the software accepts as input, including format, type, and whether the input is required.
fair4ml:intendedUse Text A concise summary of the primary objective or intended use case for the software. Distinct from general description; this focuses on 'why' the software exists and what problems it solves.
codemeta:isSourceCodeOf SoftwareApplication Link that states where software application is built from a given source code. This is the reverse property of 'hasSourceCode'.
codemeta:issueTracker URL Link to software bug reporting or issue tracking system.
connoss:latestRelease connoss:Software or URL Link to the latest release.
connoss:latestReleaseVersion Text Version of the latest release.
fair4ml:legalConsiderations Text A documented concern, requirement, or consideration related to the software's design, deployment, or impact across legal and regulatory dimensions (e.g. licensing constraints, data protection, compliance requirements). Enables transparent disclosure of legal constraints and mitigation strategies.
connoss:output bioschemas:FormalParameter A formal specification of the data, files, or results that the software produces, including format and type.
connoss:partOfCommunity Organization or Text or URL A (research) community, consortium, or network that this research artifact (e.g., software) is developed within or affiliated with (e.g., EOSC, NFDI).
codemeta:readme URL Link to software Readme file.
codemeta:referencePublication ScholarlyArticle An academic publication related to the software.
relatedLink URL A link related to this object, e.g. related web pages.
codemeta:relatedSoftware SoftwareSourceCode or SoftwareApplication A link to other software that is related by functionality, scientific purpose, or ecosystem context (e.g. alternative implementations, comparable tools, or complementary software).
connoss:softwareContainer CreativeWork or URL A container image or packaged runtime environment of the software.
connoss:softwareInterface DefinedTerm or Text or Thing or URL The interaction interface (or software product) through which users or other software systems can access, execute, or integrate this software (e.g., CLI, GUI, WebUI, Notebook, API, Library).
connoss:testedWith connoss:TestAction Links the software to a testing activity describing how the software is validated, including the test type, required inputs, and test instructions.
connoss:userDocumentation CreativeWork Documentation for end users of the software.

connoss:TestAction

(parent type) Action - (type) connoss:TestAction

The act of testing the software according to its specifications, capturing the object tested, the resulting test report or outcome, and the type of test performed.

Properties
PropertyExpected TypeDescription
connoss:testType Text or URL or DefinedTerm The type of test that it is performed on the object.
connoss:testInput Thing or ListItem Input used to performed the test. Some tests may not require any input, some may require multiple ones. If order or grouping is important in the case of multiple inputs, a ListItem could help.
connoss:testInstructions text or CreativeWork Specific test instructions for testing the software.

 

ConnOSS Schema Diagram

 

ConnOSS schema diagram