(57)【要約】許諾情報がマトリクス状に配置されてなる項目テーブルにおける項目番号（行番号）および項目値番号（列番号）の入力により、項目テーブルにおける許諾情報の集合からコード化対象の許諾情報を複数選択する選択工程と、選択された複数の許諾情報にそれぞれ対応する項目番号および項目値番号のグループから、所定のアルゴリズム（中国剰余定理等）により圧縮されたコードを生成するコード生成工程とを含む。
2005031981.tif 000002
【特許請求の範囲】
【請求項１】
第１の番号および第２の番号の入力により、情報の集合からコード化対象の情報を複数選択する選択工程と、
選択された複数の情報にそれぞれ対応する第１の番号および第２の番号のグループから、所定のアルゴリズムにより圧縮されたコードを生成するコード生成工程と、
をコンピュータに実行させるためのコード生成プログラム。
【請求項２】
前記情報の集合は、マトリクス状に配置されており、前記第１の番号は、マトリクスの行を特定するための番号であり、前記第２の番号は、前記マトリクスの列を特定するための番号であることを特徴とする請求の範囲第１項に記載のコード生成プログラム。
【請求項３】
前記選択工程では、選択パターンに対応させて前記第１の番号および前記第２の番号がデフォルト設定されたテンプレートを用いて、前記コード化対象の情報を複数選択することを特徴とする請求の範囲第１項に記載のコード生成プログラム。
【請求項４】
前記所定のアルゴリズムは、中国剰余定理であることを特徴とする請求の範囲第１項に記載のコード生成プログラム。
【請求項５】
前記所定のアルゴリズムは、素因数分解定理であることを特徴とする請求の範囲第１項に記載のコード生成プログラム。
【請求項６】
前記情報は、コンテンツの利用を制御するためのものであることを特徴とする請求の範囲第１項〜第５項のいずれか一つに記載のコード生成プログラム。
【請求項７】
前記コードは、バイナリコードであることを特徴とする請求の範囲第１項〜第５項のいずれか一つに記載のコード生成プログラム。
【請求項８】
第１の番号および第２の番号の入力により、情報の集合からコード化対象の情報を複数選択する選択工程と、
選択された複数の情報にそれぞれ対応する第１の番号および第２の番号のグループから、所定のアルゴリズムにより圧縮されたコードを生成するコード生成工程と、
を含むことを特徴とするコード生成方法。
【請求項９】
前記情報の集合は、マトリクス状に配置されており、前記第１の番号は、マトリクスの行を特定するための番号であり、前記第２の番号は、前記マトリクスの列を特定するための番号であることを特徴とする請求の範囲第８項に記載のコード生成方法。
【請求項１０】
前記選択工程では、選択パターンに対応させて前記第１の番号および前記第２の番号がデフォルト設定されたテンプレートを用いて、前記コード化対象の情報を複数選択することを特徴とする請求の範囲第８項に記載のコード生成方法。
【請求項１１】
前記所定のアルゴリズムは、中国剰余定理であることを特徴とする請求の範囲第８項に記載のコード生成方法。
【請求項１２】
前記所定のアルゴリズムは、素因数分解定理であることを特徴とする請求の範囲第８項に記載のコード生成方法。
【請求項１３】
前記情報は、コンテンツの利用を制御するためのものであることを特徴とする請求の範囲第８項〜第１２項のいずれか一つに記載のコード生成方法。
【請求項１４】
前記コードは、バイナリコードであることを特徴とする請求の範囲第８項〜第１２項のいずれか一つに記載のコード生成方法。
【請求項１５】
第１の番号および第２の番号の入力により、情報の集合からコード化対象の情報を複数選択する選択手段と、
選択された複数の情報にそれぞれ対応する第１の番号および第２の番号のグループから、所定のアルゴリズムにより圧縮されたコードを生成するコード生成手段と、
を備えたことを特徴とするコード生成装置。
【請求項１６】
前記情報の集合は、マトリクス状に配置されており、前記第１の番号は、マトリクスの行を特定するための番号であり、前記第２の番号は、前記マトリクスの列を特定するための番号であることを特徴とする請求の範囲第１５項に記載のコード生成装置。
【請求項１７】
前記選択手段は、選択パターンに対応させて前記第１の番号および前記第２の番号がデフォルト設定されたテンプレートを用いて、前記コード化対象の情報を複数選択することを特徴とする請求の範囲第１５項に記載のコード生成装置。
【請求項１８】
前記所定のアルゴリズムは、中国剰余定理であることを特徴とする請求の範囲第１５項に記載のコード生成装置。
【請求項１９】
前記所定のアルゴリズムは、素因数分解定理であることを特徴とする請求の範囲第１５項に記載のコード生成装置。
【請求項２０】
前記情報は、コンテンツの利用を制御するためのものであることを特徴とする請求の範囲第１５項〜第１９項のいずれか一つに記載のコード生成装置。
【請求項２１】
前記コードは、バイナリコードであることを特徴とする請求の範囲第１５項〜第１９項のいずれか一つに記載のコード生成装置。
【請求項２２】
前記請求の範囲第８項〜第１３項のいずれか一つに記載のコード生成方法により生成されたコードに基づいてコンテンツの利用制御を行う制御工程をコンピュータに実行させるためのコンテンツ利用プログラム。
【請求項２３】
前記請求の範囲第８項〜第１３項のいずれか一つに記載のコード生成方法により生成されたコードに基づいてコンテンツの利用制御を行う制御工程を含むことを特徴とするコンテンツ利用方法。
【請求項２４】
前記請求の範囲第８項〜第１３項のいずれか一つに記載のコード生成方法により生成されたコードに基づいてコンテンツの利用制御を行う制御手段を備えたことを特徴とするコンテンツ利用装置。
【発明の詳細な説明】
【技術分野】  本発明は、所定情報のコード化や、コードに基づくコンテンツの利用に用いて好適なコード生成プログラム、コード生成方法、コード生成装置、コンテンツ利用プログラム、コンテンツ利用方法およびコンテンツ利用装置に関するものであり、特に、コード化の効率を高めることができるコード生成プログラム、コード生成方法、コード生成装置、コンテンツ利用プログラム、コンテンツ利用方法およびコンテンツ利用装置に関するものである。
【背景技術】  従来より、所定の複数の情報からコードを生成する技術が広く用いられている。第１０図は、従来のコード生成を説明する図である。同図において、情報Ｘ、情報Ｙおよび情報Ｚは、コード化対象の情報（被コード化情報）である。コードＣは、情報Ｘ、情報Ｙおよび情報Ｚがコード化されたものである。
コードＣにおいては、情報Ｘ、情報Ｙおよび情報Ｚに対応させてｘビット、ｙビットおよびｚビットが固定的に割り当てられている。従って、コードＣは、ｘ＋ｙ＋ｚビット（固定値）である。
そして、情報Ｘは、コード化され、ｘビットの部分コードＣｘとされる。情報Ｙも、コード化され、ｙビットの部分コードＣｙとされる。同様に、情報Ｚもコード化され、ｚビットの部分コードＣｚとされる。これにより、部分コードＣｘ、部分コードＣｙおよび部分コードＣｚからなるコードＣが生成される。
【特許文献１】  特開２０００−１７２８０２
ところで、前述したように従来のコード生成方法においては、情報Ｘ、情報Ｙおよび情報Ｚをコード化することにより、情報の圧縮が図られる。
ここで、近時では、さらに効率的なコード化の要請がある。しかしながら、従来のコード生成方法においては、生成されるコードＣのデータ長（ｘ＋ｙ＋ｚビット）が固定的であるため、かかる要請に充分に応えることができないという問題があった。
本発明は、上記に鑑みてなされたもので、コード化の効率を高めることができるコード生成プログラム、コード生成方法、コード生成装置、コンテンツ利用プログラム、コンテンツ利用方法およびコンテンツ利用装置を提供することを目的とする。
【発明の開示】
上記目的を達成するために、本発明は、第１の番号および第２の番号の入力により、情報の集合からコード化対象の情報を複数選択する選択工程と、選択された複数の情報にそれぞれ対応する第１の番号および第２の番号のグループから、所定のアルゴリズムにより圧縮されたコードを生成するコード生成工程と、をコンピュータに実行させるためのコード生成プログラムである。
また、本発明は、第１の番号および第２の番号の入力により、情報の集合からコード化対象の情報を複数選択する選択工程と、選択された複数の情報にそれぞれ対応する第１の番号および第２の番号のグループから、所定のアルゴリズムにより圧縮されたコードを生成するコード生成工程と、を含むことを特徴とする。
また、本発明は、第１の番号および第２の番号の入力により、情報の集合からコード化対象の情報を複数選択する選択手段と、選択された複数の情報にそれぞれ対応する第１の番号および第２の番号のグループから、所定のアルゴリズムにより圧縮されたコードを生成するコード生成手段と、を備えたことを特徴とする。
かかる発明によれば、第１の番号および第２の番号の入力により、情報の集合から選択された複数の情報にそれぞれ対応する第１の番号および第２の番号のグループから、所定のアルゴリズムにより圧縮されたコードを生成することとしたので、コード化の効率を高めることができる。
また、本発明は、上記コード生成方法により生成されたコードに基づいてコンテンツの利用制御を行う制御工程をコンピュータに実行させるためのコンテンツ利用プログラムである。
また、本発明は、上記コード生成方法により生成されたコードに基づいてコンテンツの利用制御を行う制御工程を含むことを特徴とする。
また、本発明は、上記コード生成方法により生成されたコードに基づいてコンテンツの利用制御を行う制御手段を備えたことを特徴とする。
かかる発明によれば、コード化の効率やコンテンツの利用の効率を高めることができる。
【図面の簡単な説明】  第１図は、本発明にかかる一実施の形態の構成を示すブロック図であり、第２図は、同一実施の形態で用いられる項目テーブル５００を示す図であり、第３図は、同一実施の形態における項目番号および項目値番号の入力を説明する図であり、第４図は、第１図に示したコード生成装置１００の動作を説明するフローチャートであり、第５図は、第１図に示したコンテンツ利用装置４００の動作を説明するフローチャートであり、第６図は、同一実施の形態におけるテンプレート５１０Ａを説明する図であり、第７図は、同一実施の形態におけるテンプレート５１０Ｂを説明する図であり、第８図は、同一実施の形態におけるテンプレート５１０Ｃを説明する図であり、第９図は、同一実施の形態の変形例の構成を示すブロック図であり、第１０図は、従来のコード生成方法を説明する図である。
【発明を実施するための最良の形態】  以下、図面を参照して本発明にかかる一実施の形態について詳細に説明する。第１図は、本発明にかかる一実施の形態の構成を示すブロック図である。同図において、例えば、コンテンツ（音楽コンテンツ、映像コンテンツ、データコンテンツ、プログラムコンテンツ等）の利用制御を行うためのコードを生成し、このコードに基づいてコンテンツを利用するためのコード生成／コンテンツ利用システムが図示されている。
このコード生成／コンテンツ利用システムは、コード生成装置１００、ネットワーク２００、コンテンツ配信装置３００およびコンテンツ利用装置４００から構成されている。
コード生成装置１００は、所定のアルゴリズム（例えば、中国剰余定理）に基づいて、コンテンツの利用に関する複数の許諾情報から、効率良くコードを生成する装置である。
コード生成装置１００において、入力部１０１は、キーボード、マウス等の入力デバイスであり、コード生成に必要な各種情報の入力に用いられる。表示部１０２は、ＬＣＤ（Ｌｉｑｕｉｄ  Ｃｒｙｓｔａｌ  Ｄｉｓｐｌａｙ）やＣＲＴ（Ｃａｔｈｏｄｅ  Ｒａｙ  Ｔｕｂｅ）等であり、コード生成に必要な各種情報を表示する。
制御部１０３は、コード生成に関する制御を行う。この制御部１０３の動作の詳細については、後述する。項目テーブル格納部１０４は、図２に示した項目テーブル５００を格納する。
項目テーブル５００は、被コード化情報としての複数の許諾情報を二次元マトリクスにより表現したテーブルである。許諾情報は、コンテンツを利用する際の許諾条件（契約）を表す。
項目テーブル５００において、項目名は、コンテンツの利用許諾に関する項目（「公開区分」、「目的区分」、「課金区分」、「テリトリ区分」）を表す。項目番号は、各項目名に対応付けられた番号であり、マトリクスの行番号である。
各項目には、複数の選択枝がある。例えば、「公開区分」には、「選択しない」、「オープン許諾」、「クローズド許諾」、「その他」という４つの選択枝が存在する。
また、「目的区分」には、「選択しない」、「営利許諾」、「公共許諾」、「非営利許諾」、「プロモーション許諾」および「その他」という６つの選択枝が存在する。
また、「課金区分」には、「選択しない」、「無料」、「有料」および「その他」という４つの選択枝が存在する。また、「テリトリ区分」には、「無し」、「日本」、「韓国」、「中国」、「米国」および「ＥＵ」という６つの選択枝が存在する。項目値番号は、各選択枝に対応付けられた番号であり、マトリクスの列番号である。この項目値番号においては、後述する中国剰余定理の適用により、任意の２つが互いに素となるように数字が割り当てられている。
ここで、項目テーブル５００における各許諾情報は、項目番号および項目値により一意に特定される。第３図に示した例では、網掛け部分が一意に特定された許諾情報５００ａ、５００ｂ、５００ｃおよび５００ｄである。
例えば、許諾情報５００ａは、”「公開区分」を「選択しない」”という内容の許諾情報である。この許諾情報５００ａは、項目番号（＝１１）と項目値番号（＝０）とのクロスポイントにより一意に特定される。
また、許諾情報５００ｂは、”「目的区分」は「営利許諾」である”という内容の許諾情報である。この許諾情報５００ｂは、項目番号（＝１３）と項目値番号（＝１）とのクロスポイントにより一意に特定される。
また、許諾情報５００ｃは、”「課金区分」は「有料」である”という内容の許諾情報である。この許諾情報５００ｃは、項目番号（＝１７）と項目値番号（＝２）とのクロスポイントにより一意に特定される。
また、許諾情報５００ｄは、”「テリトリ区分」は「日本」である”という内容の許諾情報である。この許諾情報５００ｄは、項目番号（＝１９）と項目値番号（＝１）とのクロスポイントにより一意に特定される。
第１図に戻り、コード生成部１０５は、例えば、中国剰余定理に基づいて、項目テーブル５００（第３図参照）で選択された項目番号および項目値番号（許諾情報）からコードを生成する。生成されたコードは、コンテンツ利用装置４００においてコンテンツ３１０の利用制御に用いられる。なお、コード生成部１０５の動作の詳細については、後述する。
コード格納部１０６は、コード生成部１０５により生成されたコードを格納する。通信部１０７は、所定の通信プロトコルに従って、通信を制御する。
コンテンツ配信装置３００は、ネットワーク２００を介して、コンテンツ３１０をコンテンツ利用装置４００へ配信する。このコンテンツ３１０は、音楽コンテンツ、映像コンテンツ、データコンテンツ、プログラムコンテンツ等であり、コンテンツ利用装置４００により利用（再生、実行等）される。
コンテンツ利用装置４００は、コード生成装置１００で生成されたコードに基づいて、コンテンツ３１０を利用するための装置である。このコンテンツ利用装置４００において、入力部４０１は、キーボードやマウス等の入力デバイスであり、コンテンツの利用に必要な各種情報の入力に用いられる。
表示部４０２は、ＬＣＤやＣＲＴ等であり、コンテンツの利用に必要な各種情報を表示する。
制御部４０３は、コンテンツの利用に関する制御を行う。この制御部４０３の動作の詳細については、後述する。コード格納部４０４は、コード生成装置１００で生成されたコードを格納する。項目テーブル格納部４０５は、図２に示した項目テーブル５００を格納する。
すなわち、コンテンツ利用装置４００の項目テーブル格納部４０５およびコード生成装置１００の項目テーブル格納部１０４の双方には、同一の項目テーブル５００がそれぞれ格納されている。
コンテンツ格納部４０６は、コンテンツ配信装置３００よりネットワーク２００を介して配信されたコンテンツ３１０を格納する。コンテンツ出力部４０７は、コードにより利用制御されたコンテンツを大型ディスプレイや音響装置へ出力する。通信部４０８は、所定の通信プロトコルに従って、通信を制御する。
つぎに、一実施の形態の動作について、第４図および第５図に示したフローチャートを参照しつつ説明する。第４図は、第１に示したコード生成装置１００の動作を説明するフローチャートである。第５図は、第１図に示したコンテンツ利用装置４００の動作を説明するフローチャートである。
第４図に示したステップＳＡ１では、コード生成装置１００の制御部１０３は、第２図に示した項目テーブル５００を表示部１０２に表示させる。ステップＳＡ２では、制御部１０３は、コード化すべき許諾情報に対応する項目番号および項目値番号をオペレータに入力させる。
ここでコード化すべき許諾情報は、例えば、第３図に示した許諾情報５００ａ、許諾情報５００ｂ、許諾情報５００ｃおよび許諾情報５００ｄである。
ステップＳＡ３では、制御部１０３は、項目番号および項目値番号の入力が終了したか否かを判断し、この場合、判断結果を「Ｎｏ」として、ステップＳＡ２の処理を実行する。
そして、オペレータは、入力部１０１を用いて、上記許諾情報５００ａ、許諾情報５００ｂ、許諾情報５００ｃおよび許諾情報５００ｄにそれぞれ対応する項目番号および項目値番号をつぎのように入力する。
（項目番号）    （項目値番号）
許諾情報５００ａ→      １１            ０
許諾情報５００ｂ→      １３            １
許諾情報５００ｃ→      １７            ２
許諾情報５００ｄ→      １９            １
制御部１０３は、上記入力された複数の項目番号および項目値番号を第３図に示したプロファイル５０１とする。
上記入力が終了すると、制御部１０３は、ステップＳＡ３の判断結果を「Ｙｅｓ」とする。ステップＳＡ４では、コード生成部１０５は、中国剰余定理に基づいて、項目番号および項目値番号（プロファイル５０１：第３図参照）からコードを生成する。
ここで、中国剰余定理は、どの２つも互いに素な自然数ｍ１、・・・ｍｒが与えられたとき、つぎの連立合同式
ｘ≡Ｖ１ｍｏｄ（Ｎ１）
ｘ≡Ｖ２ｍｏｄ（Ｎ２）
・
・
・
ｘ≡Ｖｎｍｏｄ（Ｎｎ）
に解が存在し、１つの解をｘ０とすれば、解全体がつぎの式で与えられるというものである。
｛ｘ０＋ｎΠｉｍｉ｜ｎ∈Ｚ｝
例えば、３で割ると２余り、５で割ると３余り、７で割ると２余るという整数を求めよという問題の場合には、中国剰余定理より、２３が１つの解となる。
この中国剰余定理をコード生成に適用した場合には、「コードを被除数、項目番号を除数とし、項目値番号を剰余とすると、ステップＳＡ２で入力された「複数の項目番号および項目値番号を特定する整数が定まる」ということになる。一実施の形態では、上記整数がコードとして取り扱われる。
一実施の形態に中国剰余定理を適用すると、つぎの連立合同式が得られる。
コード≡Ｖ１ｍｏｄ（Ｎ１）
コード≡Ｖ２ｍｏｄ（Ｎ２）
・
・
・
コード≡Ｖｎｍｏｄ（Ｎｎ）
上記連立合同式において、Ｖ１、Ｖ２、・・・、Ｖｎは、項目番号（同プロファイル５０１では、１１、１３、１７、１９）である。Ｎ１、Ｎ２、・・・、Ｎｎは、項目値番号（第３図のプロファイル５０１では、０、１、２、１）である。
すなわち、プロファイル５０１（第３図参照）で表された各項目番号および項目値番号に中国剰余定理を適用すると、１１で割って０余り、１３で割って、１余り、１７で割って２余り、１９で割って１余る整数は、４９５である（第３図参照）。すなわち、この４９５がコードである。
ここで、中国剰余定理を適用しない場合、プロファイル５０１（第３図に参照）における項目番号および項目値番号を順番に羅列したものをコードとすると、
「１１０１３１７２１９１」がコードである。
これに対して、中国剰余定理を適用した場合には、「４９５」がコードとされ、コード化の効率（圧縮率）を高くすることができる。なお、上記では、コードを１０進数で表現しているが、実際には、バイナリコード（２進数）で表現される。
ステップＳＡ５では、制御部１０３は、コード生成部１０５で生成されたコード（「４９５」）をコード格納部１０６に格納した後、一連の処理を終了する。
一方、コンテンツ利用装置４００において、第５図に示したステップＳＢ１では、制御部４０３は、ネットワーク２００を介して、コード生成装置１００にアクセスし、上記生成されたコード（「４９５」）を取得する。ステップＳＢ２では、制御部４０３は、取得したコード（「４９５」）をコード格納部４０４に格納する。
ステップＳＢ３では、制御部４０３は、ネットワーク２００を介してコンテンツ配信装置３００にアクセスし、コンテンツ３１０を取得する。ステップＳＢ４では、制御部４０３は、取得したコンテンツ３１０をコンテンツ格納部４０６に格納する。
ステップＳＢ５では、制御部４０３は、ステップＳＡ４での逆のロジックによりコード（「４９５」）から項目番号および項目値番号（プロファイル５０１：第３図参照）を求める。ステップＳＢ６では、制御部４０３は、ステップＳＢ５で求められた項目番号および項目値番号を項目テーブル格納部４０５に格納されている項目テーブル５００（第２図参照）に適用し、許諾情報を得る。
この場合、制御部４０３は、許諾情報として、第３図に示した許諾情報５００ａ、許諾情報５００ｂ、許諾情報５００ｃおよび許諾情報５００ｄを取得する。
ステップＳＢ７では、制御部４０３は、ステップＳＢ６で取得した各許諾情報に基づいて、コンテンツ格納部４０６に格納されているコンテンツ３１０の利用を制御する。
なお、上述した一実施の形態においては、コード生成アルゴリズムとしての中国剰余定理の場合について説明したが、他のアルゴリズムを適用してもよい。例えば、一実施の形態においては、素因数分解定理に基づいて、コードを生成してもよい。この素因数分解定理は、「合成数を素数の積に分解することができ、かつその分解の結果はただ一様である」というものである。
すなわち、ａ＝ｐαｑβｒγ・・・を素数べきへの分解とすれば、ａのすべての約数は、
ｐｘｑｙｒｚ・・・
において、０≦ｘ≦α、０≦ｙ≦β、０≦ｚ≦γ、・・・とすることによってもれなく重複なく得られる。
ここで、上記素因数分解定理を一実施の形態に適用した場合、α、β、γ、・・・を各項目値番号とし、ｐ、ｑ、ｒ、・・・を各項目番号とすれば、コードが一意に特定される。
具体的には、項目値番号を５、３、３とし、項目番号を２、３、５とした場合、素因数分解定理を適用すれば、コードは、１８４（２∧５＋３∧３＋５∧３）となる。
ここで、素因数分解定理を適用しない場合、プロファイル５０１（第３図参照）における項目番号および項目値番号を順番に羅列したものをコードとすると、
「２５３３５３」がコードである。
これに対して、素因数分解定理を適用した場合には、「１８４」がコードとされ、コード化の効率（圧縮率）を高くすることができる。なお、上記では、コードを１０進数で表現しているが、実際には、バイナリコード（２進数）で表現される。
また、一実施の形態においては、第４図に示したステップＳＡ２で、全許諾情報に対応させて複数の項目番号および項目値番号を入力する例について説明したが、第６図、第７図および第８図に示したように項目テーブル５００における定型的な許諾情報の組み合わせパターンについて、テンプレート５１０Ａ、５１０Ｂおよび５１０Ｃをコード生成装置１００で用意しておき、いずれかのテンプレートを選択して、入力にかかる負担を軽減するように構成してもよい。
第６図に示したテンプレート５１０Ａは、同図の項目テーブル５００の網掛け部分の許諾情報について、項目番号および項目値番号がデフォルト設定されている。従って、オペレータは、デフォルト設定されている許諾情報について入力が不要となる。第７図および第８図に示したテンプレート５１０Ｂおよびテンプレート５１０Ｃについても同様である。
以上説明したように、一実施の形態によれば、項目テーブル５００（第３図参照）における項目番号（第１の番号）および項目値番号（第２の番号）の入力により、許諾情報の集合から選択された複数の許諾情報にそれぞれ対応する項目番号および項目値番号のグループから、所定のアルゴリズムにより圧縮されたコードを生成することとしたので、コード化の効率を高めることができる。
また、一実施の形態によれば、第６図〜第８図を参照して説明したように、選択パターンに対応させて項目番号および項目値番号がデフォルト設定されたテンプレート５１０Ａ〜５１０Ｃを用いて、コード化対象の許諾情報を複数選択することとしたので、入力にかかる負担を軽減することができる。
また、一実施の形態によれば、コード化の効率やコンテンツの利用の効率を高めることができる。
以上本発明にかかる一実施の形態について図面を参照して詳述してきたが、具体的な構成例はこの一実施の形態に限られるものではなく、本発明の要旨を逸脱しない範囲の設計変更等があっても本発明に含まれる。
例えば、前述した一実施の形態においては、第１図に示したコード生成装置１００やコンテンツ利用装置４００の各機能を実現するためのコンピュータプログラムを第９図に示したコンピュータ読み取り可能な記録媒体６００に記録して、この記録媒体６００に記録されたプログラムをコンピュータ５００に読み込ませ、実行することにより各機能を実現してもよい。
コンピュータ５００は、上記プログラムを実行するＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）５１０と、キーボード、マウス等の入力装置５２０と、各種データを記憶するＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）５３０と、演算パラメータ等を記憶するＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）５４０と、記録媒体６００からプログラムを読み取る読取装置５５０と、ディスプレイ、プリンタ等の出力装置５６０とから構成されている。
ＣＰＵ５１０は、読取装置５５０を経由して記録媒体６００に記録されているプログラムを読み込んだ後、プログラムを実行することにより、前述した各機能を実現する。なお、記録媒体６００としては、光ディスク、フレキシブルディスク、ハードディスク等が挙げられる。
以上説明したように、本発明によれば、第１の番号および第２の番号の入力により、情報の集合から選択された複数の情報にそれぞれ対応する第１の番号および第２の番号のグループから、所定のアルゴリズムにより圧縮されたコードを生成することとしたので、コード化の効率を高めることができるという効果を奏する。
また、本発明によれば、選択パターンに対応させて第１の番号および第２の番号がデフォルト設定されたテンプレートを用いて、コード化対象の情報を複数選択することとしたので、入力にかかる負担を軽減することができるという効果を奏する。
また、本発明によれば、コード化の効率やコンテンツの利用の効率を高めることができるという効果を奏する。
【産業上の利用可能性】  以上のように、本発明にかかるコード生成プログラム、コード生成方法、コード生成装置、コンテンツ利用プログラム、コンテンツ利用方法およびコンテンツ利用装置は、情報のコード化、コードに基づくコンテンツの利用に対して有用である。
【図１】
2005031981.tif 000003
【図２】
2005031981.tif 000004
【図３】
2005031981.tif 000005
【図４】
2005031981.tif 000006
【図５】
2005031981.tif 000007
【図６】
2005031981.tif 000008
【図７】
2005031981.tif 000009
【図８】
2005031981.tif 000010
【図９】
2005031981.tif 000011
【図１０】
2005031981.tif 000012
【国際調査報告】
2005031981.tif 000013
2005031981.tif 000014
2005031981.tif 000015