module Rack::LDP

Provides Rack middleware for handling Linked Data Platform requirements when passed {RDF::LDP::Resource} and its subclasses as response objects.

Response objects that are not an {RDF::LDP::Resource} are passed over without alteration, allowing server implementers to mix LDP interaction patterns with others on the same server.

The suite can be mix-and-matched as needed. This allows easy swap in of custom handlers for parts of the behavior. It is recommended that you use {Rack::LDP::ContentNegotiation}, {Rack::LDP::Errors}, {Rack::LDP::Responses} and {Rack::LDP::Reousets} as the outer middleware layers. With these in place, you can handle requests as needed in your application, giving responses conforming to the core {RDF::LDP::Resource} interface.

@example

run Rack:;Builder.new do
  use Rack::LDP::ContentNegotiation
  use Rack::LDP::Errors
  use Rack::LDP::Responses
  use Rack::LDP::Requests
  # ...
end

@see www.w3.org/TR/ldp/ the LDP specification