-
Notifications
You must be signed in to change notification settings - Fork 19
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
Linked Data Notifications Specialisations #13
Comments
Good stuff. IMHO we need a panel on notifications (which I'm interested in). The "shape" part is indeed related to what happens here, but the "actions" are definitely something else. We need broader thinking on how to react to notifications etc. |
In complete support of what's proposed here as a worthy project (even several projects potentially). Notifications / events are a fundamental type of interoperability between different agents and pods. At the same time, they are also a fundamental part of the ecosystem architecture. So, I think that this warrants its own panel. We should also consider carving out room for mechanisms to identify/verify the sender of a given notification, verify data hasn't been tampered with in transit, encrypt/decrypt payloads, etc. |
Just a quick question/comment, there are a couple of references to 'Data shapes or vocabularies' or 'Shape/Vocabulary' - but aren't shared vocabularies a fundamental requirement here, and Shapes are simply constructed from terms from those shared vocabularies (with the caveat that inference could 'infer' the 'shared-ness' of vocabularies, e.g. if I use 'foaf:name' but you use 'schema:name', yet the context of our interaction also includes a 'foaf:name owl:sameAs schema:name')...? In other words, should the text above consistently say something like 'Shapes (made up of terms from vocabularies)'...? Or is the point that Shapes are kinda optional, and that simply having shared vocabularies can be enough for interoperability in relation to notifications...? |
I intended to be brief up there to get ideas flowing and where to situate this work. We can explore further in a panel (I'll follow up with a proposal on that..) I think there is room for both shapes and vocabs. Minimal or possibly simplest interop can indeed happen via specific vocab terms, but may not be flexible enough for "wider" interop. At the very least, specifying exact terms will have a scope. Nothing wrong with that if that kind of up-front agreement is made. In fact, on the vocab end of things, AP specialises LDN by using AS2 in notifications. Aside: AP serves as a decent example of a specialisation.. we can explore other possibilities. Shapes can further help to negotiate. Ditto profile Link relation type to negotiate vocabs. And, yes, term equivalences would be just as valid. We can figure out all that in layers - also a good reason to coordinate with data-interop-panel. Strawman: AS2, an extension of it, or something else in combination can be used to make Request Notifications provided that actors check/try alternatives first eg. checking constrainedBy or whatever for shapes. We just need to put a sufficiently flexible mechanism for different specialisations to be formualised. Specific Use Cases can eventually set the requirements on what's ultimately allowed ie. what shapes/vocabs, interaction composition. |
Enthusiastic +1 to establishing a notification panel!
Yess!! I highly encourage everyone to come over to the |
Follow up at solid/process#116 . |
Note: I'm not sure if this Project Proposal about specialising LDN falls under Data Interoperability Panel but it is the closest one I can think of right now. It may not be an exact fit either and I think the work around it is significant enough that it can be its own panel (Notifications Panel?). So, for the time being, I'm dumping the following information here but happy to move it elsewhere. If you respond, please first mention whether a separate panel makes sense while coordinating with the Data Interoperability Panel.
LDN Specialisations
Note: "LDN Specialisations" is a temporary title.
Status: Considerations for further work on formulating specialisation of LDN.
Background
The LDN's Exit Criteria https://www.w3.org/TR/ldn/#exit-criteria states:
https://csarven.ca/linked-data-notifications#design-decision states:
Specialisations
LDN can be specialised using specific data shapes or vocabularies eg. AP's use of LDN ( https://csarven.ca/linked-research-decentralised-web#relationship-with-activitypub ). Further, interoperability occurs between senders, receivers and consumers based on different interaction flows. For example, a specialisation would encompass a set of interactions using particular shapes to address LDN Requests to "Activity Subscription", "Resource Access" or even "Service Actions".
Requirements (min/max?):
Note: The data shape or vocabulary is what's explored in Solid. Considering a class of interoperability possibilities based on multiple interactions isn't (that I know of).
Activity Subscription
Actors in the system may want information sent to them about particular shapes or when certain events or activities take place.
https://csarven.ca/linked-research-decentralised-web#subscribing-to-notifications discusses how "Subscriptions" (or push-like interaction) can be arranged between LDN applications.
What needs to be defined:
One possible interaction path can be along these lines (after sender picking a target of interest and performing Inbox discovery as per LDN):
Note: Perhaps interaction Step 2 may be quietly skipped by implementations performing both ReceiverB and SenderB with same access/reuse rights to the resources. The interaction above factors in a Consumer because the Sender needs to be informed somehow and that information is carried over the Request Notification that a Consumer fetches and possibly processes before Sender finalising the workflow.
Resource Access
Access to resources is generally about "x requests permission on y (in order to perform operation(s) z)" or many other variations.
See also some issue where this use case emerged (at least across 3 different repositories):
Service Actions
This may be a bit pie in the sky... but falls under the request category that may be worth to at least keep in mind - not necessarily a good idea to implement at this point in time.. Issues like solid/specification#36 needs to be considered as well as security implications.
?
The text was updated successfully, but these errors were encountered: