Replies: 2 comments 1 reply
-
Noting that the |
Beta Was this translation helpful? Give feedback.
-
Following discussions at the OCM meeting, this proposal makes sense, provided that the sender A - the third-party system - can itself qualify as an OCM endpoint by exposing the following (static) discovery information, noting that in #192 we have relaxed the minimum requirements for this: {
"enabled": true,
"apiVersion": "1.2.0",
"endPoint": "https://third-party-server.org",
"resourceTypes": [
{
"name": "ro-crate",
"shareTypes": [
"user",
],
"protocols": {
"http": "embedded"
}
},
]
} Such discovery payload would enable a receiver OCM Server "B", when checking the |
Beta Was this translation helpful? Give feedback.
Uh oh!
There was an error while loading. Please reload this page.
-
We are considering an extension of the OCM share gesture, to include the possibility to support so-called Research Object Crate (RO-Crate) payloads. This is for a possible integration with Data Repositories, in the context of the EOSC Data Commons project, and the RO-Crate can be seen as a kind of workflow specification.
Here I'll try and sketch how the workflow would look like and the kind of extension we'd need in terms of OCM specifications. The overall scenario is slightly different from the usual EFSS-to-EFSS setting we have in mind when dealing with OCM: the entity offering an RO-Crate as an OCM share may be a generic system that is capable of putting together the payload for dispatch to a target EFSS, which in turn can access the referenced content and "execute" the work.
Therefore, for A "sharing" an RO-Crate to B, we would have:
ro-crate
resource type such as:This would signal that B is capable of accepting a share where the payload is an ro-crate, which itself essentially is a bunch of references. It would also be capable of offering such a share, but that's less relevant here.
/ocm/shares
call, e.g.:Then, the server B would let the recipient choose to "accept" such a share, which would trigger the download of the referenced resource(s) and potentially the execution of some workload (e.g. a Jupyter notebook, or a Galaxy workflow, etc.).
The key difference here is that B does not access the payload from A, as anyway the ro-crate payload is pure metadata, the real data being made available at third-party locations as specified internally in the payload itself.
Now, in terms of specifications, all the above does NOT need any change to the API. But I'm using the
patternProperties
part, and I'm proposing here a different flow, therefore I'd appreciate some comments about the whole idea, from "this is total nonsense" to "that's a great way to include a new use-case under the OCM umbrella" and anything in between.Beta Was this translation helpful? Give feedback.
All reactions