ISSUE-36: Summary of ways of making containers

In summary here are the proposed ways of allowing applications to make
containers:

1. Using the MKCOL HTTP Method from WebDAV
------------------------------------------

  - Works like GET/PUT/POST/DELETE . 
  - Implemented in 100s of millions of clients on MS-Windows, OSX, Linux, and other Unixes for WebDAV
  - RFC: http://tools.ietf.org/html/rfc4918#section-9.3

2. POST + server looks at content of graph
------------------------------------------

   if graph posted to ldp:Container </satellite/x4354/> contains the triple

      <> a ldp:Container .

   the server makes a container.

3. Link from LDPC to factory
----------------------------

   The container </satellite/y500/> contains a link to a factory <makeAnotherContainer> .

   <> a ldp:Container;
      ldp:containerFactory <makeAnotherContainer> .

<makeAnotherContainer> would then be something else besides an LDPR or an LDPC. 
It  would need to describe itself as a factory and tell you for which collection it was a 
factory for. One can then POST something into the <makeAnotherContainer> factory in 
order to create a collection inside the original </satellite/y500/> .

4. Link from LDPC to home document that links to factory
--------------------------------------------------------

   The container contains a link to the home document

   <> a ldp:Container;
      ldp:homeDocument <http://nasa.gov/satellite/y500/homeSweetHome/> .

   The home document contains a link to the containerFactory

   <http://nasa.gov/satellite/y500/homeSweetHome/> a ldp:HomeDocument;
      ldp:containerFactory <makeContainersFor> .

   Sending a POST to the containerFactory can create a container, but requires 
telling the container factory which container one wishes to create the container 
in. The containerFactory needs to describe also which containers it can create 
a factory for.

Henry  

Social Web Architect
http://bblfish.net/

Received on Wednesday, 23 January 2013 09:41:52 UTC