(57)【要約】【課題】  電子化データをユーザに配信する場合の問題点、１）データ容量が大きくなると待ち時間が大きくなる、２）電子化データの不正コピーを防止する、３）データソースが複数ある場合に最適なものを選択する、４）いわゆる、立ち読みを難しくなる、５）電子化データ以外は利用できない、６）検索された部分を、適当な単位で取り出せない、を解決する。【解決手段】  本発明のデータ流通システムは、データ選択装置と、データソース選択装置と、データ受信装置と、このデータ受信装置に接続された複数のデータソースとからなり、前記データ選択装置からの選択に応じて、データソース選択装置が特定の基準にしたがって前記複数のデータソースより特定のデータを選択し、該データソースよりデータを受信装置が受信することを特徴とする。【選択図】        図１
2004185632.tif 000002
【特許請求の範囲】
【請求項１】
データ検査装置と、複数台のデータ記憶装置と、前記データ検査装置と前記データ記憶装置間のデータ送信または送受信を行なうデータ通信装置を備えた複製データ検出システムであって、前記各データ記憶装置はデータ通信装置と常時または必要に応じて接続されるか、または一体化しており、正常な使用状態では各データ記憶装置に一意的に与えられた、認証コードを含むデータを記憶しており、データ通信装置はデータ記憶装置に記憶されている、認証コードを含む情報をデータ検査装置に送信し、前記データ検査装置は、データ通信装置から送信された情報に基づいて、２台以上の異なるデータ記憶装置が共通の認証コードを記憶しているかどうか、または過去に記憶していたことがあるかどうかを検査し、そのように判定された場合には、当該認証コードを記憶しているか過去に記憶していたデータ記憶装置のいずれか、または全てが複製であると判定することを特徴とする複製データ検出システム。
【請求項２】
請求項１記載の複製データ検出システムであって、データ通信装置は、あらかじめ定められたタイミングのパターンでデータ検査装置に認証コードを含む情報を送信し、同一の認証コードを含む情報の送られてくるタイミングが、前記定められたパターンからずれている場合に、複数のデータ記憶装置が同一の認証コードを記憶していると判定し、そのような場合には、当該認証コードを記憶しているデータ記憶装置のいずれか、または全てが複製であると判定することを特徴とした複製データ検出システム。
【請求項３】
請求項１に記載の複製データ検出システムであって、前記データ検査装置は、記憶されている認証コードが分かっているデータ記憶手段に対して、別の認証コードまたはそれを生成するためのデータをデータ通信装置を通して送信して、当該データ記憶装置の持つ認証コードを直接的にまたは間接的に書き換え、さらに、データ検査装置は以降、永久的にまたは所定の期間内に、書き換える前の当該データ記憶装置の認証コードと同じ認証コードを含む情報を送信するデータ記憶装置が検出された場合は、複数のデータ記憶装置が同一の認証コードを記憶しているか、または過去に記憶していたと判定し、そのように判定された場合には、当該認証コードを記憶しているまたは過去に記憶していたデータ記憶装置のいずれか、または全てが複製であると判定することを特徴とした複製データ検出システム。
【請求項４】
請求項１、２、３のいずれか１項に記載の複製データ検出システムであって、データ通信装置は、データ再生装置の一部分となっており、データ記憶装置は、認証コードに加えて、データ再生装置で再生されるための再生データを記憶しており、データ再生装置は、データ検査装置によって複製であると判定されたデータ記憶装置に対しては、データ検査装置によって複製であると判定されなかったデータ記憶装置に対する動作と異なる動作を行うことを特徴とする複製データ検出システム。
【請求項５】
請求項１、２、３のいずれか１項に記載の複製データ検出システムであって、データ通信装置は、データ再生装置の一部分となっており、データ記憶装置は、認証コードに加えて、データ再生装置で再生され、データ更新装置で更新される再生データを記憶しており、データ更新装置は、データ検査装置によって複製であると判定されたデータ記憶装置に対しては、データ検査装置によって複製であると判定されなかったデータ記憶装置に対する動作と異なる動作を行うことを特徴とする複製データ検出システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データ流通システムおよび複製データ検出システムに関し、特にユーザが所持する装置を用いて、流通したデータを再生などの形で使用する形態のデータ流通システムおよびそのために用いられる複製データ検出システムに関する。
【背景技術】
【０００２】
データを通信回線を用いて流通させる技術の例として、特開平２−４７７７１号公報や、特公平５−８３９４８号公報に開示されているものが挙げられる。これは、電子化された書籍データを、一般の書店などを経由せずに、通信回線を用いて、記憶手段にダウンロードして、再生装置を用いて再生するものである。より詳細には、特開平２−４７７７１号公報は、データ再生手段からの要求によってデータ供給手段のデータベースにおける検索が行われ、検索されたデータ群は通信手段によってデータ再生手段に伝達され、データ再生手段では伝達されたデータ群を記憶するとともに使用者の指示に基づくページ毎にデータ群の表示が行われるものである。これによって使用者は通信回線を通じて書籍などのデータを入手でき、またデータ再生手段を利用して必要な場所、時間にその再生を行うことができる。
【０００３】
特公平５−８３９４８号公報は、不特定多数の情報購入者が公衆の容易にアクセス可能な場所に設置された公衆情報販売装置から、その購入を希望する情報を保有している情報源装置のいずれかに通信網を介して接続し、希望情報の購入取引を行う。料金清算ないしは料金支払いを保証する身分証明の確認などは販売装置においても取引の契約ないしは成立時点で行われるとともに、購入希望者は希望する情報を販売装置から即座に入手できるものである。これにより、情報の流通促進が期待される。
【特許文献１】特開平２−４７７７１号公報
【特許文献２】特公平５−８３９４８号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
上記従来技術は、電子化されたデータをユーザに配信するにあたっては、大きな利便性を提供するものであるが、実際に使用するにあたっては、以下のような問題が発生する。
【０００５】
１．データの容量が大きくなると、伝送に時間がかかるため、ユーザの待ち時間が過大になる。これは、電子配信の対象を、図鑑、写真集などの写真、図版を多く含む出版物、さらにはＣＤアルバムなど、単純なテキストデータよりかなり容量が大きいものまで広げた場合に非常な困難をもたらす。書店などの通常の販売経路では、ユーザが所望の書籍などを入手するのにかかる時間は、その出版物の内容には通常無関係であることを考えると、電子的な流通を実用的な形で実現するにはこの問題を解決することが非常に重要である。
【０００６】
２．著作権保護の問題が考慮されておらず、悪意のあるユーザが、ダウンロードしたデータを不正コピーして配布しても、これを検出することができない。これは、複写するのに時間のかかる紙書籍と、電子化されたデータとで大きく異なる点である。
【０００７】
３．通信速度、方法の異なるデータソース（情報源）の混在が考慮されていない。データソースとしては、処理速度の異なるホストコンピュータ、記憶容量の異なるメモリがあり、また有線、無線、衛星回線等、通信速度も多様であるため、ユーザが所望するデータソースが複数存在した場合、自動的に、最適なものが選択できる必要がある。
【０００８】
４．電子的流通を行なうことにより、購入前に内容を吟味すること、例えば書店での俗に言う「立ち読み」が難しくなる。そのため、電子的データを購入する際に一律に課金されるのでは、ユーザは、購入したものの、実際に内容を知ってみると、興味を引くものではなかった、という事態を想定しなくてはならなくなり、ユーザの不安は大きい。例えば特公平６−８５１９６号公報には、ソフトウエアの購入時に、ユーザにデモンストレーションを見せるソフトウエア販売機の技術が開示されているが、書籍など、その真価を知るのに一般に時間がかかる内容をこのような方法でユーザに把握させるのは不可能である。
【０００９】
５．すでに電子化されたデータしか選択することができない。このことは当然のようであるが、特に、書籍のように、電子化されていない形ではあるが非常に多くの種類の内容が通常のルートで入手可能と分かっている場合に、限られた内容の情報しか入手できないような電子流通を使用したいと考えるユーザは少数である。
【００１０】
６．電子化された書籍などのデータの、キーワードが出てくる部分を取り出す際、後々のためには、中途半端な単位ではなく、所望の部分を含む節、章などまとまった単位で取り出したいとユーザが考えるのは当然のことであるが、このようなことが可能な検索装置は従来知られていなかった。
【００１１】
本発明は、以上のようなデータ流通システム及び複製データ検出システムの課題を解決した新しいシステムを提供するものである。
【課題を解決するための手段】
【００１２】
本発明によるデータ流通システムは、データ選択装置と、データソース選択装置と、データ受信装置と、該データ受信装置に接続された複数のデータソースとからなり、前記データ選択装置からの選択に応じて、データソース選択装置が特定の基準にしたがって該データを保持しているデータソースを選択し、該データソースより前記データ選択装置で選択されたデータを前記データ受信装置が受信することを特徴とする。
【００１３】
また、本発明のデータ流通システムは、データバッファリング装置を備え、データバッファリング装置は過去にデータ選択装置が選択したデータから所定の基準に基づいて選んだデータのバッファリングを行ない、このデータバッファリング装置を前記複数のデータソースの一つとする構成を特徴とする。
【００１４】
特に、前記データバッファリング装置にバッファリングされるデータを選ぶ基準は、容量または１回の伝送にかかる時間、選択された回数のいずれかまたは両方に基づくのが好ましい。また、前記データバッファリング装置の空き領域が少なくなった時には、容量または１回の伝送にかかる時間、選択された回数、データ選択装置によって最後に選択されてからの経過時間のいずれかまたは全てに基づいて消去するデータを選ぶことが好ましい。
【００１５】
また、本発明のデータ流通システムは、前記複数のデータソースは、時間をずらして、データを時分割式に繰り返し送信しており、前記データソース選択装置は、データ選択装置において選択されたデータがデータソースから送信されるまでの時間またはデータ受信装置で受信されるまでの時間がもっとも短いデータソースを選択することを特徴とする。
【００１６】
また、本発明のデータ流通システムは、データ選択装置と、データ受信装置と、データソースを備え、前記データソースは、異なるデータを時分割式に繰り返し送信しており、データソースは、前記データ選択装置にて選択される頻度が高いデータに、多く送信時間を割り当てることを特徴とする。
【００１７】
ここで、本発明において、データ検索装置は、検索条件入力手段と、検索手段と、記憶装置、および出力手段を備えて構成し、前記検索手段は、検索条件入力手段から入力された検索条件に適合した部分を含む、段落、節、章、書籍全体、データ全体など、または意味的にまとまった単位、または入力された検索条件に適合する名称を持った楽曲を含むアルバム全体など意味的にまとまった単位でデータを記憶装置から取り出し、出力することにより検索することができる。そして、階層構造を持ったデータを、深さレベルと存在範囲を示す情報によって統一的に管理することによりデータを格納することができる。
【００１８】
また、本発明のデータ流通システムは、データ選択装置と、データソースを備えたデータ流通システムであって、データソースにユーザが所望の電子的データが存在しない場合、前記電子的データ、またはそれと同一の、または類似した内容の非電子的データをデータソース以外の業者などの団体、個人または装置に前記データ選択装置から発注することを特徴とする。ここで、本来データソース以外の業者などの団体、個人または装置の少なくとも一部が、仮想的にデータソースの一種としてユーザに把握されるような表示を行なうことが望ましい。
【００１９】
さらに、本発明の請求項１に記載の複製データ検出システムは、データ検査装置と、複数台のデータ記憶装置と、前記データ検査装置と前記データ記憶装置間のデータ送信または送受信を行なうデータ通信装置を備えた複製データ検出システムであって、前記各データ記憶装置はデータ通信装置と常時または必要に応じて接続されるか、または一体化しており、正常な使用状態では各データ記憶装置に一意的に与えられた、認証コードを含むデータを記憶しており、データ通信装置はデータ記憶装置に記憶されている、認証コードを含む情報をデータ検査装置に送信し、前記データ検査装置は、データ通信装置から送信された情報に基づいて、２台以上の異なるデータ記憶装置が共通の認証コードを記憶しているかどうか、または過去に記憶していたことがあるかどうかを検査し、そのように判定された場合には、当該認証コードを記憶しているか過去に記憶していたデータ記憶装置のいずれか、または全てが複製であると判定することを特徴とする。
【００２０】
また、前記複製データ検出システムは、データ通信装置が、「使用開始」を示す情報を認証コードと共に送信したとき、その認証コードはデータ検査装置によって「使用中である」に分類され、「使用を終了する」という情報が、認証コードと共に送信された時は、それ以降、その認証コードは「使用中でない」に分類され、その両方のいずれにも該当しない認証コードは、「使用中ではない」に分類され、「使用中である」に分類されている認証コードが、「使用を開始する」という情報とともに送信された場合、または「使用中でない」に分類されている認証コードが、「使用を終了する」という情報とともに送信された場合のいずれかまたは両方の場合に、２台以上の異なるデータ記憶装置が当該認証コードを記憶していると判定するものであってもよい。
【００２１】
さらに、本発明の請求項２に記載の複製データ検出システムは、データ通信装置は、あらかじめ定められたタイミングのパターンでデータ検査装置に認証コードを含む情報を送信し、同一の認証コードを含む情報の送られてくるタイミングが、前記定められたパターンからずれている場合に、複数のデータ記憶装置が同一の認証コードを記憶していると判定し、そのように判定された場合には、当該認証コードを記憶しているデータ記憶装置のいずれか、または全てが複製であると判定することを特徴とする。
【００２２】
さらに、本発明の請求項３に記載の複製データ検出システムは、前記データ検査装置は、記憶されている認証コードが分かっているデータ記憶手段に対して、別の認証コードまたはそれを生成するためのデータをデータ通信装置を通して送信して、当該データ記憶装置の持つ認証コードを直接的にまたは間接的に書き換え、さらに、データ検査装置は以降、永久的にまたは所定の期間内に、書き換える前の当該データ記憶装置の認証コードと同じ認証コードを含む情報を送信するデータ記憶装置が検出された場合は、複数のデータ記憶装置が同一の認証コードを記憶しているか、または過去に記憶していたと判定し、そのように判定された場合には、当該認証コードを記憶しているまたは過去に記憶していたデータ記憶装置のいずれか、または全てが複製であると判定することを特徴とする。
【００２３】
さらに、本発明の請求項４に記載の複製データ検出システムは、データ通信装置は、データ再生装置の一部分となっており、データ記憶装置は、認証コードに加えて、データ再生装置で再生されるための再生データを記憶しており、データ再生装置は、データ検査装置によって複製であると判定されたデータ記憶装置に対しては、データ検査装置によって複製であると判定されなかったデータ記憶装置に対する動作と異なる動作を行うことを特徴とする。また、本発明による複製データ検出システムは、少なくとも、上述の複製データ検出システムおよび複数台のデータ再生装置を備え、データ記憶手段は、認証データに加えて、データ再生装置で再生されるデータを記憶しており、データ通信装置は、データ再生装置の一部分となっており、データ再生装置は、複製データ検出システムによって複製であると判定されたデータ記憶手段に対しては、そのデータの再生を中止する、データの再生の仕方に制限を設ける、ユーザに対する警告のメッセージを表示するなどの方法で、複製データ検出システムによって複製であると判定されなかったデータ記憶手段に対する動作と異なる動作を行なうことを特徴とした構成も可能である。
【００２４】
さらに、本発明の請求項５に記載の複製データ検出システムは、データ通信装置は、データ再生装置の一部分となっており、データ記憶装置は、認証コードに加えて、データ再生装置で再生され、データ更新装置で更新される再生データを記憶しており、データ更新装置は、データ検査装置によって複製であると判定されたデータ記憶装置に対しては、データ検査装置によって複製であると判定されなかったデータ記憶装置に対する動作と異なる動作を行うことを特徴とする。
【００２５】
さらに、本発明のデータ流通システムは、データ記憶手段と、データ更新装置と、課金装置とを備え、前記データ記憶手段は、データ及びデータの更新装置による書き込み日時または日時及び時刻を記憶し、前記データ更新装置は、データ記憶手段にデータ及び料金情報の書き込みまたは書き換えを行い、前記課金装置は、現在日時または日時及び時刻と、データ記憶手段に格納されたデータのデータ更新装置による書き込み日時または日時及び時刻との差から課金額を決定することを特徴とする。
【００２６】
さらに、本発明のデータ流通システムは、データ記憶手段と、データ更新装置と、課金装置とを備え、前記データ記憶手段は、データ及びデータの更新装置による書き込み日時または日時及び時刻と、単位日時または時間当たりの料金を記憶し、前記データ更新装置は、データ記憶手段にデータ及び料金情報の書き込みまたは書き換えを行い、前記課金装置は、現在日時または日時及び時刻と、データ記憶手段に格納されたデータのデータ更新装置による書き込み日時または日時及び時刻との差と、単位日時または時間当たりの料金から課金額を決定することを特徴とする。
【００２７】
さらに、本発明のデータ流通システムは、データ記憶手段と、データ使用記録装置と、データ再生装置と、課金装置と、課金装置に備えられたデータ使用記録読み取り装置を備え、前記データ記憶手段にはデータが格納されており、前記データ使用記録装置は、データ記憶手段に格納されたデータがデータ再生装置によって使用された時刻、日付、時間の長さ、回数などを記録し、前記課金装置は、データ使用記録装置に記録された内容をデータ使用記録読み取り装置により読み取って、課金する額を決定することを特徴とする。
【００２８】
本発明によるデータ流通システムは少なくとも課金装置と、データ更新装置と、データ再生装置と、データ記憶手段と、データ更新記録装置を備え、課金装置にはデータ更新記録読み取り装置を備え、データ記憶手段には、データ再生装置で再生するためのデータが主に格納されており、データ更新装置は、データ記憶手段のデータの書き込みまたは書き換えを行ない、データ更新記録装置は、データ記憶手段に格納されたデータの、データ更新装置による書き込み日時、または時刻および日時を記録しており、データ更新記録装置が、データ更新記録読み取り装置に接続またはセットされると、データ更新記録読み取り装置は、データ更新記録装置に記録されている情報を読み取り、課金装置はデータ更新記録読み取り装置が読み取った内容に基づいて、課金する額を決定する構成も可能である。
【００２９】
また、データ更新記録装置は、データ記憶装置の一部領域にデータ更新記録を書き込み、したがって、課金のために実際にデータ更新記録読み取り装置に接続またはセットされるのは、データ記憶装置またはデータ記憶装置を含んだデータ再生装置であることを特徴とした構成も可能である。
【００３０】
さらに、課金装置には少なくとも、データ記憶装置に格納されている、データ再生装置で使用するためのデータを更新するデータ更新装置を備え、データ更新記録読み取り装置に、データ記憶装置またはデータ記憶装置を含んだデータ再生装置が接続またはセットされる際に、所定の条件が充たされていれば、データ更新装置が、データ記憶装置のデータを更新することを特徴とした構成も可能である。
【００３１】
さらに、本発明のデータ流通システムは、データ使用記録装置は、データ記憶装置の一部領域となっており、したがって、課金のために実際にデータ使用記録読み取り装置に接続またはセットされるのは、データ記憶装置またはデータ記憶装置を含んだデータ再生装置であることを特徴とした構成も可能である。また、本発明のデータ流通システムは、課金装置には少なくとも、データ記憶装置に格納されている、データ再生装置で使用するためのデータを更新するデータ更新装置を備え、データ使用記録読み取り装置に、データ記憶装置またはデータ記憶装置を含んだデータ再生装置が接続またはセットされる際に、所定の条件が充たされていれば、データ更新装置がデータ記憶装置のデータを更新する構成も可能である。
【発明を実施するための最良の形態】
【００３２】
（第１の実施の形態）
図１は、本発明の第１の実施の形態であるデータ流通システムのブロック図を示す。データ販売機１０１は店舗等のユーザーが比較的自由に利用可能な適当な設置場所に置かれて、ユーザが持参したミニディスク（ＭＤ）、メモリカードのようなメモリ手段に、電子化された書籍データを書き込んで販売することを想定するが、このような想定、以下の各構成要素の具体的な仕様、細部の構成およびデータ構造は、あくまでも説明のための例であり、この発明の範囲を限定するものではない。
【００３３】
データ販売機１０１は、データ選択装置１０２、データソース選択装置１０３、データ受信装置１０４、データ更新装置１０５、課金装置１０６、表示装置１０８、データ情報テーブル１０９、データレートテーブル１１０を備えている。ここで、データ更新装置１０５は、ミニディスク１０７の書き込みあるいは書き換えを行う。データ受信装置１０４は、４つのデータソース、ここでは第１のデータ衛星１１１、第２のデータ衛星１１２、第１のデータサーバ１１３、第２のデータサーバ１１４に接続され、データを受信する。本来データ販売機１０１は複数台あっても差し支えないが、１台でも特に動作に重要な違いはないので、以下では１台のデータ販売機１０１を持つデータ流通システムについて説明する。
【００３４】
以下、ユーザがデータ販売機１０１を使用して、データを購入する際のデータ流通システム全体の処理の流れを図２のフローチャートに沿って説明する。
【００３５】
まず、ユーザがデータ更新装置１０５に、ユーザが持参したミニディスク１０７を挿入する（ステップＳ２０１）と、データ選択装置１０２は、データ情報テーブル１０９に格納されている図３に例を示すデータ情報テーブル１０９の内容の一部を取り出して、表示装置１０８に表示する（ステップＳ２０２）。この例では、データ情報テーブル１０９は、選択可能なデータの数を表すデータ数フィールド３０１と、データ数フィールド３０１があらわす数だけ存在する、各データの名称を示す名称フィールド３０２、各データの販売価格を示す価格フィールド３０３、各データが存在するデータソースを示すデータソースフィールド３０４、および各データの容量をバイトで表した容量フィールド３０５からなる。
【００３６】
データ数フィールド３０１は、選択可能なデータの数を２バイトの符号なし整数で表し、名称フィールド３０２はここでは１つのデータにつき１６文字のシフトＪＩＳコードで格納されているとする。ただし、データの名称が１６文字を本来超える場合は、最初の１６文字が格納され、１６文字に満たない場合は０で埋められているとする。価格フィールド３０３は各データの価格を２バイトの符号なし整数で表している。データソースフィールド３０４は、データ数フィールド３０１であらわされる数だけある各データごとに、各データソースに対応するビットが割り当てられており、「１」のビットはそのデータソースに該当データが存在すること、「０」のビットは、存在しないことを示す。データソースフィールド３０４はデータソースが新たに該当のデータが用意されると、更新される。容量フィールド３０５は各データのバイト単位の容量を４バイトの符号なし整数で表している。ただし図３では整数はすべて１０進で、シフトＪＩＳコードは対応する漢字に直して図示した。
【００３７】
図４は表示装置１０８の表示例およびデータ選択装置１０２が備える、前項目スイッチ４０１、次項目スイッチ４０２、決定スイッチ４０３および取り消しスイッチ４０４の外観図である。現在選択対象になっているデータの名称及び販売価格が、長方形で囲まれて、あるいは反転表示して、各データごとに表示される。前項目スイッチ４０１が押されると、選択対象データは現在選択対象になっているデータの上隣に表示されているデータに切り替えられる（ステップＳ２０３）。次項目スイッチ４０２が押されると、選択対象データは現在選択対象となっているデータの下隣に表示されているデータに切り替えられる（ステップＳ２０４）。決定スイッチ４０３が押されると、データ選択装置１０２は、その時点で選択対象になっていたデータ、つまりユーザが購入しようとしているデータがどれであるかをデータソース選択装置１０３に伝える（ステップＳ２０５）。取り消しスイッチ４０４については後述する。
【００３８】
さて、データ情報テーブル１０９は、データ選択装置１０２とデータソース選択装置１０３で共有されているので、データ選択装置１０２からデータソース選択装置１０３に伝える必要があるのは、データ情報テーブル１０９の何番目にあるデータが選択されたかという情報のみである。データソース選択装置１０３は、データ情報テーブル１０９の、データソースフィールド３０４を参照して、選択されたデータが、どのデータソースに存在するかを調べ（ステップＳ２０６）、選択されたデータが存在するデータソースについて、そこからデータを取り出した場合の所要時間はどれほどかという情報をデータレートテーブル１１０から取り出して、その中でもっともデータレートの高い、すなわち転送に要する所要時間が平均的に最も短いデータソースを選択する（ステップＳ２０７）。
【００３９】
データレートテーブル１１０の例を図５に示す。各データソースごとの、データレートがここでは秒あたりの転送ビット数で表されている。ただし、ここであげた数値は説明のためであり、現在の技術による標準的な数値を必ずしも表してはいない。データレートはデータソースの技術革新、使用技術により更新されるものである。即ち、データ情報テーブル１０９、データレートテーブル１１０によって、各データソースで供給可能なデータや各データソースのデータレートを管理する利点について説明すると、もし各データソースで供給可能なデータや各データソースのデータレートが固定したものであれば、データごとに最速なデータソースを選択することは固定的に結線されたハードウエアでも可能であるが、実際には各データソースから供給可能なデータの内容、価格などは変化しうるため、データ情報テーブル１０９、データレートテーブル１１０の内容を変更するだけでそのような変化に対応できるようにしたのである。ここでは詳述しないが、データ情報テーブル１０９、データレートテーブル１１０を容易に書き換えられる方法として、フロッピーディスクから新しいテーブルの内容を読み取る、あるいは各データソースからそのデータソースに対応するテーブルの部分を適切なタイミングで送信するなどの方法を用いて、テーブルの更新を行なうことも考えられる。
【００４０】
この例では、データソースとしては、第１のデータ衛星１１１、第２のデータ衛星１１２、第１のデータサーバ１１３、第２のデータサーバ１１４の４つがあり、この順で、データレートがデータレートテーブル１１０に書かれているとする。各データソースは、第１のデータ衛星１１１、第２のデータ衛星１１２はもちろん、第１のデータサーバ１１３、第２のデータサーバ１１４も、データ受信装置１０２から物理的に遠く隔たった地点に存在していても良い。第１のデータ衛星１１１、第２のデータ衛星１１２は、データを電波によってデータ受信装置１０２に送信し、第１のデータサーバ１１３、第２のデータサーバ１１４は、データ受信装置１０４と高速電話回線で結ばれているとするが、このような通信手段はデータソースや用いられる技術によって他にも種々のものがありうるのはもちろんのことである。
【００４１】
各データソースは、データ販売機１０１と同一の構成を持った、別のデータ販売機１０１’、１０１”…とも同様に交信を行なうとする。各データソースの所有者が同一である必要はなく、また各データ販売機１０１、１０１’、１０１”…の所有者も各データソースの所有者と異なっても良い。
【００４２】
各データ販売機１０１、１０１’、１０１”…の動作は全く同一のため、以下、１台のデータ販売機１０１と各データソースの動作についてのみ述べる。
【００４３】
ここで、データソースが通常のＤＲＡＭメモリ、ハードディスクなど、日常的な意味での通信を行なわない装置である場合について付言すれば、このような場合も、メモリやハードディスクのインターフェースをデータ受信装置１０４とみなすことができるので、データソースがこのような機器であったとしても、本発明の範疇から外れるものではないのは明らかである。
【００４４】
例えば、データ情報テーブル１０９における２番目のデータがユーザに選択されたとすると、データソース選択装置１０３は、データ情報テーブル１０９のデータソースフィールド３０４から、それが２番目のデータソースと３番目のデータソース、すなわち第２のデータ衛星１１２と第１のデータサーバ１１３にあることを知り、次にデータレートテーブル１１０を参照して、どのデータソースから得るのがもっとも速いかを調べる。図５の例では、第２のデータソースのデータレートが、第３のデータソースのデータレートより遥かに大きい、すなわち第２のデータ衛星１１２のデータレートが第１のデータサーバ１１３によるデータレートより遥かに大きいため、データソース選択装置１０３は、第２のデータ衛星１１５をデータソースとして選択するのである。
【００４５】
次いで、データソース選択装置１０３は、選択されたデータソースからデータ受信装置１０４を介してデータを受信する（ステップＳ２０８）。このとき、データ受信装置１０４が、選択されたデータソースに対して、データの要求を送信する必要があるかどうかは、データソースに依存する。
【００４６】
例えば、図６で示すように、時分割式で、「フランダースの犬」「我輩は猫である」「オッペルと象」・・・・・のように一定時間単位のデータが繰り返し発信されるようなデータソースであれば、データの要求を送信する必要はなく、所望のデータが送信されるまで受信データを読み捨てれば良く、必要なデータのみを受信する。データ衛星など、送信が非常に高速であるが、個別の宛先に応じた内容の送信が難しいデータソースではこのような方法は現実的である。ただし、データレートテーブル１１０に格納する数値は、このような所望のデータが送信されるまでの平均待ち時間を考慮したものにする必要がある。ここでは、第１のデータ衛星１１１、第２のデータ衛星１１２は、このようにしてデータ受信装置１０４にデータの送信を行なうものとする。このようなものではなく、要求があって初めてデータが送出されるようなデータソースについては、データの要求がデータ販売機１０１からデータソースに対して発行される必要がある。ここでは、第１のデータサーバ１１３、第２のデータサーバ１１４はそのようなデータソースとする。
【００４７】
このようなデータソースに対しては、データ販売機１０１から、何らかの形でデータソースへの送信手段が必要となる。ここでは、第１のデータサーバ１１３または第２のデータサーバ１１４からデータ受信装置１０４がデータを受信する際は、データ受信装置１０４から第１のデータサーバ１１３または第２のデータサーバ１１４へデータの要求が、送信されるとする。
【００４８】
データ受信装置１０４によるデータの指定が、第１のデータサーバ１１３と第２のデータサーバ１１４に理解される必要があるので、ここでは、第１のデータサーバ１１３と第２のデータサーバ１１４にも、データ情報テーブル１０９のコピー１０９’、１０９”を持たせておき、データ受信装置１０４による第１のデータサーバ１１３または第２のデータサーバ１１４に対するデータの要求は、データ情報テーブル１０９の何番目のデータであるかをデータ受信装置１０４がこれらのデータソースに送信することで行なう。
【００４９】
このようにして、いずれの場合にも、データ受信装置１０４は、ユーザが所望のデータをデータソース選択装置１０３が最適と判定するデータソースから得ることができる。
【００５０】
データ選択装置１０２は、表示装置１０８に、データ情報テーブル１０９から得たデータの価格を表示する。（ステップＳ２０９）。ユーザは表示装置１０８に表示された金額を課金装置１０６に投入するか、取り消しスイッチ４０４を押す。
【００５１】
取り消しスイッチ４０４が押された場合は、データ更新装置１１２からはミニディスク１０７が排出され、データ販売機１０１は再びユーザがミニディスクを挿入するのを待つ状態になる（ステップＳ２１０）。
【００５２】
課金装置１０６に定められた金額が投入された場合は、データ受信装置１０４は、送られたデータを、データ更新装置１０５に転送する（ステップＳ２１１）。データ更新装置１０５は、送られたデータをミニディスク１０７に書き込む（ステップＳ２１２）。次にデータ更新装置１０５は、ミニディスク１０７を排出して、データ販売機１０１は再びユーザがミニディスクを挿入するのを待つ状態になる（ステップＳ２１０）。
【００５３】
なお、この例では電子化された書籍データを扱っているが、その電子化の形態についてはこれまで述べなかった。しかし、文書データを電子化することはすでに広く行なわれており、そのような方法の一例として、テキストデータであればシフトＪＩＳにてコード化することができるし、画像データとして、スキャナで入力することで電子化することができるが、本発明はそのような電子化の方法、データ形式に関わりなく適用されうるものである。これまで述べてきたデータ販売機１０１の説明は書籍データを楽曲データ、画像データ、動画データ、商業データ、コンピュータソフト、ゲームソフトなどに置き換えても成り立ち、したがって書籍データに用途は限定されないことも明らかである。また、データ記憶装置として、フロッピーディスク、メモリカード、光磁気ディスクなど、ミニディスク以外の記憶メディアを用いても差し支えない。
【００５４】
また、データを再生するための再生装置が、上記のデータ記憶装置と一体化した形態であっても構わないのももちろんのことである。
【００５５】
（第２の実施の形態）
第２の実施の形態は、前記第１の実施の形態とほぼ同じで、データ販売機７０１の中にデータバッファリング装置７１５を備え、他のデータソースからデータ受信装置７０４が受信したデータのうち、所定の基準に基づいて選ばれたデータがデータバッファリング装置７１５に格納され、データバッファリング装置７１５をデータソースの一種と見なすことを特徴とする。以下特徴を説明する。なお、以下の各構成要素の具体的な仕様、細部の構成およびデータ構造は、あくまでも説明のための例であり、本発明の範囲をこれに限定するものではない。
【００５６】
図７は、第２の実施の形態である、データ流通システムのブロック図を示す。データバッファリング装置７１５を備える以外は第１の実施の形態で述べたデータ流通システムと同様で、図１の１００台を７００台に変えて図示する。なお、データバッファリング装置７１５をデータソースと見なす場合、データ受信装置７０４との間で必ずしも日常的な意味の通信を行なうわけではないが、そのような場合も両者の間のインターフェースがデータ受信装置７０４を構成すると見なすことができる。
【００５７】
データバッファリング装置７１５は、より具体的には、図８に示されるように、コントローラ８０１、バッファメモリ８０２および時計８０３からなる。時計８０３は、年月日、時分秒を持っているものとする。コントローラ８０１は、バッファメモリ８０２に格納するデータを選ぶとともに、バッファメモリ８０２に格納されたデータを管理し、およびデータ情報テーブル７０９およびデータレートテーブル７１０の書き換えを、後述するように必要に応じて行なう。
【００５８】
データ情報テーブル７０９とデータレートテーブル７１０の例をそれぞれ図９および図１０に示す。図３および図５で示したものとの相違は、データ情報テーブル７０９には、データ選択装置７０２にて選択された回数を示す選択回数フィールド９０６、および最後に選択された時刻を示す選択時刻フィールド９０７が追加されていること、データ情報テーブル７０９とデータレートテーブル７１０双方とも、データソースとして、データバッファリング装置７１５が追加されていることである。その他は３００台と９００台を対応させて示している。なお、データ情報テーブルの、データバッファリング装置７１５に対応するビットは、データ販売機７０１が起動されたときは、どのデータに対しても「０」となっているとする。また、データレートテーブル７１０の、データバッファリング装置７１５に対応するデータレートは、非常に高い値、つまり非常に転送が高速であることを示す値「９０００００」を格納しておく。もちろん、データバッファリング装置７１５からデータ受信装置７０４にデータを転送する際の実測データレートの平均的な値を格納しておいても差し支えない。
【００５９】
データ流通システム全体の、データソース選択装置７０３でデータが選択されるまでの動作は第１の実施の形態で述べたデータ販売機１０１と同じである。
【００６０】
以下、データバッファリング装置７１５の動作を図１１のフローチャートに沿って説明する。
【００６１】
ここでは、コントローラ８０１は、データ選択装置７０２で選択される回数が多いものを優先してバッファメモリ８０２に格納することを仮定する。
【００６２】
データバッファリング装置７１５は、データソース選択装置７０３で新たなデータが選択されると、データ情報テーブル７０９の、該当データに対応する選択回数フィールド９０６に１を加え（ステップＳ１１０１）、対応する選択時刻フィールド９０７に、時計８０３から得られる現在の時刻を書き込む（ステップＳ１１０２）。
【００６３】
次に、該当データがバッファメモリ８０２にあるかどうかによって、以下のいずれかの動作を行なう。ただし、該当データがバッファメモリ８０２に存在するかどうかは、データ情報テーブル７０９のデータソースフィールド９０４を参照することで判定できる。すなわち、データバッファリング装置７１５に対応するビットが「１」であれば、該当データはデータバッファリング装置７１５、つまりバッファメモリ８０２に存在するし、「０」であれば存在しない。図９の例では「オッペルと象」がバッファメモリ８０２に存在することを表している。「フランダースの犬」「我輩は猫である」はバッファメモリ８０２に格納されていないことが分かる。
【００６４】
データバッファリング装置７１５に該当データが存在する場合は、データバッファリング装置７１５の処理は終了する(ステップＳ１１０３)。
【００６５】
該当データがバッファメモリ８０２になかった場合、コントローラ８０１は、選択回数が該当データより多いデータがすべてバッファメモリ８０２に格納されているかどうかによって以下のいずれかの動作を行なう。ただし、この判定は、選択回数フィールド９０６と、データソースフィールド９０４を参照して、選択回数が該当データより多く、かつデータソースフィールド９０４の、データバッファリング装置７１５に対応するビットに「０」が立っているようなデータがない場合に、選択回数が該当データより多いデータはすべてバッファメモリ８０２に格納されていると判定することで行なえる。すなわち選択回数が該当データより多いデータはすべてバッファメモリ８０２に格納されている場合は、該当データはバッファメモリ８０２に新たに格納される資格があるといえる。このときは、コントローラ８０１は、バッファメモリ８０２に該当データを格納する余裕があるかどうかを調べるため、現在のバッファメモリ８０２の使用量Ｕを算出する（ステップＳ１１０４）。ここでは、バッファメモリ８０２に、各データはバイト単位で図１２のように、４バイト符号なし整数でデータのバイト数を表すデータ容量１２０１、データ本体１２０２の順で格納されており、以下、データの数だけ同じ構造が、データ容量１２０１’、データ本体１２０２’、データ容量１２０１”、データ本体１２０２”の順で繰り返され、異なるデータの間に空きは作らないとする。このときのバッファメモリ８０２の使用量Ｕは、Ｕ＝８＊データ数＋各データの容量の和で得られ、データ数および各データの容量はデータ情報テーブル７０９のデータ数フィールドおよび容量フィールドから容易に得られるので、このような計算は可能である。
【００６６】
次に、コントローラ８０１は、使用量Ｕと該当データの容量Ｄの和とバッファメモリ８０２の容量Ｂを比較して、その結果によって以下の動作を行う。
【００６７】
Ｕ＋Ｄ＜＝Ｂのときは、新たにバッファメモリ８０２に該当データを登録することに何の問題もない。バッファメモリ８０２の、使われていない最初のアドレスから、該当データのデータ容量１２０１を書き込み（ステップＳ１１０５）、続いて該当データのデータ本体１２０２を書き込み（ステップＳ１１０６）、データ情報テーブル７０９の該当データのデータソースフィールド９０４の、データバッファリング装置７１５に対応するビットを「１」にして（ステップＳ１１０７）、データバッファリング装置７１５の処理は終了する（ステップＳ１１０３）。
【００６８】
Ｕ＋Ｄ＞Ｂのときは、新たにバッファメモリ８０２に該当データを登録するにはバッファメモリ８０２の残りの容量Ｂが不足している。コントローラ８０１は、データ情報テーブル７０９の、選択回数フィールド９０６とデータソースフィールド９０４を参照して、選択回数が該当データより少なく、しかもデータソースフィールド９０４の、データバッファリング装置７１５に対応するビットに「１」が立っている、つまりバッファメモリ８０２に存在するデータ（以下「置き換え対象データ」と呼ぶ）があるかどうかによって、以下の動作を行う。
【００６９】
置き換え対象データが存在しない場合は、データバッファリング装置７１５の処理は終了する（ステップＳ１１０３）。
【００７０】
置き換え対象データがあった場合、コントローラ８０１は置き換え対象データ（複数個ある可能性に注意）の容量Ｔを、Ｔ＝８＊置き換え対象データの数＋各置き換え対象データの容量の和で求める（ステップＳ１１０８）。置き換え対象データは上に述べた通り、データ情報テーブル７０９の選択回数フィールド９０６と、データソースフィールド９０４を参照して得られるので、対象データの容量Ｔの計算に必要な置き換え対象データの数と、各置き換え対象データの容量の情報が、データ情報テーブル７０９のデータソースフィールド９０４、容量フィールド９０５、選択回数フィールド９０６の情報から得られるのは明らかである。対象データの容量Ｔは、該当データによって、置き換えてもよいデータのバッファメモリ８０２上で占める容量を示している。そこで、Ｔ＜Ｄが成り立つかどうかによって、以下の動作を行なう。
【００７１】
Ｔ＜Ｄが成り立つときには、置き換え対象データを該当データで置き換えることは不可能なので、データバッファリング装置７１５の処理は終了する（ステップＳ１１０３）。
【００７２】
Ｔ＜Ｄが成り立たないときには、コントローラ８０１は、データ情報テーブル７０９を参照して、Ｂ−Ｕ＞＝Ｄとなるまで、各時点でバッファメモリ８０２に存在するうちで容量が最小の置き換え対象データをバッファメモリ８０２から削除して（ステップＳ１１０９）、これによってできたバッファメモリ８０２の空きを詰め（ステップＳ１１１０）、データ情報テーブル７０９の、データソースフィールド９０４の、バッファメモリ８０２から削除された置き換え対象データに対応するビットを「０」にセットする（ステップＳ１１１１）。その後コントローラ８０１は、バッファメモリ８０２の、使われていない最初のアドレスから、該当データのデータ容量１２０１を８バイトで書き込み（ステップＳ１１０５）、続いて該当データのデータ本体１２０２を書き込み（ステップＳ１１０６）、データ情報テーブル７０９の該当データのデータソースフィールド９０４の、データバッファリング装置７１５に対応するビットを「１」にして（ステップＳ１１０７）、データバッファリング装置７１５の処理は終了する（ステップＳ１１０３）。
【００７３】
データバッファリング装置７１５の処理が終了した後のデータ流通システムの動作は、データレートテーブル７１０の内容に応じて、データソース選択装置７０３が最適なデータソースを選択するところを含めて、これ以降、データソース選択装置７０３で再びデータが選択されるまでの動作は、第１の実施の形態と同じである。ただし、所望のデータがデータバッファリング装置７１５に存在する場合は、データバッファリング装置のデータレートとして、データレートテーブル７１０にある数値が十分に高いものであれば、データソースとしてデータバッファリング装置７１５が選ばれる点は異なる。
【００７４】
また、コントローラ８０１が、バッファメモリ８０２に格納するデータを選ぶ基準としては上で述べたもの以外にも、種々のものが考えられる。上で述べたものは、データ選択装置７０２で選択される回数が多いものを優先してバッファメモリ８０２に格納し、バッファメモリ８０２がいっぱいになったときは、データ選択装置７０２で選択される回数の少ないものからバッファメモリ８０２から消去する、言い換えればデータ選択装置７０２で選択される回数が多いものを優先する制御であったが、データの容量が大きいものを優先する制御、伝送１回にかかる時間、選択される回数とデータの容量の積が大きいものを優先する制御、または最後に選択された時刻が後のものを優先する制御は、図９に示したデータ情報テーブル７０９の例にある情報のみであきらかに実現可能である。
【００７５】
また、バッファメモリ８０２の空き領域が少なくなったとき、消去するデータを選ぶ基準は、データ容量、１回の伝送ににかかる時間、選択された回数、最後に選択されてからの経過時間のいずれかまたは全てから選択される。バッファメモリに格納しない時にデータソースからデータ受信装置に転送するのにかかる転送時間が大きいデータを優先する制御は、容量フィールド９０５から各データの容量、データソースフィールド９０４からそれが存在するデータソース、データレートテーブル７１０にある、各データソースのデータレートを取り出し、各データの容量と各データが存在するデータソースのデータレートの積を算出して比較することで可能である。これ以外にも、適切な情報を保持して使用することで、種々の基準が可能になるのはもちろんのことである。
【００７６】
（第３の実施の形態）
図１３は第３の実施の形態であるデータ流通システムのブロック図を示す。第３の実施の形態も第１の実施の形態と基本的に類似しており、対応部分には１００台を１３００台に変えて図示する。第３の実施の形態は、データ選択装置１３０２に、データスケジュール表１３１３と時計１３１４が備わること、データソースが、第１のデータ衛星１３１０、第２のデータ衛星１３１１、第３のデータ衛星１３１２となっており、データレートテーブルを欠いていることを特徴とする。第３の実施の形態では第１のデータ衛星１３１０、第２のデータ衛星１３１１、第３のデータ衛星１３１２の複数のデータソースが、書籍１冊分単位に時分割式に同じデータを時間をずらして送信しており、データソース選択装置１３０３は、データ選択装置１３０２にて選択されたデータを最も早く得られるようなデータソースを選択する特徴を持つ。なお、以下の各構成要素の具体的な仕様、細部の構成およびデータ構造は、あくまでも説明のための例であり、本発明の範囲をこれに限定するものではない。
【００７７】
図１４は、データスケジュール表１３１３の例である。ただし、ここでは一部を図示した。図示するように、図中、同一の名称を持ったデータは、同じ内容を持つとし、「我輩は猫である」「オッペルと象」「フランダースの犬」の順に書籍１冊分をデータ伝送している。各データによって、一回の送信に要する時間が異なるのは、データの長さが異なることを反映したものである。この例では、各データソースは、同一の順序で時分割式にデータを送信しているが、もちろんこれは必須ではなく、データ選択装置１３０２で選択されたデータが各データソースからいつ送信されるかという情報がデータスケジュール表１３１３から得られるようになってさえいれば良いし、そのような情報が、時刻から計算するなどの別の方法で得られるのであれば、データスケジュール表１３１３のようなテーブルを持つ必要もない。いずれにしろ、ここでは第１のデータ衛星１３１０、第２のデータ衛星１３１１および第３のデータ衛星１３１２は、図１４に示したデータスケジュール表１３１３に沿ってデータを時分割で送信しているとする。
【００７８】
データソースとしては、時分割で送信されているものであればデータ衛星でなくても良く、またデータソースの数もこの例では３つであるが、これに限るものでないのはもちろんである。データ選択装置１３０２で、データが選択されるまでのデータ流通システムの動作は第１の実施の形態と同様である。データソース選択装置１３０３は、データスケジュール表１３１３と時計１３１４を参照して、選択されたデータが現在の時刻から見て最も早く送信されるデータソースを選択する。例えば、時計１３１４から得た時刻が１５：１１であるときに「フランダースの犬」という名称を持ったデータが選択されたとすると、データソース選択装置１３０３は、データスケジュール表１３１３を参照して、第１のデータ衛星１３１０が選択されたデータを次に送信開始する時刻１５：１９、第２のデータ衛星１３１１が選択されたデータを次に送信開始する時刻１５：１７、第３のデータ衛星１３１２が選択されたデータを次に送信開始する時刻１５：２１を比較して、第２のデータ衛星が選択されたデータを次に送信開始する時刻が現在の時刻ともっとも近いため、第２のデータ衛星をデータソースとして選択するのである。なお、１５：１１には、第３のデータ衛星１３１２から、「フランダースの犬」が送信中であるが、このデータを先頭から、第３のデータ衛星１３１２から、受信するためには、送信が開始される時刻である１５：２１まで待つ必要がある。
【００７９】
途中からデータを受信した後、先頭からすでに受信したところまでの部分を再び探してもっとも早く送信されるデータソースを探して受信するような制御を行なう場合はこの限りではなく、このような場合も本発明の範囲内であるのももちろんである。
【００８０】
これ以降、次にデータが選択されるまでのデータ流通システムの動作は、データソースの違いを除いて第１の実施の形態と同様である。
【００８１】
なお、ここまでの説明では、各データソースからの送信開始時刻から、データ受信装置１３０４においてデータが受信されるまでに要する時間（以下、通信時間）は各データソースにおいて有意な差はないとの仮定の下、所望のデータの次の送信開始時刻がもっとも早いデータソースをデータソース選択装置１３０３が選択するとしたが、各データソースにおける通信時間の差が無視できない場合は、データ受信装置１３０４がデータスケジュール表１３１３から、各データソースごとに所望のデータの次の送信開始時刻を得た後、各データソースごとの通信時間を、各データソースも送信開始時刻に加えてから、送信開始時刻を比較することも考えられる。この場合は、実質的には各データソースにおける送信の終了する時刻、またはデータ受信装置１３０４において受信が終了する時刻を比較していることになる。
【００８２】
（第４の実施の形態）
図１５は、第４の実施の形態であるデータ流通システムのブロック図を示す。第４の実施の形態は、第１の実施の形態のデータ流通システムと類似しており、特徴はデータソースが、各データを時間単位に時分割式に、ブロックに分けて送出し、データ選択装置１５０２によって選択される回数が多いデータほど、送信時間が多く割り当てられるようにすることで、選択された際に少ない待ち時間でデータ販売機１５０１でデータが得られるようにする点にある。その他、図１と対応する部分には１００台を１５００台に変えて図示する。以下、特に断らない部分は、第１の実施の形態で述べたものとデータソースの違いを除いて同様とする。なお、以下の各構成要素の具体的な仕様、細部の構成およびデータ構造は、説明のための一例であり、本発明の範囲をこれに限定するものではない。
【００８３】
また、以下では「選択データ」という呼称で、データ選択装置１５０２で選択される選択単位を表す。これはデータを分割して作ったブロックの中のヘッダ部に対するデータ部と区別するためである。この例では、後の説明に出てくる「我輩は猫である」や「フランダースの犬」がそれぞれ１つの選択データである。
【００８４】
第４の実施の形態ではデータソースはデータサーバ１５１１のみとなっているが、これは以下の説明を必要以上に複雑にしないためであり、複数あっても差し支えない。また、この例のように、データソースが１つしかない場合、データソース選択装置１５０３、データレートテーブル１５１０は省略可能であるが、データソースが複数になっても最小限の変更で済むようにするために入れた。
【００８５】
データ情報テーブル１５０９の例を図１６に示す。図３と対応する部分には３００台を１６００台に変えて図示する。選択データが名称フィールド１６０２に示すように、２種類となっており、データソースフィールド１６０４に示すように、データソースが１種類となっている以外は、第１の実施の形態における図３に示すデータ情報テーブル１０９の内容と同一である。選択データを２種類にしたのも、以下の説明を簡潔にするためであり、３種類以上あっても全く差し支えない。データサーバ１５１１はデータ情報テーブルのコピー１５０９”に加えて、データスケジュール管理テーブル１５１２を持つ。
【００８６】
データサーバ１５１１からは、データ受信装置１５０４に対して、図１７に例を示すようなブロックに分けられたデータが時分割式に送信される。図１７では、１つのブロックは、データ番号フィールド１７０１、ブロック番号フィールド１７０２、ブロック数フィールド１７０３、データ長フィールド１７０４およびデータ本体１７０５からなる。データ番号フィールド１７０１は、データ情報テーブル１５０９に、各データに関する情報が並んでいる順番に１、２、３…と各データに番号を付けたときの番号でデータを指定しているものであり、２バイト整数とする。ブロック番号フィールド１７０２は、そのデータの中の何番目のブロックかを表す２バイト整数、ブロック数フィールド１７０３はそのデータがいくつのブロックからなるかを表す２バイト整数である。
【００８７】
したがって、ブロック数フィールド１７０３は、データ番号フィールド１７０１と同じであれば、同じ値を持つ。データ本体１７０５は、バイト単位で、分割されたデータそのものであり、データ長フィールド１７０４は、データ本体１７０５の長さをバイト単位で表す４バイト整数である。ここでは、データ長フィールド１７０４は、データの先頭ブロック（ブロック番号フィールド＝１）から最終ブロック（ブロック番号フィールド＝ブロック数フィールド）の１つ前のブロックまでは、どの選択データについても、データ長フィールドは共通の値を持たせるとする。以下この数値を標準ブロックサイズと呼び、ここでは４ＫＢとする。最終ブロックについてはデータ全体の長さを標準ブロックサイズで割った余りのバイト数とする。したがって、ここでは、データ長フィールド１７０４は、最終ブロック以外はすべて共通の値４ＫＢ（４０９６）を持っていることになる。
【００８８】
図１７では、数値はすべて１０進で図示しており、各数値としては図１６のデータ情報テーブルの例における「フランダースの犬」の３番目のブロックに適合する値が入っている。すなわち、データ番号フィールド１７０１には、「フランダースの犬」が、データ情報テーブル１５０９における、１番目のデータなので、１が、ブロック番号フィールド１７０２には、３番目のブロックなので３が、格納される。ブロック数フィールド１７０３には、「フランダースの犬」がデータ情報テーブル１５０９の容量フィールド１６０５によれば１４６３６バイトの容量を持つので、１４６３６÷１ブロックの長さ４０９６（バイト）≒３．５７より４が、データ長フィールド１７０４には、最終ブロックではないので４０９６が、それぞれ格納されている。
【００８９】
データスケジュール管理テーブル１５１２の構成例を図１８に示す。選択頻度フィールド１８０１は、各選択データがデータ選択装置１５０２で選択された頻度が格納されており、データ流通システム稼動開始時はすべて０に初期化されているとする。割り当てブロック数フィールド１８０２は、各選択データに割り当てられたブロック数を、ここでは１００ブロックのうちのいくつが割り当てられるかで示している。この値の決定方法については後述する。データ長フィールド１８０３は、各選択データごとに、標準ブロックサイズを与えるものであり、この例では、上に述べたように、各選択データのどれについても４０９６が格納されている。逆にいうと、この例ではデータ長フィールド１８０３は必ずしも必要ではないが、あえて設けたのは、後述の実施の形態についての説明で用いるためである。データ長フィールド１８０３は、各選択データを分割したブロックのデータ長フィールド１７０４と、各選択データの最終ブロック以外では一致する。また、データ情報テーブル１５０９とデータスケジュール管理テーブル１５１２の要素は同じデータに対応する部分が同じ順番にくるように並んでいるとする。「フランダースの犬」は１４６３６（バイト）÷４０９６（バイト）≒３．５７より上述のように４つのブロックに分けられ、「我輩は猫である」は３１７４４（バイト）÷４（バイト）＝７．７５より８つのブロックに分けられる。各選択データとも最後のデータブロックが送出されると、再び最初のブロックから送信される。図１９に示したように、時間あたりの送出されるブロック数を選択データの間で均等にすると、「我輩は猫である」全体を受信するには、約１５ブロックが送出される間待つ必要があり、「フランダースの犬」全体の受信には約７ブロックの送出を待つ必要がある。ただし、待ち時間の計算は、最終ブロックの長さが他のブロックと一般には異なることは考慮していない（以下同様）。
【００９０】
１つのブロックの送受信にかかる時間は選択データに大きくは依存しないと考えられるので、これはそのまま待ち時間の比を表すと見てよい。ここで、仮に「我輩は猫である」がデータ選択装置１５０２で選択される頻度が「フランダースの犬」の選択される頻度の９倍であったとすると、データ販売機１５０１の使用１０回あたりの平均待ち時間は、１５ブロック＊９＋７ブロック＊１＝１４２ブロック …（１）
の送受信にかかる時間となる。
【００９１】
第４の実施の形態の要点は、データ選択装置１５０２で、各選択データが選択される頻度を、データソースのデータ送信のスケジュールに反映させ、この平均的な待ち時間を減少させることである。
【００９２】
データがデータ選択装置１５０２によって選択されるまでのデータ流通システムの動作は、第１の実施の形態で述べたデータ流通システムと同様である。データがデータ選択装置１５０２で選択されると、データソース選択装置１５０３はデータ情報テーブル１５０９とデータレートテーブル１５１０を参照して、最適なデータソースを決定するのであるが、この例ではデータソースはデータサーバ１５１１しかないので、もちろんデータサーバ１５１１が選択され、データ受信装置１５０４からデータ送信要求が出される。これは、第１の実施の例における、データ受信装置１０４の、第１のデータサーバ１１３および第２のデータサーバ１１４に対するデータの要求と同じ方法で行なえる。データ受信装置１５０４から、データを指定する番号を受け取ると、データサーバ１５１１は、データスケジュール管理テーブル１５１２の選択頻度フィールド１８０１の対応する要素をインクリメントする。さらに、データサーバ１５１１は、以下に述べる論理で、割り当てブロック数フィールド１８０２の対応する要素を更新する。以下選択された選択データをＤｉとして、Ｄｉに対応する選択頻度フィールド１８０１の要素をＦｉ、対応する割り当てブロック数フィールド１８０２の要素をＱｉとすると、Ｑｉ＝（１００＊Ｆｉ）／ΣＦｉとしてＱｉを求める。ただしΣは全ての選択データについての和である。
【００９３】
Ｑｉの計算において、少数点以下は切り捨てとなるので、一般にΣＱｉは１００を下回る。このとき、（１００−ΣＱｉ）だけのブロックを、最も割り当てブロック数が少ないデータに割り当てることとする。
【００９４】
上式で、Ｄｉの選択頻度数と全てのデータの選択頻度数の和は、いずれもデータスケジュール管理テーブル１５１２の選択頻度フィールド１８０１の情報を用いて得られる。
【００９５】
データサーバ１５１１は、各選択データを、データスケジュール管理テーブル１５１２のデータ長フィールド１８０３で指定される大きさのブロックに分割して、割り当てブロック数フィールド１８０２で指定される各データに割り当てられたブロック数の比率にしたがって、ブロックごとに送出する。データ受信装置１５０４は、このようにして送られたデータのブロックをつなぎあわせ、１つなぎのデータにする。これ以降、新たにデータ選択装置１５０２で、データが選択されるまでのデータ流通システムの動作は、第１の実施の形態で述べたものと同様である。各選択データのブロック数をいくつにするかをデータサーバ１５１１が、データ情報テーブルのコピー１５０９”にある、容量フィールド１６０５’の情報と、データスケジュール管理テーブル１５１２のデータ長フィールド１８０３の情報から決定できるのは明らかである。
【００９６】
ここで、第４の実施の形態の効果について説明する。仮にＤ１:「我輩は猫である」（８ブロック）がデータ選択装置１５０２で選択される頻度がＤ２「フランダースの犬」（４ブロック）の選択される頻度の９倍であったとすると、このような、選択頻度に応じてブロック数を割り当てる方法では、Ｑ１＝(１００＊９)／（１＋９）＝９０Ｑ２＝(１００＊１)／（１＋９）＝１０となり、Ｄ１を得るために送出を待たなくてはならないおよその平均ブロック数は、Ｄ１：８＊１００／９０＝８．８９ブロックＤ２：４＊１００／１０＝４０ブロックとなる。したがって、データ販売機１５０１の使用１０回あたりの、送出を待つ必要のあるおよその平均ブロック数は、８．８９ブロック＊９＋４０ブロック＊１＝１２０ブロック…（２）
となり、（１）式で得られた１４２ブロックと比較して、１５％以上もの減少となっている。つまり平均待ち時間の少ないデータ流通システムが実現できるのである。
【００９７】
第４の実施の形態の要点は、データの選択回数を、時間あたりの各データの送信量に自動的に反映することであり、この方法は上で述べたものに限らない。上に述べた方法は、時間あたりの各データの送信量を、時間あたりの割り当てブロック数＊ブロックあたりのデータ長と分解して、ブロックあたりのデータ長を一定に保ちつつ、時間あたりの割り当てブロック数を変化させていたが、代わりにブロックあたりのデータ長をコントロールしても同じ効果が本発明の範囲内で得られる。例えば、データサーバ１５１１は、データスケジュール管理テーブル１５１２の割り当てブロック数フィールド１８０２を各選択データで同一にしながらも、データ長フィールド１８０３を選択データＤｉごとに定数α＊Ｆｉ／ΣＦｉ（ただしＦｉはＤｉに対応する選択頻度フィールド１８０１の要素。ただしΣは全ての選択データについての和）で与えれば、やはり時間あたりの各データの送信量は、データの選択回数を反映したものになるので、同一の効果が得られるのは明らかである。
【００９８】
また、選択データをブロックごとに分割せず、時間あたりの各選択データＤｉのデータ送信量を、選択データ全体の長さ＊選択データ全体の時間あたりの送出回数で制御することもできる。この場合、選択データの長さは変化しないので、各選択データＤｉの時間あたりの送信量に選択頻度を反映させるためには、データサーバ１５１１は、選択データの時間あたりの送出回数を制御する必要がある。
【００９９】
ここで用いたデータスケジュール管理テーブル１５１２の例では、データ長フィールド１８０３を極めて大きくとれば、選択データは最終ブロック、１ブロックで送信されるので、事実上、割り当てブロック数フィールド１８０２は、選択データ全体の時間あたりの送出回数を示すことになる。よって、割り当てブロック数フィールド１８０２を制御すれば良い。これをＱｉとすると、Ｄｉの長さをＳｉ、ＦｉはＤｉに対応する選択頻度フィールド１８０１の要素としてＱｉ＝定数β＊Ｆｉ／Ｓｉで与えられ、時間あたりの各選択データＤｉのデータ送信量＝Ｓｉ＊Ｑｉ＝定数β＊Ｆｉとなり、時間あたりの各選択データＤｉのデータ送信量は選択データＤｉの選択頻度Ｆｉに、比例したものになる。
【０１００】
（第５の実施の形態）
図２０は、本発明の第５の実施の形態であるデータ検索機のブロック図である。データ検索機２００１は、シフトＪＩＳなどのテキスト形式で格納された書籍データを検索する用途を想定したものであるが、このような想定、以下の各構成要素の具体的な仕様、細部の構成およびデータ構造は、あくまでも説明のための例であり、この発明の範囲を限定するものではない。データ検索機２００１には、検索条件設定装置２００２と、検索装置２００３、記憶装置２００４およびミニディスク書き込み装置２００５が備わっている。記憶装置２００４には、書籍データ数２００７および、書籍データ数２００７が示す数だけある、書籍データ２００８、２００８’、２００８”…が格納されている。以降、特に断らない限り、書籍データ２００８に関する説明は、他の書籍データ２００８’、２００８”…にも該当するとする。
【０１０１】
ユーザは、データ検索機２００１の使用にあたって、持参したミニディスク２００６をミニディスク書き込み手段２００５に挿入する。次に検索条件設定装置２００２から検索条件を入力する。図２１は検索条件設定装置２００２の構成例である。検索条件設定装置２００２は、コントローラ２１０１、キーボード２１０２、表示装置２１０３、該当データ数レジスタ２１０４およびオフセットレジスタ２１０５からなる。この例では検索条件設定装置２００２で設定できるのは、キーワードと、段落、節、章、書籍全体など、どのようなレベルを単位としてデータを取り出すかを指定する、データ取り出し範囲とする。図２２は表示装置２１０３の表示例である。キーワードウインドウ２２０１には、キーボード２１０２から入力されたキーワードが、データ取り出し範囲ウインドウ２２０２には、現在選択されているデータ取り出し範囲が四角形で囲まれて示されている。このデータ取り出し範囲の選択は、キーボード２１０２のカーソルキーによって、文字列を囲む四角形を上下させることで行なうとする。該当データ数レジスタ２１０４、オフセットレジスタ２１０５および検索結果ウインドウ２２０３については後述する。
【０１０２】
検索装置２００３において、あいまいな検索を許すことも考えられるが、あいまいな検索自体は広く実施されているので、説明を不必要に複雑にすることを防ぐために、このような検索条件の指定の仕様についての追加、変更によってもデータ検索機２００１が本発明の範囲から外れるようなことはないことを指摘するにとどめ、ここでは検索装置２００３は完全一致検索を行なうものとして説明する。入力されたキーワードおよびデータ選択範囲は、検索装置２００３に送られ、検索装置２００３は、記憶装置２００４に格納されている書籍データ２００８、２００８’、２００８”…を検索して、キーワードを含むような書籍データの部分を、検索条件設定装置２００２で設定された単位で取り出したもの（以下「該当データ」）を、ミニディスク書き込み装置２００５に転送した後、該当データの数を検索条件設定装置２００２に転送する。この検索装置２００３の動作については後に詳しく述べる。
【０１０３】
検索条件設定装置は、転送されてきた該当データの数を検索結果ウインドウ２２０３に表示する。図２２には該当データが２件存在した場合の検索結果ウインドウ２２０３の表示例が示されている。ミニディスク書き込み装置２００５は、挿入されているミニディスク２００６に、送られた該当データを書き込み、ミニディスク２００６を排出して終了する。該当データが存在しない場合は、ミニディスク書き込み装置２００５は、書き込みを行なわずにミニディスク２００６を排出して終了する。
【０１０４】
ここで、段落、節、章など、指定されたデータの選択範囲にしたがって、検索装置がデータを取り出すことができるためには、記憶装置２００４にあらかじめ、そのような書籍の構造を反映した形で書籍データ２００８が格納されていると好都合である。図２３にこのような目的に合ったデータ構造の例を示す。ただし、検索装置２００３が、書籍データ２００８の構造を自動的に解析することも、例えば「第１章」、「第２節」などの単語を書籍から取り出すことで少なくとも標準的な書籍データでは可能なため、このようなデータ構造は必須というわけではなく、また図２３の例が考えうる唯一のものでもない。図２３に示した書籍データ２００８は テキストデータ長２３０１、テキストデータ２３０２、目次２３０３に分かれている。テキストデータ２３０２は、書籍全体のテキストデータを、シフトＪＩＳコードにて格納したものであり、そのバイト数が４バイトの数値で、テキストデータ長２３０２に格納されている。目次２３０３は、書籍データ２００８の内容に対するものであり、したがって、各書籍データ２００８、２００８’、２００８”ごとに存在することに注意されたい。目次２３０３は項目データ２３０４、２３０４’、２３０４”…を並べたものとなっている。以下、特に断らない限り、項目データ２３０４に関する説明は、他の項目データ２３０４’、２３０４”…にも該当するものとする。
【０１０５】
項目データ２３０４は書籍全体、章、節、段落など、異なるレベルにある、書籍の一部分に関する情報を表すものであり、表１に示す５つの整数値の組からなっている。
【０１０６】
【表１】
2004185632.tif 000003
【０１０７】
例えば、書籍全体：章：節という階層構造を持ち、前書き、３つの節からなる第１章、２つの節からなる第２章、４つの節からなる第３章および後書きからなるような書籍データの例に対応する目次２３０３は、図２４のようになる。なお、表の右端列の「日常的意味」は理解を助けるために入れたものであり、目次２３０３の一部ではない。目次２３０３の一部ではないのは、１行目の全ての数値の名称も同様である。
【０１０８】
図２４の表の１行目を除く各行が各項目データに対応し、各項目データはこの表の２行目から順に目次２３０３に格納されているとする。ただし、一部の項目データを除き、先頭バイト２３０５、最終バイト２３０６の数値は省略した。
【０１０９】
書籍の「前書き」、「後書き」は、それぞれ、下位の階層を持たない独立した章として扱われている。また、各章の先頭バイトと、各章第１節の先頭バイトは、各章の第１節の前に章の見出しや、章の導入部があるため一般に一致しない。同様に、書籍全体の開始バイトと前書きの開始バイトは、その間に書籍の表題などがあるため一般に一致しない。後書きの最終バイトと書籍全体の最終バイトも、その間に奥付けなどがあるため一般に一致しない。
【０１１０】
以上で説明したデータ構造を用いた場合、検索条件設定装置２００２で選択されるデータ取り出し範囲は、データ検索機２００１の内部処理では、各項目データの深さレベル２１０８を指定する数値で表される。この場合、データ取り出し範囲ウインドウ２２０２の表示も、「レベル０（書籍全体）」、「レベル１（章など）」、「レベル２（節など）」、と言う様に、書籍によっては「章」の代わりに別の言葉が使われている可能性を考慮したものにすればさらに正確で好ましい。
【０１１１】
上述したデータ構造を用いた場合の検索装置２００３の動作を、図２５のフローチャートで示す。検索条件設定装置２００２から、コントローラ２１０１がキーワードおよびデータを取り出す単位を受け取り（ステップＳ２５０１）、該当データ数レジスタ２１０４を０で初期化する（ステップＳ２５０２）。記憶装置２００４に格納されている書籍データ数２００７の数だけある書籍データ２００８…の内、まだ処理されていない最初のものに処理を移し（ステップＳ２５０３）、テキストデータ２３０２の中の、処理されていない部分からキーワードを探す（ステップＳ２５０４）。見つかるたびに、キーワードの、テキストデータ２３０２内のバイトオフセットをオフセットレジスタ２１０５に記録し（ステップＳ２５０６）、目次２３０３の、各項目データを参照して、先頭バイト２３０５の数値が、オフセットレジスタ２１０５の内容より大きくなく、かつ最終バイト２３０６の数値がオフセットレジスタ２１０５の内容より小さくない項目データについて、深さレベル２１０８が、検索条件設定装置２００２で設定されたデータ取り出し範囲と一致すれば、該当データ数レジスタ２１０４をインクリメントする（ステップＳ２５０７）。そして、該当する項目データの先頭バイト２３０５、最終バイト２３０６を再び参照して、その範囲にあるデータをテキストデータ２３０２から全て取り出して、ミニディスク書き込み装置２００５に転送する（ステップＳ２５０８）。これが現在処理中の書籍データの最後の項目データでなければ、次の項目データに処理を移す（ステップＳ２５０９）。最後の項目データであれば、これが最後の書籍データでなければ、次の書籍データに処理を移し（ステップＳ２５１０）、最後の書籍データであれば、該当データ数レジスタ２１０４の内容を検索条件設定装置２００２に出力して終了する（ステップＳ２５１１）。
【０１１２】
各書籍データの、記憶装置２００４への格納方法であるが、記憶装置２００４に各書籍データ２００８、２００８’、２００８”…は空きを作らずに連続して格納され、書籍データ２００８の内部では図２３に示したようにテキストデータ長２３０１、テキストデータ２３０２、目次２３０３の順序で格納されているとする。このようにすれば、検索装置２００３は、各書籍データ２００８、２００８’の始まりと終わりを知ることができる。その理由は、検索装置２００３は、目次２３０３の、書籍全体のサブレベル項目数２３０９を参照することで、深さレベルが１になるような項目データで、その書籍では最後のものがどれであるかを知ることができる。一般的には、深さレベル２１０８が（ｎ＋１）になるような項目データの最後のものを、その直前の深さレベル２１０８がｎになるような項目データの、サブレベル項目数２３０９の数値から知ることができることから、目次２３０３の中を先頭からたどる際、目次２３０３の終わりを知ることができる。テキストデータ長２１０２については、固定長なので、当然終わりを知ることができ、テキストデータ２３０２については、テキストデータ長２１０２を参照することで、終わりを知ることができるからである。また、上に述べたことに加えて、書籍データ数２００７を参照することで、検索装置２００３が、記憶装置２００４のどこまでが書籍データ２００８…が格納された領域かを知ることができるのももちろんのことである。
【０１１３】
（第６の実施の形態）
第６の実施の形態のブロック図を図２６に示す。この第６の実施の形態は、第１の実施の形態のデータ流通システムと類似しており、データソースとして、電子出版業者２６１５が加わり、データ選択装置２６０２に、キーボード２６１６が加わっている点を特徴とする。図１と対応する部分には、１００台を２６００台に変えて図示する。なお、以下の各構成要素の具体的な仕様、細部の構成およびデータ構造は、あくまでも説明のための例であり、本発明の範囲をこれに限定するものではない。
【０１１４】
下記で説明するように、電子出版業者２６１５は、他のデータソースとは非常に性質が異なり、データ情報テーブル２６０９、データレートテーブル２６１０に登録される必要はない。データ受信装置２６０４と、電子出版業者２６１５の間の通信は、データ受信装置２６０４から電子出版業者２６１５の方向の、片方向通信で良い。
【０１１５】
第１の実施の形態と異なるのは、ユーザが、データ選択装置２６０２にて、表示装置２６０８に表示された選択肢から、所望のデータを選択する際、表示装置２６０８の選択肢に「その他」という選択肢を設け、「その他」が選択された際には、表示装置２６０８は、そのデータについての情報、その他の情報がキーボード２６１６から入力するための表示に切り替わり、入力された情報に合わせて、電子出版業者２６１５に発注または問い合わせがなされるようになっていることである。したがって、データ選択装置２６０２にて、「その他」が選択されなかった際の動作は、第１の実施の形態と同じである。
【０１１６】
図２７はデータ選択装置２６０２にて、「その他」が選択された際の、表示装置２６０８の表示例およびデータ選択装置２６０２が備える、前項目スイッチ２７０１、次項目スイッチ２７０２、決定スイッチ２７０３および取り消しスイッチ２７０４の外観図である。ユーザは、データの名称などの情報をデータ情報入力ウインドウ２７０５に、問い合わせ・発注の別をアクション入力ウインドウ２７０６に、氏名、住所、電話番号をユーザ情報入力ウインドウ２７０７に入力する。ユーザが決定スイッチ２７０３を押下するたびに、入力の対象となるウインドウが、データ情報入力ウインドウ２７０５、アクション入力ウインドウ２７０６、ユーザ情報入力ウインドウ２７０７と移り、ユーザ情報入力ウインドウ２７０７が入力されている状態で、決定スイッチ２７０３を押下すると、入力が終了したことがデータ選択装置に伝わるようになっている。また、アクション入力ウインドウ２７０７においては、「問い合わせ」、「発注」のそれぞれの文字列を囲む長方形を、前項目スイッチ２７０２によって、上隣のものに移し、次項目スイッチ２７０３によって、下隣のものに移すことで指定するようになっている。なお、データ選択装置２６０２で「その他」が選択されなかった場合は、前項目スイッチ２７０１、次項目スイッチ２７０２、決定スイッチ２７０３および取り消しスイッチ２７０４は第１の実施例で述べた対応する構成要素と同一の作用を行なうのはいうまでもない。
【０１１７】
電子出版業者２６１５では、送られた情報に合わせて、回答送付または商品送付を行なうようになっている。電子出版業者２６１５が即時にデータを用意することは難しいと考えられるので、他のデータソースの場合とは異なり、データが電子出版業者２６１５からその場でデータ受信装置２６０４に転送されることは予期していない（これが可能な場合は、電子出版業者２６１５を他のデータソースと区別する理由は全くなくなってしまい、第１の実施の形態に、単に新たなデータソースを加えたものになる。）。
【０１１８】
もちろん、データ受信装置２６０４と、電子出版業者２６１５の間の通信を、後者から前者への方向も許した双方向にしておけば、、電子データを電子的に電子出版業者２６１５からデータ更新装置２６０５に伝送する経路が確保されるので、電子出版業者２６１５がデータの準備が完了した時点でユーザに知らせ、ユーザは、その時点で、再びデータ販売機２６０１まで出向いて、他のデータソースからと同じように、データの供給を受けるようにしてもよい。
【０１１９】
また、電子出版業者２６１５を単なる書店にしてしまい、ユーザに届けられるのが電子データではなく、同一または類似の内容を持った紙の書籍とすることも可能である。
【０１２０】
このように、データ販売機２６０１が、本来のデータソース以外の、電子出版業者２６１５との交信機能を持つことで、より多種のデータの流通が実現するのである。
【０１２１】
また、電子出版業者２６１５で供給可能なデータを、あらかじめデータ選択装置２６０２の選択肢に入れておき、そのようなデータが選択された際に、データの送付先などの必要な情報を入力させることも可能である。この場合、電子出版業者２６１５も少なくとも操作の途中までは仮想的に通常のデータソースとしてユーザに把握されることになる。
【０１２２】
（第７の実施の形態）
図２８は、第７の実施の形態であるデータ流通システムに流通しているデータの不正コピーを検出するための複製データ検出システムのブロック図を示す。このシステムは、複数台のデータ再生装置において使用されている、ミニディスク（ＭＤ）で格納されて流通するデータが複製メディアかどうかを検査し、不正コピーを抑止する機能を持つ。なお、このような想定、以下の各構成要素の具体的な仕様、細部の構成およびデータ構造は、あくまでも説明のための例であり、この発明の範囲を限定するものではない。
【０１２３】
第７の実施の形態である複製データ検出システムは、データ検査装置２８０１および、データ再生装置２８０２、２８０２’、２８０２”…を備える。以下データ再生装置２８０２に関する説明は、特に断らない限り、他のデータ再生装置２８０２’、２８０２”…にも適用されるとする。データ再生装置２８０２は、ＣＰＵ２８０３、データ通信装置２８０４、ミニディスクドライブ２８０５、表示装置２８０６、再生スイッチ２８０７、終了スイッチ２８０８を備える。
【０１２４】
ミニディスクドライブ２８０５で読み取られる各ミニディスク２８０９、２８０９’、２８０９”…には、正常な使用状態では、一意的な内容を持つ認証データ２８１０、２８１０’、２８１０”…が記憶されているとする。これ以外に、ミニディスク２８０９、２８０９’、２８０９”…は、データ再生装置２８０２他で再生するための、再生データ２８１１、２８１１’、２８１１”…を記憶している。
【０１２５】
データ検査装置２８０１は、コントローラ２８１２、データ通信装置２８１３、データ数レジスタ２８１４および、データ管理テーブル２８１５を備えている。以下認証データ２８１０（または２８１０’、２８１０”）の内容のコピーを単に認証データ２８１０（または２８１０’、２８１０”）と書くことがあるが、混同のおそれはないと思われる。
【０１２６】
データ通信装置２８０４とデータ通信装置２８１３は、電話回線、電波など適切な手段で双方向通信を行なうものとする。
【０１２７】
以下データ再生装置２８０２の動作を説明する。なお、以下の説明で、「使用開始」、「使用終了」、「再生禁止」の信号については、採用される通信手段に応じて適宜定めるとする。
【０１２８】
ユーザが、ミニディスク２８０９をミニディスクドライブ２８０５に挿入し、再生スイッチ２８０７を押すと、ミニディスクドライブ２８０５は、認証データ２８１０をミニディスク２８０９から読み出し、ＣＰＵ２８０３は、それをデータ通信装置２８０４に転送する。データ通信装置２８０４は、「使用開始」を示す信号と、認証データ２８１０を、データ検査装置２８０１、より具体的にはデータ通信装置２８１３に送出する。データ検査装置２８０１では後述する複製データ検出が行われ、その結果によっては、データ検査装置２８０１は「再生禁止」信号をデータ通信装置２８０４に送る。一方、ミニディスクドライブ２８０５は再生データ２８１１をミニディスクドライブ２８０５から読み出し、ＣＰＵ２８０３はそれを表示装置２８０７に送ることで、再生データ２８１１の再生を開始するが、データ通信装置２８０４が、「再生禁止」信号を受け取ると、表示装置２８０６に、「このデータは違法コピーの可能性がある」というメッセージを表示するとともに、ミニディスクドライブ２８０５の動作を停止する。
【０１２９】
また、ユーザが、再生データ２８１１の再生中に、終了スイッチ２８０８を押すと、データ通信装置２８０４は、「使用終了」を示す信号と、認証データ２８１０を、データ通信装置２８１３に送出した後、ＣＰＵ２８０３はミニディスクドライブ２８０５の動作を停止する。
【０１３０】
データ管理テーブル２８１５には、「使用開始」を示す信号を伴って送られてきた認証データの番号が連続して格納されている。データ数レジスタ２８１４には、そのような認証データの数が格納されている。図２９はデータ数レジスタ２８１４および、データ管理テーブル２８１５の例である。この例では、認証データの数、認証データとも４バイト符号なし整数を想定するが、図２９では認証データの数「８」と、８個の認証データの番号は、いずれも１０進法で書き表してある。
【０１３１】
データ再生装置２８０２からデータが送られてきた際のデータ検査装置２８０１の動作を、図３０のフローチャートに沿って説明する。
【０１３２】
コントローラ２８１２はデータ通信装置２８１３が受信したデータが「使用開始」という信号を含んでいる場合に、データに含まれる認証データ２８１０が、データ管理テーブル２８１５に既にあれば、そのデータを送信したデータ通信装置２８０４に対して、「再生禁止」信号を送り、待機状態に戻る（ステップＳ３００２）。データ管理テーブル２８１５に認証データ２８１０がなければ、コントローラ２８１２はデータ管理テーブル２８１５の最後の認証データの後に、送られてきた認証データ２８１０を追加し（ステップＳ３００３）、データ数レジスタ２８１４をインクリメントして（ステップＳ３００４）、待機状態に戻る（ステップＳ３００２）。
【０１３３】
コントローラ２８１２はデータ通信装置２８１３が受信したデータが「使用開始」という信号を含んでおらず、「使用終了」という信号を含んでいる場合に、データ管理テーブル２８１５に認証データ２８１０があれば、データ管理テーブル２８１５から認証データ２８１０を削除し（ステップＳ２４０７）、データ数レジスタ２８１４をデクリメントして（ステップＳ２４０８）、待機状態に戻る（ステップＳ３００２）。データ管理テーブル２８１５に認証データ２８１０がなければ、送られたデータは異常データであるとして無視して（ステップＳ３００７）、待機状態に戻る（ステップＳ３００２）。
【０１３４】
また、データ通信装置２８１３が受信したデータが「使用開始」という信号、「使用終了」という信号のいずれも含んでいない場合も、送られたデータは異常データであるとして無視して（ステップＳ３００７）、待機状態に戻る（ステップＳ３００２）。なお、ステップＳ３００５で、データ管理テーブル２８１５から削除された認証データ２８１０に対応する部分は、空き領域とせず、順に詰められるとする。
【０１３５】
このシステムによって、不正コピーが抑止されるのは、ミニディスク２８０９、２８０９’、２８０９”…の認証データ２８１０、２８１０’、２８１０”…が同じ値を持っている場合、上記ステップＳ３００５により、異なるデータ再生装置２８０２、２８０２’、２８０２”…においてミニディスク２８０９、２８０９’、２８０９”…を同時に使用できないためである。すなわち、仮に、悪意のある者が、ミニディスクの違法コピーを大量に生産しても、通常の手段でコピーを行なう限り、それらはオリジナルと同じ認証データを持つことになるので、同時に使用できるのはそのうちで１枚しかないため意味をなさない。また、善意の個人がバックアップ目的でコピーをする場合は、オリジナルと同時に使用するわけではないから制限が全くかからない。
【０１３６】
この例では、データ通信装置２８０４と、データ通信装置２８１３の間の通信は双方向としたが、これを、前者から後者への片方向として、「再生禁止」信号の後者から前者への送出、データ再生装置２８０２における再生の禁止を省略しても、データの複製の検出自体は行なえているので、用途はやや制限されるものの、やはり有用である。
【０１３７】
また、悪意ある者が、コピーしたミニディスクの、認証データのみを書き換えて、一意性を保とうとするのを防ぐために、認証データ２８１０を、再生データ２８１１と分離が難しくなるように符号化することができればより好ましい。
【０１３８】
（第８の実施の形態）
図３１は、第８の実施の形態である複製データ検出システムのブロック図を示す。第７の実施の形態と類似しているので、以下相違点についてのみ説明する。以下データ再生装置３１０２に関する説明は、特に断らない限り、他のデータ再生装置３１０２’、３１０２”…にも適用されるとする。なお、以下の各構成要素の具体的な仕様、細部の構成およびデータ構造は、あくまでも説明のための例であり、この発明の範囲を限定するものではない。以下認証データ３１１０（または３１１０’、３１１０”）の内容のコピーを単に認証データ３１１０（または３１１０’、３１１０”）と書くことがあるが、混同のおそれはないと思われる。
【０１３９】
ミニディスク３１０９がミニディスクドライブ３１０５に挿入されている状態で、再生スイッチ３１０７が押されると、データ通信装置３１０４からあらかじめ定められた時間間隔α秒ごとに、認証データ３１１０がデータ通信装置３１０４からデータ通信装置３１１３に送信され、終了スイッチ３１０８を押されるまでこれが持続する。
【０１４０】
ただし、ミニディスク３１０９がミニディスクドライブ３１０５に挿入されて、再生スイッチ３１０７が押されてから、あらかじめ定められたβ秒（β＞α）が経過して初めて認証データの送出が開始されるとする。この理由は後述する。データ管理テーブル３１１５は、図３２に示すように、認証データフィールド３２０１と時刻フィールド３２０２に分かれており、認証データとそれが送られてきた時刻と組になって記録されている。また、データ検査装置は時計３１１６を備える。時計３１１６は、年月日、時分秒を持っているものとする。
【０１４１】
データ再生装置３１０２からデータが送られてきた際のデータ検査装置３１０１の動作を、図３３のフローチャートを用いて説明する。
【０１４２】
コントローラ３１１２は、送られた認証データ３１１０がデータ管理テーブル３１１５の認証データフィールド３２０１に既にあれば、時計３１１６から得られた現在の時刻と、認証データ３１１０に対応する時刻フィールド３２０２の内容の差を算出して（ステップＳ３３０１）、あらかじめ定められた時間間隔γ秒（α＞γ）に比べて小さければデータ通信装置３１１３は、データ通信装置３１０４に対して、「再生禁止」信号を送出して（ステップＳ３３０２）、待機状態に戻る（ステップＳ３３０３）。小さくなれば、認証データ３１１０に対応する時刻フィールド３２０２を現在の時刻に更新して（ステップＳ３３０１）、待機状態に戻る（ステップＳ３３０３）。認証データフィールド３２０１に認証データ３１１０がなければ、認証データフィールド３２０１の最後のデータの後に、そのデータを追加して（ステップＳ３３０５）、対応する時刻フィールド３２０２に、時計３１１６から得た現在の時刻を書き込み（ステップＳ３３０６）、データ数レジスタ３１１４をインクリメントして（ステップＳ３３０７）、待機状態に戻る（ステップＳ３３０３）。
【０１４３】
これとは別に、コントローラ３１１２は、所定のタイミングで、時刻フィールド３２０２を参照して、時計３１１６から得た現在の時刻と比較し、その差があらかじめ定められた時間間隔Δ秒（Δ＞＞α）とくらべて大きい要素があれば、その要素および対応する認証データを時刻フィールド３２０２および認証データフィールド３２０１より削除して、データ数レジスタ３１１４をデクリメントする。これは、すでに使われていないデータによって、データ管理テーブル３１１５が大きくなりすぎることを防ぐためである。もちろん、第７の実施の形態と同じように、終了スイッチ２８０８が押された際にデータ通信装置３１０４が、「使用終了」を示す信号と、認証データ３１１０を、データ通信装置３１１３に送出するようにして、これをトリガーにしてこのようなデータ管理テーブル３１１５から不要になった時刻フィールド３２０２の要素および認証データフィールド３２０１の要素を削除するようにしても差し支えない。いずれにしろ、削除された認証データの時刻フィールド３２０２および認証データフィールド３２０１に対応する部分は、空き領域とせず、順に詰められるとする。
【０１４４】
ミニディスク３１０９をミニディスクドライブ３１０５に挿入してから、認証データの一回目の送出が始まるまでにかかる時間は、データを複製と判定するための上記のしきい値γ秒より長いことが望ましい。これは、例えばデータ再生装置３１０２’で再生されているミニディスク３１０９を異なるデータ再生装置３１０２に入れ直して再生したときに、データ検査装置３１０１が、ミニディスク３１０９を複製と判定することを防ぐためである。
【０１４５】
たとえば、しきい値γを１５秒と取った場合、データ再生装置３１０２’のデータ通信装置３１０４’による最後の、ミニディスク３１０９の認証データ３１１０の送出から、ミニディスク３１０９がデータ再生装置３１０２’から取り出されて、別のデータ再生装置３１０２で再生が始まり、データ通信装置３１０４による、ミニディスク３１０９の認証データ３１１０の１回目の送出までにかかる時間が１０秒であったとすると、認証データ３１１０が２回、１０秒の間隔で送出されることになるため、ミニディスク３１０９は複製と判定されてしまう。これを防ぐために、ミニディスクがミニディスクドライブ３１０５に挿入されて、再生スイッチ３１０７が押されてから、あらかじめ定められたβ秒（β＞α）が経過して初めて認証データの送出が開始されるようにしたのである。
【０１４６】
なお、第７の実施の形態と同じように、終了スイッチ３１０８が押された際にデータ通信装置３１０４が、「使用終了」を示す信号と、認証データ３１１０を、データ通信装置３１１３に送出するようにした場合は、データ再生装置３１０２’で使用を終了した時点で、データ管理テーブル３１１５からミニディスク３１０９の認証データ３１１０を削除できるので、このようなことを考慮する必要はない。
【０１４７】
第８の実施の形態で、不正コピーが抑止される理由、およびやや簡略化した形態の実現方法については第７の実施の形態に述べたのと同様である。
【０１４８】
（第９の実施の形態）
図３４は第９の実施の形態である、データ流通システムのブロック図を示す。第１の実施の形態との主要な相違は、第１の実施の形態に、データ検査装置３４１５が加わっている点である。図１と対応する部分には１００台を３４００台に変えて図示する。また、データ更新装置３４０５はミニディスクに書き込むだけでなく、読み出しも行なう必要がある。さらに、ミニディスク３４０７、３４０７’、３４０７”…には、第７の実施の形態、第８の実施の形態と同様に、正常な使用状態では、一意的な内容を持つ認証データ３４１６、３４１６’、３４１６”…および再生データ３４１７、３４１７’、３４１７”…が記憶されている。なお、以下の各構成要素の具体的な仕様、細部の構成およびデータ構造は、あくまでも説明のための例であり、本発明の範囲をこれに限定するものではない。
【０１４９】
ユーザが、データ更新装置３４０５に、持参したミニディスク３４０７を挿入した際、データ更新装置３４０５は、ミニディスク３４０７から、認証データ３４１６を読み出し、データ検査装置３４１５に送る。データ検査装置３４１５は、送られた認証データ３４１６から、ミニディスク３４０７に複製が存在するかどうかを判定する。複製が存在すると判定された場合には、表示装置３４０８に、挿入されたディスクに複製が存在する旨のメッセージが表示され、データ更新装置３４０５から、ミニディスク３４０７が書き込みが行われないまま排出されて、データ販売機３４０１は初期状態に戻る。複製が存在すると判定されなかった場合は、データ検査装置３４１５は、新たな認証データ３４１６Ａを発生して、データ更新装置３４０５に送り、データ更新装置は、これをミニディスク３４０７に書き込む。これ以降の動作は、第１の実施の形態と同様である。
【０１５０】
次にデータ検査装置３４１５の動作については詳しく述べる。図３５にデータ検査装置３４１５の構成例を示す。コントローラ３５０１、データ数レジスタ３５０２、データ管理テーブル３５０３、認証データ発生装置３５０４、時計３５０５からなる。時計３５０５は、年月日、時分秒を持つものとする。データ管理テーブル３５０３は、図３６に例を示すように、認証データフィールド３６０１と、時刻フィールド３６０２からなっている。第８の実施の形態で述べたデータ管理テーブル３１１５と形態は似ているが、データ管理テーブル３１１５は、使用中のデータの情報を示しているのに対し、データ管理テーブル３５０３は、使用を禁止されたデータの情報を示している点で、機能が大きく異なる。また、認証データフィールドに格納されている認証データの数が、データ数レジスタ３５０２に格納されている。
【０１５１】
以下、ユーザがデータ更新装置３４０５にミニディスク３４０７を挿入した際の、データ検査装置３４１５の動作について図３７のフローチャートに沿って説明する。
【０１５２】
コントローラ３５０１は、データ管理テーブル３５０３の、認証データフィールド３６０１を参照して、認証データ３４１６と一致するものがあれば、データ更新装置３４０５に、ミニディスクは複製である、という判定結果を送り（ステップＳ３７０１）、待機状態に戻る（ステップＳ３７０２）。一致するものがなければ、コントローラ３５０１は、認証データ３４１６の内容を、認証データフィールド３６０１の最後に追加して（ステップＳ３７０３）、時計３５０５から得た現在の時刻を対応する時刻フィールド３６０２に書き込み（ステップＳ３７０４）、データ数レジスタ３５０２をインクリメントして（ステップＳ３７０５）、認証データ発生装置３５０４が、認証データ３４１６と異なる内容の、新たな認証データ３４１６Ａを発生して、データ更新装置３４０５に転送し（ステップＳ３７０６）、待機状態に戻る（ステップＳ３７０２）。
【０１５３】
また、これとは別に、コントローラ３５０１は、所定のタイミングで、時刻フィールド３６０２を参照して、時計３５０５から得た現在の時刻と比較し、その差があらかじめ定められた時間間隔、例えば３０日とくらべて大きいときには、そのような時刻および対応する認証データを、時刻フィールド３６０２および認証データフィールド３６０１より削除して、データ数レジスタ３５０２をデクリメントする。これは、不要になったデータでデータ管理テーブル３５０３がいっぱいになることを防ぐためであるが、十分大きなデータ管理テーブル３５０３が用意できる場合は、これは必須ではない。また、データ管理テーブル３５０３が、一杯になった時のみ、最も古い時刻を時刻フィールド３６０２に持つ認証データおよび対応する時刻を認証データフィールド３６０１および時刻フィールド３６０２から削除するようにしてもよい。
【０１５４】
なお、時刻フィールド３６０２および認証データフィールド３６０１の、削除された認証データに対応する部分は、空き領域とせず、順に詰められるとする。このような方法によって、仮に悪意のある者が、ミニディスクの不正コピーを大量に行なっても、オリジナルとコピーディスクのうち１つが、データの書き換えを行なうと、少なくともある期間は他のコピーディスクは書き換えが行なえないため、不正コピーを行なったメディアと、そうでないメディアとの差は大きく、不正コピーを抑止する効果がある。
【０１５５】
また、ミニディスク３４０７が、データ検査装置３４１５によって複製と判定された場合、単にデータ更新装置３４０５から排出するのではなく、その再生データを消去するなどして再生できないようにする、ミニディスク３４０７自体を回収する、係員を呼び出すなどの動作を行なうことも考えられる。
【０１５６】
次に、認証データ発生装置３５０４の動作について述べる。認証データ発生装置３５０４は、認証データの一意性が保証される形で、新たな認証データ３４１６Ａをミニディスク３４０７に与えることが望ましい。これは特にデータ販売機３４０１が複数台あり、したがって認証データ発生装置３５０４も複数台存在するときに問題になる。
【０１５７】
このようなことが可能な認証データの構成法としては、例えば、図３８に示すように、認証データ３４１６Ａを１２８ビットで構成し、各認証データ発生装置３５０４に固有のＩＤ番号をあらかじめ定めておき、これを上半分の６４ビットとして、下半分の６４ビットを、各認証データ発生装置毎の通し番号０、１、２…で構成することが考えられる。こうすれば、認証データ３４１６Ａは、異なる認証データ発生装置によって生成されれば、少なくとも上位６４ビットのいくつかは必ず異なり、同一の認証データ発生装置によって生成されれば、下位６４ビットのいくつかは必ず異なるので、一意性が保証される。
【０１５８】
また、一度も内容の更新を受けていないミニディスクと、更新を受けたミニディスクを通じて認証データの一意性を保つためには、いずれの場合にも共通の枠組みで認証データを与えるようにする。すなわち、ミニディスクの製造段階において認証データ３４１６を付ける際の、認証データ３４１６を発生する装置も、上記の認証データ発生装置の１つとみなして、通しで固有のＩＤ番号を与えておき、データが更新される際と同じように、１２８ビットの認証データを与えておけば良い。
【０１５９】
（第１０の実施の形態）
図３９は、第１０の実施の形態であるデータ流通システムのブロック図を示す。第１の実施の形態との相違点について説明する。特に説明しない部分については、第１の実施の形態と同様であり、対応する部分には１００台を３９００台に変えて図示する。なお、以下の各構成要素の具体的な仕様、細部の構成およびデータ構造は、あくまでも説明のための例であり、本発明の範囲をこれに限定するものではない。
【０１６０】
ミニディスク３９０７には、課金情報３９１５が再生データ３９１６とともに記憶されている。課金情報３９１５は、図４０に示すように、データ更新時刻４００１、データ使用料４００２およびデータ更新回数４００３からなる。
【０１６１】
データ情報テーブル３９０９が格納している図３に示す価格フィールド３０３と、課金情報３９１５のデータ使用料４００２には、データの２４時間あたりの使用料が格納されているとする。課金装置３９０６には時計３９１７およびタイマ３９１８が加わっている。時計３９１７は年月日、時分秒を持つものとする。タイマ３９１８は、一定時間を計る能力があるものであれば良い。ここでは２０秒とする。ただし、後で分かるように、タイマ３９１８は、第１０の実施の形態のデータ流通システムのユーザインターフェースをより実用的にするために設けたものであり、本質的に必要な構成要素ではない。
【０１６２】
第１０の実施の形態の要点は、データが更新される際に、それまでミニディスク３９０７に格納されていたデータの使用料を、それがミニディスク３９０７に保持されていた時間に応じて請求することである。
【０１６３】
以下、ユーザが、データ販売機３９０１の使用を開始するために、データ更新装置３９０５にミニディスク３９０７を挿入した際の、データ販売機３９０１の動作について図４１のフローチャートに沿って説明する。
【０１６４】
データ更新装置３９０５は、ミニディスク３９０７から、課金情報３９１５を読み出し、課金装置３９０６に伝送する（ステップＳ４１０１）。課金装置３９０６は、時計３９１７から得た現在の時刻と、データ更新時刻４００１、データ使用料４００２を参照して、課金額を決定する（ステップＳ４１０２）。
【０１６５】
なお、課金装置３９０６の課金額の決定方法については種々のものが考えられるが、ここでは、２４時間あたりの価格＊（（現在の時刻―データ更新が前回更新された時刻）／２４時間）で得るとする。
【０１６６】
なお、２４時間あたりの価格はデータ使用料４００２から、現在の時刻は時計３９１７から、データが前回更新された時刻はデータ更新時刻４３０１から得られる。
【０１６７】
課金装置３９０６は決定した課金額を表示装置３９０８に表示する（ステップＳ４１０３）。また、課金装置３９０６は、タイマ３９１８を起動する（ステップＳ４１０４）。タイマ３９１８が２０秒を計時すると、データ更新装置３９０５はミニディスク３９０７を排出し（ステップＳ４１０５）、データ販売機３９０１は待機状態に戻る（ステップＳ４１０６）。タイマ３９１８が２０秒を計時する前に、課金額がユーザによって課金装置３９０６に投入されると、データ選択に移る（ステップＳ４１０７）。これ以降、データ選択装置３９０２が、表示装置３９０８にデータ情報テーブル３９０９の価格フィールド３０３（図３）から得たデータの価格を表示する直前までのデータ流通システムの動作は、第１の実施の形態と全く同様であるので、その後の動作について図４２のフローチャートで説明する。データ選択装置３９０２は、表示装置３９０８に、データ情報テーブル３９０９の価格フィールドから得たデータの価格を表示する（ステップＳ４２０１）。ユーザの入金は、次回の更新時に行われるので、第１の実施の形態と異なり、ここではユーザは入金を行なわない。また、価格についても、次の更新時までの経過時間に依存するので、例えば、「一日あたり２００円」、あるいは「１週間以内１０００円・以降一日あたり５０円」など、経過時間と次回の課金額の関係がユーザに分かるようなものが望ましい。
【０１６８】
ユーザは、図４に示す決定スイッチ４０３または、取り消しスイッチ４０４を押す。取り消しスイッチ４０４が押された場合は、データ更新装置３９０５からはミニディスク３９０７が排出され（ステップＳ４２０２）、データ販売機３９０１は待機状態に戻る（ステップＳ４２０３）。決定スイッチ４０３が押された場合は、データ受信装置３９０４は、送られたデータを、データ更新装置３９０５に転送し、データ更新装置３９０５は、送られたデータをミニディスク３９０７の再生データ３９１６として書き込む（ステップＳ４２０４）。課金装置３９０６は、時計３９１７から得た現在の時刻をデータ更新装置３９０５に送り、データ更新装置３９０５は、これもミニディスク３９０７のデータ更新時刻４００１に書き込む（ステップＳ４２０５）。データ更新装置３９０５はデータ情報テーブル３９０９の価格フィールド３０３の内容をミニディスク３９０７のデータ使用料４００２に書き込み（ステップＳ４２０６）、データ更新回数４００３の内容をインクリメントして（ステップＳ４２０７）、最後にミニディスク３９０７を排出する（ステップＳ４２０８）。データ販売機３９０１は待機状態に戻る（ステップＳ４２０３）。
【０１６９】
この例では、単純に、データがミニディスク３９０７に保持されていた時間に比例して課金しているが、もちろんミニディスク３９０７にデータが保持されていた時間と課金額の関係としてはこれに限るものではない。また、データ更新回数３９１８の内容も課金に用いることで、これが何回目の更新であるかによって課金額を決定または変化させる、例えば更新回数が多ければ、課金額を安く設定するなど、種々の課金体系が考えられるのも明らかである。
【０１７０】
（第１１の実施の形態）
図３９は第１１の実施の形態であるデータ流通システムのブロック図としても通用する。以下、第１０の実施の形態との動作の相違点について説明する。なお、以下の各構成要素の具体的な仕様、細部の構成およびデータ構造は、あくまでも説明のための例であり、本発明の範囲をこれに限定するものではない。
【０１７１】
ミニディスク３９０７の課金情報３９１５の内容は、第１１の実施の形態では、図４３に例を示す、データ更新時刻４３０１と、データ使用記録４３０２からなっている。データ使用記録４３０２は、データ再生装置による、ミニディスク３９０７の再生データ３９１６が、データ再生装置で再生された履歴を保存するものであり、ここではデータ使用記録４３０２には、再生データ３９１６がデータ再生装置にて再生された時間の合計が格納されるとする。
【０１７２】
課金装置３９０６は、次式で課金額を決定する。
【０１７３】
課金額＝定数＊（再生データ３９１６の再生時間の合計＊０．９＋前回のデータ更新からの経過時間＊０．１）
再生データ３９１６の再生時間の合計はデータ使用記録４３０２を読み出すことでそのまま得られる。前回の更新からの経過時間は、時計３９１７から得た現在の時刻から、データ更新時刻４３０１の内容を引くことで得られる。
【０１７４】
これによって、長い間保持されていたけれども、使用されていないデータについての課金が過大になることを防ぐことができる。上式の０．１、０．９という重み係数はもちろん説明のための一例である。
【０１７５】
これ以外の、データ流通システムの動作は、データ選択装置３９０２は、表示装置４０８に、データ情報テーブル３９１２から得たデータの価格を表示する際の表示内容が、課金計算方法に合わせて変更する必要があること、またデータ使用記録４３０２を残すためにデータ再生装置に改変が必要なこと以外は第１０の実施の形態と同様である。
【０１７６】
また、課金額の算出方法はここであげた例に限らない。例えば、データ更新時刻４３０１を用いずに、データ使用記録４３０２から得られる、再生データ３９１５が再生された時間に比例して課金しても差し支えない。この場合は、時計３９１７は不要になる。
【０１７７】
他にも、再生データ３９１６の再生時間が一定以下の場合には、課金額を０にするなども実際的であると考えられる。
【０１７８】
データ使用記録４３０２を残すためのデータ再生装置の例を図４４に示す。
【０１７９】
データ再生装置４４０１は、ＣＰＵ４４０２、ミニディスクドライブ４４０３、表示装置４４０４、再生スイッチ４４０５、終了スイッチ４４０６、時計４４０７、使用開始時刻レジスタ４４０８を備えている。ユーザが、ミニディスク３９０７をミニディスクドライブ４４０３に挿入し、再生スイッチ４４０５を押すと、ＣＰＵ４４０２は、時計４４０７を参照して、現在の時刻を使用開始時刻レジスタ４４０８に保存する。終了スイッチ４４０６が押されると、ＣＰＵ４４０２は、時計４４０７を参照して、現在の時刻と、使用開始時刻レジスタ４４０８の内容の差を計算して、ミニディスク３９０７のデータ使用記録４３０２に書き込み、ミニディスク３９０７をミニディスクドライブ４４０３から排出する。ただし、一度再生スイッチ４４０５が押されると、次に終了スイッチ４４０６が押されるまで、再生スイッチ４４０５は無視されるものとする。
【０１８０】
１．本発明の、特に第１、２、３、９、１０または１１の実施の形態では、同一のデータを保持するデータソースのうち、ユーザを待たせる時間がもっとも短くなるようなデータソースが自動的に選択されるため、ユーザの待ち時間を低減することができる。本発明の、特に第２の実施の形態では、一部のデータソースがデータバッファリング装置として作用するため、ユーザの待ち時間を低減することができ、また、他のデータソースが低速でも、ユーザの平均的な待ち時間への影響は少なくなる。本発明の、特に第４の実施の形態では、時分割式に送信される異なるデータのうち、選択される頻度の高いものに自動的に多くの送信時間が割り当てられるので、やはりユーザの平均的な待ち時間を低減させることができる。
【０１８１】
２．本発明の、特に第７または８の実施の形態では、コピーメディアが、オリジナルと同時には使用できないので、善意のユーザがデータのバックアップを行なう余地を残しながらも、悪意ある者が不正コピーを多量に作成して販売などの形で配布することを心理的に抑止することができる。本発明の、特に第９の実施の形態では、オリジナルの内容が更新された後、少なくとも一定期間はコピーメディアの内容の更新が行なえないので、同様に、善意のユーザがデータのバックアップを行なう余地を残しながらも、悪意ある者が不正コピーを多量に作成して販売などの形で配布することを心理的に抑止することができる。
【０１８２】
３．本発明の特に第１、２、３、９、１０または１１の実施の形態では、種類の異なるデータソースが混在しても、その中から、最適なデータソースを自動的に選択することができる。
【０１８３】
４．本発明の、特に第１０または１１の実施の形態では、ユーザへの課金額は、データの購入時に行われるのではなく、実際にユーザがそのデータを保持していた時間、使用した実績などに基づいて動的に決定されるので、実際に再生してみて、興味を引かないものであれば、課金は全く発生しないか、ごくわずかで済むため、ユーザは気軽にデータを試用することができる。
【０１８４】
５．本発明の、特に第６の実施の形態では、まだ電子化されていないデータをユーザが所望した場合にも、同一の販売機から発注、照会などが行なえるので、ユーザは、所望のデータが電子化されているかどうかを気にすることなく、販売機を使用して発注、照会などを行なうことができる。
【０１８５】
６．本発明の、特に第５の実施の形態によれば、ユーザが入力された検索条件に適合する電子データの部分をまとまった単位で自動的に取り出すことができる。また、どのような単位で取り出すかを選択することも可能である。
【０１８６】
このように、「発明が解決しようとする課題」で挙げた問題は、全て解決されるのである。
【図面の簡単な説明】
【０１８７】
【図１】第１の実施の形態であるデータ流通システムのブロック図を示す。
【図２】第１の実施の形態であるデータ流通システムの動作を表すフローチャートを示す。
【図３】第１の実施の形態におけるデータ情報テーブルの例を示す。
【図４】第１の実施の形態における表示装置の表示例およびデータ選択装置の外観図を示す。
【図５】第１の実施の形態におけるデータレートテーブルの例を示す。
【図６】第１の実施の形態において、データソースが時分割式にデータが送信する様子を示した図を示す。
【図７】第２の実施の形態であるデータ流通システムのブロック図を示す。
【図８】第２の実施の形態におけるデータバッファリング装置のブロック図を示す。
【図９】第２の実施の形態におけるデータ情報テーブルの例を示す。
【図１０】第２の実施の形態におけるデータレートテーブルの例を示す。
【図１１】第２の実施の形態におけるデータバッファリング装置の動作を示すフローチャートを示す。
【図１２】第２の実施の形態において、バッファメモリにデータが格納されるフォーマットを示した図である。
【図１３】第３の実施の形態であるデータ流通システムのブロック図を示す。
【図１４】第３の実施の形態におけるデータスケジュール表の例を示す。
【図１５】第４の実施の形態であるデータ流通システムのブロック図を示す。
【図１６】第４の実施の形態におけるデータ情報テーブルの例を示す。
【図１７】第４の実施の形態におけるデータを分割したブロックの例を示す。
【図１８】第４の実施の形態におけるデータスケジュール管理テーブルの例を示す。
【図１９】第４の実施の形態に関連して、時間あたりのブロック数を選択データの間で均等にした場合の問題点を説明するための図である。
【図２０】第５の実施の形態であるデータ検索機のブロック図を示す。
【図２１】第５の実施の形態における検索条件設定装置の構成例のブロック図を示す。
【図２２】第５の実施の形態における表示装置の表示例を示す。
【図２３】第５の実施の形態に好適なデータ構造の例を示す。
【図２４】第５の実施の形態における目次の例を示す。
【図２５】第５の実施の形態における検索装置の動作を示すフローチャートを示す。
【図２６】第６の実施の形態であるデータ流通システムのブロック図を示す。
【図２７】第６の実施の形態における表示装置の表示例およびデータ選択装置の外観図を示す。
【図２８】第７の実施の形態であるデータ流通システムのブロック図を示す。
【図２９】第７の実施の形態におけるデータ数レジスタおよびデータ管理テーブルの例を示す。
【図３０】第７の実施の形態におけるデータ検査装置の動作を示すフローチャートである。
【図３１】第８の実施の形態であるデータ流通システムのブロック図を示す。
【図３２】第８の実施の形態におけるデータ管理テーブルの例を示す。
【図３３】第８の実施の形態におけるデータ検査装置の動作を示すフローチャートである。
【図３４】第９の実施の形態であるデータ流通システムのブロック図を示す。
【図３５】第９の実施の形態におけるデータ検査装置の構成例のブロック図を示す。
【図３６】第９の実施の形態におけるデータ管理テーブルの例を示す。
【図３７】第９の実施の形態におけるデータ検査装置の動作を示すフローチャートである。
【図３８】第９の実施の形態における認証データの構成例を示す。
【図３９】第１０の実施の形態であるデータ流通システムのブロック図であるデータ流通システムのブロック図を示す。
【図４０】第１０の実施の形態における課金情報の例を示す。
【図４１】第１０の実施の形態であるデータ流通システムの動作の一部を示すフローチャートである。
【図４２】第１０の実施の形態であるデータ流通システムの動作の一部を示すフローチャートである。
【図４３】第１１の実施の形態における課金情報の例を示す。
【図４４】第１１の実施の形態におけるデータ再生装置の例のブロック図を示す。
【符号の説明】
【０１８８】
１０１  データ販売機、１０２  データ選択装置、１０３  データソース選択装置、１０４  データ受信装置、１０５  データ更新装置、１０６  課金装置、１０７  ミニディスク、１０８  表示装置、１０９  データ情報テーブル、１１０  データレートテーブル、１１１  第１のデータ衛星、１１２  第２のデータ衛星、１１３  第１のデータサーバ、１１４  第２のデータサーバ、１０９’  データ情報テーブルのコピー、１０９”  データ情報テーブルのコピー。
【図１】
2004185632.tif 000004
【図２】
2004185632.tif 000005
【図３】
2004185632.tif 000006
【図４】
2004185632.tif 000007
【図５】
2004185632.tif 000008
【図６】
2004185632.tif 000009
【図７】
2004185632.tif 000010
【図８】
2004185632.tif 000011
【図９】
2004185632.tif 000012
【図１０】
2004185632.tif 000013
【図１１】
2004185632.tif 000014
【図１２】
2004185632.tif 000015
【図１３】
2004185632.tif 000016
【図１４】
2004185632.tif 000017
【図１５】
2004185632.tif 000018
【図１６】
2004185632.tif 000019
【図１７】
2004185632.tif 000020
【図１８】
2004185632.tif 000021
【図１９】
2004185632.tif 000022
【図２０】
2004185632.tif 000023
【図２１】
2004185632.tif 000024
【図２２】
2004185632.tif 000025
【図２３】
2004185632.tif 000026
【図２４】
2004185632.tif 000027
【図２５】
2004185632.tif 000028
【図２６】
2004185632.tif 000029
【図２７】
2004185632.tif 000030
【図２８】
2004185632.tif 000031
【図２９】
2004185632.tif 000032
【図３０】
2004185632.tif 000033
【図３１】
2004185632.tif 000034
【図３２】
2004185632.tif 000035
【図３３】
2004185632.tif 000036
【図３４】
2004185632.tif 000037
【図３５】
2004185632.tif 000038
【図３６】
2004185632.tif 000039
【図３７】
2004185632.tif 000040
【図３８】
2004185632.tif 000041
【図３９】
2004185632.tif 000042
【図４０】
2004185632.tif 000043
【図４１】
2004185632.tif 000044
【図４２】
2004185632.tif 000045
【図４３】
2004185632.tif 000046
【図４４】
2004185632.tif 000047