Re: Example of Atom publication using LDP

On 7 Feb 2013, at 17:41, Pierre-Antoine Champin <pierre-antoine.champin@liris.cnrs.fr> wrote:

> Henry,
> 
> 
> On Wed, Jan 30, 2013 at 8:17 PM, Henry Story <henry.story@bblfish.net> wrote:
> > (...)
> >> HTTP/1.1 201 Created
> >> Content-Type: text/turtle
> >
> > i'd prefer to expose what we're doing on the uniform interface level by
> > using application/ldp+turtle, but i know this is controversial.
> >
> > [[ as a side note, http://tools.ietf.org/html/rfc6839 was published today
> > and maybe somebody would be interested to make popular RDF syntaxes
> > visible at that level, registering at least +rdfxml and +turtle and maybe
> > others as well. ]]
> >
> > as an alternative, i'd propose text/turtle;profile=http://w3.org/ldp so
> > that we have our protocol represented somehow, but even this would require
> > for the turtle media type to support profiles (which it currently doesn't).
> 
> yes, as I argued below this is very bad. It just won't work with RDF which
> is syntax agnostic. It worked just about in Atom/XML because what was being
> done there was so limited. But that was just a hack to tell the truth,
> because at the time XML was god, and the idea of another syntax was anathema.
> Since then JSON has grown, and people have come to accept that different
> syntaxes are good at different things.
> 
> I have to strongly disagree with you. I think the 'profile' thing is very nice, especially because it is (concrete) syntax agnostic, hence well fit to RDF. Indeed, the same profile URI could be used with different RDF formats:
> 
>   text/turtle;profile=http://w3.org/ldp
>   application/rdf+xml;profile=http://w3.org/ldp
>   text/n-triple;profile=http://w3.org/ldp
> 
> and mean exactly the same thing, namely something in the line of
> 
>   The conveyed graph must contain a triple of the form  <> rdf:type X,
>   where X is one of the classes defined in the LDP ontology;
>   if X is ldp:Container, <> MUST have the following properties: ...
>   if X is ldp:Resource, <> MUST have the following properties: ...
> 
> Whether those constraint are syntactical (i.e. the required triples must actually *be* there) or semantic (i.e. the required triples may be merely inferred) is another question, although I think the profile should specified which inference regime should be used to interpret the content.
> 
>   pa
> 
> PS: I know that the media types above do not currently support the 'profile' parameter. On the other hand, the RDF working group is still active (well, will be if its extension request is accepted :-/), so it's the perfect time to suggest this change. I noticed that, for a start, JSON-LD already just adopted it <http://json-ld.org/minutes/2013-01-29/#resolution-3>.

I wonder how it is meant to work with JSON-LD... Looking here:
http://json-ld.org/spec/latest/json-ld-syntax/

I see that they have a few profiles defined, which would allow it to be served with:

Content-Type: application/json;profile=http://www.w3.org/ns/json-ld#expanded-flattened 

Right?

But then how would one add the ldp profile to that too? 
It seems to me that json ld is doing the right thing with its profile of json, because that is a syntactic spec. Whereas the type of the content sent is orthogonal to the syntax. The above seems to reinforce my point.

In any case this is a minor issue, since there is a good solution to this using Link elements,
or by looking in the graph.

Henry


Social Web Architect
http://bblfish.net/

Received on Thursday, 7 February 2013 17:05:30 UTC