- From: Kingsley Idehen <kidehen@openlinksw.com>
- Date: Mon, 10 Jun 2013 12:27:15 -0400
- To: public-ldp-wg@w3.org
- Message-ID: <51B5FE63.2000500@openlinksw.com>
On 6/10/13 12:04 PM, Henry Story wrote: > > On 10 Jun 2013, at 17:18, Arnaud Le Hors <lehors@us.ibm.com > <mailto:lehors@us.ibm.com>> wrote: > >> Hi, >> >> We all agree that somehow a client needs to be able to figure out it >> is dealing with an LDP server. The argument seems to be about how the >> client makes that determination. From what I've seen we have two >> groups of people. >> >> One group thinks that RDF provides all the client needs. The RDF >> typing a la ldp:Container is the indicator. I believe this would mean >> that an LDPR must also be typed with something LDP specific but I'll >> leave that out for now. > > That's me > >> >> The other group argues that this is something the client should be >> able to figure out just from the information contained in the HTTP >> layer. Using a new mediatype would be one way to do that. It could be >> a new mediatype entirely or one derived from existing mediatypes >> using the profile mechanism. >> >> I believe both techniques can work but they have different pros and >> cons. > > The second technique contains 2 different proposals, one of which I am > for the other against. > > I argue strongly against using mediatypes as it is mistaking syntax > with semantics. Simply put: the content in bytes sent from the server > to the client > is known as a representation of the resource ( it has a syntax defined > by its mime type ) One CANNOT apply the method > GET/POST/DELETE, etc on a representation - a stream of bytes - one can > only do that on a resource, which is what the > URI ( Uniform Resource Identifier ) refers to in { <> a ldp:Container } > > But I am not against using HTTP headers to express something about the > resource that is the container. > As it turns out one can use the Link relation to do that with ( > http://tools.ietf.org/html/rfc5988 ) > > Link: <http://www.w3.org/ns/ldp#Container>; > rel="http://www.w3.org/1999/02/22-rdf-syntax-ns#type" > > Perhaps we could do the HTTP/RDF community a favor to register the > relation > http://www.w3.org/1999/02/22-rdf-syntax-ns#type to the shorthand > "type" so that > the above could become > > Link: <http://www.w3.org/ns/ldp#Container>; rel="type" +1 > >> Here is my analysis: >> >> Relying on RDF alone has the advantage of not requiring anything new >> at the HTTP level. On the other hand it requires everything to be >> typed for LDP specifically and it ties the interaction model to the >> LDP vocabulary which can be seen as limiting. > > Why would that be limiting? And why should we care if people wrongly > see it to be tied to ldp vocabulary? > Other vocabualries can be invented and add more restrictions, that's > just the nature of RDF. +1 > >> >> For instance, if I happen to retrieve some LDP content from an LDP >> server and decide to store it into a vanilla, non-LDP enabled, triple >> store a client accessing that triple store would be misled to think >> it is talking to an LDP server when it's not. The counter argument to >> this is that this is simply something one shouldn't do: one shouldn't >> serve LDP content from a non-LDP server. > > exactly. That is no different than if an IBM employee mistyped a form > on IBMs e-commerce site. We don't try to make > forms meaningless in order to avoid such accidents happening. We > rather give forms a meaning in human readable > text surrounding it, and then set up test suites and feedback > mechanisms to catch errors. +1 > >> >> Relying on HTTP to provide the indicator that this an LDP server has >> the advantage of allowing the LDP interaction model to be applied on >> resources that are not specifically typed for LDP (the spec doesn't >> currently require typing of LDPRs). It also allows LDP content to be >> served by non-LDP servers without implying support of the LDP >> interaction model. > > But then you have just pushed the problem one little step further > along, because however you describe your > interaction model, once you allow it to describe something - ie to > make some distinction in the world - > then you inevitably allow the distinction to be made truely or > falsely, ie for the description to correspond > to the way the world is or not. So your distinction will imply > support of some interaction model then, and you'll have the > same problem. +1 > >> >> On the other hand this requires defining something beyond the >> existing RDF mediatypes already in use for non-LDP purposes. Defining >> a new mediatype entirely or as a profile seems pretty heavy to me. >> But that's not the only way. Another way to communicate that the >> server supports the LDP interaction model would be to add an HTTP >> header. One such possibility would be to have a Link header with a >> rel=profile and a link to an LDP specific profile a la >> http://www.w3.org/ns/ldp/profileas the target. > > So as argued above you can use the Link header and also use the > ldp:Container there in the same > way as you do with the body. What is the profile adding? +1 > What vocabulary would need to be used to > describe the profile? Do we need this now or can we add it later? > Unless those questions are answered > this seems like a lot of work to do when we can just use ldp:Container > to mean: you can POST to this > container. +1 Kingsley > >> >> According to Erik while this isn't common (the spec is very recent) >> it would be reasonable. >> >> I think this is the way we should go. If some people want to ignore >> the Link header they are welcome to do so and it is there for those >> who care. >> >> Comments? >> >> Thanks. >> -- >> Arnaud Le Hors - Software Standards Architect - IBM Software Group > > Social Web Architect > http://bblfish.net/ > -- Regards, Kingsley Idehen Founder & CEO OpenLink Software Company Web: http://www.openlinksw.com Personal Weblog: http://www.openlinksw.com/blog/~kidehen Twitter/Identi.ca handle: @kidehen Google+ Profile: https://plus.google.com/112399767740508618350/about LinkedIn Profile: http://www.linkedin.com/in/kidehen
Attachments
- application/pkcs7-signature attachment: S/MIME Cryptographic Signature
Received on Monday, 10 June 2013 16:27:38 UTC