Re: ISSUE-71: second bug tracking example

Hi,

Just as an exercise if I stick to Raul's alternative 3 and also without
membershipSubject, I can still manage links between information resources
created by LDP without much of a problem. To the see the other impacts, if
we see an example where

Where I will POST

------------------------------------------------------------------------------
<> a bt:ProductDescription;;
   foaf:primaryTopic <#p>;
   dcterms:title "The Product A Page";

<#p> a bt:Product ;
     dcterms:title "Product A" .
--------------------------------------------------------------------------------

to the container  /BugTracker/productsContainer/

----------------------------------------------------------------------------------
<> a ldp:Container;
   x:membershipSubject </BugTracker>;
   x:membershipPredicate bt:tracksProduct .
------------------------------------------------------------------------------------

LDP will guarantee to,

1. create a resource and add it's url to the container using rdfs:member
2. interpret all the null uris in the request body with the URI of the
created resource

----------------------------------------------------------------------------------
<> a ldp:Container;
   x:membershipSubject </BugTracker>;
   x:membershipPredicate bt:tracksProduct;
   x:membershipPredicateRange bt:Product;
   rdfs:member <ProductA> .
------------------------------------------------------------------------------------

In addition my application logic will,

3. parse the request body to search for foaf:primaryTopic uri and add it as
the < ?membershipSubject, ?membershipPredicate, ?foaf:primaryTopic > to

------------------------------------------------------------------------------------
/BugTracker

<> bt:tracksProduct </BugTracker/productsContainer/ProductA#p> ;

--------------------------------------------------------------------------------------

Furthermore, I might add other things like, 4.) x:containers property in my
resource so that people know where to create products and bugs

---------------------------------------------------------------------------------------
/BugTracker

<> x:containers </BugTracker/productsContainer/> ,
                         </BugTracker/bugsContainer/> .
---------------------------------------------------------------------------------------

and 5.) x:membershipPredicateRange so that people know which type of
resources can be created in a specific container

 ----------------------------------------------------------------------------------
<> a ldp:Container;
   x:membershipSubject </BugTracker>;
   x:membershipPredicate bt:tracksProduct;
   x:membershipPredicateRange bt:Product .
------------------------------------------------------------------------------------

or just add the following triples

-------------------------------------------------------------------------------------
bt:tracksProduct a rdfs:Property;
rdfs:range bt:Product .
-------------------------------------------------------------------------------------

I think some of these things are quite useful to be included in the LDP but
at the same time increases the complexity as mentioned in Raul's email. It
would be nice to see the pros, cons and implications of different
alternatives in Raul's email.

Best Regards,
Nandana

Received on Thursday, 23 May 2013 18:50:16 UTC