solid / notifications

Solid Notifications Technical Reports
https://solid.github.io/notifications/protocol
MIT License
11 stars 7 forks source link

Clarify Description Resource data model and serialisation #167

Closed jaxoncreed closed 1 year ago

jaxoncreed commented 1 year ago

This is a continuation of this issue https://github.com/solid/notifications/issues/165

The data model section of the spec describes properties on a JSON object. But, implementers are actually expected to handle raw RDF, not framed JSON LD. So, the actual properties listed in the spec don't matter to implementers because they might encounter data as URL predicates, not JSON properties. It would be better to define these data models as URL predicates. I cannot be certain what URL predicates to use because the context given in the data model (https://www.w3.org/ns/solid/notification/v1) does not exist when you ping that URL. I'd like at least enough information to build a ShEx shape from the spec.

Could someone:

csarven commented 1 year ago

Thanks for the issue. Please consider using specific terms and references to the spec in issue title and description.


The data model section of the spec describes properties on a JSON object. But, implementers are actually expected to handle raw RDF, not framed JSON LD.

https://solid.github.io/notifications/protocol#json-ld-format

I cannot be certain what URL predicates to use because the context given in the data model (https://www.w3.org/ns/solid/notification/v1) does not exist when you ping that URL.

Am aware. I asked for its publication a few times in the past but it didn't go through. I've created issue https://github.com/solid/vocab/issues/88 to track this.

I'd like at least enough information to build a ShEx shape from the spec.

I've created issue https://github.com/solid/notifications/issues/168 to track this but for SHACL. It can be used by implementer. There is some rough consensus in the solid/shapes repo to use SHACL across the Solid specs but I suggested that it should be up to each spec. I suggest using SHACL for the Notifications Protocol.

List the url predicates for each of the fields in the data model

I'm open to this but there is a bit of a history, Using terms in addition to the context was deemed to be simple/readable. See also similar https://www.w3.org/TR/odrl-model/ or https://www.w3.org/TR/vc-data-model/ .

It may help to use prefixed properties but I worry that not being too common in the context of specs using JSON-LD as the primary format. If this spec was leaning on Turtle, I'd go with properties using prefixes, e.g., https://solidproject.org/TR/wac . Definitely don't want to dump the full URI - not particularly readable.


Clear up the spec to say if the data model in the Description Resource and the Storage Resource the same?

"Storage Resource" is not mentioned in the spec. Both requirements refer to "Description Resource":

I've PR'd https://github.com/solid/notifications/pull/169 to help clarify with hyperlinks on the "description resource" and added an explicit requirement that the #description-resource payload needs to use the #description-resource-data-model


Let me know if the above is sufficient to close this issue as the concerns are now tracked more specifically elsewhere.

elf-pavlik commented 1 year ago

I cannot be certain what URL predicates to use because the context given in the data model (https://www.w3.org/ns/solid/notification/v1) does not exist when you ping that URL.

I think the spec should have an inline issue pointing to https://github.com/solid/vocab/issues/88 which we can remove once the context gets properly published.

csarven commented 1 year ago

88 is new. We had an inline issue to https://github.com/solid/vocab/pull/85 but that got removed based on the publication of https://solidproject.org/TR/notifications-protocol-20221231 . In the meantime, implementers can look/use:

csarven commented 1 year ago

With vocab issue 88 resolved. I believe this issue can be resolved as well. If there are other concerns, lets follow up with more specific issues.