Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Repo info
Activity
  • May 14 12:25
    acoburn edited #408
  • May 14 12:17
    acoburn synchronize #408
  • May 13 19:56
    acoburn opened #408
  • May 13 16:13

    csarven on main

    Add privacy-principles (compare)

  • May 12 17:03
    csarven commented #407
  • May 12 17:02
    csarven commented #407
  • May 12 16:39
    csarven review_requested #407
  • May 12 16:39
    csarven opened #407
  • May 12 16:38

    csarven on version-scheme

    Add version scheme (compare)

  • May 12 16:37

    csarven on kjetil-homepage

    (compare)

  • May 12 16:37

    csarven on require-describedby

    (compare)

  • May 12 16:37

    csarven on restrict-requirement

    (compare)

  • May 12 16:37

    csarven on allow-delete

    (compare)

  • May 12 16:37

    csarven on jeff-zucker-patch-1

    (compare)

  • May 12 16:37

    csarven on allow-allow

    (compare)

  • May 12 16:37

    csarven on n3-patch-def-links

    (compare)

  • May 12 16:37

    csarven on triples-patterns

    (compare)

  • May 12 16:37

    csarven on sparql-update-simplify

    (compare)

  • May 12 16:37

    csarven on linebreaks

    (compare)

  • May 12 16:37

    csarven on cache-control

    (compare)

Tim Berners-Lee
@timbl
:-)
Sarven Capadisli
@csarven

@timbl We could change "MAY" into non-normative may or just remain silent about it. Redirecting /public to /public/ is a fairly common implementation pattern. Redirect helps people to not trip over slash or no slash diffs or refer to one when the other exists.

Text from the specification:

If two URIs differ only in the trailing slash, and the server has associated a resource with one of them, then the other URI MUST NOT correspond to another resource. Instead, the server MAY respond to requests for the latter URI with a 301 redirect to the former.

Jan Schill
@janschill

Hello,

apologies in advance for a question that is not fun answering.

I am just wondering about a rough estimate on the level of completion of the Solid specifications.
It is for me very difficult by only reading and going over the open issues to make such an assumption. Also, I do not have enough experience developing servers to spot a shortage in specific sections of the specifications, that I could say for example: “The WAC section is too vague for me to implement it correctly”.
I am aware that these specifications are active and conversations are happening all the time about the Solid Ecosystem and that the specifications will probably be worked on for a long time, but I am just trying to get a rough overview of where we are today.
Thank you.

Sarven Capadisli
@csarven

@janschill That's indeed a tough one but I'll give it a shot (and others can shot me down if they like). The short answer is that the key aspects of the ecosystem are for the most "complete". There are some rough edges indeed, some nice to haves or unknowns but that's to be expected. Bear in mind that what makes a spec a spec is not just that there is a nice/readable document to look at but all the work that goes into it, anything from all supporting documents, to publicly demonstrating working implementations based on the specs, as well as actual usage in the wild. There is a lot of iteration on that front. We could call it "ready" at any point but that doesn't serve us or anyone in the end. So, to answer your question more concretely, I would say in 2021Q1, or more realistically Q2 we'll be in a position to wrap up majority of the current work and make a wide call for implementations - not to be confused with the idea that call for implementations/experiences/feedback hasn't been done already or needed on an ongoing basis. To me, the wide call marks a point where we feel the specs are mature enough and expect minimal / hopefully non-breaking changes to the specs based on implementation experience. We need to eventually get a lot of input from users - yes, that includes anyone dogfooding the specs to anyone that only needs to get their tasks done. Think along the lines of whether the servers,.. apps being developed have a net positive effect or harming users.. This is why ethical checks on the path to developing the specs are important. We don't want to be in a situation where we think we are ready for wide use - I don't mean just few isolated users or environments, but for the Web.. - and then deal with major privacy, security, ethical implications. We need to work our way up.. scale up. Don't need to have everyone implementing and using at the same time either. It can happen in phases.. gradually, so that gives us time to improve. When people developing servers, apps etc. can look at the specs and get reasonable coverage. We will weed out stuff that no one is using - and put them into the research/homework/experimentation bucket for later.

Various specs are in the works and they are at different maturity. More specs will come forward. There is no fixed "end" date or completion for the Solid specifications. Just as there is no particular end date for standardisation. W3C is still going after all for obvious reasons. The point of the Solid project is to help towards changing the course of the Web. We are learning about what's broken and propose ways to fix things.

Jan Schill
@janschill
Wonderful answer, this helped me so much. Thank your for going the extra mile in really explaining it thoroughly – greatly appreciated!
Henry Story
@bblfish
I think there could be an ACL spec, which limits access control to Access Control Lists. That is what exists at present, and so could be specified clearly quite quickly. It may be useful just to know where things are going from there on, so as to make sure there is a smooth transition from ACLs to AC Policies.
Alain Bourgeois
@bourgeoa
@csarven Is there something about OS supported by solid, in particular linked to characters supported by POSIX and not supported by Windows like colon ? There is a use case in solid/chat-pane#50
Fred Gibson
@gibsonf1
A quick question on Solid servers response given an accept */* from the client - are there any guidelines on that? For example, if the request node resolves to a type of file, would it be appropriate to download that file. Or if the file has rdf content, to return turtle of the content?
Fred Gibson
@gibsonf1
the CRUD tests seem to want turtle when request with accept */* so thats what we're doing at the moment
Sarven Capadisli
@csarven
@gibsonf1 I believe the requirements from RFC applies in that.. server will select a representation for the response.
Fred Gibson
@gibsonf1
Thanks @csarven , so I guess we'll choose turtle so we pass the CRUD tests
Sarven Capadisli
@csarven
If the resource was created with a representation encoding RDF, server could respond with Turtle or JSON-LD for Accept */*
Sarven Capadisli
@csarven
Ultimately client didn't indicate any preference, so server says 'whatevah, take this.. imma get back to chillin'
Fred Gibson
@gibsonf1
lol :)
Fred Gibson
@gibsonf1
Can anyone point to some documentation like https://github.com/solid/webid-oidc-spec/blob/master/application-user-workflow.md for solid-client-authn-js with PKCE?
Sarven Capadisli
@csarven
Fred Gibson
@gibsonf1
@csarven Thanks!
markjspivey
@markjspivey
after reading through and exploring more existing and proposed implementations of Solid and apps I’ve been trying to grasp “what data is the data that users own and control in Solid?”, my question is detailed here: https://forum.solidproject.org/t/what-data-is-the-data-that-users-of-solid-own-and-control/3690
stencil
@stencil:matrix.org
[m]
Is there a torrent client type app, that I can use to make my own server or db easily?
Jeff Zucker
@jeff-zucker
Folks on the authorization panel might want to check out the discussion about auth from command line apps at https://forum.solidproject.org/t/authorisation-for-a-mobile-app/3692/9
Jeff Zucker
@jeff-zucker
@stencil:matrix.org - there are a number of servers you can install locally - Node Solid Server, Community Solid Server, etc. Not sure what you mean by a "torrent client type app"
2 replies
Justin Bingham
@justinwb

Folks on the authorization panel might want to check out the discussion about auth from command line apps at https://forum.solidproject.org/t/authorisation-for-a-mobile-app/3692/9

Responded

Benoît Alessandroni
@balessan
Hi all, I remember seeing a paragraph in one of the existing specifications document about a "FOLLOW" activity, but I cannot find it back.
Does it sound familiar to someone ? I'd like to cmpare that to existing ActivityPub implementations.
Tim Berners-Lee
@timbl
Is the interop spec completely compatible with the solidos works at the moment with type indexes?
Justin Bingham
@justinwb
it’s similar, but it uses a different index structure so that data can be compartmentalized for authorization and validation
functionally it works the same - in that you follow your nose from the identity document to data you need
Justin Bingham
@justinwb
i’ll work on getting some time sectioned off to start walking through it
Martynas Jusevicius
@namedgraph_twitter
@justinwb that is already the case
re. @base
Martynas Jusevicius
@namedgraph_twitter
@timbl @justinwb @gibsonf1 @base is allowed anywhere in Turtle AFAIK
Justin Bingham
@justinwb
@namedgraph_twitter fwiw - the comments on @base were from @timbl - but it seems gitter’s mobile app has a bug with threads - that made it look like it was me instead of timbl
Image from iOS.png
everything after “walking through it” were actually messages tim posted in a thread - but they’re being attributed to me on the mobile ui :laughing:
Fred Gibson
@gibsonf1
@namedgraph_twitter If @base is allowed anywhere, is there only one @base allowed in the file? Also, having it anywhere would preclude streaming which is not ideal
Fred Gibson
@gibsonf1
or I think @timbl was referring to a sentence by sentence parse as you read through the file, such that whatever is the state when reading a given line (the @prefix and @base prior to reading that line) apply to that line. Which means you could do streaming as how you interpret the sentence could vary as you read through the file. @timbl Is that what you are recommending?
Martynas Jusevicius
@namedgraph_twitter
multiple bases are also allowed
try to get in touch with @afs in linkeddata/chat
he’s the one writing Jena’s parsers
i wouls use N-Triples for streaming though
Martynas Jusevicius
@namedgraph_twitter
@base <http://base1> .
<a> <b> <c> .
@base <http://base2> .
<d> <e> <f> .
<g> <h> <i> .
validates fine on http://ttl.summerofcode.be/ and also using Jena's turtle CLI
result:
<http://base1/a> <http://base1/b> <http://base1/c> .
<http://base2/d> <http://base2/e> <http://base2/f> .
<http://base2/g> <http://base2/h> <http://base2/i> .
Andy Seaborne
@afs
Yes - @base and @prefix can be anywhere. Grammar rules [1] and [2]. They take effect from that point onwards. Turtle processes in order. Stream - not parallel though. The concat things works. @base can take a relative IRI! resolve rel old base, then use new base from that point (until the next set). Prefix must be defined before use but there is always a base - the external context if no @base encountered yet.
Test suite: https://github.com/w3c/rdf-tests/tree/gh-pages/turtle ==> IRI-resolution.ttl, turtle-subm-27.ttl
Andy Seaborne
@afs
The only thing about appending Turtle files is whether any blank node labels are the same.
Martynas Jusevicius
@namedgraph_twitter
@afs in other words concatenating 2 files that are reusing the same bnode labels and loading the result into a triplestore will have a different outcome than loading them separately, right?
Andy Seaborne
@afs
Yes. Key is "same file scope" : "_:a" is the same bnode within a file, and different across files.
Fred Gibson
@gibsonf1
thanks @namedgraph_twitter We'll update our turtle parser to support dynamically changing base and prefix throughout the file/stream
Martynas Jusevicius
@namedgraph_twitter
why don't you use some existing I/O library?