liblicenseでライセンス意識を高めよう

 Creative Commons(CC)はライセンスを扱う団体だ。さまざまな必要に応じた創作物のための独自ライセンスを起草して提供し、ライセンス意識の向上に努め、CCライセンスを適用した作品の発表と検索を容易にするプロジェクトを進めてきた。そのCCが、今、デスクトップを日常的に利用する中でライセンスを啓蒙しようと動き出した。その武器はliblicenseだ。

 liblicenseはデータ・ファイルに関する「ライセンスを認識する」アプリケーションを作るための、クロスプラットフォームで移植性のあるCライブラリーだ。ファイルにライセンスが付属または組み込まれているかどうかを調べたり、ライセンスをわかりやすく読める形で選択しアプリケーションに添付したりできるようになる。CCのプロジェクトであるliblicenseが創作物に対するCCライセンスを中心とするのは当然だが、この方法はすべてのデータ、おそらくはソースコードに対してさえも有効だろう。

 liblicenseの最新版は2007年8月にリリースされた0.4だ。20種あまりの関数から成るアプリケーション・プログラミング・インタフェース(API)をアプリケーションに組み込む形で利用する。これらの関数を介して、バージョン番号や裁判権など、ファイルに付属するライセンスの内容を照会したり、ライセンス情報をファイルに書き込んだりすることができる。ファイルに埋め込まれているライセンスを人間にも機械にも読め検証可能な形で適切に扱えるようになったのは相当な労力のたまものだ。

 liblicenseは複数のモジュールから成り、広範なファイル・タイプに対応している。また、各ファイル・タイプの中でもライセンス情報を表現する形式は多様だが、それらにも対応している。たとえば、MP3とOgg Vorbisオーディオファイルの場合はそれぞれのフォーマットが持つ固有のタグ体系に準じてライセンスを記述し、JPEG画像ならXMPを使うことになるだろう。Flashなど標準のメタデータ・フォーマットを持たないファイル・タイプの場合は、RDFを使ってファイルと外部にあるライセンス情報とを関連づける