Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Repo info
Activity
  • Sep 23 13:41
    elf-pavlik commented #455
  • Sep 23 13:41
    csarven commented #455
  • Sep 23 13:28
    elf-pavlik commented #455
  • Sep 23 13:18
    elf-pavlik commented #454
  • Sep 23 13:16
    elf-pavlik commented #454
  • Sep 23 11:13
    RubenVerborgh commented #454
  • Sep 23 10:51
    rubensworks commented #455
  • Sep 23 10:19
    csarven commented #455
  • Sep 23 10:13
    csarven commented #455
  • Sep 23 10:13
    matthieubosquet commented #455
  • Sep 23 07:00
    rubensworks commented #455
  • Sep 23 06:50
    csarven commented #455
  • Sep 23 06:50
    csarven commented #455
  • Sep 23 06:33
    rubensworks commented #455
  • Sep 23 06:33
    rubensworks commented #455
  • Sep 23 06:32
    rubensworks commented #455
  • Sep 22 15:23
    matthieubosquet commented #455
  • Sep 22 15:23
    matthieubosquet commented #455
  • Sep 22 15:18
    matthieubosquet commented #455
  • Sep 22 15:07
    csarven labeled #455
Justin Bingham
@justinwb
@acoburn the current mechanism is automated in that whatever is committed into solid/specification is published to the corresponding github pages for that repo, which is then in turn proxied (via rewrite) from /TR/
(note that alain, jackson, and i have been working on a project to migrate solidproject.org to CSS (nearly done), at which point we’ll move on from the proxy/rewrite to direct deployment)
Sarven Capadisli
@csarven
@acoburn The table in the document at TR/ can also be updated with the new information. Let me know if you'd like to go ahead with that or wait for the publications of the CG-DRAFT under TR/
Aaron Coburn
@acoburn
Thanks for the pointers -- I'll start with a PR to the specification repo. If it's easy to also update the TR/ table at the same time, I will do that; otherwise, I'll do this in two steps
Kjetil Kjernsmo
@kjetilk
Great work, @acoburn !
I'm looking forward to review it
Jeff Zucker
@jeff-zucker
In https://solidproject.org/TR/protocol#storage, when it says "Servers exposing the storage resource MUST advertise by including the HTTP Link header [...show a pim:Storage link]" ... what is the meaning of "servers exposing"? Does that mean any server with a storage or a server that chooses to advertise its storages? If it is optional to expose a storage, is it therefore only a MUST to show the header if the option is taken and therefore no absolute requirement to send a pim:Storage link header?
Sarven Capadisli
@csarven

@jeff-zucker I think we can make that more clear.

The understanding/agreement was that 2xx responses MUST include the Link header with pim:Storage. Normally - or is it just in my head? - 4xx - more interestingly 401/403 - shouldn't include information in the headers that reveal the semantics of the target resource. However, there are/may be exceptions in that in order to enable a feature (for clients) with minimal information, e.g., discovery of root contain/storage, through URL path hierarchy, we'd need the Link header with pim:Storage irrespective of the status code.

The way I interpret the current text - that I wrote - is that the header is always included.

I'd like to hear from server/application implementers. Is your server exposing the header at all times or limited to certain requests/responses? For Storage locations besides the root URL path (/ after authority:port) I can't see how clients can work out a URI is allocated to identify the storage.

Jeff Zucker
@jeff-zucker
@csarven My understanding is that pim:Storage only tells us that the container is a storage, not who owns the storage, which requires an optional solid:owner predicate in the metadata of the container or in the profile. Since you previously told me that a WebID profile can exist in a storage owned by someone other than the WebID owner, one can not assume that a storage belongs to any given agent unless the solid:owner predicate is found somewhere. So one can count on knowing that something is a Storage but one can not count on knowing who owns it, correct?
Jeff Zucker
@jeff-zucker
OTOH, if an app is acting on behalf of the WebID owner and knows something is a pim:Storage it could try to write there and if it gets a 2xx, it can store information there on behalf of the WebID owner even if not certain they are the owner of the storage.
Jeff Zucker
@jeff-zucker
And, I suppose if the app acting on behalf of the WebID owner can also Control what it writes, it can assume that the WebID owner is at least "co-owner" of the storage.
Sarven Capadisli
@csarven
I think "on behalf of" is covered by acl:delegates.
Sarven Capadisli
@csarven
There is no way to derive/infer the owner of something without following some links/relations based on the specs.
elf Pavlik
@elf-pavlik
https://solid.github.io/data-interoperability-panel/specification/#data-grant provides out of band information about the data owner of all resources under that grant
SAI also has pretty advanced work on basic delegation (end-user to app), in Solid-OIDC end-user is denoted by webid and the app by client_id
We also have tracking issue to support longer delegation chains which can be very powerful: solid/data-interoperability-panel#222
elf Pavlik
@elf-pavlik
https://www.npmjs.com/package/@janeirodigital/interop-application#example shows how an application can nicely traverse all the data it can access for given data owner
gitter is not the best example but slack for example strongly groups chats by an organization, various project management apps also group projects by organizations. Data Grants allow apps to provide similar UX very easily, and lazily fetch data only when it's going to be displayed to the user (important on mobile devices).
Jeff Zucker
@jeff-zucker
What is the current status of TLS in relation to Solid? Is it implemented anywhere? Is it in any current spec? Should certs for it be in the WebID Profile?
Aaron Coburn
@acoburn

WebID-TLS is defined in https://www.w3.org/2005/Incubator/webid/spec/tls/, which is independent of Solid. It is also an editor's draft so the same caveats as with the WebID spec itself apply. The Solid Protocol spec refers to WebID-TLS non-normatively at https://solidproject.org/TR/protocol#webid-tls

Historically, there have been implementations of this. I am not aware of any that are in active development, but that doesn't mean that there are not any

Jeff Zucker
@jeff-zucker
Thanks @acoburn - we're thinking of just not mentioning TLS in the webid-profile spec. Or perhaps we could say that it is a possible alternative and owners may put certs for it in WebID Profile document. Any thoughts?
I also have not heard of any active implementations using TLS
Martynas Jusevicius
@namedgraph_twitter
LinkedDataHub is using WebID-TLS
https://atomgraph.github.io/LinkedDataHub/
Jeff Zucker
@jeff-zucker
Ah, good to know, thanks @namedgraph_twitter. That isn't Solid though, right?
Martynas Jusevicius
@namedgraph_twitter
Correct :)
Sarven Capadisli
@csarven
@jeff-zucker Remind me, where is your work on Solid Glossary in RDF?
but that's in md
Sarven Capadisli
@csarven
Right, thanks, but I think Jeff has something under a Solid pod with an app showcasing this stuff in RDF.
It is WIP Solid Team project to have a Solid Glossary.
Definitions/Terminology from specifications will be part of the Solid Glossary.
Jeff Zucker
@jeff-zucker
@csarven - The RDF is in another place but the most recent change in mashib broke all of my libraries so it will be a day or so before I have a working link to show you.
Sarven Capadisli
@csarven
No rush, thanks!
Jeff Zucker
@jeff-zucker
@csarven - the app is a bit wonky until the repo cleanup is done but I've put the RDF itself online at https://github.com/solid/solidproject.org/blob/glossary/pages/glossary/glossary.ttl
Sarven Capadisli
@csarven

@jeff-zucker Can you have the app pick up the definitions from the specs, e.g., http://sparql.org/sparql?query=CONSTRUCT%0D%0AFROM+%3Chttp%3A%2F%2Frdf.greggkellogg.net%2Fdistiller%3Fcommand%3Dserialize%26output_format%3Dntriples%26url%3Dhttps%3A%252F%252Fsolidproject.org%252FTR%252Fprotocol%26raw%3E%0D%0AFROM+%3Chttp%3A%2F%2Frdf.greggkellogg.net%2Fdistiller%3Fcommand%3Dserialize%26output_format%3Dntriples%26url%3Dhttps%3A%252F%252Fsolidproject.org%252FTR%252Fwac%26raw%3E%0D%0AWHERE+%7B%0D%0A%3Fs+a+%3Chttp%3A%2F%2Fwww.w3.org%2F2004%2F02%2Fskos%2Fcore%23Concept%3E+.%0D%0A%3Fs+%3Fp+%3Fo+.%0D%0A%7D&default-graph-uri=&output=ttl

That grabs skos:Concepts from the Solid Protocol and WAC specs:

CONSTRUCT
FROM <http://rdf.greggkellogg.net/distiller?command=serialize&output_format=ntriples&url=https:%2F%2Fsolidproject.org%2FTR%2Fprotocol&raw>
FROM <http://rdf.greggkellogg.net/distiller?command=serialize&output_format=ntriples&url=https:%2F%2Fsolidproject.org%2FTR%2Fwac&raw>
WHERE {
?s a <http://www.w3.org/2004/02/skos/core#Concept> .
?s ?p ?o .
}

(based on the TRs but can use the EDs even)

Can get more fancy if you want to grab skos:ConceptScheme, skos:Collection, and whatever else.

In fact, we can start the whole discovery from https://solidproject.org/TR/ :sparkles: where it links to all work items / technical reports.

Jeff Zucker
@jeff-zucker
@csarven yes, for sure. I already have the part working where it queries /TR/ to get names and links of all tech reports. I would just need to add the glossary search for each report. The main issue for me would be that the intention of the glossary project was to aim for people with low tech skills and little knowledge of Solid as part of DEI onboarding. Perhaps we can have a normative and a non-normative glossary or some other such distinction.
Sarven Capadisli
@csarven
Oh right, totally forgot about how that all started.
Jeff Zucker
@jeff-zucker
But I have already started coded what you suggest - too much fun to pass up. I will have it label sources so we can mix & match and compare alternate definitions
Sarven Capadisli
@csarven
I think there are different ways to capture that. It could be an annotation of the original term, or even something along the lines of altLabel for definitions. There must be existing work on this in KO. Librarians would know..
Jeff Zucker
@jeff-zucker
There's a SKOS extened label ontology which can do this
Sarven Capadisli
@csarven
XKOS? I think that's for stats.
Jeff Zucker
@jeff-zucker
labelRelation and other nice bits
Sarven Capadisli
@csarven
Possible to have multiple skos:definitions but no clear indicator which to use when..
Jeff Zucker
@jeff-zucker
Store them in different conceptSchemes or use labelRelation
Jeff Zucker
@jeff-zucker
Or this : protocol:agent skos:broadMatch wac:agent .
Sarven Capadisli
@csarven
Possibly. Besides that though, I thought the main challenge was providing alternative descriptions to different readers.
Jeff Zucker
@jeff-zucker
Ha lol, I have it working except /TR/ page link to interop primer is 404
Jeff Zucker
@jeff-zucker
It would be nice to have more structure on the /TR/ page itself so I could separate out specs from primers
Jeff Zucker
@jeff-zucker
Athough, at least as far as my app can discover, out of the dozen or so tech reports listed, only wac and protocol have definitions marked with skos:Concept
Sarven Capadisli
@csarven
TR currently links to work items with cito:citesForInformation - I'm open to using something else. I didn't bother including ldp:contains in the document because we'll get that the moment /TR/ is available from a Solid server. Could use something along the lines of hasPart...