Solid protocol¶
The LdpHandler, named as a reference to the Linked Data Platform specification,
chains several handlers together, each with their own specific purpose, to fully resolve the HTTP request.
It specifically handles Solid requests as described
in the protocol specification,
e.g. a POST request to create a new resource.
Below is a simplified view of how these handlers are linked.
flowchart LR
  LdpHandler("<strong>LdpHandler</strong><br>ParsingHttphandler")
  LdpHandler --> AuthorizingHttpHandler("<br>AuthorizingHttpHandler")
  AuthorizingHttpHandler --> OperationHandler("<strong>OperationHandler</strong><br><i>OperationHandler</i>")
  OperationHandler --> ResourceStore("<strong>ResourceStore</strong><br><i>ResourceStore</i>")
A standard request would go through the following steps:
- The 
ParsingHttphandlerparses the HTTP request into a manageable format, both body and metadata such as headers. - The 
AuthorizingHttpHandlerverifies if the request is authorized to access the targeted resource. - The 
OperationHandlerdetermines which action is required based on the HTTP method. - The 
ResourceStoredoes all the relevant data work. - The 
ParsingHttphandlereventually receives the response data, or an error, and handles the output. 
Below are sections that go deeper into the specific steps.