14.2 Creative Commons License

The Creative Commons (CC) is an organization formed in 2002 to facilitate the movement of artists' work to the public domain. One of the outputs from the organization is the Creative Commons licenses: licenses that can be attached to a work of art such as a writing, a graphic, or a song, that provides information about how that material can be used and reused by others.

The Creative Commons web site is at http://creativecommons.org.

The CC licenses don't replace copyright and fair use laws; they primarily signal an artist's interest in licensing certain aspects of his copyright to the public, such as the right to copy a work, to derive new works from an original creation, and so on. The license is associated with the art in whatever manner is most expeditious, but if the art is digitized on the Web, the license is usually included with the art as RDF/XML.

The RDF/XML for use can be generated at the CC web site when you pick what particular license you want to apply. For instance, the following RDF/XML is generated when you pick a license that requires attribution and doesn't allow derivative works and/or commercial use:

<rdf:RDF xmlns="http://web.resource.org/cc/"
    xmlns:dc="http://purl.org/dc/elements/1.1/"
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
<Work rdf:about="">
<license rdf:resource="http://creativecommons.org/licenses/by-nd-nc/1.0" />
</Work>

<License rdf:about="http://creativecommons.org/licenses/by-nd-nc/1.0">
   <requires rdf:resource="http://web.resource.org/cc/Attribution" />
   <permits rdf:resource="http://web.resource.org/cc/Reproduction" />
   <permits rdf:resource="http://web.resource.org/cc/Distribution" />
   <prohibits rdf:resource="http://web.resource.org/cc/CommercialUse" />
   <requires rdf:resource="http://web.resource.org/cc/Notice" />
</License>

</rdf:RDF>

Normally this RDF/XML is included as part of a larger HTML block, and the RDF is enclosed in HTML comments to allow the page to validate as XHTML. Unfortunately, since HTML comments are also XML comments, this precludes accessing the RDF/XML directly from the page for most parsers, which will ignore the data much as the HTML browsers do.

The CC RDF Schema makes use of several Dublin Core elements, such as dc:title, dc:description, dc:subject and so on. You can see the model breakdown at http://creativecommons.org/learn/technology/metadata/implement#learn and the schema itself at http://creativecommons.org/learn/technology/metadata/schema.rdf. The schema includes definitions for the CC elements, though it uses the dc:description and dc:title elements for this rather than the RDFS equivalents of rdfs:comment and rdfs:label. The namespace for the Creative Commons schema is http://web.resource.org/cc/, and the prefix usually used is cc.

Though CC makes use of Dublin Core elements, the data contained within these elements does differ from other popular uses of Dublin Core. A case in point is dc:creator. For the most part, dc:creator usually contains a string literal representing the name of the person who created the work. However, the CC folks, following from an earlier overly involved discussion in the RDF Interest Group surrounding the concept that "strings don't create anything," provided a bit more detail ? in this case, that a dc:creator is an "agent," with a dc:title equivalent to the agent's name. In the following RDF/XML, the dc:creator field is boldfaced to demonstrate the structure of the data used by CC:

<rdf:RDF xmlns="http://web.resource.org/cc/"
    xmlns:dc="http://purl.org/dc/elements/1.1/"
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
<Work rdf:about="http://rdf.burningbird.net">
   <dc:title>Practical RDF</dc:title>
   <dc:date>2003-2-1</dc:date>
   <dc:description>Sample CC license for book</dc:description>
   <dc:creator><Agent>
      <dc:title>Shelley Powers</dc:title>
   </Agent></dc:creator>
   <dc:rights><Agent>
      <dc:title>O'Reilly</dc:title>
   </Agent></dc:rights>
   <dc:type rdf:resource="http://purl.org/dc/dcmitype/Text" />
<license rdf:resource="http://creativecommons.org/licenses/by-nd-nc/1.0" />
</Work>

<License rdf:about="http://creativecommons.org/licenses/by-nd-nc/1.0">
   <requires rdf:resource="http://web.resource.org/cc/Attribution" />
   <permits rdf:resource="http://web.resource.org/cc/Reproduction" />
   <permits rdf:resource="http://web.resource.org/cc/Distribution" />
   <prohibits rdf:resource="http://web.resource.org/cc/CommercialUse" />
   <requires rdf:resource="http://web.resource.org/cc/Notice" />
</License>

</rdf:RDF>

The data type for dc:creator is PCDATA, which means that the CC innovation wouldn't validate using the DC DTD. However, there's no requirement that RDF/XML validate, only that it be well formed. Still, if you're processing this field for a string representing a name, and you get this structure instead, you're going to have some interesting processing challenges. All of this demonstrates that, though RDF helps in the process of defining a metamodel for data, it doesn't necessarily close all the doors leading to confusion.