Re: Section 4: LDPR/non-LDPR formal definitions

On 26 Mar 2013, at 16:52, Erik Wilde <dret@berkeley.edu> wrote:
> turtle is not a hypermedia type, it's a data model representation.

That's not quite accurate.

The data model represented in Turtle is a model that was originally intended to serve as a hypermedia model by at least *some* of its designers, and that was *always* capable of serving as a hypermedia model, and *has* been used to build (read-only) hypermedia applications for many years. FOAF and its rdfs:seeAlso links were old news when Tim wrote his Linked Data piece.

The data model has also been used for lots of non-hypermedia applications. But that doesn't change the fact that is fundamentally suited for hypermedia apps.

> in the end, all we want is to support meaningful web interactions. assume there are three ways in which i can manage collections. one is LDP, which is clearly the best. the second is AtomPub, which i also really like, and then there's another one that also is RDF-based, but it's not so great and i don't really like it. but i still know how to use it. i want to be able to start interacting with a collection by saying:
> 
> Accept: application/ldp+turtle, application/atom+xml; q=0.5, application/badservice; q=0.1
> 
> and of course it's not really the case that servers must be able to work exactly like this (provide multi-service support and content negotiation between those services), but i think the point i am trying to make is that a service should be exposed at this level (i.e., in HTTP vocabulary) to be most helpful on the web.

What if you want to use LDP semantics, but would prefer the RDF/XML serialization because that is better supported in your toolchain? Or you want to use LDP semantics, but want to use the newfangled JSON-LD syntax that seems to be the new hot thing right now? Do you want to define a new RDF/XML+LDP media type and a new JSON-LD+LDP media type as well?

RDF and LDP are syntax-agnostic. It's the model that counts. Media types are a blunt instrument. They just have a single dimension. But in LDP we have two dimensions that we need to represent. First, the choice of surface syntax. Second, the choice of interaction semantics. We already use media types for the first, but this means we can't use them for the second without inventing a whole new orthogonal range of new media types.

I understand the content negotiation scenario that you present above, and sure it would be nice if we could use content negotiation with such precision, but the example seems a bit hypothetical to me, and ultimately we should value backwards compatibility with existing read-only Turtle clients and servers over concerns of theoretical purity. (Also, can't this already be solved with ;profile=...?)

Best,
Richard

Received on Tuesday, 26 March 2013 19:47:00 UTC