- Date: 2023-01-12T14:00:00Z
- Call: https://meet.jit.si/solid-notifications
- Chat: https://gitter.im/solid/notifications-panel
- Repository: https://github.com/solid/notifications-panel
- Status: Draft
- Sarven Capadisli
- elf Pavlik
- Rahul Gupta
- Ted Thibodeau (he/him) (OpenLinkSw.com)
- W3C Solid Community Group Calendar.
- W3C Solid Community Group Meeting Guidelines.
- No audio or video recording, or automated transcripts without consent. Meetings are transcribed and made public. If consent is withheld by anyone, recording/retention must not occur.
- Join queue to talk.
- Topics can be proposed at the bottom of the agenda to be discussed as time allows. Make it known if a topic is urgent or cannot be postponed.
- Join the W3C Solid Community Group, W3C Account Request, W3C Community Contributor License Agreement
- Solid Code of Conduct, Positive Work Environment at W3C: Code of Ethics and Professional Conduct
- Operating principle for effective participation is to allow access across disabilities, across country borders, and across time. Feedback on tooling and meeting timing is welcome.
- If this is your first time, welcome! please introduce yourself.
- SC
- name: text
- SC: Keeping the topics focused on work we need to iron out for the next release.
- SC: We'll allocate some time for implementation feedback. Links to servers/applications and demos welcome.
- SC: Please re-share and help keep the data up to date.
- SC: Will make sure to merge next week.
- SC: https://github.com/solid/notifications/tree/TR/2022/notifications-protocol-20221231 (just a snapshot for the solid/specification PR, and then it'll be read-only)
URL: solid/vocab#85
- SC: Will make sure to merge next week alongside TR/2022/notifications-protocol-20221231.
- SC: I do want to triple check here with the naming. Note the strings and differences:
http://www.w3.org/ns/solid/notifications
https://www.w3.org/ns/solid/notification/v1
- SC: It'll work just fine (even considering
notifications
andnotification
as different things undersolid/
). - SC: I just hope there won't be confusion in reuse and that developers will copy/paste.
- SC: Does anyone have concerns we should address about the naming before really going out live with it?
- eP: Assuming the content-type will be right for the JSON-LD Context, i.e.,
application/ld+json
. - SC: Yes for the JSON-LD context, and at least the Turtle for the vocab.
- eP: LGTM.
- RG: should both be
http
orhttps
? - SC: No. Vocab uses
http:
, and JSON-LD context useshttps:
.http:
is still the ongoing/predominant convention. - eP: Should I add
notify:
prefix to http://prefix.cc/notify withhttp://www.w3.org/ns/solid/notifications#
? - SC: Please do.
- eP: Why singular and plural difference?
- SC: AFAIK, it is more for convenience of publishing at w3.org.
- eP: I would prefer to avoid that singular plural nuance in URLs
- RG: +1
- SC: I can doublecheck with W3C Team about that before the merge.
- SC: Should this be parked under
/ns/solid
or find something directly under/ns/
, e.g.,/ns/notify
? - eP: I see no problem with
/ns/solid
, probably something to figure out with W3C if they have opinion. - RG: Prefer
/ns/notify
for reasons SC explained.
URL: #76
- SC: Still in my todo. As mentioned, it needs a proper revision.
- SC: Mostly we've been talking about topic-centric subscriptions, but subscriptions that match a certain shape seem also of interest by some implementers, e.g., only create activities. Just want to make sure this is well covered.
- eP: Do you have a link? Data Registrations from SAI (interop spec) can possibly help with it.
- SC: e.g., #1 mentions: Mechanism for actors to make a request to be notified about particular activities.
- SC: Also recently expressed in CommunitySolidServer/CommunitySolidServer#1388
- eP: {Walks through notifications-protocol-20231231}
- SC: ???
- TBL: That is an improvement but still extra
GET
. - eP: Can use same connection when description resource is on same origin, but would be good to have benchmarks.
- RG: Could the channel be put on the header to bypass the
GET
? - TBL: That'd be ideal.
- SC: The current spec takes the payload approach where information about the channels is revealed.
- TBL: Danger with general framework would be more bureaucracy. The fast one gives the shortcut.
- eP: The main problem with headers is that
NotificationReceiver
connects to Sender. When we try to put it in the header, which of those different types need to advertise? For multiple channel types, we need to define which are defined there. There may be much more delay connecting to wss. The second connection to HTTP/2 would be minimal before connection. Needs benchmark / speculation. Even if they can't be in parallel, there is minimal delay. - RG: Why is it a problem when we discover a resource to advertise one channel? Then the consumer wouldn't have to do the discovery.
- eP: If we want to optimise speed, we need benchmarks and I'm willing to do Streaming HTTP benchmarks. Confident that Streaming HTTP would be faster than websocket. There is still work on the server to mint the capability URL. Designing without benchmarks may be premature optimisation.
- TBL: Why do you feel that Streaming HTTP is faster to set up than websocket?
- eP: Don't need to use capability URL and can regular authorization with the header.
NotificationSender
on the same origin as the server, then it'd use HTTP/2, then take the benefit of not making a second connection. I believe Streaming HTTP would be faster in benchmarks — don't have to create capability URL. - SC: Does this
Updates-Via
feature have to be part of this coming release? - TBL: Would be good to have benchmarks, but not sure if solidlabs would.
- TBL: What do you think about rolling this out in
rdflib
? It would tell the app that ifUpdates-Via
is there it can watch the resource, and then open the websocket. - TBL: I worry about rolling out code in the back where you don't know — client code would be much more complicated provided by the possibility of servers. From the point of view serving the app — very nice to be able to change the
updates-via
so that both the code ??? therdflib
code can take the change more quickly. We need to decide ifrdflib
can take the server-metadata. - SC: Will implementation in
rdflib
address some of the concerns? - SC: Currently the difference is additional request to description resource. After
HEAD
, you doGET
, and have your websockets URL. So we have that extraGET
.describedby
/http://www.w3.org/ns/solid/storageDescription
relations are already part of the Solid Protocol. - TBL: If in the second
GET
we get the websockets URL, that's already pretty fast.
- SC: Continue the following topics in the next meeting.
- SC: I commented. Commenter satisfied. Will follow up with editorial updates.
URL: https://solidproject.org/TR/#notification-channel-type-registry
- SC: Includes registry definition and table.
URL: https://solidproject.org/TR/notification-subscription-types
- SC: Will add text to indicate it is an old version and refer to https://solidproject.org/TR/#notification-channel-type-registry .
- SC: TODO for editors/authors of:
- WebSocketSubscription2021
- StreamingHTTPSubscription2021
- EventSourceSubscription2021
- LinkedDataNotificationsSubscription2021
- WebHookSubscription2021
- WebPushSubscription2022
- SC: I can follow-up with updates to the README to draw attention to channel-types (indicate subscription-types is earlier work etc.)
- SC: Let's please make sure the ED publications of the notification-channel-type reflect notifications-protocol-20221231 for normative and non-normative information (e.g., update examples, authorization info).
- SC: There should be no conflation with the earlier subscription-types approach. Implementers will be referring to these EDs and TRs soon!
- SC: There is some support to use "subscription service" or "subscription service resource".
- SC: This change doesn't affect conformance, if we agree on change, I suggest that we quickly roll it into Version 0.2.0, TR/notifications-protocol-20221231.
- SC: Any objections or concerns to change to "subscription service"?
- SC: Commented.
- SC: Commented.