GET /Web30... 417 Expectation Failed
To be honest, I was disappointed in the Solid project presented by Tim Bernes-Lee. It should inspire the feature of Web, but for me smth like a scent of old books is in the air.
Everybody who is familiar with good principles of software design (e.g. SOLID) knows that it is much better to depends on abstractions, not concretions. But what I have seen in this project is a "Fragile Web". You MUST have a WebID that MUST be an HTTP URI that MUST be in text/turtle format that MUST be RDF and MUST use FOAF for person attributions.
For example, we have a good old abstraction - URI. It works good when implemented as a WebID. But supports a lot of others as well. Just imagine that in a close feature mankind decides to put personal data in a distributed ledger like Bitcoin and will be addressed like its wallets, for instance "bitego:1EgoSL8HtK4ngkdXEeobR76b53LETtpyT". This is still a good URI, but not a WebID. May be personal data will be powered by InterPlanetary File System and URLs like ipfs://stan.ego or Magnet URIs or web becomes real-time and ws://stan.ego will be actively used. There can be a plenty of implementation for one good abstraction... and this is definitely not WebID.
Why should we limited by RDF only that from 2004 can't prove itself as a good instrument for semantic markup? Old MIME types and headers like Accept-* can be easily used to manage any implementations based in client-server negotiations.
REST API? Are you kidding? So many efforts like RDF towards semantic Web and instead of good abstractions like GraphQL or SparQL we are going to use REST API? REST that tries to break the beauty of resource location (URL) by adding a lot of garbage to it?
I completely did not notice how Sir Bernes-Lee going to implement his own brilliant ideas about editable (wiki) Web.
In my opinion solution is pretty straightforward.
There is a good abstraction called DVCS that helps a lot of people to work on content in distributed manner. We know its implementations - Git. You want to edit any site? Fork it, make changes and create a pull request. There is even a good old protocol for content authoring in such manner called WebDAV (Web Distributed Authoring and Versioning).
For user authentication in Solid applications, instead of WebID and other RDF-based stuff, URI is enough. I will be able to be identified by domain I have purchased like http://stanego.com, by my Bitcoin wallet URI, Magnet URI, By phone number that also have URI like tel:123456789.
Instead of being forced to use RDF I want to have conversation between client and server, which semantic protocol they want to use. Client can send "Accept-Semantic: rdf/turtle, xml/xsd, something/new" and receive "Content-Type: something/new" as a result of their agreement.