(57)【要約】【課題】  複数のドメインによる同時並列処理を実現することが可能なライセンス評価装置を提供すること。【解決手段】  ドメインごとに作成された使用条件情報を含むライセンスを記憶するライセンス記憶部１１４と；ライセンスに基づくコンテンツの使用状態を表す変数をドメインごとに領域区分して含むステータス情報を記憶するステータス記憶部１１６と；ライセンスに含まれる使用条件情報を解析し，使用条件情報の条件式を構成する１又は２以上の変数のドメインを，使用条件情報に含まれるドメイン指定情報に基づいて特定するドメイン特定部１４２と；ライセンスに基づいてコンテンツが使用された場合に，ステータス情報のうち上記特定されたドメインに対応するドメイン領域をロックし，ロックされたドメイン領域内の変数を，コンテンツの使用内容に応じて更新するステータス情報更新部１４４と；を備えるライセンス評価装置が提供される。【選択図】  図２
2006011555.tif 000002
【特許請求の範囲】
【請求項１】
コンテンツを使用するためのライセンスを評価するライセンス評価装置であって：
コンテンツの使用機能の分類であるドメインごとに作成された使用条件情報を含む１又は２以上のライセンスを記憶するライセンス記憶部と；
前記ライセンスごとに作成され，前記ライセンスに基づくコンテンツの使用状態を表す変数を前記ドメインごとに領域区分して含むステータス情報を記憶するステータス記憶部と；
前記ライセンスに含まれる使用条件情報を解析し，前記使用条件情報の条件式を構成する１又は２以上の変数のドメインを，前記使用条件情報に含まれるドメイン指定情報に基づいて特定するドメイン特定部と；
前記ライセンスに基づいてコンテンツが使用された場合に，前記ステータス情報のうち前記特定されたドメインに対応するドメイン領域をロックし，前記ロックされたドメイン領域内の変数を前記コンテンツの使用内容に応じて更新するステータス情報更新部と；
を備えることを特徴とする，ライセンス評価装置。
【請求項２】
前記ライセンスの使用条件情報は，前記変数が可変値または固定値のいずれであるかを表す情報を含んでおり，
前記ステータス情報更新部は，前記変数が可変値または固定値のいずれであるかを表す情報に基づいて，前記ステータス情報をロックするか否かを判断することを特徴とする，請求項１に記載のライセンス評価装置。
【請求項３】
使用要求を受けたコンテンツに対応するライセンスを前記ライセンス記憶部から読み出すライセンス抽出部と；
前記読み出したライセンスに対応するステータス情報のうち前記使用要求に対応するドメインの変数を前記ステータス情報記憶部から読み出すステータス情報抽出部と；
前記読み出したライセンスに含まれる使用条件情報の条件式に，前記読み出したステータス情報の変数を代入し，前記条件式を満たすか否かに基づいて，前記使用要求を受けたコンテンツの使用を許可／不許可する条件式判断部と；
をさらに備えることを特徴とする，請求項１に記載のライセンス評価装置。
【請求項４】
コンテンツを使用するためのライセンスを評価するコンピュータプログラムであって：
コンピュータをして：
ライセンスに含まれ，コンテンツの使用機能の分類であるドメインごとに作成された使用条件情報を解析し，前記使用条件情報の条件式を構成する１又は２以上の変数のドメインを，前記使用条件情報に含まれるドメイン指定情報に基づいて特定するドメイン特定処理と；
前記ライセンスに基づいてコンテンツが使用された場合に，前記ライセンスごとに作成され，前記ライセンスに基づくコンテンツの使用状態を表す変数を前記ドメインごとに領域区分して含むステータス情報のうち前記特定されたドメインに対応するドメイン領域をロックし，前記ロックされたドメイン領域内の変数を前記コンテンツの使用内容に応じて更新するステータス情報更新処理と；
を実行させることを特徴とする，コンピュータプログラム。
【請求項５】
前記ライセンスの使用条件情報は，前記変数が可変値または固定値のいずれであるかを表す情報を含んでおり，
前記ステータス情報更新処理では，前記変数が可変値または固定値のいずれであるかを表す情報に基づいて，前記ステータス情報をロックするか否かを判断することを特徴とする，請求項４に記載のコンピュータプログラム。
【請求項６】
使用要求を受けたコンテンツに対応するライセンスをライセンス記憶部から読み出すライセンス抽出処理と；
前記読み出したライセンスに対応するステータス情報のうち前記使用要求に対応するドメインの変数をステータス情報記憶部から読み出すステータス情報抽出処理と；
前記読み出したライセンスに含まれる使用条件情報の条件式に，前記読み出したステータス情報の変数を代入し，前記条件式を満たすか否かに基づいて，前記使用要求を受けたコンテンツの使用を許可／不許可する条件式判断処理と；
をさらに実行させることを特徴とする，請求項４に記載のコンピュータプログラム。
【請求項７】
コンテンツを使用するためのライセンスを評価するライセンス評価方法であって：
ライセンスに含まれ，コンテンツの使用機能の分類であるドメインごとに作成された使用条件情報を解析し，前記使用条件情報の条件式を構成する１又は２以上の変数のドメインを，前記使用条件情報に含まれるドメイン指定情報に基づいて特定する，ドメイン特定ステップと；
前記ライセンスに基づいてコンテンツが使用された場合に，前記ライセンスごとに作成され，前記ライセンスに基づくコンテンツの使用状態を表す変数を前記ドメインごとに領域区分して含むステータス情報のうち，前記特定されたドメインに対応するドメイン領域をロックし，前記ロックされたドメイン領域内の変数を前記コンテンツの使用内容に応じて更新する，ステータス情報更新ステップと；
を含むことを特徴とする，ライセンス評価方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は，コンテンツを使用するためのライセンスを評価するライセンス評価装置，コンピュータプログラム，ライセンス評価方法に関する。
【背景技術】
【０００２】
近年，コンテンツの流通・利用に制限を加えるＤＲＭ（Ｄｉｇｉｔａｌ  Ｒｉｇｈｔｓ  Ｍａｎａｇｅｍｅｎｔ；デジタル著作権管理）技術を利用した著作権管理システムが普及しつつある。かかる著作権管理システムでは，ユーザ所有の各端末（ＰＣ等）において，サーバが発行したライセンスに基づいて，音楽コンテンツや映像コンテンツなどのデジタルコンテンツの使用（再生，コピー等）を制御する方式が一般的である。さらに，最近では，このような著作権管理システムにおいて，コンテンツとライセンスとを独立に管理するコンテンツの利用方法が実施されている。この場合，上記コンテンツは，サーバ側において暗号化されてユーザ端末に提供され，ユーザ側の端末において，別途取得したライセンスに基づいて上記の暗号化が解かれる仕組みになっている。このような著作権管理システムでは，サーバからユーザ端末にコンテンツを自由に配布することが可能となり，配布されたコンテンツの使用は別途のライセンスにより管理される。
【０００３】
上記のようにコンテンツとライセンスが独立して提供される著作権管理システムの一例として，ライセンスのバリエーションや購入手順が複雑な場合でも，容易かつ安全にライセンスを作成して，ユーザ端末に配布する処理を行う技術が知られている（例えば，技術文献１）。この技術では，複雑なライセンスをサービス毎に分離し，そのサービス毎にライセンスを個別定義している。
【０００４】
かかる著作権管理システムにおいて，ライセンスの使用条件（Ｕｓａｇｅ  Ｒｕｌｅ），および端末におけるコンテンツの使用状態（ステータス情報）は，予め規定された複数の変数で記述されていた。ユーザ端末では，このようなライセンスの使用条件と，ユーザ端末における過去のコンテンツの使用状態とに基づいて，コンテンツの使用を制御している。このため，ライセンスに基づきコンテンツが使用された場合には，上記ステータス情報の変数をロック（他の処理によって更新されないように専有）した上で，上記変数を使用内容に応じて更新する必要がある。また，かかる著作権管理システムでは，ライセンス評価処理の効率化，明確化のために，コンテンツの使用機能の分類（カテゴリ）であるドメインが設定されている。
【０００５】
【特許文献１】特開２００４−３０８４４０号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
ところで，上記従来の著作権管理システムでは，ライセンスの使用条件や，コンテンツの使用状態を表す変数が，如何なるドメインで有効であるかについては，ライセンス内に何ら規定されていなかった。このため，ユーザ端末において，ライセンスに基づくコンテンツの使用に応じて上記ステータス情報の変数を更新する際に，当該ステータス情報をロック／アンロックする範囲が分からないため，ステータス情報の変数全体をロック／アンロックして一部の変数を更新せざるを得なかった。また，ドメインごとにステータス情報の変数をロック／アンロックして更新することもできなかった。従って，複数のドメインの処理を同時並列処理することができないという問題があった。
【０００７】
そこで，本発明は，上記問題点に鑑みてなされたものであり，本発明の目的は，ドメインごとにステータス情報の変数をロック／アンロックして，複数のドメインによる同時並列処理を実現することが可能な，新規かつ改良されたライセンス評価装置，コンピュータプログラム，ライセンス評価方法を提供することにある。
【課題を解決するための手段】
【０００８】
上記課題を解決するために，本発明のある観点によれば，コンテンツを使用するためのライセンスを評価するライセンス評価装置が提供される。このライセンス評価装置は，コンテンツの使用機能の分類であるドメインごとに作成された使用条件情報を含む１又は２以上のライセンスを記憶するライセンス記憶部と；ライセンスごとに作成され，ライセンスに基づくコンテンツの使用状態を表す変数をドメインごとに領域区分して含むステータス情報を記憶するステータス記憶部と；ライセンスに含まれる使用条件情報を解析し，使用条件情報の条件式を構成する１又は２以上の変数のドメインを，使用条件情報に含まれるドメイン指定情報に基づいて特定するドメイン特定部と；ライセンスに基づいてコンテンツが使用された場合に，ステータス情報のうち，特定されたドメインに対応するドメイン領域をロックし，ロックされたドメイン領域内の変数を，コンテンツの使用内容に応じて更新するステータス情報更新部と；を備えることを特徴とする。
【０００９】
ここで，上記ライセンス評価装置は，パーソナルコンピュータ，ＰＤＡ（Ｐｅｒｓｏｎａｌ  Ｄｉｇｉｔａｌ  Ａｓｓｉｓｔａｎｔ），携帯電話，携帯型音声プレーヤ，家庭ゲーム機，情報家電等で構成される。また，上記ドメイン指定情報は，変数を使用するドメインを指定する情報であり，ライセンスの使用条件情報内に各変数に対応して記述されている。また，上記ステータス情報のドメイン領域をロックするとは，当該ドメイン領域内の変数が他の処理によって更新されないように，当該ドメイン領域内の変数の更新権限を専有することをいう。
【００１０】
上記のような構成により，ライセンスの使用条件情報において変数のドメイン指定情報を各変数に関連付けて記述し，かかるドメイン指定情報によって変数を使用するドメインを特定できるようにし，かつ，ステータス情報をドメインごとに領域区分している。このため，コンテンツの使用に応じてステータス情報内の変数を更新する時に，更新対象の変数のドメインを特定し，ロックをかけるステータス情報の範囲を，特定されたドメイン領域に限定することができる。よって，ステータス情報全体にロックをかける必要がないので，相異なる複数のドメインに属する変数の更新処理を，同時並行して実行することが可能となる。
【００１１】
また，上記ライセンスの使用条件情報は，変数が可変値または固定値のいずれであるかを表す情報を含んでおり，上記ステータス情報更新部は，変数が可変値または固定値のいずれであるかを表す情報に基づいて，ステータス情報をロックするか否かを判断するようにしてもよい。これにより，変数が可変値である場合には，ステータス情報のうち対応するドメイン領域をロックし，変数が固定値である場合には，ステータス情報をロックしないようにすることができる。
【００１２】
また，上記使用要求を受けたコンテンツに対応するライセンスをライセンス記憶部から読み出すライセンス抽出部と；読み出したライセンスに対応するステータス情報のうち使用要求に対応するドメインの変数をステータス情報記憶部から読み出すステータス情報抽出部と；読み出したライセンスに含まれる使用条件情報の条件式に，読み出したステータス情報の変数を代入し，条件式を満たすか否かに基づいて，使用要求を受けたコンテンツの使用を許可／不許可する条件式判断部と；をさらに備えるようにしてもよい。
【００１３】
また，上記課題を解決するために，本発明の別の観点によれば，コンテンツを使用するためのライセンスを評価するコンピュータプログラムが提供される。このコンピュータプログラムは，コンピュータをして：ライセンスに含まれ，コンテンツの使用機能の分類であるドメインごとに作成された使用条件情報を解析し，使用条件情報の条件式を構成する１又は２以上の変数のドメインを，使用条件情報に含まれるドメイン指定情報に基づいて特定するドメイン特定処理と；ライセンスに基づいてコンテンツが使用された場合に，ライセンスごとに作成され，ライセンスに基づくコンテンツの使用状態を表す変数をドメインごとに領域区分して含むステータス情報のうち，特定されたドメインに対応するドメイン領域をロックし，ロックされたドメイン領域内の変数をコンテンツの使用内容に応じて更新するステータス情報更新処理と；を実行させることを特徴とする。
【００１４】
かかるコンピュータプログラムを，コンピュータにインストールすることによって，上述したライセンス評価装置を好適に構築できる。
【００１５】
また，上記ライセンスの使用条件情報は，変数が可変値または固定値のいずれであるかを表す情報を含んでおり，上記ステータス情報更新処理では，変数が可変値または固定値のいずれであるかを表す情報に基づいて，ステータス情報をロックするか否かを判断するようにしてもよい。
【００１６】
また，上記使用要求を受けたコンテンツに対応するライセンスをライセンス記憶部から読み出すライセンス抽出処理と；読み出したライセンスに対応するステータス情報のうち使用要求に対応するドメインの変数をステータス情報記憶部から読み出すステータス情報抽出処理と；読み出したライセンスに含まれる使用条件情報の条件式に，読み出したステータス情報の変数を代入し，条件式を満たすか否かに基づいて，使用要求を受けたコンテンツの使用を許可／不許可する条件式判断処理と；をさらに実行させるようにしてもよい。
【００１７】
また，上記課題を解決するために，本発明の別の観点によれば，コンテンツを使用するためのライセンスを評価するライセンス評価方法が提供される。このライセンス評価方法は，ライセンスに含まれ，コンテンツの使用機能の分類であるドメインごとに作成された使用条件情報を解析し，使用条件情報の条件式を構成する１又は２以上の変数のドメインを，使用条件情報に含まれるドメイン指定情報に基づいて特定する，ドメイン特定ステップと；ライセンスに基づいてコンテンツが使用された場合に，ライセンスごとに作成され，ライセンスに基づくコンテンツの使用状態を表す変数をドメインごとに領域区分して含むステータス情報のうち，特定されたドメインに対応するドメイン領域をロックし，ロックされたドメイン領域内の変数をコンテンツの使用内容に応じて更新する，ステータス情報更新ステップと；を含むことを特徴とする。
【００１８】
かかるライセンス評価方法により，コンテンツの使用に応じてステータス情報内の変数を更新する時に，更新対象の変数のドメインを特定し，ロックをかけるステータス情報の範囲を，特定されたドメイン領域に限定することができる。
【発明の効果】
【００１９】
以上説明したように本発明によれば，ドメインごとにステータス情報のうち，更新対象の変数に対応したドメイン領域のみをロックするので，相異なるドメインに属する複数の変数の更新を並列処理することができる。
【発明を実施するための最良の形態】
【００２０】
以下に添付図面を参照しながら，本発明の好適な実施の形態について詳細に説明する。なお，本明細書及び図面において，実質的に同一の機能構成を有する構成要素については，同一の符号を付することにより重複説明を省略する。
【００２１】
（第１の実施形態）
以下に，本発明の第１の実施形態にかかるコンテンツ配信システム，ライセンス評価装置，コンピュータプログラム，ライセンス評価方法について説明する。
【００２２】
＜概要＞
まず，本発明の第１の実施形態にかかるコンテンツ配信システムの概要について説明する。
【００２３】
本実施形態にかかるコンテンツ配信システムは，コンテンツ配信サーバからユーザ端末に対して配信されたコンテンツに関し，別途発行されたライセンスに基づいて，各ユーザ端末におけるコンテンツの利用（再生，コピー等）を管理し，コンテンツの著作権を保護するための著作権管理システムとして構成されている。
【００２４】
具体的には，このコンテンツ配信システムは，コンテンツのライセンスを発行することによって，正当ユーザ（コンテンツの著作権に対する正当な対価を支払ってライセンスを購入し，私的使用の範囲内での利用を行うユーザ）に対しては，ライセンスの範囲内で自由にコンテンツの利用を認める。一方で，インターネット等を通じたコンテンツの大量配布行為等といった違法利用を行うユーザや，正当な対価を支払わずにライセンスの範囲を越えてコンテンツを利用しようとするユーザに対しては，コンテンツの利用を厳しく制限する。
【００２５】
より詳細には，ユーザが有料で配信されるコンテンツを利用しようと考えた場合，コンテンツ自体とそのコンテンツを利用するためのライセンスの双方を取得する必要がある。本実施形態にかかるコンテンツ配信システムでは，このようなコンテンツとライセンスとは，独立に管理されている。ユーザは，自己の所有するライセンス評価装置（ユーザ端末）を用いて，暗号化されたコンテンツをコンテンツ配信サーバ等から自由にダウンロードし，このコンテンツとは別途にライセンスのみを購入・取得する。
【００２６】
このライセンスには，例えばライセンスの購入金額等に応じた使用条件が記述される。ユーザは，この使用条件の記述を許可なしに変更することができない。また，ユーザは，かかるライセンスやコンテンツの暗号化の内容を認識しなくとも，コンテンツとライセンスを対応付けることのみによって，かかるコンテンツを利用することができる。
【００２７】
なお，本実施形態にかかる「コンテンツ」は，例えば，音楽，講演，ラジオ番組等の音声（Ａｕｄｉｏ）コンテンツや，映画，テレビジョン番組，ビデオプログラム，写真，絵画，図表等を構成する静止画若しくは動画からなる映像（Ｖｉｄｅｏ）コンテンツ，この映像コンテンツと音声コンテンツを組み合わせたコンテンツ，電子図書（Ｅ−ｂｏｏｋ），ゲーム，ソフトウェア（ｓｏｆｔ  ｗａｒｅ）などのあらゆるコンテンツを含む。また，「コンテンツデータ」は，上記各種のコンテンツの内容を表す例えばデジタルデータであり，例えば，映像データ，音声データ，文字データ（サブタイトルデータ），電子図書データ，電子ゲームデータ，ソフトウェアのデータなどである。以下の説明では，コンテンツの具体例として，例えば，映画コンテンツ（例えば，映像データ，音声データ，サブタイトルデータからなる。）の例を挙げて説明するが，本発明はかかる例に限定されない。
【００２８】
＜システム構成＞
次に，図１に基づいて，本発明の第１の実施形態にかかるコンテンツ配信システム１００の全体構成について説明する。なお，図１は，本発明の第１の実施形態にかかるコンテンツ利用システム１００の全体構成を概略的に示すブロック図である。
【００２９】
図１に示すように，コンテンツ配信システム１００は，ユーザ端末であるライセンス評価装置１０と，例えば，コンテンツ配信サーバ２０と，ライセンス提供サーバ２５と，これらを相互に接続するネットワーク５と，から構成される。このコンテンツ配信システム１００は，コンテンツ配信サーバ２０から各種のコンテンツＣを，ネットワーク５を介してライセンス評価装置１０に配信し，ライセンス提供サーバ２５からコンテンツＣに対応するライセンスＬを，ネットワーク５を介してライセンス評価装置１０に提供し，ライセンス評価装置１０においてかかるコンテンツＣをライセンスＬに基づいて使用（再生，チェックアウト，リッピング，コピー，ＰＤ（Ｐｏｒｔａｂｌｅ  Ｄｅｖｉｃｅ）等への転送，編集など）するためのシステムである。
【００３０】
ライセンス評価装置１０は，入力装置，記憶装置，演算装置，制御装置および出力装置等を備えたコンピュータ装置で構成される。具体的には，このライセンス評価装置１０は，例えば，パーソナルコンピュータ（ノート型，デスクトップ型を問わない。），ＰＤＡ（Ｐｅｒｓｏｎａｌ  Ｄｉｇｉｔａｌ  Ａｓｓｉｓｔａｎｔ）などや，上記コンピュータ装置を備えた情報家電，家庭用ゲーム機，携帯型コンテンツプレーヤ，携帯電話，ＰＨＳなどで構成される。なお，図１では，１つのライセンス評価装置１０しか図示していないが，かかる例に限定されず，同一ユーザが所有する複数のライセンス評価装置１０や，他のユーザが所有する１又は２以上のライセンス評価装置１０がネットワーク５に接続されてもよい。
【００３１】
このライセンス評価装置１０は，コンテンツ配信サーバ２０，ライセンス提供サーバ２５から，ネットワーク５を介して，コンテンツＣおよびライセンスＬを取得する。また，ライセンス評価装置１０は，取得したライセンスＬと，自身の保有するステータス情報Ｓとを評価して，取得したコンテンツＣを使用の許可／不許可する。この際，ライセンス評価装置１０は，ライセンスＬに含まれる使用条件情報や，ステータス情報Ｓに含まれる使用状態情報を解釈するが，詳細については後述する。
【００３２】
さらに，ライセンス評価装置１０は，上記ライセンスＬ等の評価の結果，コンテンツの使用が許可された場合には，当該コンテンツＣの使用処理を実行する。この意味では，本実施形態にかかるライセンス評価装置１０は，上記ライセンス評価を行う装置としてのみならず，コンテンツを実際に処理するコンテンツ処理装置としても機能する。
【００３３】
コンテンツ配信サーバ２０およびコンテンツ提供配信サーバ２５は，例えば，コンテンツ配信サービスを提供するサービスプロバイダなどが所有するサーバ装置である。これらサーバ２０，２５は，サーバ機能を備えた１又は２以上のコンピュータ装置などで構成される。
【００３４】
このうち，コンテンツ配信サーバ２０は，ユーザが利用可能なコンテンツＣを保存しており，ライセンス評価装置１０等から配信要求を受けたコンテンツＣを，ネットワーク５を介してライセンス評価装置１０に配信する。ここで，コンテンツＣの配信とは，例えば，コンテンツデータのダウンロード，或いはコンテンツデータのストリーミングのいずれであってもよい。また，コンテンツ配信サーバ２０は，配信するコンテンツを，例えば，各種のＭＰＥＧ方式等で圧縮し，暗号化して配信する。
【００３５】
このようにコンテンツ配信サーバ２０から配信されるコンテンツＣは，例えば，著作権保護されたコンテンツであり，具体的には，暗号化されたコンテンツデータに対して，当該コンテンツの属性情報やコンテンツ鍵を含むセキュリティ情報が付加されている。このため，ライセンス評価装置１０は，適正なライセンスを保有していなければ，配信されたコンテンツを利用することができない。
【００３６】
また，ライセンス提供サーバ２５は，コンテンツＣを使用するためのライセンスＬを発行して，ライセンス評価装置１０に提供する。具体的には，ライセンス提供サーバ２５は，コンテンツ配信サーバ２０から配信されるコンテンツＣに対応した各種のライセンスＬを保存しており，ライセンス評価装置１０等の要求に応じてこのライセンスＬを，ネットワーク５を介してライセンス評価装置１０に提供する。ただし，上記ライセンスＬは有料な場合があり，この場合には，ライセンス提供サーバ２５は，付随する課金サーバ（図示せず。）によりライセンスＬの購入に関する課金処理が実行されてから，当該ライセンスＬを提供する。
【００３７】
なお，図１では，２つのサーバ２０，２５を図示しているが，かかる例に限定されず，例えば，コンテンツ配信サーバ２０およびコンテンツ提供配信サーバ２５を１つのサーバ装置で構成してもよいし，或いは，コンテンツ配信に関する機能・用途に応じて，上記以外にも他のサーバを設けてもよい。この他のサーバの例としては，例えば，ライセンスの発行に応じて課金処理を行う課金サーバや，コンテンツを使用するためのアプリケーションや著作権管理用プログラム（ＤＲＭモジュール等）の各種ソフトウェアを提供するソフトウェア提供サーバ，などが挙げられる。なお，これらのソフトウェアは，ソフトウェア提供サーバからのダウンロードだけでなく，光ディスク，半導体メモリ等の記憶媒体を介して，ライセンス評価装置１０に提供されてもよい。
【００３８】
ネットワーク５は，情報処理装置１０とサーバ２０を双方向通信可能に接続する通信回線網である。このネットワーク５は，例えば，インターネット，電話回線網，衛星通信網等の公衆回線網や，ＷＡＮ，ＬＡＮ，ＩＰ−ＶＰＮ等の専用回線網などで構成されており，有線・無線を問わない。さらに，かかるネットワーク５は，ホームネットワーク等の私的ネットワークや，ローカルラインを含んでもよい。
【００３９】
上記のような構成のコンテンツ配信システム１００は，コンテンツＣとライセンスＬを独立に管理し，小容量のデータからなるライセンスＬを売買の単位にすることができる。各ユーザは，自己の所有するライセンス評価装置１０を用いて，所望するコンテンツＣの配信を受け，さらにライセンスＬを取得（購入等）することによって，当該コンテンツＣを適法に使用することができる。
【００４０】
＜ライセンス評価装置＞
次に，図２に基づいて，本実施形態にかかるライセンス評価装置１０の構成について詳細に説明する。図２は，本実施形態にかかるライセンス評価装置１０の構成を概略的に示すブロック図である。
【００４１】
図２に示すように，ライセンス評価装置１０は，例えば，ＣＰＵ（図示せず。）と，メモリ（図示せず。）と，入力部１０２と，出力部１０４と，通信部１０６と，記憶部１１０と，コンテンツ利用部１２０と，著作権管理部１３０とを備える。
【００４２】
図示しないＣＰＵは，演算処理装置および制御装置として機能し，ライセンス評価装置１０内の各部の処理を制御する。また，図示しないメモリは，例えば，ＲＡＭ，ＲＯＭ，キャッシュメモリなどで構成されており，ＣＰＵの処理に関する各種データ，ＣＰＵの動作プログラム等を一時的に記憶する機能を有する。
【００４３】
入力部１０２は，例えば，マウス，キーボード，タッチパネル，ボタン，スイッチ，レバー等の操作装置と，入力信号を生成してＣＰＵ１０２に出力する入力制御回路などから構成されている。ライセンス評価装置１０のユーザは，この入力部１０２を操作することにより，ライセンス評価装置１０に対して各種のデータを入力したり処理動作を指示したりすることができる。
【００４４】
出力部１０４は，例えば，ＣＲＴディスプレイ装置，液晶ディスプレイ（ＬＣＤ）装置，ランプ等の表示装置や，スピーカ等の音声出力装置などで構成される。この出力部１０４は，後述するコンテンツ処理部１２４によって再生されたコンテンツを出力することができる。具体的には，表示装置は再生された映像データ等を表示し，一方，音声出力装置は，再生された音声データを発音することができる。なお，ライセンス評価装置１０が取り扱うコンテンツが，音声データのみからなる場合には表示装置は不要であり，一方，映像データのみからなる場合には音声出力装置は不要である。
【００４５】
通信部１０６は，例えば，通信回線，通信回路，通信デバイス等で構成された通信インタフェースである。この通信部１０６は，他のライセンス評価装置１０やサーバ２０，２５等の外部機器との間で，ネットワーク５を介して，コンテンツＣ，ライセンスＬ，各種制御信号などの各種データを送受信することができる。
【００４６】
記憶部１１０は，例えば，ハードディスクドライブ，フラッシュメモリ等で構成されたデータ記憶用の装置であり，プログラム，コンテンツＣ，ライセンスＬ，ステータス情報などの各種データを記憶する。この記憶部１１０は，本実施形態におけるステータス情報記憶部およびライセンス記憶部として構成されている。この記憶部１１０は，例えば，コンテンツデータベース１１２と，ライセンスデータベース１１４と，ステータス情報データベース１１６とを保存している。
【００４７】
コンテンツデータベース１１２は，上記コンテンツ配信サーバ２０から配信された１又は２以上のコンテンツＣや，他のライセンス評価装置１０から取得した１又は２以上のコンテンツＣを保存するデータベースである。また，ライセンスデータベース１１４は，上記ライセンス提供サーバ２５によって発行された１又は２以上のライセンスＬや，他のライセンス評価装置１０からエクスポートされた１又は２以上のライセンスＬを保存するデータベースである。また，ステータス情報データベース２３０は，ライセンス評価装置１０におけるライセンスＬに基づくコンテンツＣの使用状態を表すステータス情報Ｓを保存するデータベースである。なお，上記ライセンスＬやステータス情報Ｓは，ユーザによる不正な改竄を防止するため，例えば，暗号化されたり，デジタル署名を付加されたりして，安全に記憶されている。
【００４８】
コンテンツ利用部１２０は，コンテンツを利用するための構成要素である。このコンテンツ利用部１２０は，ソフトウェア提供サーバや記憶媒体によって提供されたアプリケーション（再生アプリケーション，配信サービス利用用アプリケーション等）を，ＰＣ等のライセンス評価装置１０にインストールすることによって構成される。
【００４９】
かかるコンテンツ利用部１２０は，例えば，ユーザ入力等に基づいて処理対象のコンテンツを選択するコンテンツ選択部１２２と，コンテンツＣを使用（再生，チェックアウト，コピー，編集等）するコンテンツ処理部１２４と，サーバ２０，２５に対するユーザ登録処理，ライセンスの購入要求処理，コンテンツ配信要求処理等を行う配信サービス利用部（図示せず。）と，他のライセンス評価装置１０にライセンスを移譲等するライセンス処理部（図示せず。）を備える。また，コンテンツ利用部１２０は，次の著作権管理部１３０に対して，コンテンツＣの利用に関する各種指示を行い，コンテンツＣやライセンスＬ等の通信，管理を行う。
【００５０】
著作権管理部１３０は，ライセンスＬおよびステータス情報Ｓ等に基づいて，配信されたコンテンツＣの利用を管理するための構成要素である。この著作権管理部１３０は，ソフトウェア提供サーバや記憶媒体によって提供されたアプリケーション（ＤＲＭモジュール等）を，ＰＣ等のライセンス評価装置１０にインストールすることによって構成される。
【００５１】
かかる著作権管理部１３０は，ライセンスＬを解釈して，ライセンスＬおよびステータス情報Ｓを評価することによって，コンテンツの使用を許可／不許可したり，コンテンツの使用内容に応じて，ステータス情報Ｓを更新したりする。このように，著作権管理部１３０は，コンテンツＣに関連付けられたライセンスＬやステータス情報Ｓに基づいて，コンテンツＣの著作権管理処理を行う。
【００５２】
かかる著作権管理処理を実行すべく，著作権管理部１３０は，具体的には，ライセンス抽出部１３２と，ステータス情報抽出部１３４と，変数分析部１３６と，変数設定部１３８と，条件式判断部１４０と，ドメイン特定部１４２と，ステータス情報更新部１４４とを備える。
【００５３】
ここで，上記構成のコンテンツ利用部１２０および著作権管理部１３０の各部について詳細に説明する。
【００５４】
上記コンテンツ選択部１５２は，使用対象のコンテンツＣを選択する。かかる使用対象のコンテンツＣは，記憶媒体やコンテンツデータベース１１２に予め記憶されているものでもよいし，ネットワーク５を介してコンテンツ配信サーバ２０等からストリーミングされるものでもよい。コンテンツ選択部１５２は，例えば，入力部１０２へのユーザの入力に基づいて，当該ユーザが使用を所望するコンテンツＣを選択する。このため，コンテンツ選択部１５２は，使用対象のコンテンツＣのリストを，出力部１０４に表示させて，ユーザに選択入力させるようにしてもよい。また，コンテンツ選択部１５２は，設定された条件に基づいて，所定のコンテンツＣを自動的に選択するようにしてもよい。
【００５５】
上記ライセンス抽出部１３２は，上記コンテンツ選択部１５２によって選択されたコンテンツＣに対応するライセンスＬを，ライセンスデータベース１１４から抽出する。本実施形態において著作権管理される全てのコンテンツＣには，後述するセキュリティ情報として，それぞれステータスＩＤが付加されている。このステータスＩＤは，ライセンスＬ単位（ステータス情報Ｓ単位）で付与されるＩＤである。ステータスＩＤは，コンテンツＣとライセンスＬとステータス情報Ｓにそれぞれ付加されており，これらコンテンツＣと，ライセンスＬとステータス情報Ｓとを相互に関連付ける機能を有する。ライセンス抽出部１３２は，処理対象のコンテンツＣから，当該コンテンツＣに付加されているステータスＩＤを読み出し，読み出したステータスＩＤに基づいてライセンスデータベース１１４を検索して，当該処理対象のコンテンツＣに対応するライセンスＬを抽出する。
【００５６】
上記ステータス情報抽出部１３４は，ライセンスＬに使用状態に基づく制限がある場合（例えば，コンテンツの再生時間，再生期間，再生回数，コピー可能回数，チェックアウト回数等に関して使用制限を設けている場合など）に，処理対象のコンテンツＣに対応するステータス情報Ｓを，ステータス情報データベース１１６から抽出する。
【００５７】
具体的には，ステータス情報抽出部１３４は，上記コンテンツ選択部１５２によって選択されたコンテンツＣから，当該コンテンツＣに付加されているステータスＩＤを読み出し，読み出したステータスＩＤに基づいてステータス情報データベース１１６を検索して，当該処理対象のコンテンツＣに対応するステータス情報Ｓ（即ち，上記抽出されたライセンスＬに対応するステータス情報Ｓ）を抽出する。一方，ライセンスＬに使用制限が無い場合，例えば，コンテンツＣ購入後は使用制限無く自由にそのコンテンツを利用して良い場合には，必ずしも，ステータス情報抽出部１３４によって，ステータス情報Ｓを抽出する必要はない。
【００５８】
ここで，図３に基づいて，ステータスＩＤを用いた，コンテンツＣとライセンスＬとステータス情報Ｓとの関係の具体例を挙げて説明する。なお，図３は，本実施形態にかかるコンテンツＣに付加されたステータスＩＤと，ライセンスＬおよびステータス情報Ｓとの関係を例示する説明図である。
【００５９】
図３に示すように，コンテンツＣ１，Ｃ２，Ｃ３…には，例えば，それぞれ１つのステータスＩＤが付加されている。このステータスＩＤによって，ライセンスＬが適用されるコンテンツの範囲を特定できる。
【００６０】
図３の例では，コンテンツＣ１と，コンテンツＣ２には，同一のステータスＩＤ「０００１」が付加されており，これにより，コンテンツＣ１とコンテンツＣ２は，同一のライセンスＬおよび同一のステータス情報Ｓによって管理されることになる。一方，コンテンツＣ３には，コンテンツＣ１，Ｃ２とは異なるステータスＩＤ「０００２」が付加されており，これにより，コンテンツＣ１，Ｃ２と，コンテンツＣ３とは，相異なるライセンスＬおよび相異なるステータス情報Ｓによって管理されることになる。なお，ライセンスＬの適用範囲によっては，例えば，コンテンツＣを構成する各トラックに対してステータスＩＤを付加することもできる。
【００６１】
また，ライセンスＬには，当該ライセンスＬに対応するコンテンツＣおよびステータス情報Ｓを特定するために，ヘッダ１９２においてステータスＩＤが付加されている。ライセンス抽出部１３２は，コンテンツＣから読み取ったステータスＩＤと，同一のステータスＩＤが付加されているライセンスＬを検出し，コンテンツＣとライセンスＬとを対応付ける。
【００６２】
同様に，ステータス情報Ｓには，当該ステータス情報Ｓに対応するコンテンツを特定するために，ヘッダ１９４においてステータスＩＤが付加されている。ステータス情報抽出部１３４は，コンテンツＣから読み取ったステータスＩＤと同一のステータスＩＤが付加されているステータス情報Ｓを検出し，コンテンツＣとステータス情報Ｓとを対応付ける。
【００６３】
このように，「ライセンスＬ」：「ステータス情報Ｓ」：「ステータスＩＤ」：「コンテンツ」＝１：１：１：ｎの関係にある。ここで，ｎは自然数である。
【００６４】
図２に戻り，変数分析部１３６は，上記ライセンス抽出部１３２によって抽出されたライセンスＬに含まれる使用条件情報を解析し，この使用条件情報の条件式を構成する１又は２以上の変数の中に，未設定の新規変数が存在するか否かを判断する。この使用条件情報は，ライセンスＬに基づくコンテンツの使用条件を規定する情報であり，１又は２以上の変数で記述された条件式で構成されている。
【００６５】
変数分析部１３６は，抽出されたライセンスＬの使用条件情報を解析し，かかる使用条件情報に含まれる変数のうち，過去にライセンス評価装置１０において取り扱ったことのない未設定の新規変数が存在するか否かを判断する。具体的には，変数分析部１３６は，例えば，ステータス情報Ｓに既に登録済の変数を参照したり，次の変数設定部１３８が既に変数設定した過去のログを参照したりして，変数が新規変数であるか否かを判断する。この判断の結果，新規変数を検出した場合には，変数分析部１３６は，変数設定部１３８に，新規変数が存在する旨と，当該新規変数を出力する。
【００６６】
変数設定部１３８は，ライセンスＬの使用条件情報に含まれる変数属性情報のうち，上記検出された新規変数に対応する変数属性情報に基づいて，当該新規変数を設定する。ライセンスＬの使用条件情報には，上記条件式に加え，条件式を構成する各変数の属性を表す変数属性情報がそれぞれ記述されている。この変数属性情報は，例えば，変数の初期値，変数が可変値または固定値のいずれであるかを表す情報，変数の型情報，グローバル／ローカル指定情報，変数のドメインを指定するドメイン指定情報，変数のデータサイズ情報，変数の種類情報，などが含まれる。かかる変数属性情報は，ライセンスＬの作成時に，ライセンス提供サーバ２５によって，ライセンスＬの使用条件情報内に各変数と関連付けて記述されている。
【００６７】
そこで，変数設定部１３８は，ライセンスＬの使用条件情報を解釈して，上記変数属性情報のうち新規変数についての変数属性情報を読み出し，読み出した変数属性情報に基づいて，新規変数の設定（例えば初期値設定，可変値であるか定数であるかの設定，ステータス情報Ｓに記憶する際のデータサイズの設定，変数の型の設定，変数の取りうる値の範囲の設定，変数の種類の判別，変数のドメインの判定など）を行う。さらに，変数設定部１３８は，例えば，上記のように設定した新規変数の初期値を，当該新規変数が含まれているライセンスＬに対応するステータス情報Ｓ内の所定の領域に，所定のフォーマットで書き込んで登録する。
【００６８】
上記条件式判断部１４０は，上記抽出されたライセンスＬおよび上記抽出されたステータス情報Ｓを解釈して，当該ステータス情報Ｓが表す使用状態が，当該ライセンスＬにおける使用条件情報中の条件式を満たしているかどうかを判断する。
【００６９】
具体的には，図３の例で，上記条件式判断部１４０は，まず，ライセンスＬの使用条件情報から条件式１９６である「再生回数≦再生可能回数」の記述を読み取り，かかる条件式１９６を解釈する。次に，条件式判断部１４０は，この条件式１９６を構成する使用制限２００の変数の値「再生可能回数；４」を使用条件情報から読み出すとともに，ステータス情報Ｓの使用状態２０２である「再生回数；２」を読み出す。さらに，このように読み出した２つの変数を，条件式１９６に代入して，使用制限２００の変数の値「再生可能回数；４」と，使用状態２０２の変数の値「再生回数；２」とを比較する。
【００７０】
条件式判断部１４０は，上記の比較の結果，条件式１９６の条件を満たしていると判断した場合には，上記使用対象のコンテンツの使用処理を許可して，コンテンツ処理部１２４に対してコンテンツ使用に関する許可指示を出力する。一方，上記の比較の結果，条件式１９６の条件を満たしていないと判断した場合には，上記使用対象のコンテンツの使用処理を許可せず，コンテンツ処理部１２４に対してコンテンツ使用に関する不許可指示を出力する。
【００７１】
上記コンテンツ処理部１２４は，条件式判断部１４０によってコンテンツＣの使用が許可された場合（例えば，ステータス情報Ｓによる使用状態が条件式１９６を満たしていると判断された場合や，使用制限が課されない場合など）には，コンテンツＣの使用処理を実行する。ここでコンテンツＣの使用は，例えば，コンテンツの再生，コピー，分割等の編集や，他のライセンス評価装置１０に対するコンテンツのチェックアウト，他のライセンス評価装置１０に対するライセンスの移譲（エクスポート），貸与（ｌｅｎｄ），コピーなどである。
【００７２】
具体的には，コンテンツＣを再生する場合には，コンテンツ処理部１２４は，コンテンツデータベース１１２から使用対象のコンテンツを読み出し，暗号化されている当該コンテンツを復号およびデコードした上で，再生し，出力部１０４に表示させる。これにより，ユーザは，再生表示された映像コンテンツを閲覧できる。
【００７３】
なお，暗号化されたコンテンツＣの復号およびデコード処理は，著作権管理部１３０に設けられた復号部およびデコード部によって行い，コンテンツ利用部１２０のコンテンツ処理部１２４は，複合およびデコードされたコンテンツデータの再生処理（通常再生，早送り再生，巻き戻し再生など）のみを行うようにしてもよい。
【００７４】
ドメイン特定部１４２は，ライセンスＬに含まれる使用条件情報を解析し，使用条件情報の条件式を構成する１又は２以上の変数のドメインを，使用条件情報に含まれるドメイン指定情報に基づいて特定する。ライセンスＬの使用条件情報には，上記変数属性情報として，ドメイン指定情報が含まれている。ドメインは，コンテンツの使用機能の分類（カテゴリ）であり，例えば，ＤＲＭドメイン，再生（ｒｅｎｄｅｒｅｒ）ドメイン，チェックアウト（ｌｃｍ）ドメイン，エキスポート（ｅｘｐｏｒｔ）ドメインなどがあるが，詳細は後述する。ドメイン指定情報は，ライセンスＬやステータス情報Ｓに用いられる変数が，如何なるドメインで使用される変数であるか，即ち，如何なるドメインで有効な変数であるかを表す情報である。かかるドメイン指定情報は，ライセンスＬの作成時に，ライセンス提供サーバ２５によって，ライセンスＬの使用条件情報内に各変数と関連付けて記述されている。
【００７５】
ドメイン特定部１４２には，上記条件式判断部１４０によってコンテンツＣの使用が許可され，当該コンテンツＣの使用に応じてステータス情報Ｓの対応する変数を更新する場合に，上記条件式判断部１４０から更新対象の変数が通知される。すると，ドメイン特定部１４２は，ライセンスＬの変更使用条件情報から当該変更対象の変数に対応するドメイン指定情報を読み出し，この読み出したドメイン指定情報に基づいて，更新対象の変数のドメインを特定し，特定したドメインをステータス情報更新部１４４に出力する。
【００７６】
上記ステータス情報更新部１４４は，上記条件式判断部１４０によってコンテンツＣの使用が許可された場合に，上記コンテンツ処理部１２４による当該コンテンツＣの使用内容に応じてステータス情報Ｓの対応する変数を更新（書き換え）する。このため，ステータス情報更新部１４４は，条件式判断部１４０から入力されたステータスＩＤに基づいて，上記評価されたライセンスＬおよび使用されたコンテンツＣに対応するステータス情報Ｓを選出し，このステータス情報Ｓのうち，上記当該コンテンツＣの使用内容に応じた変数を更新する。かかる更新は，例えば，コンテンツの再生時間，再生期間，再生回数，コピー可能回数，チェックアウト回数等を表す変数を，上記使用内容に応じて，追加，変更，削除することによって，なされる。
【００７７】
さらに，かかるステータス情報Ｓの変数の更新処理を行う場合，ステータス情報更新部１４４は，対応するステータス情報Ｓのうち，上記ドメイン特定部１４２によって特定されたドメイン領域のみをロックし，ロックされたドメイン領域内の変数をコンテンツの使用内容に応じて更新することが特徴的である。
【００７８】
ここで，ステータス情報Ｓのロックとは，ステータス情報Ｓ内の全部または一部の領域の変数に関し，他の更新処理によって更新されないようにガードをかけることによって，当該領域の変数の更新権限を専有することである。ある更新処理に関し，ステータス情報Ｓの所定領域にロックがかけられた場合には，当該更新処理により変数の更新が終了してロックが解除されなければ，他の更新処理に関し，当該所定領域の変数を更新することができない。
【００７９】
このようなロックをかける場合，ステータス情報Ｓ全体をロックしてしまうと，複数の処理を同時並行して行うことができない。そこで，本実施形態では，上記ステータス情報Ｓはドメインごとに領域分割されており，かつ，上記ドメイン判定部４２によって更新対象の変数のドメインを特定できるように構成されているので，ステータス情報更新部１４４は，ステータス情報Ｓのうち，更新対象の変数に対応（即ち，上記コンテンツの使用内容に対応）するドメイン領域のみをロックして，他のドメイン領域はロックしないようにできる。このため，複数のドメインに関するコンテンツの使用処理を，同時並行できるようになる。
【００８０】
以上，ライセンス評価装置１０の各構成要素について説明した。なお，上記コンテンツ利用部１２０の各部および著作権管理部１３０の各部などは，例えば，コンピュータに上記各機能を実行させるプログラム（アプリケーション，ＤＲＭモジュール等のソフトウェア）を，ライセンス評価装置１０にインストールすることによって構成されてもよいし，或いは，上記各機能を有するハードウェアとして構成されてもよい。かかるプログラムも本発明の技術的範囲に含まれる。
【００８１】
また，ユーザが，複数のコンテンツ配信サービスを利用する場合には，例えば，上記コンテンツ利用部１２０および著作権管理部１３０は，ユーザが利用するコンテンツ配信サービスごとに，複数設けられてもよい。
【００８２】
さらに，上記著作権管理部１３０の各部は，各ドメインごとに，複数組設けられても良い。即ち，再生ドメインの著作権管理部（再生モジュール），チェックアウトドメインの著作権管理部（ｌｃｍモジュール）など，各ドメインごとに複数の著作権管理部１３０を設け，かかる複数の著作権管理部１３０が，それぞれ，自己のドメインの機能を実行するために，上記ライセンス抽出部１３２，ステータス情報抽出部１３４，条件式判断部１４０，ステータス情報更新部１４４などを，それぞれ具備するようにしてもよい。
【００８３】
＜コンテンツ＞
次に，図４に基づいて，本実施形態にかかるコンテンツＣについて説明する。なお，図４は，本実施形態にかかるライセンス評価装置１０で使用されるコンテンツＣの構成例を示す説明図である。ここでは，映画コンテンツの例を挙げて説明する。
【００８４】
図４に示すように，１つのコンテンツファイル２１０内に１つの映画コンテンツＣが含まれており，この映画コンテンツＣは，例えば，映像トラック（Ｖｉｄｅｏ  Ｔｒａｃｋ）２３０と，音声トラック（Ａｕｄｉｏ  Ｔｒａｃｋ）２３２と，字幕トラック（Ｓｕｂｔｉｔｌｅ  Ｔｒａｃｋ）２３４と，各トラック２３０，２３２，２３４に対応するセキュリティ情報２４０，２４２，２４４とから構成されている。
【００８５】
映画コンテンツＣに含まれる上記各トラックは，コンテンツの構成要素であり，コンテンツの実際の内容を表すデータである。１つのコンテンツを構成するトラックの数は，コンテンツ毎に異なり，図４の例では，３つのトラック２３０，２３２，２３４から構成されている。このうち，映像トラック２３０は，映画の映像に相当する動画データである映像データを含む。また，音声トラック２３２は，映画の音声に相当する音声データを含む。また，字幕トラック２３４は，映画の字幕データを含む。これらの各トラック２３０，２３２，２３４は，対応するセキュリティ情報２４０，２４２，２４４に含まれるトラック鍵２５０でそれぞれ暗号化されている。
【００８６】
なお，コンテンツＣは，上記映像トラック２３０，音声トラック２３２，字幕トラック２３４のいずれかのみで構成されてもよいし，上記以外にも，他のトラック（静止画トラック，音楽に関する文字情報トラック等）を含んでもよい。
【００８７】
上記セキュリティ情報２４０，２４２，２４４は，コンテンツの著作権管理を行うための情報（ＳＩＮＦ：Ｓｅｃｕｒｉｔｙ  Ｉｎｆｏｒｍａｔｉｏｎ）であり，例えばコンテンツ配信サーバ２０によって，トラック毎に付加される。図４の例では，１つの映画コンテンツＣ内の，３つのトラック２３０，２３２，２３４に対して３つのセキュリティ情報２４０，２４２，２４４がそれぞれ付加されている。なお，本実施形態では，このようにトラック単位でセキュリティ情報が設けられているが，かかる例に限定されず，例えば，トラック毎のライセンス管理を行わない場合には，コンテンツＣ単位でセキュリティ情報を設けても良い。
【００８８】
このセキュリティ情報２４０，２４２，２４４は，例えば，暗号化されたトラック鍵２５０と，属性情報２６０と，署名２７０とからなる。
【００８９】
上記トラック鍵２５０は，上記暗号化された各トラックを解読（デクリプト；復号）するための鍵である。セキュリティ情報２４０のトラック鍵２５０は，映像トラック２３０を解読するための鍵であり，セキュリティ情報２４２のトラック鍵２５０は，音声トラック２３２を解読するための鍵であり，セキュリティ情報２４４のトラック鍵２５０は，字幕トラック２３４を解読するための鍵である。また，このようなトラック鍵２５０自体も，ライセンス鍵で暗号化されている。従って，適正なライセンスＬがなければ，トラック鍵２５０を解読することができず，この結果，上記トラックのコンテンツデータを解読して再生等することができない。
【００９０】
上記属性情報（Ａｔｔｒｉｂｕｔｅ）２６０は，コンテンツＣの属性を表す情報であり，例えば，後述する属性コード（変数名）と，コンテンツ属性ＩＤ（変数）とからなる。このコンテンツ属性ＩＤには，上述したステータスＩＤが含まれる。コンテンツＣの属性は，コンテンツＣの著作権管理面での性質，特徴（例えば，ステータス，ファイル，トラック等）のみならず，コンテンツＣの内容面での性質，特徴（例えば，コンテンツの監督，主演俳優等）なども含む。本実施形態では，属性情報２６０は，例えば，コンテンツを構成するトラック毎に定められ，コンテンツＣを構成する各トラックの属性を表している。このため，同一の映画コンテンツＣ内であっても，異なるトラックに対応する属性情報２６０は，異なる情報となる場合がある。このようにコンテンツＣに付加された属性情報２６０は，当該コンテンツＣとライセンスＬとのマッチングをとるために利用される。  
【００９１】
上記署名２７０は，ライセンス評価装置１０や，ライセンス評価装置１０にネットワーク５を介して接続されたコンテンツ配信サーバ２０等によって付加されたデジタル署名であり，セキュリティ情報全体の改竄を防止する機能を有する。この署名２７０は，例えば，デジタル署名の正当性を検証するための証明書をも含む。
【００９２】
次に，図５に基づいて，本実施形態にかかるコンテンツＣの属性情報２６０について詳細に説明する。なお，図５は，本実施形態にかかるコンテンツＣの属性情報２６０の構成例を概念的に示す説明図である。
【００９３】
図５に示すように，属性情報２６０は，属性コード（変数名）２８０と，かかる属性コードに対応するコンテンツ属性ＩＤ（変数）２９０との組み合わせで構成されている。
【００９４】
上記属性コード２８０は，コンテンツの属性の種類を識別するための識別コードであり，上記ライセンスＬやステータス情報Ｓで用いられる変数の変数名に相当する。この属性コード２８０は，属性情報２６０が付加されるコンテンツの異同にかかわらず，例えば，著作権管理システム内で，コンテンツの属性の種類毎に共通に定められたコードである。この属性コードは，例えば「Ａ０００」等の４桁の文字列で構成される。本実施形態では，例えば，「Ａ０００」〜「Ａ９９９」までの１０００個の属性コードを設定可能であり，これにより１０００種類の属性を定義することができる。
【００９５】
なお，本実施形態では，使用条件や使用状態を表す変数に関し，Ｆｏｕｒ  Ｃｈａｒａｃｔｅｒ  Ｃｏｄｅなる４文字を変数名として記述している。この４文字の変数名としては，例えば，上記「Ａ０００」〜「Ａ９９９」や，後述する「ｕｍｃｃ」，「ｕｒｅｆ」などがある。
【００９６】
上記コンテンツ属性ＩＤ２９０は，コンテンツの属性を特定するＩＤであり，上記ライセンスＬやステータス情報Ｓで用いられる変数に相当する。このコンテンツ属性ＩＤ２９０は，コンテンツの属性毎に固有な文字列（図５の例では１４桁の文字列）で構成されており，当該コンテンツ属性ＩＤ２９０が付加されたコンテンツの属性を一意に特定する。このコンテンツ属性ＩＤ２９０は，コンテンツの属性の種類（上記属性コード）毎に複数の種類が設定されている。以下に，各コンテンツ属性ＩＤについてそれぞれ説明する。
【００９７】
（ステータスＩＤ）
属性コードが「Ａ０００」のコンテンツ属性ＩＤは，上記ステータスＩＤである。このステータスＩＤは，ライセンスＬ単位（即ち，ステータス情報Ｓ単位）で固有に付与されるＩＤであり，このステータスＩＤによって，ライセンスＬが適用されるコンテンツＣまたはトラックの範囲を特定することができる。このライセンスＬが適用されるコンテンツまたはトラックは，ライセンスＬを用いた著作権管理の対象として意味のあるデータの集合である。このステータスＩＤをコンテンツＣに対して付加することにより，当該コンテンツＣを著作権管理するためのライセンスＬおよびステータス情報Ｓを特定できる。
【００９８】
ここで，コンテンツを管理する管理者（サービスプロバイダ）は，同一のステータスＩＤを付加するコンテンツＣまたはトラックの範囲を自由に設定でき，これにより，１つのライセンスＬおよび１つのステータス情報ＳによるコンテンツＣまたはトラックの管理範囲を，多様な形態で自由に決定できる。
【００９９】
例えば，個々のコンテンツＣ単位若しくは個々のトラック単位でステータスＩＤを付加するようにしてもよい。これにより，個々のコンテンツＣ若しくはトラックを，１つのライセンスＬおよび１つのステータス情報Ｓで個別に管理できる。また，複数のコンテンツＣ単位若しくは複数のトラック単位でステータスＩＤを付加するようにしても良い。これにより，複数のコンテンツＣ若しくはトラックを，１つのライセンスＬおよび１つのステータス情報Ｓでまとめて管理できる。具体的には，所定の関連（例えば，同一の映画シリーズ等）を有する複数のコンテンツＣ１，Ｃ２，Ｃ３，…に対して同一のステータスＩＤを付加してもよい。この場合には，関連する複数のコンテンツ（コンテンツグループ）に対して，同一のライセンスＬおよびステータス情報Ｓが適用されることになる。
【０１００】
（トラックＩＤ）
属性コードが例えば「Ａ００１」のコンテンツ属性ＩＤは，トラックＩＤである。このトラックＩＤは，上記コンテンツを構成するトラックＴ単位で固有に付与されるＩＤである。例えば，図４の例では，映像トラック２３０と音声トラック２３２とでは，異なるトラックＩＤが付与される。このようなトラックＩＤをコンテンツＣに対して付加することにより，システム内で流通するコンテンツＣのトラックを識別できるようになる。また，本実施形態では，セキュリティ情報とトラックとが１対１で設定されているので，このトラックＩＤによって，コンテンツＣに付加されているセキュリティ情報を識別することもできる。
【０１０１】
（ファイルＩＤ）
属性コードが例えば「Ａ０２９」のコンテンツ属性ＩＤは，ファイルＩＤである。このトラックＩＤは，１又は２以上のコンテンツを含むコンテンツファイル単位で固有に付与されるＩＤである。例えば，図４の例では，１つの映画コンテンツＣを含むコンテンツファイル２１０に対し，１つのファイルＩＤが付与される。このようなファイルＩＤをコンテンツＣに対して付加することにより，システム内で流通するコンテンツファイルを識別できるようになる。
【０１０２】
（グループＩＤ）
属性コードが例えば「Ａ２５７」〜「Ａ２６４」の８つのコンテンツ属性ＩＤは，グループＩＤである。このグループＩＤは，複数のコンテンツＣで共通する属性である共通属性単位で固有に付与されるＩＤである。このグループＩＤは，複数種類の共通属性に対応して複数種類設定される。このグループＩＤが表す共通属性は，コンテンツ配信サーバ２０等の管理者（サービスプロバイダ）が自由に設定することができる。この共通属性の具体例としてはは，例えば，コンテンツの提供元のサービスプロバイダ，コンテンツの監督コンテンツの主演男優や主演女優，コンテンツのジャンルや作成場所などがある。
【０１０３】
ライセンス評価装置１０がこのようなコンテンツＣを再生する場合，まず，指定された映画コンテンツＣのトラック２４０，２４２，２４４に対応したセキュリティ情報２４０，２４２，２４４を読み込み，その中の属性情報２６０からステータスＩＤを抽出する。次いで，そのステータスＩＤに関連付けられたライセンスＬを参照して再生条件を解釈し，さらに必要に応じてステータス情報Ｓをも参照し，その内容がライセンスＬの再生条件を満たすかどうかを評価する。かかるライセンスＬの評価の結果，コンテンツＣの再生が許可されると，セキュリティ情報２４０，２４２，２４４内にあるトラック鍵２５０によって，指定されたトラック２４０，２４２，２４４のコンテンツデータが復号され，コンテンツＣが再生される。
【０１０４】
＜ライセンス＞
次に，図６に基づいて，本実施形態にかかるライセンスＬの構成について説明する。なお，図６は，本実施形態におけるライセンスＬの構成例を示した説明図である。
【０１０５】
ユーザは，ライセンス評価装置１０を用いてコンテンツＣを使用しようと試みる場合，上述したコンテンツＣに加え，ライセンス提供サーバ２５からライセンスＬを予め取得しておかなければならない。
【０１０６】
図６に示すように，ライセンスＬは，例えば，上記ヘッダ１９２と，バージョン３１０と，プロファイル３１２と，作成日時３１４と，有効期限３１６と，使用条件情報ＵＲ（Ｕｓａｇｅ  Ｒｕｌｅ）と，使用条件情報の電子署名３１８と，電子署名３２０と，証明書３２２とを含む。
【０１０７】
上記ヘッダ１９２におけるステータスＩＤは，上述したように各コンテンツＣとライセンスＬとステータス情報Ｓとを関連付ける。従って，ライセンス抽出部１３２は，コンテンツＣから読み取ったステータスＩＤと，ライセンスデータベース１１４内のライセンスＬのヘッダに記述されたステータスＩＤとを比較することによって，使用対象のコンテンツＣに対応するコンテンツＣを抽出できる。
【０１０８】
上記バージョン３１０は，ライセンスＬのバージョンを表し，メジャーバージョンとマイナーバージョンを順次並べて記載する。上記プロファイル３１２は，ライセンスＬの記述方法に対する制限を規定する情報であり，整数値で記載される。上記作成日時３１４は，当該ライセンスＬが設定された日時，即ち，ライセンスＬの作成日時が記載されている。
【０１０９】
上記有効期限３１６は，当該ライセンスＬの有効期限を示し，通常西暦による年，月，日，時刻の記載が行われる。有効期限を無制限にする場合，その旨の記号を添付するか，有効期限を９９９９年１２月３１日２３時５９分５９秒に設定する。
【０１１０】
上記使用条件情報ＵＲは，ライセンスＬに基づいてコンテンツＣを使用するための使用条件を規定する条件式が記述される。この使用条件は，例えば，ステータスＩＤごとの，コンテンツＣの再生可能時間，再生有効期間，再生可能回数，コピー可能回数，チェックアウト可能回数および記憶媒体への記録可否，ライセンスＬの移譲やコピーの可否とその可能回数，ステータス情報Ｓ更新義務の有無等を含んでいる。また，使用条件情報ＵＲには，上述したように，条件式を構成する変数を定義する変数属性情報（変数の初期値，ドメイン指定情報等）が含まれている。また，この変数属性情報には，条件式で用いられ各種の定数や，ライセンス評価装置１０若しくはユーザ単位で固有に付されるリーフＩＤなども含まれる。かかる使用条件情報ＵＲの詳細については後述する。
【０１１１】
上記使用条件情報の電子署名３１８は，使用条件情報ＵＲに対応する電子署名であり，使用条件情報ＵＲの改竄を防止する機能を有する。この電子署名３１８は，例えば，電子署名３１８の正当性を検証するための証明書をも含む。
【０１１２】
上記電子署名３２０は，ライセンスＬ全体に対応する電子著名であり，ライセンスＬの改竄を防止する。上記証明書３２２は，ライセンス提供サーバ２５の公開鍵を含む証明書である。
【０１１３】
＜ドメイン＞
次に，本実施形態にかかるドメインについて詳細に説明する。
【０１１４】
ドメインは，上記のように，ライセンス評価装置１０におけるコンテンツの使用機能の分類（カテゴリ）である。本実施形態では，例えば，以下のようなドメインが設定されている。
【０１１５】
（ｄｒｍドメイン；著作権管理ドメイン）
ｄｒｍドメインは，全ての使用形態を表すカテゴリである。このｄｒｍドメインの機能は，上述の著作権管理部１３０（ＤＲＭモジュール）全体に対応する。かかるｄｒｍドメインは，コンテンツを使用するユーザ（上記リーフＩＤ等）を指定する変数などを取り扱う。
【０１１６】
（ｒｅｎｄｅｒｅｒドメイン；再生ドメイン）
ｒｅｎｄｅｒｅｒドメインは，コンテンツの再生，表示等に関する使用形態のカテゴリである。このｒｅｎｄｅｒｅｒドメインは，再生モジュールに対応し，再生可能回数，再生可能期間などの変数を取り扱う。
【０１１７】
（ｌｃｍドメイン；チェックアウトドメイン）
ｌｃｍドメインは，ＰＤ等の他のライセンス評価装置１０に対するコンテンツのチェックアウト／チェックイン（送受信）等に関する使用形態のカテゴリである。このｌｃｍドメインは，「ｕｍｃｃ」チェックアウトカウント（Ｃｈｅｃｋ  Ｏｕｔ  Ｃｏｕｎｔ）などの変数を取り扱う。
【０１１８】
（ｅｘｐｏｒｔドメイン；ライセンス移譲ドメイン）
ｅｘｐｏｒｔドメインは，例えばホームネットワーク内等におけるライセンス評価装置１０間でのライセンスＬの移譲（エクスポート）に関する使用形態のカテゴリである。このｅｘｐｏｒｔドメインは，「ｕｍｘｃ」エキスポートカウント（Ｅｘｐｏｒｔ  Ｃｏｕｎｔ）などの変数を取り扱う。
【０１１９】
（ｄｉｖｉｄｅドメイン；分割ドメイン）
ｄｉｖｉｄｅドメインは，コンテンツの分割に関する使用形態のカテゴリである。
【０１２０】
（ｒｉｐｐｅｒドメイン；リッピングドメイン）
ｒｉｐｐｅｒドメインは，ＣＤ等の記憶媒体からのコンテンツの読み出し（リッピング）に関する利用形態のカテゴリである。
【０１２１】
（ｂｕｒｎｅｒドメイン；バーナードメイン）
ｂｕｒｎｅｒドメインは，ＣＤ−Ｒ等の記憶媒体へのコンテンツの記録に関する利用形態のカテゴリである。
【０１２２】
以上のように，コンテンツＣの使用やライセンスＬの処理に関する機能を，ドメインごとに分割することにより，著作権管理処理の処理効率を向上し，処理内容を明確化することができる。また，コンテンツ配信システム１００における，コンテンツＣの使用処理機能若しくはライセンスＬの処理機能の追加，変更等が容易になる。
【０１２３】
＜ステータス情報＞
次に，図７に基づいて，本実施形態にかかるステータス情報Ｓの構成について説明する。なお，図７は，本実施形態にかかるステータス情報Ｓの構成例を示した説明図である。
【０１２４】
ステータス情報Ｓは，ライセンスＬに基づくコンテンツＣの使用状態を表す情報である。ただし，ライセンスＬは，固定された使用条件を規定しているのに対して，ステータス情報Ｓは，コンテンツＣの使用に応じて使用状態が更新される。そして，次回のコンテンツＣの使用時には，かかる更新後の使用状態が参照され，ライセンスＬと再度比較することによって，コンテンツＣの使用の可否が決定される。
【０１２５】
このステータス情報Ｓは，各ライセンス評価装置１０においてライセンスＬごとに生成される。従って，ライセンス評価装置１０が異なれば，異なるステータス情報Ｓが生成され，ライセンスＬが異なれば，異なるステータス情報Ｓが生成される。よって，１つのライセンス評価装置１０が，複数のライセンスＬを取得してコンテンツＣを使用する場合には，各ライセンスＬに対応するステータス情報Ｓがそれぞれ生成される。図７は，ライセンス評価装置１０のステータス情報データベース１１６に保存されている複数のステータス情報Ｓのうち，あるライセンスＬに対応する１つのステータス情報Ｓを示している。
【０１２６】
図７に示すように，ステータス情報Ｓは，ドメインごとに複数の領域に区分されている。具体的には，図７の例では，ステータス情報Ｓは，例えば，ｄｒｍドメイン領域４１０と，ｌｃｍドメイン領域４２０と，ｒｅｎｄｅｒｅｒドメイン領域４３０と，ｅｘｐｏｒｔドメイン領域４４０などの各ドメイン領域に区分されている。さらに，各ドメイン領域４１０〜４２０は，例えば，固定値（定数）である変数を記憶する固定値領域４１２，４２２，４３２，４４２（図７中（ｒ）で示される領域）と，可変値である変数を記憶する可変値領域４１４，４２４，４３４，４４４（図７中（ｒｗ）で示される領域）と，に区分されている。
【０１２７】
具体的には，ｄｒｍドメイン領域４１０の固定値領域４１２には，変数「ｕｒｅｆ」が記憶されている。この変数「ｕｒｅｆ」は，著作権管理部１２０が安全に管理している端末ＩＤ（リーフＩＤ）であり，固定値である。一方，ｄｒｍドメイン領域４１０の可変値領域４１４には，変数「ｕｌｔｃ」と変数「ｕｓｓｔ」が記憶されている。変数「ｕｌｔｃ」は，ライセンス評価装置１０が最後にサーバ２０，２５にアクセスした日時（日図家と時刻の双方を含む。以下同じ。）を表し，可変値である。変数「ｕｓｓｔ」は，著作権管理部１３０が起動した日時を表し，可変値である。
【０１２８】
また，ｌｃｍドメイン領域４２０の固定値領域４２２には，変数「ｕｅｆｕ」が記憶されている。この変数「ｕｅｆｕ」は，ｌｃｍドメインで用いられる場合には，最初にコンテンツＣをチェックアウトした日時を表し，固定値である。一方，ｌｃｍドメイン領域４２０の可変値領域４２４には，変数「ｕｍｃｃ」が記憶されている。この変数「ｕｍｃｃ」は，チェックアウトカウントであり，ライセンス評価装置１０が過去にコンテンツをチェックアウトした回数を表し，可変値である。
【０１２９】
また，ｒｅｎｄｅｒｅｒドメイン領域４３０の固定値領域４３２には，変数「ｕｅｆｕ」と変数「ｕｍｄｐ」が記憶されている。この変数「ｕｅｆｕ」は，ｒｅｎｄｅｒｅｒドメインで用いられる場合には，最初にコンテンツＣを再生した日時を表し，固定値である。変数「ｕｍｄｐ」は，再生可能な期限（再生可能期間の終了日時）を表し，固定値である。一方，ｒｅｎｄｅｒｅｒドメイン領域４３０の可変値領域４３４には，変数「ｕｍｐｃ」が記憶されている。この変数「ｕｍｐｃ」は，プレイカウントであり，ライセンス評価装置１０が過去にコンテンツを再生した回数を表し，可変値である。
【０１３０】
また，ｅｘｐｏｒｔドメイン領域４４０の固定値領域４４２には，変数「ｕｅｆｕ」が記憶されている。この変数「ｕｅｆｕ」は，ｅｘｐｏｒｔドメインで用いられる場合には，最初にライセンスＬを移譲（エクスポート）した日時を表し，固定値である。一方，ｅｘｐｏｒｔドメイン領域４４０の可変値領域４４４には，変数「ｕｍｘｃ」と変数「ｕｍｃｃ」が記憶されている。この変数「ｕｍｘｃ」は，エキスポートカウントであり，ライセンス評価装置１０が過去にライセンスＬを移譲した回数を表し，可変値である。変数「ｕｍｃｃ」は，ｅｘｐｏｒｔドメインで用いられる場合には，ライセンスＬの移譲先のライセンス評価装置１０が過去にコンテンツをチェックアウトした回数を表し，可変値である。
【０１３１】
以上のように，ステータス情報Ｓには，各種の変数が，それぞれに対応する各ドメイン領域内に，可変値と固定値とに区分されて記憶されている。このようにステータス情報Ｓをドメインごとに領域区分することにより，各ドメインに関する処理を行いステータス情報Ｓを更新する際に，ステータス情報Ｓ全体をロックするのではなく，対応するドメイン領域のみをロックして，変数を更新すれば済む。例えば，ｌｃｍモジュールがｌｃｍドメインに属するチェックアウト処理を行った場合には，ステータス情報Ｓのｌｃｍドメイン領域４２０のみをロックして，変数「ｕｍｃｃ」を１つ増加させればよい。このようにすることで，複数のドメインの処理を同時並行して実行できるようになるので，処理効率が向上する。
【０１３２】
さらに，同一ドメイン領域内でも，固定値領域４１２，４２２，４３２，４４２と，可変値領域４１４，４２４，４３４，４４４を区分することによって，変数の更新時には，可変値領域４１４，４２４，４３４，４４４のみをロックすればよい。これは，更新される変数は，可変値をとる変数に限られるからである。ただし，固定値をとる変数であっても，ステータス情報Ｓに新規登録する場合には，固定値領域４１２，４２２，４３２，４４２をロックしてもよい。
【０１３３】
なお，ステータス情報Ｓに記憶される変数は，上記例のみに限定されず，後述する各種の変数なども記憶可能である。また，使用状態に関する変数がライセンスＬにあって，ステータス情報Ｓにない場合は，変数設定部１３４によってステータス情報Ｓに新たに上記変数が追加される。また，上記では，１つのステータス情報Ｓのファイル内の記憶領域をドメインごとに領域分割したが，かかる例に限定されず，１つのステータス情報Ｓをドメインごとにファイル分割して，各ドメインの変数をファイル区分して管理することも可能である。
【０１３４】
＜ライセンスの使用条件情報＞
次に，ライセンスＬの使用条件情報ＵＲについて詳細に説明する。
【０１３５】
まず，図８に基づいて，本実施形態にかかるライセンスＬの使用条件情報ＵＲの記述ルール例について説明する。なお，図８は，本実施形態にかかるライセンスＬの使用条件情報ＵＲの記述ルール例を示す説明図である。
【０１３６】
図８に示すように，１つの使用条件情報ＵＲ（Ｕｓａｇｅ  Ｒｕｌｅ）は，先頭に記述するｄｏｍａｉｎ＿ｉｄによってそれを適用するドメインを規定する。さらに，それに続く「’｛’…’｝’」内に，各種ルールが規定され，その枠内では，ルールセクション，ｄｅｆｉｎｉｔｉｏｎセクション（定義セクション），およびｏｖｅｒｈｅａｄ  ｐａｒｔセクション（オーバーヘッドパートセクション）の３つのセクションが定義される。
【０１３７】
上記ルールセクションは，上記枠内において複数の条件式（ｄｏｍａｉｎ＿ｒｕｌｅ）を記述することが可能である。定義セクションは，ルールセクションに続いて記述され，変数の定義を行う箇所であり，ここに上記変数属性情報の一部が記載される。オーバーヘッドパートセクションセクションは，定義セクションに続く部分であり，各ドメイン毎の独自のルールを記述する部分である。
【０１３８】
ｄｏｍａｉｎ＿ｉｄは，ドメインを示す名称であり，「ｄｒｍ」，「ｒｅｎｄｅｒｅｒ」，「ｌｃｍ」，「ｄｉｖｉｄ」，「ｅｘｐｏｒｔ」，「ｒｉｐｐｅｒ」，「ｂｕｒｎｅｒ」などの文字列である。
【０１３９】
ルールセクションに記述される条件式は，各ドメインの使用条件および使用状態の変数や定数などを参照するための変数名（Ｆｏｕｒ  Ｃｈａｒａｃｔｅｒ  Ｃｏｄｅ（４ＣＣ））に対して，比較演算を施したものである。
【０１４０】
利用できる演算子には，例えば，単項演算子として「！」，２項演算子として「＝」，「＜」，「＞」，「＜＝」，「＞＝」，「ｉｎ」，「ａｎｄ」，「ｏｒ」などを利用できる。上記２項演算子の演算優先順位は，上記の並び順では，前にある演算子ほど高いことになる。どの演算子も左結合である。
【０１４１】
上記定義セクションは，各種変数の定義する部分であり，「変数名（４ＣＣ）＝値；」の形式で変数に具体値を定義する。
【０１４２】
以下に，図９〜図１４に基づいて，上記のような使用条件情報ＵＲの基本的な記述ルールに基づいて記述された使用条件情報ＵＲの記述の具体例について説明する。なお，図９〜図１４は，本実施形態にかかる使用条件情報ＵＲの具体的な記述例を示す説明図である。
【０１４３】
まず，図９に示す使用条件情報ＵＲの記述例では，ｄｒｍドメインと，ｌｃｍドメインと，ｅｘｐｏｒｔドメインに関して使用条件が記述されている。
【０１４４】
まず，ｄｒｍドメインの条件式として，「’ｉｖａｒ．ｃｏｍ．ｒｌｅｆ’＝’ｇｖａｒ．ｓｙｓ．ｕｒｅｆ’」が記述されている。変数「ｉｖａｒ．ｃｏｍ．ｒｌｅｆ」には，定義セクションの記載に基づき，ライセンスによって利用を許可された端末のＩＤである所定値「／０７ｆｆ０００００００００００１」が代入される。変数「ｒｌｅｆ」は，ライセンスＬを使用できる端末ＩＤ（リーフＩＤ）を表し上述したリーフＩＤを示し，変数「ｕｒｅｆ」は，ライセンス評価装置１０のＤ著作権管理部１３０が保持している端末ＩＤ（リーフＩＤ）を示す。かかる条件式は，ライセンス評価装置１０の端末ＩＤが，「／０７ｆｆ０００００００００００１」であれば，ｄｒｍドメインの使用条件を満たすことを規定している。
【０１４５】
ここで，著作権管理部１３０は，例えばステータス情報Ｓ等において管理している端末ＩＤ「ｕｒｅｆ」を読み込み，条件式判断部１４０は条件式判断部１４０でその値が一致しているかどうかを判断し，一致していれば，かかるｄｒｍドメインの条件式判断を終了し，他のドメインの条件式判断に移行する。このように，ライセンス評価装置１０は，ライセンスＬの使用条件情報ＵＲから条件式を順次読み込み，読み込んだ順に条件式を評価する。
【０１４６】
また，ｌｃｍドメインの条件式として，「’ｇｖａｒ．ｓｙｓ．ｕｍｃｃ’＜＝’ｉｖａｒ．ｃｏｍ．ｒｅｃｃ’」が記述されている。「ｇｖａｒ．ｓｙｓ．ｕｍｃｃ」は，既に行ったチェックアウト回数であり，ステータス情報Ｓの上記ｌｃｍドメイン領域４２０に記述されている。また，「ｉｖａｒ．ｃｏｍ．ｒｅｃｃ」は，チェックアウト可能回数であり，使用条件情報ＵＲの定義セクションで「３」回であると規定されている。よって，この条件式は，チェックアウト回数が３回以下であれば，ｌｃｍドメインの使用条件を満たすことを規定している。
【０１４７】
さらに，ｅｘｐｏｒｔドメインの条件式として，「’ｇｖａｒ．ｅｘｐｔ．ｕｅｆｕ’＋’ｉｖａｒ．ｅｘｐｔ．ｒｘｐ１’＞＝’ｇｖａｒ．ｓｙｓ．ｕｃｄｔ’」が記述されている。「ｇｖａｒ．ｅｘｐｔ．ｕｅｆｕ」は，最初にライセンスＬを移譲（エクスポート）した日時を表し，ステータス情報Ｓの上記ｅｘｐｏｒｔドメイン領域４４０の固定値領域４４２に記憶されている。「ｉｖａｒ．ｅｘｐｔ．ｒｘｐ１」は，移譲可能期間を表し，使用条件情報ＵＲの定義セクションで「＄００００／００／７／００：００：００（７日間）」であると規定されている。また，「ｇｖａｒ．ｓｙｓ．ｕｃｄｔ」は，現在時刻であり，ライセンス評価装置１０が具備する信頼のおける計時装置から，正確な現在時刻が取得される。よって，この条件式は，ライセンスＬを最初に他のライセンス評価装置１０に移譲してから，７日間以内であれば，ｅｘｐｏｒｔドメインの使用条件を満たすことを規定している。
【０１４８】
以上，図９に示す使用条件情報ＵＲの使用条件について説明した。ところで，図９の使用条件情報ＵＲには，上記条件式を構成する各種変数を定義するための上記変数属性情報が含まれている。以下に，この変数属性情報の例として，（１）変数の初期値，（２）変数が可変値または固定値のいずれであるかを表す情報，（３）変数の型情報，（４）変数のグローバル／ローカル指定情報，（５）変数のドメイン指定情報について説明する。
【０１４９】
（１．変数の初期値）
図９の使用条件情報ＵＲ内には，可変値をとる変数の初期値が，定義されている。例えば，ｌｃｍドメインの定義セクションにおいて，「’ｇｖａｒ．ｓｙｓ．ｕｍｃｃ’＝０」と記述されている。これによって，チェックアウト回数を示す変数「ｕｍｃｃ」の初期値が「０」であると定義されている。また，別の例を挙げれば，ｅｘｐｏｒｔドメインの定義セクションにおいて，「’ｇｖａｒ．ｅｘｐｔ．ｕｅｆｕ’＝ｉｎ＿ｓｙｓｔｅｍ」と定義されている。これは，最初にライセンスＬを移譲した日時を示す変数「ｕｅｆｕ」の初期値は，「ｉｎ＿ｓｙｓｔｅｍ」，即ち，ライセンス評価装置１０で最初にライセンスＬを移譲した日時に設定するよう定義されている。
【０１５０】
このように，変数の初期値を明示的に指定することによって，新規変数が使用条件情報ＵＲに追加されていたとしても，ライセンス評価装置１０の変数設定部１３８は，当該使用条件情報ＵＲに記述されている初期値を，新規変数の初期値として設定可能であるので，著作権管理部１３０の装置若しくはプログラムを設計変更して，新規変数の初期値を粗けじめ設定しておく必要がなくなる。
【０１５１】
（２．変数が可変値または固定値のいずれであるかを表す情報）
図９の使用条件情報ＵＲには，上記変数が可変値または固定値のいずれであるかを表す情報として，「（ｒ）」および「（ｒｗ）」が，各変数と関連付けて記述されている。例えば，ｌｃｍドメインの定義セクションにおいて，「’ｇｖａｒ．ｓｙｓ．ｕｍｃｃ’＝０；（ｒｗ）」と記述されており，変数「ｕｍｃｃ」が，リード（ｒｅａｄ）及びライト（ｗｒｉｔｅ）される値，即ち，可変値（ｖａｒｉａｂｌｅｓ）であることが定義されている。また，「’ｉｖａｒ．ｃｏｍ．ｒｅｃｃ’＝０；（ｒ）」と記述されており，変数「ｒｅｃｃ」が，リードオンリーの値，即ち，固定値（Ｃｏｎｓｔａｎｔ；定数）であることが定義されている。
【０１５２】
このように，使用条件情報ＵＲ内に，変数が可変値か固定値かを記述しておくことにより，新規変数を好適に設定して，ステータス情報Ｓに登録できる。
【０１５３】
（３．変数の型情報）
図９の使用条件情報ＵＲには，上記変数の型を表す情報が，各変数と関連付けて記述されている。例えば，ｄｒｍドメインの定義セクションにおいて，「’ｇｖａｒ．ｓｙｓ．ｕｒｅｆ’＝ｉｍ＿ｓｙｓｔｅｍ；（ｒ）ｕｎｓｉｇｎｅｄ  ｌｏｎｇ」と記述されており，変数「ｕｒｅｆ」の型が，「ｕｎｓｉｇｎｅｄ  ｌｏｎｇ」であり，当該変数「ｕｒｅｆ」が，例えば８バイト（ｌｏｎｇ）の正の整数（ｕｎｓｉｇｎｅｄ）であることが定義されている。また，ｌｃｍドメインの定義セクションにおいて，「’ｇｖａｒ．ｓｙｓ．ｕｍｃｃ’＝０；（ｒｗ）ｕｎｓｉｇｎｅｄ  ｃｈａｒ」と記述されており，変数「ｕｍｃｃ」の型が，「ｕｎｓｉｇｎｅｄ  ｃｈａｒ」であり，当該変数「ｕｍｃｃ」が，例えば２バイト（ｃｈａｒ）の正の整数（ｕｎｓｉｇｎｅｄ）であることが定義されている。また，ｅｘｐｏｒｔドメインの定義セクションにおいて，「’ｇｖａｒ．ｅｘｐｔ．ｕｅｆｕ’＝ｉｎ＿ｓｙｓｔｅｍ；（ｒｗ）ｔｉｍｅ＿ｔ」と記述されており，変数「ｕｅｆｕ」の型が，「ｔｉｍｅ＿ｔ」であり，当該変数「ｕｅｆｕ」が，例えば日時情報（ｔｉｍｅ＿ｔ）であることが定義されている。なお，図９には図示しないが，変数が例えば４バイト（ｉｎｔ）の正の整数（ｕｎｓｉｇｎｅｄ）であることを定義するために，変数の初期値指定の後に，「ｕｎｓｉｇｎｅｄ  ｉｎｔ」と記述してもよい。
【０１５４】
このように変数の型を定義することにより，ライセンス評価装置１０は，変数の取りうる値の範囲，変数の性質，変数をステータス情報Ｓに記憶するために必要な容量（変数のデータサイズ），変数の記憶方式などを理解して，変数を好適に設定，登録できる。
【０１５５】
（４．変数のグローバル／ローカル指定情報）
図９の使用条件情報ＵＲには，変数がグローバル（ｇｌｏｂａｌ）変数であるかローカル（ｌｏｃａｌ）変数であるかを指定する情報が，各変数と関連付けて記述されている。グローバル変数は，複数のコンテンツＣに対して共通に使用される変数である。一方，ローカル変数は，特定の１のコンテンツＣに対してのみ使用される変数である。
【０１５６】
例えば，ｄｒｍドメインのルールセクションおよび定義セクションにおいて，変数「ｕｒｅｆ」が「’ｇｖａｒ．ｓｙｓ．ｕｒｅｆ’」と記述されており，このうち，グローバル指定情報である「ｇｖａｒ．」によって変数「ｕｒｅｆ」がグローバル変数であることが定義されている。また，ｌｃｍドメインのルールセクションおよび定義セクションにおいて，「’ｇｖａｒ．ｓｙｓ．ｕｍｃｃ’」と記述されており，上記と同様に，グローバル指定情報「ｇｖａｒ．」によって変数「ｕｍｃｃ」がグローバル変数であることが定義されている。
【０１５７】
このように変数が，ローカル変数かグローバル変数かを指定することによって，１つのライセンスＬが複数のコンテンツＣに対して有効な場合に，ステータス情報Ｓを１つにすることができる。
【０１５８】
例えば，あるライセンスＬ１に対しコンテンツＣ１〜５が有効であり，ライセンスＬは，最初に使用してから３日間有効なライセンスＬであるとする。この場合，コンテンツＣ１〜５のいずれを使用した場合であっても，初回使用日時を表す変数をステータス情報Ｓに記憶するためには，その変数はコンテンツＣ１〜５のすべてに有効でなければならない。例えば，従来のようなローカル変数のみを用いた場合，このような設定をすることは困難であったが，上記のように変数をグローバル指定することにより，複数のコンテンツＣに跨った上記使用日時の設定が可能となる。このように初回使用日時を表す変数をグローバル指定しておけば，コンテンツＣ１〜５のいずれを使用しても，当該変数の初回使用日時が設定される。一方，初回使用日時を表す変数を，あるコンテンツＣ１に対してローカル指定した場合には，ローカル指定されたコンテンツＣ１以外のコンテンツＣ２〜５を使用しても，当該変数の初回使用日時が設定されない。
【０１５９】
（５）変数のドメイン指定情報
図９の使用条件情報ＵＲには，変数のドメイン指定情報が，変数と関連付けて記述されている。このドメイン指定情報は，変数を使用するドメイン（当該変数が有効なドメイン）を指定する情報であり，上記ドメイン特定部１４２によって変数のドメインを特定する際に参照される。
【０１６０】
例えば，ｅｘｐｏｒｔドメインのルールセクションおよび定義セクションにおいて，「’ｇｖａｒ．ｅｘｐｔ．ｕｅｆｕ’」，「’ｉｖａｒ．ｅｘｐｔ．ｒｘｐ１’」と記述されている。このうち，「ｅｘｐｔ．」は，エキスポートドメインを指定するドメイン指定情報であり，変数「ｕｅｆｕ」および「ｒｘｐ１」が，ｅｘｐｏｒｔドメインで使用される変数であることを定義している。このように，複数のドメインで使用される可能性のある変数「ｕｅｆｕ」および「ｒｘｐ１」等の頭に，ドメイン指定情報「ｅｘｐｔ．」等を記述することにより，これらの変数を使用するドメインを明示的に指定できる。
【０１６１】
なお，図９には図示しないが，ｒｅｎｄｅｒｅｒドメインを指定するドメイン指定情報「ｒｅｎｄ．」，ｌｃｍドメインを指定するドメイン指定情報「ｌｃｍ．」などを変数の頭に記述することによって，他のドメインを指定することも可能である。
【０１６２】
このように，本実施形態にかかるライセンスＬの使用条件情報ＵＲには，上記各種の変数属性情報が記述されている。変数属性情報は，著作権管理部１３０（ＤＲＭモジュール）による処理において，単に参照されるリストであり，この変数属性情報自体がプログラムとして機能するものではない。従って，変数属性情報を既存の使用条件情報ＵＲに追加したとしても，このことが，著作権管理部１３０を構成するＤＲＭモジュールのプログラム自体を変更するものではないので，何ら不都合を伴わない。よって，ライセンス評価装置１０は，何らの装置やソフトウェアの変更を必要とすることなく，使用条件情報ＵＲ内の新規変数に好適に対応することができる。
【０１６３】
以上，図９に基づいて，使用条件情報ＵＲの記述例について詳細に説明した。以下では，図１０〜１４に基づいて，使用条件情報ＵＲの他の記述例について説明する。
【０１６４】
まず，図１０の使用条件情報ＵＲの記述例について説明する。図１０に示す使用条件情報ＵＲの記述例では，ｒｅｎｄｅｒｅｒドメインに関して使用条件が記述されている。
【０１６５】
具体的には，ｒｅｎｄｅｒｅｒドメインの条件式は，「’ｇｖａｒ．ｒｅｎｄ．ｕｅｆｕ’＋’ｉｖａｒ．ｒｅｎｄ．ｒｘｐ１’＞＝’ｇｖａｒ．ｓｙｓ．ｕｃｄｔ’」である。「’ｉｖａｒ．ｒｅｎｄ．ｒｘｐ１’」は，再生可能期間を表す変数であり，定義セクションで「７」日間であると定義されている。
【０１６６】
この使用条件情報ＵＲでは，変数「’ｇｖａｒ．ｒｅｎｄ．ｕｅｆｕ’」に，そのコンテンツＣを最初に再生した日時が読み込まれるが，この値自体は，ステータス情報Ｓに記憶されている。条件式判断部１４０は，コンテンツを最初に利用した時間「’ｇｖａｒ．ｒｅｎｄ．ｕｅｆｕ’」に，ライセンス期間「’ｉｖａｒ．ｒｅｎｄ．ｒｘｐ１’」を足し，その結果が，現在時刻を表す変数「’ｇｖａｒ．ｓｙｓ．ｕｃｄｔ’」より後であるか否かを判断する。
【０１６７】
かかる使用条件情報ＵＲにおいて，変数「ｒｘｐ１」および「ｕｅｆｕ」は，ドメイン指定情報「ｒｅｎｄ．」によって，ｒｅｎｄｅｒｅｒドメインで使用される変数であると指定され，変数の型情報「ｔｉｍｅ＿ｔ」によって，日時を表す変数であることが定義されている。また，変数「ｕｅｆｕ」は，「ｇｖａｒ．」によってグローバル変数であることが定義され，「（ｒｗ）」によって可変値であることが定義されている。
【０１６８】
次に，図１１の使用条件情報ＵＲの記述例について説明する。図１１に示す使用条件情報ＵＲの記述例では，ｒｅｎｄｅｒｅｒドメインに関して使用条件が記述されている。
【０１６９】
図１１に示すように，ｒｅｎｄｅｒｅｒドメインの条件式は，「（’ｉｖａｒ．ｒｅｎｄ．ｒｅｓｐ’＜＝’ｇｖａｒ．ｓｙｓ．ｕｃｄｔ’）ａｎｄ（’ｇｖａｒ．ｓｙｓ．ｕｃｄｔ’＜＝’ｉｖａｒ．ｒｅｎｄ．ｒｅｅｐ’）」である。変数「’ｉｖａｒ．ｒｅｎｄ．ｒｅｓｐ’」および偏す「’ｉｖａｒ．ｒｅｎｄ．ｒｅｅｐ’」は，それぞれ，コンテンツの再生開始期限，再生終了期限を表す変数であり，（ｒ）によって固定値（定数）であることが定義され，それらの初期値は，定義セクションにおいて，それぞれ「２００３／０３／０１／００：００：００」，「２００３／１０／０１／００：００：００」であると指定されている。また，変数「’ｇｖａｒ．ｓｙｓ．ｕｃｄｔ’」は，現在時刻を表す変数である。この使用条件情報ＵＲでは，現在時刻が，再生開始期限以降であり，かつ，再生終了期限以前であるか否かが評価される。
【０１７０】
かかる使用条件情報ＵＲにおいて，変数「ｒｅｓｐ」および「ｒｅｅｐ」は，ドメイン指定情報「ｒｅｎｄ．」によって，ｒｅｎｄｅｒｅｒドメインで使用される変数であると指定され，「（ｒ）」によって固定値であることが定義され，変数の型情報「ｔｉｍｅ＿ｔ」によって，日時を表す変数であることが定義されている。
【０１７１】
次に，図１２の使用条件情報ＵＲの記述例について説明する。図１２に示す使用条件情報ＵＲの記述例では，ｄｒｍドメインに関して使用条件が記述されており，ｄｒｍドメインにおいて，コンテンツの視聴ライセンスの有無が使用条件として評価される。
【０１７２】
図１２に示すように，ｒｅｎｄｅｒｅｒドメインの条件式は，「’ｉｖａｒ．ａｔｔｒ．Ａ２５６’  ＝  ’ｉｖａｒ．ｃｏｍ．Ｘ００１’」である。変数「’ｉｖａｒ．ｃｏｍ．Ｘ００１’」は，このライセンスＬで使用されるＰｒｅｖｉｅｗの値であり，この値は定義セクションで「／０００００００００００００００１」であると指定されている。変数「’ｉｖａｒ．ａｔｔｒ．Ａ２５６’」は，当該ライセンスＬに対応するコンテンツＣのセキュリティ情報内の属性情報における属性コード（変数名）Ａ２５６の値を表す。
【０１７３】
この使用条件情報ＵＲに基づいて評価する場合，条件式判断部１４０は，変数「’ｉｖａｒ．ａｔｔｒ．Ａ２５６’」に，上記コンテンツＣの属性情報内のＡ２５６の値を読み込み，変数「’ｉｖａｒ．ｃｏｍ．Ｘ００１’」の値と一致しているか否かを判断し，一致していれば，ライセンスＬの確認を終了する。
【０１７４】
かかる使用条件情報ＵＲにおいて，変数「Ｘ００１」は，「（ｒ）」によって固定値であることが定義され，変数の型情報「ｕｎｓｉｇｎｅｄ  ｌｏｎｇ」によって，例えば８バイトの正の整数であることが定義されている。
【０１７５】
次に，図１３の使用条件情報ＵＲの記述例について説明する。図１３に示す使用条件情報ＵＲの記述例では，ｒｅｎｄｅｒｅｒドメインに関して使用条件が記述されており，ライセンス提供サーバ２５への定期更新の有無が使用条件として評価される。
【０１７６】
図１３に示すように，ｒｅｎｄｅｒｅｒドメインの条件式は，「’ｇｖａｒ．ｓｙｓ．ｕｌｔｃ’＋’ｉｖａｒ．ｒｅｎｄ．ｒｔｃｉ’  ＞  ’ｇｖａｒ．ｓｙｓ．ｔｒｔｍ’」である。この条件式で，変数「’ｇｖａｒ．ｓｙｓ．ｕｌｔｃ’」は，最後にサーバ２５にアクセスした時間を表す変数である。変数「’ｉｖａｒ．ｒｅｎｄ．ｒｔｃｉ’」は，サーバ２５に定期的に接続すべき時間間隔である最低アクセス期間を表す変数であり，この値は定義セクションで「１」分であると指定されている。「’ｇｖａｒ．ｓｙｓ．ｔｒｔｍ’」は現在時刻を表す変数である。
【０１７７】
この使用条件情報ＵＲに基づいて評価する場合，条件式判断部１４０は，変数「’ｇｖａｒ．ｓｙｓ．ｕｌｔｃ’」に，当該ライセンスＬと関連付けられたステータス情報Ｓに記憶されている，ライセンス提供サーバ２５に最後に接続した日時を代入し，この値に最低アクセス期間「ｉｖａｒ．ｒｅｎｄ．ｒｔｃｉ」を加え，その結果が，現在時刻「’ｇｖａｒ．ｓｙｓ．ｔｒｔｍ’」より後であるか否かを判断し，この条件式を満たせば，コンテンツの再生を許可する。
【０１７８】
かかる使用条件情報ＵＲにおいて，変数「ｒｔｃｌ」は，ドメイン指定情報「ｒｅｎｄ．」によって，ｒｅｎｄｅｒｅｒドメインで使用される変数であると指定され，「（ｒ）」によって固定値であることが定義され，変数の型情報「ｔｉｍｅ＿ｔ」によって，日時を表す変数であることが定義されている。
【０１７９】
次に，図１４の使用条件情報ＵＲの記述例について説明する。図１４に示す使用条件情報ＵＲの記述例では，ｒｅｎｄｅｒｅｒドメインに関して使用条件が記述されており，ライセンス提供サーバ２５に対して接続して信頼のおける時間情報（Ｔｒｕｓｔｅｄ  Ｔｉｍｅ）の更新の有無が使用条件として評価される。
【０１８０】
図１４に示すように，ｒｅｎｄｅｒｅｒドメインの条件式は，「’ｇｖａｒ．ｓｙｓ．ｕｌｔｃ’＞’ｇｖａｒ．ｓｙｓ．ｕｓｓｔ’」である。この条件式で，変数「’ｇｖａｒ．ｓｙｓ．ｕｌｔｃ’」は，最後にサーバ２５にアクセスした時間を表す変数である。変数「’ｇｖａｒ．ｓｙｓ．ｕｓｓｔ」は，ライセンス評価装置１０において著作権管理部１３０（ＤＲＭモジュール）を含むアプリケーションが起動した日時を表す変数である。
【０１８１】
この使用条件情報ＵＲに基づいて評価する場合，条件式判断部１４０は，当該ライセンスＬと関連付けられたステータス情報Ｓに記憶されている，最後にライセンス提供サーバ２５にアクセスした時刻「’ｇｖａｒ．ｓｙｓ．ｕｌｔｃ’」と，アプリケーションの起動日時「’ｇｖａｒ．ｓｙｓ．ｕｓｓｔ’」とを比較して，ライセンス提供サーバ２５へのアクセスがアプリケーション起動時刻より後に行われているか否かを判断し，この条件式を満たせば，コンテンツの再生を許可する。
【０１８２】
かかる使用条件情報ＵＲにおいて，変数「ｕｌｔｃ」，「ｕｓｓｔ」は，定義セクションの「（ｒｗ）」によって可変値であることが定義され，変数の型情報「ｔｉｍｅ＿ｔ」によって，日時を表す変数であることが定義されている。
【０１８３】
次に，図１５に基づいて，本実施形態の変更例にかかる使用条件情報ＵＲにおける変数の指定方法の記述例について説明する。なお，図１５は，本実施形態の変更例にかかる使用条件情報ＵＲにおける変数の指定方法の記述例を示す説明図である。
【０１８４】
まず，図１５（ａ）の記述例について説明する。図１５（ａ）に示すように，使用条件情報ＵＲには，例えば，「ｕｍｃｃ：ｌｃｍ：ｇｌｏｂａｌ（ｒ）」と記述されている。このうち「ｌｃｍ：」は，上記ドメイン指定情報であり，「ｕｍｃｃ」がｒｅｎｄｅｒｅｒドメインで使用される変数であることを指定している。また，「ｇｌｏｂａｌ」は，上記グローバル／ローカル指定情報であり，「ｕｍｃｃ」がグローバル変数であることを定義している。さらに，「（ｒ）」は，上記可変値か固定値かを表す情報であり，「ｕｍｃｃ」がｄｒｍドメインにおいて固定値であることを定義している。
【０１８５】
また，ｌｃｍドメインの定義セクションには「ｕｍｃｃ＝０：ｔｙｐｅ＝ＣＨＡＮＧＥ」と記述されている。このうち「ｕｍｃｃ＝０」は，上記変数の初期値を表す情報であり，ｌｃｍドメインにおける変数「ｕｍｃｃ」の初期値が０であることを表している。また，「ｔｙｐｅ＝ＣＨＡＮＧＥ」は，上記可変値か固定値かを表す情報であり，ｌｃｍドメインにおける変数「ｕｍｃｃ」が可変値であることを定義している。
【０１８６】
このような図１５（ａ）の記述例では，同一の表記で記述される変数「ｕｍｃｃ」が，それぞれ，ｄｒｍ，ｌｃｍ，ｄｉｖｉｄｅドメインにおいて定義されている。かかる場合に，変数「ｕｍｃｃ」がいずれのドメインで有効であるかを表すドメイン指定情報（上記「ｕｍｃｃ：ｌｃｍ」等）によって，変数「ｕｍｃｃ」のドメインを指定することにより，上記ステータス情報Ｓに対する変数「ｕｍｃｃ」の更新処理時に，更新すべきドメイン領域を判別できるようになる。
【０１８７】
次に，図１５（ｂ）の記述例について説明する。図１５（ｂ）に示すように，「ｕｍｃｃ：ＩＮＣＲＥＭＥＮＴＡＬ  ＣＯＵＮＴＥＲ：ｄｅｆａｕｌｔ＝０」と記述されている。このうち，「ＩＮＣＲＥＭＥＮＴＡＬ  ＣＯＵＮＴＥＲ」は，上記変数の型情報および上記可変値か固定値かを表す情報に相当し，変数「ｕｍｃｃ」の型が，単純増加するカウンター変数であることを定義するとともに，変数「ｕｍｃｃ」が可変値であることを定義している。また，「ｄｅｆａｕｌｔ＝０」は，上記変数の初期値を表す情報であり，変数「ｕｍｃｃ」の初期値が「０」であることを表している。
【０１８８】
また，「ｕｅｆｕ：ＵＮＣＨＡＮＧＥＤ  ＤＡＴＥ：ｄｅｆａｕｌｔ＝初回再生日時」と記述されている。このうち，「ＵＮＣＨＡＮＧＥＤ  ＤＡＴＥ」は，上記変数の型情報および上記可変値か固定値かを表す情報に相当し，変数「ｕｅｆｕ」の型が，日時情報であることを定義するとともに，変数「ｕｅｆｕ」が固定値であることを定義している。また，「ｄｅｆａｕｌｔ＝初回再生日時」は，上記変数の初期値を表す情報であり，変数「ｕｅｆｕ」の初期値が，ステータス情報Ｓに記憶されている「初回再生日時」であることを表している。
【０１８９】
以上，図１５（ａ）および（ｂ）に基づいて，使用条件情報ＵＲにおける変数の属性の指定方法（定義方法）の変更例について説明したが，本発明は，上記例に限定されず，上記のような各種の変数属性情報を，多様な記述方式で使用条件情報ＵＲに記述して，変数の属性を指定することができる。
【０１９０】
＜ライセンス評価方法＞
次に，図１６に基づいて，本実施形態にかかる上記ライセンス評価装置１０によって上記ライセンスＬを評価する方法について説明する。なお，図１６は，本実施形態にかかるライセンス評価方法を示すフローチャートである。
【０１９１】
図１６に示すように，まず，ステップＳ１０２では，ライセンス評価装置１０がコンテンツの使用要求を受け付ける（ステップＳ１０２）。例えば，ライセンス評価装置１０のユーザは，コンテンツＣの使用を所望する場合，入力部１０２を操作してコンテンツＣの使用要求を行う。この使用要求は，例えば，ＧＵＩ画面上などで所望のコンテンツＣを選択し，その使用内容を指示する入力を行うことによって成される。ライセンス評価装置１０は，かかるユーザからの使用要求を受け付けて，その内容を解釈する。なお，ライセンス評価装置１０が，予め設定された条件に基づいて，自動的に使用要求を生成するようにしてもよい。
【０１９２】
次いで，ステップＳ１０４では，ライセンス評価装置１０のコンテンツ利用部１２０のコンテンツ選択部１２２が，上記使用要求に基づいて，ユーザ所望の使用対象のコンテンツＣを選択する（ステップＳ１０４）。コンテンツ選択部１２２は，選択したコンテンツＣを特定する情報を著作権管理部１３０のライセンス抽出部１３２およびステータス情報抽出部１３４に出力する。
【０１９３】
さらに，ステップＳ１０６では，著作権管理部１３０のライセンス抽出部１３２が，上記選択されたコンテンツＣに対応するライセンスＬが，ライセンスデータベース１１４に存在するか否かを判断する（ステップＳ１０６）。具体的には，ライセンス抽出部１３２は，上記選択された使用対象のコンテンツＣに付加されているステータスＩＤを読み出し，かかるステータスＩＤに基づいてライセンスデータベース１１４を検索し，当該コンテンツＣに対応するライセンスＬ（即ち，当該ステータスＩＤが付加されているライセンスＬ）が，ライセンスデータベース１１４に存在するか否かを判断する。
【０１９４】
この判断の結果，対応するライセンスＬが存在しない場合には，上記使用対象のコンテンツＣの使用権限がないので，ステップＳ１１８で当該コンテンツＣの使用を不許可して，すべての処理を終了する。一方，対応するライセンスＬが存在する場合には，ステップＳ１０８に進む。
【０１９５】
その後，ステップＳ１０８では，ライセンス抽出部１３２が，上記選択された使用対象のコンテンツに対応するライセンスＬを，ライセンスデータベース１１４から抽出する（ステップＳ１０８）。このライセンスＬの抽出は，上記のようにステータスＩＤに基づいてなされる。
【０１９６】
次いで，ステップＳ１１０では，ライセンスＬに含まれる新規変数が設定される。（ステップＳ１１０）。具体的には，変数分析部１３６は，上記抽出されたライセンスＬを解析して，当該ライセンスＬ内に，ライセンス評価装置１０において未設定の新規変数が存在するか否かを判断する。この判断の結果，新規変数が存在する場合には，変数設定部１３８は，変数属性情報に基づいて新規変数を設定する。なお，この新規変数の設定処理の詳細については後述する。
【０１９７】
さらに，ステップＳ１１２では，ステータス情報抽出部１３４が，上記使用対象のコンテンツＣおよび上記抽出されたライセンスＬに対応するステータス情報Ｓを，ステータス情報データベース１１６から抽出する（ステップＳ１１２）。ライセンス抽出部１３２は，抽出したライセンスＬに使用状態に関する変数があるか否かを確認し，使用状態に関する変数がある場合，ステータス情報抽出部１３４に対して，使用対象のコンテンツＣに付加されているステータスＩＤを出力し，当該コンテンツＣおよび上記抽出したライセンスＬに対応するステータス情報Ｓを抽出するように指示する。
【０１９８】
ステータス情報抽出部１３４は，入力されたステータスＩＤに基づいて，ステータス情報データベース１１６を検索し，当該コンテンツＣおよびライセンスＬに対応するステータス情報Ｓ（即ち，当該ステータスＩＤが付加されているステータス情報Ｓ）のうち，ライセンスＬの使用条件判断に必要な変数を，テータス情報データベース１１６から抽出して，条件式判断部１４０に出力する。
【０１９９】
一方，ライセンスＬに使用状態に関する変数がない場合には，ステータス情報Ｓを抽出する必要がないので，本ステップＳ１１２は省略可能である。
【０２００】
その後，ステップＳ１１４では，条件式判断部１４０が，ライセンスＬを評価して，ライセンスＬの使用条件を満たすか否かを判断する（ステップＳ１１４）。具体的には，条件式判断部１４０は，上記抽出したライセンスＬの使用条件情報ＵＲ内における，上記使用要求内容に応じたドメインの条件式を解釈し，当該条件式に，上記抽出されたステータス情報Ｓの使用状態を表す変数を代入するなどして，上記条件式を満たしているか否かを判断する。
【０２０１】
このステップＳ１１４判断の結果，使用条件情報ＵＲの条件式を満たさないと判断された場合には，ステップＳ１１８に進み，条件式判断部１４０は，使用対象のコンテンツＣの使用を許可せず（ステップＳ１１６），全ての処理を終了する。なお，この場合には，不許可となった理由（エラー理由）を出力部１０６に出力（表示等）して，ユーザに通知するようにしてもよい。
【０２０２】
一方，ステップＳ１１４で条件式を満たすと判断された場合には，ステップＳ１１６に進み，条件式判断部１４０は，使用対象のコンテンツＣの使用を許可する（ステップＳ１１６）。
【０２０３】
次いで，ステップＳ１２０では，ステータス情報更新部１１４は，上記抽出されたステータス情報Ｓを更新する（ステップＳ１２０）。具体的には，上記ステップＳ１１６での使用許可の結果，ステータス情報Ｓ内の変数を更新する必要がある場合（例えば，再生回数を１つ増加させる場合等）には，条件式判断部１４０は，ステータス情報更新部１１４に，更新対象の変数と更新内容を出力する。この際，ドメイン特定部１４２は，使用条件情報ＵＲ内のドメイン指定情報に基づいて，更新対象の変数のドメインを特定し，ステータス情報更新部１４４に通知する。
【０２０４】
すると，ステータス情報更新部１４４は，上記条件式判断部１４０およびドメイン特定部１４２の指示に基づいて，上記ステップ抽出されたステータス情報Ｓ内の更新対象の変数を，コンテンツＳの使用内容に応じて更新する。かかるステータス情報Ｓの更新は，再生時間や再生日時の変更，再生回数やチェックアウト回数のインクリメント等が考えられる。また，かかるステータス情報Ｓの更新時には，ステータス情報更新部１１４は，更新対象の変数が含まれるドメイン領域をロックした上で，当該変数の書き換えを実行する。なお，このステータス情報Ｓの更新処理の詳細については後述する。
【０２０５】
その後，ステップＳ１２２では，コンテンツ処理部１２４は，上記使用を許可されたコンテンツＣの使用処理（例えば，再生，チェックアウト等）を行う（ステップＳ１２２）。なお，本ステップＳ１２２でコンテンツＣの使用が全て或いは一部完了した後に，上記ステップＳ１２０におけるステータス情報Ｓの更新処理を行うようにしてもよい。
【０２０６】
＜条件式判断処理＞
次に，図１７に基づいて，上述した図１６のライセンス評価方法における条件式判断処理（Ｓ１１４）のより詳細なフロー例について説明する。なお，図１７は，図１６の条件式判断処理（Ｓ１１４）のより詳細なフローを示すフローチャートである。
【０２０７】
ここでは，図１０に例示した使用条件情報ＵＲにおけるｒｅｎｄｅｒｅｒドメインの条件式を参照して，コンテンツＣの再生要求が，再生期間内であるかどうかを確認するフローについて説明する。
【０２０８】
図１７に示すように，まず，ステップＳ２０２では，条件式判断部１４０は，ライセンスＬの使用条件情報ＵＲから条件式「’ｇｖａｒ．ｒｅｎｄ．ｕｅｆｕ’＋’ｉｖａｒ．ｒｅｎｄ．ｒｘｐ１’＞＝’ｇｖａｒ．ｓｙｓ．ｕｃｄｔ’」を読み取って解釈する（ステップＳ２０２）。
【０２０９】
次いで，ステップＳ２０４では，条件式判断部１４０は，再生対象のコンテンツＣの再生処理が，初回であるか，即ち，初めての視聴であるか否かを判断する（ステップＳ２０４）。この判断の結果，初回であると判断された場合には，ステップＳ２０６に進み，初回でない（即ち，過去に再生したことがある）と判断された場合には，ステップＳ２０８に進む。
【０２１０】
次いで，再生が初回であると判断された場合のステップＳ２０６では，変数設定部１３８は，上記ライセンスＬに対応するステータス情報Ｓのｒｅｎｄｅｒｅｒドメイン領域４３０に，上記再生対象のコンテンツＣを最初に再生した時間を示す変数「ｇｖａｒ．ｒｅｎｄ．ｕｅｆｕ」を作成し，当該コンテンツＣの最初の再生日時，即ち現在時刻を書き込む（ステップＳ２０６）。
【０２１１】
一方，再生が初回でないと判断された場合のステップＳ２０８では，変数「ｇｖａｒ．ｒｅｎｄ．ｕｅｆｕ」は，ステータス情報Ｓ内に既に作成されているので，ステータス情報抽出部１３４は，ステータス情報Ｓのｒｅｎｄｅｒｅｒドメイン領域４３０から，変数「ｇｖａｒ．ｒｅｎｄ．ｕｅｆｕ」の値を読み出して条件式判断部１４０に出力する。この結果，条件式判断部１４０は，最初に再生された時間「ｇｖａｒ．ｒｅｎｄ．ｕｅｆｕ」の値を取得できる（ステップＳ２０８）。
【０２１２】
次いで，ステップＳ２１０では，条件式判断部１４０は，条件式における「ｉｖａｒ．ｒｅｎｄ．ｒｘｐ１」の内部変数に，ライセンスＬの使用条件情報ＵＲの定義セクションに記述されている再生可能期間の固定値を代入する（ステップＳ２１０）。
【０２１３】
さらに，ステップＳ２１２では，条件式判断部１４０は，条件式における他の内部変数「ｇｖａｒ．ｓｙｓ．ｕｃｄｔ」に現在日時を代入する（ステップＳ２１２）。
【０２１４】
その後，ステップＳ２１４では，条件式判断部１４０は，上記のようにして変数が代入された条件式を評価して，再生条件を満たすか否かを判断する（ステップＳ２１４）。即ち，現在日時が，初回再生日時に上記再生可能期間を加えて得られる日時に達しているか否かを判断する。
【０２１５】
この判断の結果，条件式を満たすと判断した場合には，ステップＳ２１６に進み，条件式判断部１４０は，使用許可信号を作成し，コンテンツ処理部１３４に出力する（ステップＳ２１６）。この結果，コンテンツ処理部は，上記再生対象のコンテンツＣを再生することができる。
【０２１６】
一方，条件式を満たさないと判断した場合には，ステップＳ２１８に進み，条件式判断部１４０は，使用不許可信号を作成し，コンテンツ処理部１３４に出力する（ステップＳ２１８）。この結果，コンテンツ処理部は，上記再生対象のコンテンツＣを再生することができない。
【０２１７】
＜変数設定処理＞
次に，図１８に基づいて，上述した図１６のライセンス評価方法における新規変数設定処理（Ｓ１１０）のより詳細なフロー例について説明する。なお，図１８は，図１６の新規変数設定処理（Ｓ１１０）のより詳細なフローを示すフローチャートである。
【０２１８】
図１８に示すように，まず，ステップＳ３０２では，変数分析部１３６は，使用対象のコンテンツＣに対応するライセンスＬを解析して，当該ライセンスＬの使用条件情報ＵＲを構成する１又は２以上の変数の中に，ライセンス評価装置１０において初めて処理する未設定の変数（新規変数）が存在するか否かを判断する。（ステップＳ３０２）。この判断の結果，新規変数が存在しないと判断した場合には，新規変数の設定をする必要がないので，変数分析部１３６は，当該ライセンスＬを条件式判断部１４０に出力して，全ての処理を終了する。
【０２１９】
一方，新規変数が存在すると判断した場合には，変数分析部１３６は，変数設定部１３８に，新規変数が存在する旨と，当該新規変数を特定する情報とを出力し，ステップＳ３０４に進む。なお，この段階では，新規変数は，当該ライセンス評価装置１０のステータス情報Ｓに未登録である。
【０２２０】
次いで，ステップＳ３０４では，変数設定部１３８は，上記検出された新規変数に対応する変数属性情報を，ライセンスＬの使用条件情報ＵＲから読み出す（ステップＳ３０４）。ライセンスＬの使用条件情報ＵＲには，上記のように，条件式に加え，条件式を構成する各変数の属性を表す変数属性情報がそれぞれ記述されている。この変数属性情報は，例えば，変数の初期値，変数が可変値または固定値のいずれであるかを表す情報，変数の型情報，グローバル／ローカル指定情報，変数のドメインを指定するドメイン指定情報などである。変数設定部１３８は，ライセンスＬの使用条件情報ＵＲを解釈して，上記各変数に対応する変数属性情報のうち，上記新規変数に対応する変数属性情報を読み出す。
【０２２１】
さらに，ステップＳ３０６では，変数設定部１３８は，上記読み出した変数属性情報のうち，変数が可変値または固定値のいずれであるかを表す情報に基づいて，新規変数が可変値であるか固定値であるかを判断する（ステップＳ３０６）。例えば，図９に示したように，使用条件情報ＵＲ内に，固定値であることを表す（ｒ）が新規変数に関連づけて記述されていれば，当該新規変数は固定値であると判断できる。一方，可変値であることを表す（ｒｗ）が新規変数に関連付けて記述されていれば，当該新規変数は可変値であると判断できる。
【０２２２】
かかる判断の結果，新規変数が可変値であると判断された場合には，特別な処理を行うことなく，ステップＳ３１０に進む。
【０２２３】
一方，新規変数が固定値であると判断された場合には，ステップＳ３０８に進み，当該新規変数に関してコンスタント宣言を行う。このコンスタント宣言は，新規変数をステータス情報Ｓに書き込む際に，当該新規変数のヘッダに，コンスタント符号を付加する指示である。このようにコンスタント符号が付加されていれば，当該変数をステータス情報Ｓから読み出す際に，当該変数が固定値（コンスタント）であると判断可能になる。
【０２２４】
次いで，ステップＳ３１０では，変数設定部１３８は，その他の変数属性情報に基づいて上記新規変数の属性を解釈して定義する（ステップＳ３１０）。例えば，変数設定部１３８は，変数の型情報に基づいて，上記新規変数のデータサイズ（ｌｅｎｇｔｈ），上記新規変数が正の数であるか負の数であるか，上記新規変数の取りうる値の範囲などを定義する。また，変数設定部１３８は，グローバル／ローカル指定情報情報に基づいて，上記新規変数がグローバル変数であるかローカル変数であるかを定義する。また，変数設定部１３８は，ドメイン情報情報に基づいて，上記新規変数を使用するドメインを特定することもできる。このように，新規変数を定義することにより，新規変数をステータス情報Ｓに書き込む際に，如何なる形式（アドレス，サイズ，符号の有無など）で新規変数を書き込むかを決定できる。
【０２２５】
さらに，ステップＳ３１２では，変数設定部１３８は，上記新規変数の定義に基づいて，ライセンスＬに対応するステータス情報Ｓの特定されたドメイン領域内に，上記新規変数を書き込むための領域を設定する（ステップＳ３１２）。
【０２２６】
その後，ステップＳ３１４では，変数設定部１３８は，当該ライセンスＬの使用条件情報ＵＲ内に上記新規変数の初期値が記述されているか否かを判断する。（ステップＳ３１４）。
【０２２７】
このステップＳ３１４での判断の結果，上記新規変数の初期値が記述されていると判断された場合には，ステップＳ３１６に進み，当該ライセンスＬの使用条件情報ＵＲ内に記述されている初期値を，上記新規変数の初期値に設定する（ステップＳ３１６）。
【０２２８】
一方，ステップＳ３１４での判断の結果，上記新規変数の初期値が記述されていないと判断された場合には，ステップＳ３１８に進み，著作権管理部１３０が保有している初期値（ＤＲＭモジュールのプログラムに記述されている値）を，新規変数の初期値に設定する（ステップＳ３１８）。この際，著作権管理部１３０が上記新規変数に対応する初期値を保有していない場合には，保有している所定のデフォルト値（例えば常に０）を，新規変数の初期値に設定する。
【０２２９】
その後，ステップＳ３２０では，変数設定部１３８は，上記ステップＳ３１２で設定された，ステータス情報Ｓの特定されたドメイン領域内に，上記設定された新規変数の初期値を書き込み，新規変数の登録を完了する（ステップＳ３２０）。
【０２３０】
＜ステータス情報更新処理＞
次に，図１９に基づいて，上述した図１６のライセンス評価方法におけるステータス情報更新処理（Ｓ１２０）のより詳細なフロー例について説明する。なお，図１９は，図１６のステータス情報更新処理（Ｓ１２０）のより詳細なフローを示すフローチャートである。
【０２３１】
図１９に示すように，まず，ステップＳ４０２では，ドメイン特定部１４２は，条件式判断部１４０からステータス情報Ｓの更新指示を受け付ける（ステップＳ４０２）。上述したように，条件式判断部１４０によってライセンスＬが評価され，条件式を満たすと判断された場合には，使用対象のコンテンツＣの使用が許可される。この場合，条件式判断部１４０は，許可した使用内容に応じてステータス情報Ｓ内の変数を更新するように，ドメイン特定部１４２及びステータス情報更新１４４に指示する。ドメイン特定部１４２は，かかるステータス情報Ｓの更新指示を受け付ける。
【０２３２】
次いで，ステップＳ４０４では，ドメイン特定部１４２は，ライセンスＬの使用条件情報ＵＲに含まれているドメイン指定情報に基づいて，更新対象の変数に対応するドメインを特定する。（ステップＳ４０４）。上述したように，使用条件情報ＵＲには，各変数を関連付けてドメイン指定情報が記述されている。ドメイン特定部１４２は，上記ステータス情報Ｓの変数の更新指示を受け付けると，使用条件情報ＵＲを解釈して，更新対象の変数に関連付けられているドメイン指定情報を読み出し，この読み出したドメイン指定情報に基づいて，更新対象の変数を使用するドメインを特定する。具体的には，例えば，使用条件情報ＵＲに例えば「’ｇｖａｒ．ｒｅｎｄ．ｕｅｆｕ’」と記述されている場合には，この変数「ｕｅｆｕ」のドメイン指定情報「ｒｅｎｄ．」に基づいて，変数「ｕｅｆｕ」に対応するドメインがｒｅｎｄｅｒｅｒドメインであると特定する。ドメイン特定部１４２は，このように特定したドメインを，ステータス情報更新部１４４に通知する。
【０２３３】
さらに，ステップＳ４０６では，ステータス情報更新部１４４は，更新対象の変数を記憶するべき，ステータス情報Ｓのドメイン領域がロックされているか否かを判断する（ステップＳ４０６）。この判断の結果，当該ドメイン領域がロックされて以内と判断された場合には，ステップＳ４１０に進む。
【０２３４】
一方，他の更新処理によって，既に当該ドメイン領域がロックされている場合には，ステータス情報更新部１４４は，当該ドメイン領域内の変数を更新することはできない。このため，ステータス情報更新部１４４は，他の更新処理による当該ドメイン領域のロックが解除されるまでは，上記更新指示を受けた変数の更新を待機する。この待機の結果，ロックが解除された場合には，ステップＳ４１０に進む。一方，所定時間待機しても当該ドメイン領域のロックが解除されない場合には，タイムアウト（待機上限時間オーバー）と判断され（ステップＳ４０８），エラー終了となる。
【０２３５】
次いで，ステップＳ４１０では，ステータス情報更新部１４４は，ステータス情報Ｓのうち，上記ステップＳ４０４で特定されたドメイン領域のみをロックする。（ステップＳ４１０）。例えば，上記変数「’ｇｖａｒ．ｒｅｎｄ．ｕｅｆｕ’」を更新する場合には，図７に示すｒｅｎｄｅｒｅｒドメイン領域４３０をロックすれば十分であり，他のドメイン領域４１０，４２０，４４０等をロックする必要はない。この場合には，ステータス情報更新部１４４は，ｒｅｎｄｅｒｅｒドメイン領域４３０をロックして更新権限を専有し，他の更新処理によって，ｒｅｎｄｅｒｅｒドメイン領域４３０内の変数が更新されないようにする。
【０２３６】
さらに，ステップＳ４１２では，ステータス情報更新部１４４は，上記ロックされたドメイン領域内の更新対象の変数を，コンテンツの使用内容に応じて更新する（ステップＳ４１２）。例えば，再生回数に制限のあるコンテンツＣが再生された場合には，ステータス情報更新部１４４は，ｒｅｎｄｅｒｅｒドメイン領域４３０内の，再生回数を表す変数「ｕｍｐｃ」を１つ増加させる。
【０２３７】
その後，ステップＳ４１４では，ステータス情報更新部１４４は，ロックしていたステータス情報Ｓのドメイン領域をロック解除する（ステップＳ４１４）。これにより，他の更新処理によって，当該ドメイン領域の変数を更新可能な状態となる。
【０２３８】
以上のように，まず，更新対象の変数のドメインを特定した上で，当該特定されたドメインに対応するステータス情報Ｓのドメイン領域のみをロックすることで，相異なるドメインの変数の更新については，複数の更新処理を同時並行して実行することが可能になる。
【０２３９】
ここで，図２０に基づいて，かかる同時並行処理の具体例について説明する。なお，図２０は，従来のステータス情報Ｓの更新処理（ａ）と，本実施形態にかかるステータス情報Ｓの更新処理（ｂ）とを比較して説明する説明図である。
【０２４０】
従来では，ステータス情報Ｓがドメインごとに領域区分されておらず，更新対象の変数のドメインを特定することができなかったため，ステータス情報Ｓの変数を更新する場合には，ステータス情報Ｓ全体をロックする必要があった。このため，複数のドメインの処理を同時に並列処理することができなかった。
【０２４１】
具体的には，図２０（ａ）に示すように，まず，ｌｃｍドメインに属する変数（以下，ｌｃｍ変数という）の更新要求があった場合には，ｌｃｍ処理部（ｌｃｍモジュール）は，ステータス情報Ｓ全体をロックして，当該ｌｃｍ変数の更新処理を行っていた。このため，ｌｃｍ変数の更新処理中に，ｅｘｐｏｒｔドメインに属する変数（以下，ｅｘｐｏｒｔ変数という。）の更新要求が成されたとしても，ｅｘｐｏｒｔ処理部（ｅｘｐｏｒｔモジュール）は，ｅｘｐｏｒｔ変数の更新処理を開始することができず，上記ｌｃｍ変数の更新処理が完了してステータス情報Ｓ全体のロックが解除されるまで，待機しなければならかった。そして，上記ロックが解除されて初めて，ｅｘｐｏｒｔ処理部は，再度，ステータス情報Ｓ全体をロックして，ｅｘｐｏｒｔ変数の更新処理を行っていた。
【０２４２】
これに対して，本実施形態にかかるステータス情報Ｓの更新処理では，ステータス情報Ｓの各ドメイン領域ごとにロックをかけることができるので，異なるドメインであれば，複数の変数の更新処理を同時並行して行うことができる。
【０２４３】
具体的には，図２０（ａ）に示すように，まず，ｌｃｍ変数の更新要求があった場合には，ｌｃｍ処理部は，ステータス情報Ｓのうちｌｃｍドメイン領域４２０のみをロックして，当該ｌｃｍ変数の更新処理を行う。このｌｃｍ変数の更新処理中にｅｘｐｏｒｔ変数の更新要求がなされると，ステータス情報Ｓのｅｘｐｏｒｔドメイン領域４４０はロックされていないので，ｅｘｐｏｒｔ処理部は，即時，ｅｘｐｏｒｔドメイン領域４４０をロックして，ｅｘｐｏｒｔ変数の更新処理を，上記ｌｃｍ変数の更新処理と同時並行して，実行することができる。即ち，ｅｘｐｏｒｔ変数の更新処理とｌｃｍ変数の更新処理を並列処理することが可能になる。従って，ステータス情報Ｓの更新処理効率を高めることができる。
【０２４４】
以上，本実施形態にかかるコンテンツ配信システム１００におけるライセンス評価装置１０と，このライセンス評価装置１０におけるライセンス評価方法について詳細に説明した。本実施形態によれば，ライセンスＬの使用条件情報ＵＲにおいて，変数のドメイン指定情報を各変数に関連付けて記述し，かつ，ステータス情報Ｓをドメインごとに領域区分する点に大きな特徴がある。これにより，ステータス情報Ｓ内の変数の更新時に，更新対象の変数のドメインを特定し，ロックをかけるステータス情報Ｓの範囲を，特定されたドメイン領域に限定することができる。よって，ステータス情報Ｓ全体にロックをかける必要がないので，相異なる複数のドメインの変数の更新処理を，同時並行して実行することが可能となる。
【０２４５】
さらに，使用条件情報ＵＲ内に，変数が可変値か固定値かを表す情報を各変数に関連付けて記述しておくことで，ステータス情報Ｓの変数の更新時に，かかる情報に基づいて，ロックが必要であるか否かを判断することができる。また，ステータス情報Ｓの記憶領域を，可変値領域４１４，４２４，４３４，４４４と，固定値領域４１２，４２２，４３２，４４２に区分することにより，更新時にロックが必要な可変値となる変数のみをロックすることができる。
【０２４６】
また，使用条件情報ＵＲの条件式を構成する変数を，ドメインごとに分類することにより，ドメイン間の依存性がなくなり，モジュール性を向上できる。
【０２４７】
また，変数の初期値や型などといった変数属性情報が，ライセンスＬの使用条件情報ＵＲに明示的に記述されているので，ライセンス評価装置１０は，ライセンスＬから抽出した上記変数属性情報に基づいて各変数を設定することができる。従って，ライセンスＬの使用条件情報ＵＲに新規変数が新たに追加された場合であっても，ライセンス評価装置１０は，ライセンス評価用の装置やソフトウェアの設計変更をすることなく，当該新規変数に柔軟に対応できる。
【０２４８】
また，変数をグローバル指定することにより，複数のコンテンツＣライセンスを跨って可変数を設定することが可能である。このため，ライセンスＬによるコンテンツＣのステータス管理のバリエーションを拡張できる。
【０２４９】
以上，添付図面を参照しながら本発明の好適な実施形態について説明したが，本発明は係る例に限定されないことは言うまでもない。当業者であれば，特許請求の範囲に記載された範疇内において，各種の変更例または修正例に想到し得ることは明らかであり，それらについても当然に本発明の技術的範囲に属するものと了解される。
【０２５０】
例えば，上記ライセンスＬの使用条件情報ＵＲに含まれる変数属性情報は，上記実施形態の具体例に限定されず，変数を定義するために必要な情報であれば，上記以外の如何なる情報であってもよい。
【０２５１】
また，上記使用条件情報ＵＲにおける変数属性情報の記述方法は，上記図９〜図１５で例示した記述例に限定されず，各変数と，これに対応する各変数属性情報とが関連付けられて記述されていれば，任意の記述方法であってもよい。
【０２５２】
また，ドメイン指定情報も，上記のような記述例に限定されず，各変数のドメインを指定することができれば，任意の記述方法であってよい。
【０２５３】
また，上記実施形態では，ステータス情報Ｓは，ドメインごとに領域区分されたが，かかる例に限定されず，ドメインごとにステータス情報Ｓのファイルを複数作成して，ステータス情報Ｓの変数をドメインごとに区分してもよい。
【産業上の利用可能性】
【０２５４】
本発明は，コンテンツを使用するためのライセンスを評価するライセンス評価装置，そのコンピュータプログラムおよびライセンス評価方法に適用可能である。
【図面の簡単な説明】
【０２５５】
【図１】本発明の第１の実施形態にかかるコンテンツ利用システム１００の全体構成を概略的に示すブロック図である。
【図２】同実施形態にかかるライセンス評価装置１０の構成を概略的に示すブロック図である。
【図３】同実施形態にかかるコンテンツＣに付加されたステータスＩＤと，ライセンスＬおよびステータス情報Ｓとの関係を例示する説明図である。
【図４】同実施形態にかかるライセンス評価装置１０で使用されるコンテンツＣの構成例を示す説明図である。
【図５】同実施形態にかかるコンテンツＣの属性情報２６０の構成例を概念的に示す説明図である。
【図６】同実施形態にかかるライセンスＬの構成例を示した説明図である。
【図７】同実施形態にかかるステータス情報Ｓの構成例を示した説明図である。
【図８】同実施形態にかかるライセンスＬの使用条件情報ＵＲの記述ルール例を示す説明図である。
【図９】同実施形態にかかる使用条件情報の具体的な記述例を示す説明図である。
【図１０】同実施形態にかかる使用条件情報の具体的な記述例を示す説明図である。
【図１１】同実施形態にかかる使用条件情報の具体的な記述例を示す説明図である。
【図１２】同実施形態にかかる使用条件情報の具体的な記述例を示す説明図である。
【図１３】同実施形態にかかる使用条件情報の具体的な記述例を示す説明図である。
【図１４】同実施形態にかかる使用条件情報の具体的な記述例を示す説明図である。
【図１５】同実施形態の変更例にかかる使用条件情報における変数の指定方法の記述例を示す説明図である。
【図１６】同実施形態にかかるライセンス評価方法を示すフローチャートである。
【図１７】図１６の条件式判断処理のより詳細なフローを示すフローチャートである。
【図１８】図１６の新規変数設定処理のより詳細なフローを示すフローチャートである。
【図１９】図１６のステータス情報更新処理のより詳細なフローを示すフローチャートである。
【図２０】従来のステータス情報の更新処理（ａ）と，本発明の第１の実施形態にかかるステータス情報の更新処理（ｂ）とを比較して説明する説明図である。
【符号の説明】
【０２５６】
１０  ライセンス評価装置
２０  コンテンツ配信サーバ
２５  ライセンス提供サーバ
１１０  記憶部
１１２  コンテンツデータベース
１１４  ライセンスデータベース
１１６  ステータス情報データベース
１２０  コンテンツ利用部
１２２  コンテンツ選択部
１２４  コンテンツ処理部
１３０  著作権管理部
１３２  ライセンス抽出部
１３４  ステータス情報抽出部
１３６  変数分析部
１３８  変数設定部
１４０  条件式判断部
１４２  ドメイン特定部
１４４  ステータス情報更新部
Ｃ  コンテンツＣ
Ｌ  ライセンス
ＵＲ  使用条件情報
Ｓ  ステータス情報
【図１】
2006011555.tif 000003
【図２】
2006011555.tif 000004
【図３】
2006011555.tif 000005
【図４】
2006011555.tif 000006
【図５】
2006011555.tif 000007
【図６】
2006011555.tif 000008
【図７】
2006011555.tif 000009
【図８】
2006011555.tif 000010
【図９】
2006011555.tif 000011
【図１０】
2006011555.tif 000012
【図１１】
2006011555.tif 000013
【図１２】
2006011555.tif 000014
【図１３】
2006011555.tif 000015
【図１４】
2006011555.tif 000016
【図１５】
2006011555.tif 000017
【図１６】
2006011555.tif 000018
【図１７】
2006011555.tif 000019
【図１８】
2006011555.tif 000020
【図１９】
2006011555.tif 000021
【図２０】
2006011555.tif 000022