Implement storage description resource discovery
https://solidproject.org/ED/protocol#server-storage-description details the discovery of the storage description resource.
Servers MUST include the Link header field with rel="http://www.w3.org/ns/solid/terms#storageDescription" targeting the URI of the storage description resource in the response of HTTP GET, HEAD and OPTIONS requests targeting a resource in a storage.
https://github.com/solid/specification/issues/355#issuecomment-1140508784 shows how an application (e.g., https://dokie.li/ ) makes use of such resource to discover the features of the storage. Some common use cases are mentioned in https://github.com/solid/specification/issues/355#use-cases
Can I take this issue?
@sumeetkolekarr Please do!
lib/header.js may be one of the places where you want to look into. For example, I've done something like this:
addLink(res, 'https://csarven.localhost:8443/storage-description', 'http://www.w3.org/ns/solid/terms#storageDescription')
Essentially you may want to start with any non-auxiliary resource (i.e., with the exception of resources referred by describedby or acl) to have a storageDescription relation to the description resource that the storage also refers to. (Another way of saying that is that the storage root, e.g., / has link header relations for http://www.w3.org/ns/solid/terms#storageDescription and describedby and they both link to the same resource e.g., https://csarven.localhost:8443/storage-description - they can potentially be different resources, but there is no strong argument to have them separate at this time, so I suggest keeping it simple. If I'm not mistaken, NSS's describedby for the root container / is /.meta, so all containers and non-containers in the storage can simply do this:
addLink(res, 'https://csarven.localhost:8443/.meta', 'http://www.w3.org/ns/solid/terms#storageDescription')
Happy to support further if you have any questions.
Kindly Assign me and I will work on it right away!
@sumeetkolekarr branch issue#1805 has been created
@bourgeoa Perfectly noted!
@csarven this issue has been open for a while now. I am trying to start contributing to open-source projects and can help you close this issue. maybe you can help a little or provide me with some resources that'd help me contribute to this project.
@aditya-hansraj Perhaps coordinate with @sumeetkolekarr in case they're already working on it or have implemented? What needs to be implemented is mentioned in the first comment. You can also see the Matrix chat for NSS ( https://matrix.to/#/#solid_node-solid-server:gitter.im ) if you'd like to coordinate with the others.
@sumeetkolekarr hello, are you still working on this issue ?
@aditya-hansraj I am still working on it, if you want, we both can work on the issue
@sumeetkolekarr yes definitely, you can just fill me up on whatever you've done till now, then we can solve this issue together.