Re: A modest attempt to re-open ISSUE-20

On 14 Mar 2013, at 10:02, Andy Seaborne <andy.seaborne@epimorphics.com> wrote:

> tl;dr:
> 
> The spec will have to note that you can not use N-triples for POST to a LDPC.
> 
> On 14/03/13 08:09, Henry Story wrote:
>> 
>> On 14 Mar 2013, at 08:26, Reto Bachmann-Gmür <reto@apache.org
>> <mailto:reto@apache.org>> wrote:
>> 
>>> 
>>> 
>>> On Wed, Mar 13, 2013 at 11:54 AM, Henry Story <henry.story@bblfish.net
>>> <mailto:henry.story@bblfish.net>> wrote:
>>> 
>>> 
> ...
> 
>>> IIUC, the server will know but the producer of the RDF serialization
>>> does not. So what is effectively serialized is not actually RDF but a
>>> pseudo RDF supporting relative URIs that can only be serialized in
>>> those RDF serializations implicitly supporting this.
>> 
>> What you are serialising is a concrete syntax, not an abstract syntax.
>> Concrete syntaxes can have
>> relative URLs.
> 
> Concrete syntax is the Turtle.  Abstract syntax is the RDF.
> 
> I don't understand that statement - surely the stuff you are serializing from has absolute URIs if it's RDF?
> 
>> When the Jena or Sesame APIs allow you to create such serialisations are
>> those libraries lying because they don't know where the serialisation is
>> going to end up on your hard drive or on your server?
> 
> Yes - although "lying" is too emotive.
> 
> It would be better to call them baseless URIs when in client form.
> 
> (pun intended :-))
> 
>> When an artist
>> produced HTML with relative URLs and sends a tar of it to the company
>> that made the request, is the html sent  to them flawed because the
>> artist does not know the exact path for where the html is going to end
>> up at? ( Put some RDFa in the html if you feel like saying the example
>> is irrelevant )
> 
> The URIs in the content change and the sender can not be sure the intended meaning is preserved.
> 
> Would you sign such a document as back up claims against it?

Yes, since the URL that is being created in a POST is a new URL, which
had no previous meaning attached to it. That is in fact exactly what I want
to be happening.

The bnode solution proposed here would have the same problems btw, but it would
be much poorer, and much more complicated to set up.

> 
>>> I think not letting the client deal with the RDF on the abstract
>>> syntax level is quite a severe limitation.
>> 
>> That is why we are using the concrete syntax Turtle to pass information
>> to and fro, not the abstract one.
> 
> I think the point is how does the client create such baseless data, not how is it exchanged.

All APIs I have seen have a serialisation methods which take a base URI and a graph and produce the "baseless" serialisation. Jena has that. 

> 
> For example, the client can only generate local data in this fashion - any data they have received or gathers from elsewhere will be using absolute URIs.
> 
> So if you view the client as editting information to reside in the LDPR, then arguing at the pure syntax level if fine.  It's an exchange of bytes, not of RDF.

The same with the proposal put forward here by Pierre-Antoine, where you will then be required to map bnodes arbitrarily to URIs. 

> 
> If you view the client as creating some abstract syntax (information) and publishing it at an LDPR whether via an LDPC or PUT and maybe publishing the information at the places as well), then you have to talk in terms of a template, not actual information.

Perhaps the language of the spec can be improved. That would be another issue.

> 
> In defining POST-LDPC, the spec needs to say that you can't use N-triples.  There's no base, internally or externally.

You can use NTriples if you don't want to refer to the document itself in your initial POST ( Since you don't know the document-to-be-created's URI. ) 


> 
> 	Andy
> 
>> 
>> Henry
>> 
>>> 
>>> Cheers,
>>> Reto
>> 
>> Social Web Architect
>> http://bblfish.net/
>> 

Social Web Architect
http://bblfish.net/

Received on Thursday, 14 March 2013 09:20:13 UTC