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

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

> 
> 
> On 13/03/13 07:10, Pierre-Antoine Champin wrote:
>> Henry,
>> 
>> On Wed, Mar 13, 2013 at 2:15 AM, Henry Story <henry.story@bblfish.net
>> <mailto:henry.story@bblfish.net>> wrote:
> 
> 
>> 
>>    The abstract syntax  specificiation allows for relative URLs:
>>    http://www.w3.org/TR/rdf11-concepts/#rdf-documents
>> 
>> 
>> This section is about serialization; it explicitly says "concrete syntaxes".
>> On the other hand, the definition of IRI for the graph model
>> 
>> http://www.w3.org/TR/rdf11-concepts/#dfn-iri
>> 
>> explicitly says "IRIs in the RDF abstract syntax MUST be absolute".
> 
> Yes.
> 
> A syntax may allow a relative URI but that's in a document and a document has a base URI.  The relative URI is relative to some base URI.  Relative URI have a role in syntax
> 
> RFC 3986 makes it clear:
> 
> [[
> 5.1.  Establishing a Base URI
> 
>   The term "relative" implies that a "base URI" exists against which
>   the relative reference is applied.  Aside from fragment-only
>   references (Section 4.4), relative references are only usable when a
>   base URI is known.
> ]]

And indeed they are: when you POST content the server will know what 
URIs the relative ones are referring to, once he has created the resource.

Just a little further down in the spec one reads

[[
5.1.4.  Default Base URI


   If none of the conditions described above apply, then the base URI is
   defined by the context of the application.  As this definition is
   necessarily application-dependent, failing to define a base URI by
   using one of the other methods may result in the same content being
   interpreted differently by different types of applications.

   A sender of a representation containing relative references is
   responsible for ensuring that a base URI for those references can be
   established.  Aside from fragment-only references, relative
   references can only be used reliably in situations where the base URI
   is well defined.
]]

So when the client POSTs to an LDPC the client ensures that the base
URI for the resources can be established: it is posting to an LDPC, and
the contract is that the LDPC when POSTed to creates a new resource with a
Location: header.

This all works fine currently.

> 
> 	Andy
> 

Social Web Architect
http://bblfish.net/

Received on Wednesday, 13 March 2013 10:54:39 UTC