ro-crate icon indicating copy to clipboard operation
ro-crate copied to clipboard

Use Case: Have a place to host examples and a way to get them there

Open ptsefton opened this issue 4 years ago • 7 comments
trafficstars

As an RO-Crate contributor, I want to be able to post examples to a central site easily so that we have a good set of examples.

I will be leaving UTS and no longer have easy access to the place we're hosting examples.

ptsefton avatar Nov 22 '20 22:11 ptsefton

Real-life examples might have different licenses and not fit under /ro-crate (this repo has Apache license 2.0)

If the crates are under an open license we can still host them as one or more repositories on https://github.com/ResearchObject/{repo} and then they would be published statically as https://www.researchobject.org/{repo} using GitHub Pages.

This could work similar to what we do with /ro-crate and GitHub Pages except we don't need Jekyll processing as there won't be any markdown files (?).

We could have a separate big ro-crate-examples repo with multiple crates in different licenses, or manage them as separate repos, which perhaps is better practice - see for instance https://github.com/biocompute-objects/bco-ro-example-chipseq

We can also post on Zenodo but then it would be as a ZIP/tar.gz and individual files like ro-crate-preview.html are not exposed. Even if uploaded as individual files to Zenodo (which don't support subfolders) *.html becomes a "download" for security reasons, e.g. https://zenodo.org/record/4031327/files/ro-crate-preview.html

stain avatar Nov 26 '20 15:11 stain

In particular all the examples on https://data.research.uts.edu.au/examples/v1.0/

stain avatar Nov 26 '20 20:11 stain

So @stain is your suggestion so have one git repo per example? Seems like that might become a bit unmanageable, and we'd have to maintain more indexes to access them.

ptsefton avatar Jan 10 '21 22:01 ptsefton

But on the other hand, using multiple repositories does make it easy for people to put up their own examples.

ptsefton avatar Jan 10 '21 22:01 ptsefton

If the crates are under an open license we can still host them as one or more repositories on https://github.com/ResearchObject/{repo} and then they would be published statically as https://www.researchobject.org/{repo} using GitHub Pages.

How would we set this up?

ptsefton avatar Jan 10 '21 22:01 ptsefton

If you make single repositories within our org, and enable github pages, then they automatically appear under https://www.researchobject.org/ with the same repo name. However you can't nest these, so we would need to use like example-ro28 as repo name.

Agree it would be nice to navigate all examples in one go, and this could be done using git submodules. I think this could even be used to group github pages, so you could make examples/ro15 - but the problem with git submodules here is that someone would need to run git submodule update in the parent repo whenever a child has been updated..

One reason to split them is that if these are real examples, some of them are large, but people are likely to copy/clone repos to build on them. Another issue is the license.. we could host multiple ROs in the same repo if they are the same license.

Of course RO-Crates themselves indicate their license, but for people using examples they may not look carefully at that and might inadverdently by copying around lots of image data for instance which they would not have permission to relicense.

As separate repos you can also tag/release each RO (and give it a Zenodo DOI), but probably these won't really change except perhaps updating for newer RO-Crate specs?

stain avatar Jan 11 '21 19:01 stain

Did that: https://www.researchobject.org/example-ro-sample-image-crate/

Seems to work - thought here's a bug with the metadata download link I need to fix

ptsefton avatar Jan 19 '21 04:01 ptsefton