Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Aggregation of software in groups #10

Closed
proycon opened this issue Nov 4, 2022 · 1 comment
Closed

Aggregation of software in groups #10

proycon opened this issue Nov 4, 2022 · 1 comment
Assignees
Labels
enhancement New feature or request

Comments

@proycon
Copy link
Owner

proycon commented Nov 4, 2022

Codemeta describes software at the schema:SoftwareSourceCode level. These constitute the units in the index of our html visualisation (via codemetapy & codemeta-server, c.f. https://tools.dev.clariah.nl). Additionally, we already offer a services view on the data that puts the schema:targetProduct central when it is a schema:WebApplication.

The need for more aggregation was expressed. There may be a software project that consists of various schema:SoftwareSourceCode entries, for instance one being a CLI tool, one a web application layer around the tool, and one a Python binding. It can be said that these are all components of some higher-order software project. Ideally, the dependency relations (schema:softwareRequirements) make it explicit that the components are related. But extracting this automatically and automatically determining the clusters of such software projects is not always feasible.

To keep the aggregation as simple as possible, we can reuse the existing schema:applicationSuite property, which takes a simple textual value of the name of the software suite that unites the components. In the html index, tools in the same suite will then be grouped together under the appropriate header. (If a tool belongs to multiple application suites, it will be rendered multiple times in the index).

Given the issues in automating this. This clustering is a manual effort and the tool source registry plays a role here, a simple group key can be added to the YAML entries in the tool source registry. The harvester will translate it to schema:applicationSuite and propagate it to the actual metadata. So whereas software metadata is by definition under the authorship of the developers themselves, this suite property may be expressed at the level of the source registry (though the authors may also express it themselves), giving the tool registry providers have a (final) say in how participating software is grouped. I think that is a fair solution since it's also up to the tool registry provider to decide what tools participate in his/her registry in the first place.

@proycon
Copy link
Owner Author

proycon commented Nov 9, 2022

Implemented and released

@proycon proycon closed this as completed Nov 9, 2022
Repository owner moved this from In Progress to Done in CLARIAH+ Shared Service: FAIR Tool Discovery Nov 9, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

1 participant