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

On Thu, 2013-03-14 at 10:03 +0100, Henry Story wrote:
> 
> The relevant section of the Turtle spec is section 6.3
> http://www.w3.org/TR/turtle/#relative-iri
> 
> 
> Notice that you cannot use NTriples to do what you want either, since
> you cannot
> know when creating a resource what the URI of the created resource is
> going to be.
> You would need to only use blank nodes in the graph produced, which
> would be
> to say the least very awkward. 


In Callimachus, when a resource is created there is no funny base-uri
going on (we use the RDF model). Although we use sparql-update format,
any RDF format would work equally well for us including NTriples.

Lets calls the to-be-created resource URI the entity URI. All the
triples that are to-be-inserted to the store must either have a blank
node subject, have a subject URI of the entity URI, or have a subject
URI of the entity URI plus a fragment identifier. This makes it very
clear what the entity URI is. It is up to the client to decide if that
entity URI is serialized as a base directive or absolute (we encourage
the client to provide their own base directive). It is up to the server
if it will use the entity URI as-is or if it will substitute a different
entity URI.

Using RDF model for linked data resource creation works, we have a
working implementation.

Earlier we had experimented with changing base-uri when parsing, but it
was too problematic for all the reasons stated in this thread and we
replaced it with the above.

Regards,
James

Received on Thursday, 14 March 2013 14:07:35 UTC