RDFLib/rdflib — Issue #6: Relative URIs do not work
Author: gjhiggins
Created: 2012-02-20 08:30:16+00:00
State: open

nsla...@gmail.com, 2007-12-11T15:05:37.000Z

I would like to use relative URIs for my subjects and rdflib curently
prevents this, to the best of my understanding.

When using an empty rdflib.Namespace("") object for my subjects the URI is
sometimes prepended with "file://".

This breaks relative URIs for publishing to the web etc.

Comment 1 by eike...@gmail.com
RDF makes it a bit hard to work with relative URIs as it doesn't really have a concept of them. It used to annoy
me greatly when bits didn't support relative identifiers / paths etc... so it took me some time to adjust to
absolutizing on the way in and relativizing on the way out when you want to keep things relative. But I think that
might be what needs to be done.

Could you provide more specifics on when your relative URIs were being absolutized?

Comment 2 by eike...@gmail.com

Comment 3 by gromgull
As the concept of relative URIs do not exist for RDF I propose closing this.

Unless some eager soul provides a patch for doing it at serialize time?

Comment 4 by eik...@gmail.com

Comment 5 by gromgull
Old issues never die.

Related is this delightful thread on lod-mailinglist: http://lists.w3.org/Archives/Public/public-lod/2011Jan/0134.html

Timbl says CWM canonicalizes URIs on import:
http://lists.w3.org/Archives/Public/public-lod/2011Jan/0152.html

Shall we follow suit?

Comment 6 by salsedol...@yahoo.com
Good

Comment 7 by gklyn...@gmail.com
I find that relative URIs *do* work in RDF/XML input/output, in situations where they make sense (e.g. rdf:about). The serializer can also generate them, though care is needed to set the correct base URI.

Comment 8 by gerhard.weis@gmail.com
Yes they do work for XML. But the XML standard then says, when interpreting relative URIs you have to canonicalize them with the help of xml:base etc.. However this is rather a functionality of the XML parser and not something that RDF needs to know about. (just my 2 cents)