Re: ldp-ISSUE-30 (bugtrack): Hierarchical bugtracking service [Use Cases and Requirements]

On 7 Nov 2012, at 16:31, Andy Seaborne wrote:

> On 05/11/12 15:39, Linked Data Platform (LDP) Working Group Issue Tracker wrote:
>>  POST /SomeProduct { <> a :Bug } yields { /Bugz/bug2 a :Bug }
> I read that as a response of 201/"Location: /Bugz/bug2" and
> content { /Bugz/bug2 a :Bug } at /Bugz/bug2.
> Presumably POSTing { <> a :FeatureRequest } causes a different template for the URI allocated:
> Location: /Feature/request2331

I'm not sure that would work with the current design. If bugs and features have different URI templates, then probably you also want different membership properties:

    :bug </Bugz/bug2>;
    :feature </Feature/request2331>.

To get different properties, you need to POST to different containers. So the client needs to decide what container to POST to, and that decision will determine the URI pattern and the property to be used, and not information in the payload. Which seems mostly fine to me.

> This is a great example - the data has driven the server's decisions on the response.

Right, and if it works this way, then the client doesn't need to know that :Bugs go into the one container and :Features into the other; the server can sort this out by looking at the request. That's an advantage.

On the other hand, the more of this logic is in the server, and kept out of the client-server protocol, the less the server is able to communicate to the client what it's going to do with the payload.


> 	Andy

Received on Wednesday, 7 November 2012 22:01:05 UTC