Code

Public Domain Calculators

A new version of the public domain calculators has recently been released and is available at github.
The public domain calculators are now linked with the national copyright flowcharts of developed as part of the Europeana project. The back-end has been rewritten to allow for national calculators to be written as simple RDF files that subsist independently of the underlying code.

  • Graphm2rdf.rb is a converter that takes a flowchart from the Europeana project (in Graphmlz format) to produce a new flowchart (in RDF format) that describes the national copyright regime according to a specifically designed ontology Flow 0.1 (available at http://bedlam.dk/flow/0.1).

  • Metadata[n].rdf are the metadata files taken from a database describing a particular work in RDF format.

  • Map.rdf provides a link between the questions from Flowchart to the answers in the metadata files by means of specific Sparql queries.

  • Reasoner.py is the actual public domain calculator. It takes those 3 files as an input: Flowchart.rdf (national flowchart), map.rdf (national calculator), and metadata.rdf (work metadata), process the whole thing and declares whether or not the work described in metadata.rdf is in the public domain according to the national copyright regime.

The advantage of this approach is that it makes it easier to create new calculators as new flowcharts gets created or updated. Since the calculators are simple RDF files, no programming skills are necessary to implement them, except for some decent knowledge of Sparql.

The code is very recent and is still under development. Anyone interested please don’t hesitate to check it out!

Implementing new Flowcharts

  1. Download the national flowchart in .graphmlz format from outofcopyright.eu
  2. Run graphm2rdf.rb to generate a flowchart in RDF/Flow format
  3. Download the metadata for a work in RDF format
  4. Implement the national calculator by mapping the questions from the flowchart with the answer in the metadata by means of specific Sparql queries. In you are confused as to how to proceed, take a look at the current implementation of the Austrian flowchart (map.rdf) which is the basic model over which all calculators can be derived.
  5. Test it with several metadata files to make sure that the calculator never fails
  6. Submit the calculator to pd-discuss for peer-review

Leave a reply

Your email address will not be published. Required fields are marked *


*

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>