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

Issues with COMPSs generated RO-Crates #22

Closed
rsirvent opened this issue Sep 27, 2024 · 3 comments
Closed

Issues with COMPSs generated RO-Crates #22

rsirvent opened this issue Sep 27, 2024 · 3 comments

Comments

@rsirvent
Copy link

Hi there! I believe this package has a lot of potential, congrats on the idea. We all have struggled to publish something to Zenodo, having to input all the metadata manually, which is quite painful.

I have been testing it with COMPSs generated RO-Crates ( examples here: https://workflowhub.eu/workflows?filter%5Bworkflow_type%5D=pycompss ), and I have found some issues:

  • Authors are not added (I believe is because of Map creator if author not present #20). I'm not using givenName and familyName at COMPSs RO-Crates, so I'm curious to see what happens with the mapping.
  • License is not recognised unless the full URL is passed. Here maybe you could do something similar to what WorkflowHub does? They also accept identifiers (as in https://spdx.org/licenses/). It would be great for consistency with them. And the code to do it is probably available online.
  • The Resource type of Zenodo record is not recognised as a Workflow, but as a Dataset. I think it would be a great touch that, if the RO-Crate includes a ComputationalWorkflow, you are able to set the Resource type to Workflow automatically.
  • All the files are uploaded as 'crate.zip'. Wouldn't it make much more sense to upload the crate files individually? Sure there is a limit of 100 files, but this may not be commonly reached. Or maybe you could add the option to upload either the crate/ folder or a zip file with the crate, as the ro-crate-py library allows, so the user can decide if they want to upload a single file, or the unpacked crate.

Hope it helps.

@elichad
Copy link
Collaborator

elichad commented Oct 1, 2024

Thanks @rsirvent for your comments!

You may be interested to try the ro-crate-inveniordm package as well, which can also submit to Zenodo and has some different features which may help you. I maintain that package too but did not write it originally.

For info: eventually ro-crate-zenodo will be retired as it uses the legacy Zenodo API which will likely be shut down at some point (but not for at least a year from now). ro-crate-inveniordm uses the new, but not well advertised Zenodo API (which is based on the InvenioRDM API) and therefore will be maintained longer.

To your comments:

  • The author problem is as you identified.
  • ro-crate-inveniordm currently allows the license to be specified as an SPDX identifier or a license URI, but not an SPDX URI (e.g. Apache-2.0 and https://www.apache.org/licenses/LICENSE-2.0 but not https://spdx.org/licenses/Apache-2.0 . This is because the SPDX URIs aren't supported by Zenodo directly, so the short ID would have to be extracted to feed into the API call (see Handle SPDX license URIs ro-crate-inveniordm#3). Also not all SPDX licenses are supported by Zenodo.
  • "I think it would be a great touch that, if the RO-Crate includes a ComputationalWorkflow, you are able to set the Resource type to Workflow automatically." this is a nice idea and I will move it to its own issue (edit: If the RO-Crate includes a ComputationalWorkflow, set the Resource type to Workflow automatically ro-crate-inveniordm#36)
  • For zipped uploads: some instances of InvenioRDM will "flatten" the uploaded file structure, which could break the relative URIs within the RO-Crate metadata file. So for some platforms/uploads it is better to upload a zipped crate to preserve the structure. I don't remember specifically if Zenodo flattens things or not. Either way, ro-crate-inveniordm supports the option to upload without zipping the crate first.

@rsirvent
Copy link
Author

rsirvent commented Oct 2, 2024

Many thanks for all the clarifications and for the pointer, I was not aware of the ro-crate-inveniordm package. I will test it with COMPSs RO-Crates and continue my discussions there.

@elichad
Copy link
Collaborator

elichad commented Nov 18, 2024

@rsirvent I'm going to close this issue as I think everything here is covered by ro-crate-inveniordm or other existing issues.

@elichad elichad closed this as completed Nov 18, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants