Module: RDF::LDP

Defined in:
lib/rdf/ldp.rb,
lib/rdf/ldp/version.rb,
lib/rdf/ldp/resource.rb,
lib/rdf/ldp/container.rb,
lib/rdf/ldp/rdf_source.rb,
lib/rdf/ldp/non_rdf_source.rb,
lib/rdf/ldp/direct_container.rb,
lib/rdf/ldp/indirect_container.rb,
lib/rdf/ldp/storage_adapters/file_storage_adapter.rb

Overview

This module implements a basic domain model for Linked Data Platform (LDP). Its classes allow CRUD operations on LDP RDFSources, NonRDFSources and Containers, while presenting an interface appropriate for consumption by Rack servers.

Defined Under Namespace

Modules: VERSION Classes: BadRequest, Conflict, Container, DirectContainer, Gone, IndirectContainer, MethodNotAllowed, NonRDFSource, NotAcceptable, NotFound, PreconditionFailed, RDFSource, RequestError, Resource, UnsupportedMediaType

Constant Summary collapse

INTERACTION_MODELS =

Interaction models are in reverse order of preference for POST/PUT requests; e.g. if a client sends a request with Resource, RDFSource, and BasicContainer headers, the server gives a basic container.

{
  RDF::Vocab::LDP.Resource => RDF::LDP::RDFSource,
  RDF::LDP::RDFSource.to_uri => RDF::LDP::RDFSource,
  RDF::LDP::Container.to_uri => RDF::LDP::Container,
  RDF::Vocab::LDP.BasicContainer => RDF::LDP::Container,
  RDF::LDP::DirectContainer.to_uri => RDF::LDP::DirectContainer,
  RDF::LDP::IndirectContainer.to_uri => RDF::LDP::IndirectContainer,
  RDF::LDP::NonRDFSource.to_uri => RDF::LDP::NonRDFSource
}.freeze
CONTAINER_CLASSES =
{
  basic:    RDF::Vocab::LDP.BasicContainer.freeze,
  direct:   RDF::LDP::DirectContainer.to_uri.freeze,
  indirect: RDF::LDP::IndirectContainer.to_uri.freeze
}.freeze
CONSTRAINED_BY =
RDF::Vocab::LDP.constrainedBy.freeze