W3C home > Mailing lists > Public > public-lod@w3.org > December 2009

Re: attaching multiple licenses

From: Toby Inkster <tai@g5n.co.uk>
Date: Mon, 07 Dec 2009 06:40:28 +0000
To: Georgi Kobilarov <georgi.kobilarov@gmx.de>
Cc: public-lod@w3.org
Message-ID: <1260168028.22275.19.camel@ophelia2.g5n.co.uk>
On Sun, 2009-12-06 at 19:40 +0100, Georgi Kobilarov wrote:
> Say I publish one URI for an artist:
> http://example.org/resource/Madonna
> 
> I aggregate information from multiple sources about that artist, and
> those sources have different licenses. One triple comes from a source
> under GNU FDL, another triple from a source under Public Domain, and a
> owl:sameas link which I want to publish under Creative Commons
> License. 

Two methods spring to mind. The first is reification. It's probably not
an excellent solution though - consumers would need to be specially
aware of the fact that you're using reification, and that they should
dereify your data.

Something like:

	[ a rdf:Statement ;
	  rdf:subject <http://example.org/resource/Madonna> ;
	  rdf:predicate <http://xmlns.com/foaf/0.1/name> ;
	  rdf:object "Madonna Veronica Louise Chicone" ;
	  ex:statementLicence </public-domain-declaration> ] .

A better solution might be to publish your data in a format that can
make use of multiple graphs. e.g. in N3:

	{
	  <http://example.org/resource/Madonna>
	    <http://xmlns.com/foaf/0.1/name>
	      "Madonna Veronica Louise Chicone"
	}
	  ex:graphLicence </public-domain-declaration> .

Unfortunately, most of the data formats with native support for named
graphs do not have very good support in consuming software. But you can
fake named graphs in formats like RDF/XML, Turtle, etc by simply
splitting your data into multiple documents. So, in one file, you'd
have:

	<http://example.org/resource/Madonna>
	  <http://xmlns.com/foaf/0.1/name>
	    "Madonna Veronica Louise Chicone" .
	<>
	  ex:graphLicence
	    </public-domain-declaration> .

And in other files, you'd publish your other statements under different
licenses. You'd use rdfs:seeAlso links between the files to enable
autodiscovery.

Of course, because of the nature of public domain data, you could
duplicate that data in your other two files, so that any tool fetching,
say just the GNU FDL data would get the public domain data too.

-- 
Toby A Inkster
<mailto:mail@tobyinkster.co.uk>
<http://tobyinkster.co.uk>
Received on Monday, 7 December 2009 06:41:11 GMT

This archive was generated by hypermail 2.2.0+W3C-0.50 : Monday, 7 December 2009 10:41:40 GMT