(57)【要約】情報処理装置に最新のバージョンの該データを提供するべく該データを管理するデータ管理システムである。  データ格納部（２０ａ）に格納されたデータから、最新のバージョンのデータへ更新可能な更新差分データを作成する第１の更新差分作成部（１１ａ）と、更新差分データ格納部（１８）に格納された更新差分データと第１の更新差分作成部（１１ａ）によって作成された更新差分データとに基づいて、データ格納部（２０ａ）に格納されたデータよりも前の各バージョンから最新のバージョンのデータへ更新可能な更新差分データを生成する第２の更新差分作成部（１２，１２’、１２”）とをそなえて構成することにより、情報処理装置のデータの更新処理を高速に行なうとともに、最新のバージョンのデータが作成された場合に、この最新のバージョンのデータを高速に登録可能であり、且つ、使用するデータ容量を少なくすることができる。【特許請求の範囲】
【請求項１】
データを格納可能な情報処理装置と通信可能に接続され、複数のバージョンの該データを管理して、該情報処理装置に最新のバージョンの該データを提供するべく該データを管理するデータ管理システムであって、
前記最新のバージョン（Ｖｅｒ．Ｎ）のデータを入力可能な最新バージョンデータ入力部（１０）と、
該最新バージョンよりも前のバージョンであって、当該データ管理システムにおける最新のバージョン（Ｖｅｒ．Ｎ−１）のデータを格納するデータ格納部（２０ａ）と、
前記データ格納部（２０ａ）に格納されたデータよりも前の各バージョンから前記データ格納部（２０ａ）に格納されたデータと同一のバージョン（Ｖｅｒ．Ｎ−１）へ更新可能な更新差分データを格納する更新差分データ格納部（１８）と、
該データ格納部（２０ａ）に格納されたデータ（Ｖｅｒ．Ｎ−１）と、該最新バージョンデータ入力部（１０）により入力された前記最新のバージョン（Ｖｅｒ．Ｎ）のデータとに基づいて、該データ格納部（２０ａ）に格納されたデータから、前記最新のバージョン（Ｖｅｒ．Ｎ）のデータへ更新可能な更新差分データを作成する第１の更新差分作成部（１１ａ）と、
該更新差分データ格納部（１８）に格納された該更新差分データと該第１の更新差分作成部（１１ａ）によって作成された該更新差分データとに基づいて、前記データ格納部（２０ａ）に格納されたデータよりも前の各バージョンから前記最新のバージョン（Ｖｅｒ．Ｎ）のデータへ更新可能な更新差分データを生成する第２の更新差分作成部（１２，１２′，１２″）とをそなえることを特徴とする、データ管理システム。
【請求項２】
前記更新差分データ格納部（１８）に格納された更新差分データを、前記第１の更新差分作成部（１１ａ）によって作成された更新差分データおよび前記第２の更新差分作成部（１２，１２′，１２″）によって作成された更新差分データと置換する新旧更新差分データ置換部（１９）と、
前記データ格納部（２０ａ）に格納されたデータを、前記最新バージョンデータ入力部（１０）から入力された前記最新のバージョン（Ｖｅｒ．Ｎ）のデータと置換する新旧データ置換部（１６）とをそなえることを特徴とする、請求の範囲第１項に記載のデータ管理システム。
【請求項３】
前記更新差分データ格納部（１８）が複数の更新差分データをそなえるとともに、
前記複数の更新差分データの中から、情報処理装置に格納された該データのバージョンに応じて一の更新差分データを選択する選択部（１３）と、
該選択部（１３）によって選択された該更新差分データを該情報処理装置に提供する提供部（１５）とをそなえることを特徴とする、請求の範囲第２項に記載のデータ管理システム。
【請求項４】
該第２の更新差分作成部（１２）が、該更新差分データ格納部（１８）に格納された該更新差分データと該第１の更新差分作成部（１１ａ）によって作成された該更新差分データとに基づいて、
前記更新差分データ格納部（１８）に格納された更新差分データと前記第１の更新差分作成部（１１ａ）によって作成された更新差分データとのいずれもが「複写」を意味する部分については、作成する更新差分データにおける当該位置に複写を、
前記更新差分データ格納部（１８）に格納された更新差分データと前記第１の更新差分作成部（１１ａ）によって作成された更新差分データとの少なくとも一方が「新規」を意味する部分については、作成する更新差分データにおける当該位置に新規を、
前記更新差分データ格納部（１８）に格納された更新差分データが移動であり、且つ前記第１の更新差分作成部（１１ａ）によって作成された更新差分データが「複写」もしくは「移動」を意味する部分と、前記更新差分データ格納部（１８）に格納された更新差分データが「複写」であり、且つ前記第１の更新差分作成部（１１ａ）によって作成された更新差分データが「移動」を意味する部分については、作成する更新差分データにおける当該位置に移動を、それぞれ設定することを特徴とする、請求の範囲第１項〜第３項のいずれか１項に記載のデータ管理システム。
【請求項５】
該第２の更新差分作成部（１２′）が、該更新差分データ格納部（１８）に格納された該更新差分データと該第１の更新差分作成部（１１ａ）によって作成された該更新差分データとに基づいて、
前記データ格納部（２０ａ）に格納されたデータよりも前のバージョンのデータに基づいて作成した第１ダミーデータに、前記更新差分データ格納部（１８）に格納された該更新差分データを適用することにより、前記データ格納部（２０ａ）に格納されたデータと同一のバージョン（Ｖｅｒ．Ｎ−１）の第２ダミーデータを作成した後、当該第２ダミーデータに、前記第１の更新差分作成部（１１ａ）によって作成された更新差分データを適用することにより、前記最新のバージョン（Ｖｅｒ．Ｎ）のデータ同一のバージョンの第３ダミーデータを作成し、当該第３ダミーデータに基づいて、前記データ格納部（２０ａ）に格納されたデータよりも前の各バージョンから前記最新のバージョン（Ｖｅｒ．Ｎ）のデータへ更新可能な更新差分データを生成することを特徴とする、請求の範囲第１項〜第３項のいずれか１項に記載のデータ管理システム。
【請求項６】
該第２の更新差分作成部（１２″）が、該第２更新差分データ格納部（１８）に格納された更新差分データと、前記第１の更新差分作成部（１１ａ）によって作成された更新差分データと、該最新バージョンデータ入力部（１０）により入力された前記最新のバージョン（Ｖｅｒ．Ｎ）のデータとに基づいて、
（１）第１のダミー空データ（Ｖｅｒ．Ｎ−１の空データ）と該最新バージョンデータ入力部（１０）により入力された前記最新のバージョン（Ｖｅｒ．Ｎ）のデータと前記第１の更新差分作成部（１１ａ）によって作成された更新差分データ（Ｖｅｒ．Ｎ−１からＶｅｒ．Ｎ）とに基づいて、前記第１の更新差分作成部（１１ａ）によって作成された更新差分データ（Ｖｅｒ．Ｎ−１からＶｅｒ．Ｎ）を解析して、該第１のダミー空データ中に前記最新のバージョン（Ｖｅｒ．Ｎ）のデータの一部を複写するとともに、当該ダミー空データ中における前記複写されたデータ以外の領域にダミーデータを設定して第１のダミーデータを作成し、
（２）第２のダミー空データ（Ｖｅｒ．Ｘの空データ）と該第１のダミーデータと前記更新差分データ格納部（１８）に格納された更新差分データ（Ｖｅｒ．ＸからＶｅｒ．Ｎ−１）とに基づいて、前記更新差分データ格納部（１８）に格納された更新差分データ（Ｖｅｒ．ＸからＶｅｒ．Ｎ−１）を解析して、該第２のダミー空データ中に前記第１のダミーデータの一部を複写するとともに、当該第２のダミー空データ中における前記複写されたデータ以外の領域にダミーデータを設定して第２のダミーデータを作成し、
（３）該第２のダミーデータと該最新バージョンデータ入力部（１０）により入力された前記最新のバージョン（Ｖｅｒ．Ｎ）のデータとを比較することにより、前記データ格納部（２０ａ）に格納されたデータよりも前の各バージョンから前記最新のバージョン（Ｖｅｒ．Ｎ）のデータへ更新可能な更新差分データ（Ｖｅｒ．ＸからＶｅｒ．Ｎ）を生成することを特徴とする、請求の範囲第１項〜第３項のいずれか１項に記載のデータ管理システム。
【請求項７】
該更新差分データ格納部（１８）に格納された前記複数の更新差分データの中から、特定のバージョンに対応する該更新差分データを選択的に削除可能な更新差分データ削除部（１７）をそなえることを特徴とする、請求の範囲第１項〜第６項のいずれか１項に記載のデータ管理システム。
【請求項８】
データを格納可能な情報処理装置と通信可能に接続され、複数のバージョンの該データを管理して、該情報処理装置に最新のバージョンの該データを提供するべく該データを管理するデータ管理システムであって、
前記最新のバージョン（Ｖｅｒ．Ｎ）のデータを入力可能な最新バージョンデータ入力部（１０）と、
前記最新のバージョン（Ｖｅｒ．Ｎ）よりも前のバージョンの該データを格納するデータ格納部（２０ｂ，２０ｂ′）と、
前記データ格納部（２０ｂ，２０ｂ′）に格納されたデータを、前記複数の各バージョン（Ｖｅｒ．Ｘ）のデータへ更新可能な複数の更新差分データを格納する第１の更新差分データ格納部（１８１）と、
前記データ格納部（２０ｂ，２０ｂ′）に格納されたデータと、該第１の更新差分データ格納部（１８１）に格納された各更新差分データとに基づいて、各バージョン（Ｖｅｒ．Ｘ）のデータを生成するデータ生成部（２２）と、
該データ生成部（２２）によって生成された前記各バージョン（Ｖｅｒ．Ｘ）のデータと、該最新バージョンデータ入力部（１０）により入力された前記最新のバージョン（Ｖｅｒ．Ｎ）のデータとに基づいて、前記各バージョン（Ｖｅｒ．Ｘ）のデータから、前記最新のバージョン（Ｖｅｒ．Ｎ）のデータへ更新可能な更新差分データを作成する更新差分作成部（１１ｂ）と、
該更新差分作成部（１１ｂ）によって作成された該更新差分データを格納する第２の更新差分データ格納部（１８２）とをそなえることを特徴とする、データ管理システム。
【請求項９】
該データ格納部（２０ｂ，２０ｂ′）に、前記複数のバージョンのうち最も古いバージョンの該データを格納することを特徴とする、請求の範囲第８項に記載のデータ管理システム。
【請求項１０】
該第２の更新差分データ格納部（１８２）に前記更新差分作成部によって作成された更新差分データを格納する際に、
該第２の更新差分データ格納部（１８２）に格納されている、前記各バージョン（Ｖｅｒ．Ｘ）のデータから前記最新のバージョン（Ｖｅｒ．Ｎ）より前のバージョン（Ｖｅｒ．Ｎ−１）の該データへ更新可能な該更新差分データを、前記更新差分作成部（１１ｂ）によって作成された更新差分データと置換する新旧更新差分データ置換部（１９）をそなえることを特徴とする、請求の範囲第８項又は第９項に記載のデータ管理システム。
【請求項１１】
該第２の更新差分データ格納部（１８２）に格納された前記複数の更新差分データの中から、特定のバージョンに対応する該更新差分データを選択的に削除可能な更新差分データ削除部（１７）をそなえることを特徴とする、請求の範囲第８項〜第１０項のいずれか１項に記載のデータ管理システム。
【請求項１２】
データを格納可能な情報処理装置と通信可能に接続され、複数のバージョンの該データを管理して、該情報処理装置に最新のバージョンの該データを提供するべく該データを管理するデータ管理システムであって、
前記最新のバージョン（Ｖｅｒ．Ｎ）のデータを入力可能な最新バージョンデータ入力部（１０）と、
前記最新のバージョン（Ｖｅｒ．Ｎ）よりも前のバージョンの該データを格納するデータ格納部（２０ｂ）と、
前記データ格納部（２０ｂ）に格納されたデータを、前記最新バージョンデータ入力部（１０）から入力される最新のバージョン（Ｖｅｒ．Ｎ）よりも前のバージョン（Ｖｅｒ．Ｎ−１）であって、当該データ管理システム内における最新のバージョン（Ｖｅｒ．Ｎ−１）のデータへ更新可能な更新差分データを格納する第１の更新差分データ格納部（１８１ｃ）と、
前記データ格納部（２０ｂ）に格納されたデータと、該第１の更新差分データ格納部（１８１ｃ）に格納された更新差分データとに基づいて、前記最新バージョンデータ入力部（１０）から入力される最新のバージョンよりも前のバージョン（Ｖｅｒ．Ｎ−１）であって、当該データ管理システム内における最新のバージョン（Ｖｅｒ．Ｎ−１）のデータを生成するデータ生成部（２２）と、
該データ生成部（２２）によって生成されたデータ（Ｖｅｒ．Ｎ−１）と、該最新バージョンデータ入力部（１０）により入力される前記最新のバージョン（Ｖｅｒ．Ｎ）のデータとに基づいて、前記最新バージョンデータ入力部（１０）から入力される最新のバージョンよりも前のバージョン（Ｖｅｒ．Ｎ−１）であって、当該データ管理システム内における最新のバージョン（Ｖｅｒ．Ｎ−１）のデータから、前記最新バージョンデータ入力部（１０）から入力される最新のバージョン（Ｖｅｒ．Ｎ）のデータへ更新可能な更新差分データを作成する第１の更新差分作成部（１１ｃ）と、
当該データ管理システム内における最新のバージョン（Ｖｅｒ．Ｎ−１）のデータよりも前の各バージョン（Ｖｅｒ．Ｘ）から当該データ管理システムにおける最新のバージョン（Ｖｅｒ．Ｎ−１）のデータと同一のバージョン（Ｖｅｒ．Ｎ−１）へ更新可能な更新差分データを格納する第２の更新差分データ格納部（１８２）と、
該第２の更新差分データ格納部（１８２）に格納された該更新差分データと該第１の更新差分作成部（１１ｃ）によって作成された該更新差分データとに基づいて、最新バージョンデータ入力部（１０）により入力される前記最新のバージョン（Ｖｅｒ．Ｎ）のデータよりも前のバージョンであって、当該データ管理システムにおける最新のバージョン（Ｖｅｒ．Ｎ−１）のデータよりも前の各バージョンから、最新バージョンデータ入力部（１０）により入力される前記最新のバージョン（Ｖｅｒ．Ｎ）のデータへ更新可能な更新差分データを生成する第２の更新差分作成部（２５）とをそなえることを特徴とする、データ管理システム。
【請求項１３】
データを格納可能な情報処理装置と通信可能に接続され、複数のバージョンの該データを管理して、該情報処理装置に最新のバージョンの該データを提供するべく該データを管理するデータ管理装置であって、
前記最新のバージョン（Ｖｅｒ．Ｎ）のデータを入力可能な最新バージョンデータ入力部（１０）と、
該最新バージョンよりも前のバージョンであって、当該データ管理システムにおける最新のバージョン（Ｖｅｒ．Ｎ−１）のデータを格納するデータ格納部（２０ａ）と、
前記データ格納部（２０ａ）に格納されたデータよりも前の各バージョンから前記データ格納部（２０ａ）に格納されたデータと同一のバージョン（Ｖｅｒ．Ｎ−１）へ更新可能な更新差分データを格納する更新差分データ格納部（１８）と、
該データ格納部（２０ａ）に格納されたデータ（Ｖｅｒ．Ｎ−１）と、該最新バージョンデータ入力部（１０）により入力された前記最新のバージョン（Ｖｅｒ．Ｎ）のデータとに基づいて、該データ格納部（２０ａ）に格納されたデータから、前記最新のバージョン（Ｖｅｒ．Ｎ）のデータへ更新可能な更新差分データを作成する第１の更新差分作成部（１１ａ）と、
該更新差分データ格納部に格納された該更新差分データと該第１の更新差分作成部（１１ａ）によって作成された該更新差分データとに基づいて、前記データ格納部（２０ａ）に格納されたデータよりも前の各バージョンから前記最新のバージョン（Ｖｅｒ．Ｎ）のデータへ更新可能な更新差分データを生成する第２の更新差分作成部（１２，１２′，１２″）とをそなえることを特徴とする、データ管理装置。
【請求項１４】
データを格納可能な情報処理装置と通信可能に接続され、複数のバージョンの該データを管理して、該情報処理装置に最新のバージョンの該データを提供するべく該データを管理するデータ管理装置であって、
前記最新のバージョン（Ｖｅｒ．Ｎ）のデータを入力可能な最新バージョンデータ入力部（１０）と、
前記最新のバージョン（Ｖｅｒ．Ｎ）よりも古いバージョンの該データを格納するデータ格納部（２０ｂ，２０ｂ′）と、
前記データ格納部（２０ｂ，２０ｂ′）に格納された該データを、前記複数の各バージョンのデータへ更新可能な複数の更新差分データを格納する第１の更新差分データ格納部（１８１）と、
前記データ格納部（２０ｂ，２０ｂ′）に格納されたデータと、該第１の更新差分データ格納部（１８１）に格納された各更新差分データとに基づいて、各バージョン（Ｖｅｒ．Ｘ）のデータを生成するデータ生成部（２２）と、
該データ生成部（２２）によって生成された前記各バージョン（Ｖｅｒ．Ｘ）のデータと、該最新バージョンデータ入力部（１０）により入力された前記最新のバージョン（Ｖｅｒ．Ｎ）のデータとに基づいて、前記各バージョンのデータから、前記最新のバージョン（Ｖｅｒ．Ｎ）のデータへ更新可能な更新差分データを作成する更新差分作成部（１１ｂ）と、
該更新差分作成部（１１ｂ）によって作成された該更新差分データを格納する第２の更新差分データ格納部（１８２）とをそなえることを特徴とする、データ管理装置。
【請求項１５】
データを格納可能な情報処理装置に最新のバージョンの該データを提供するべく該データを管理するデータ管理方法であって、
前記最新のバージョン（Ｖｅｒ．Ｎ）のデータを入力する最新バージョンデータ入力ステップと、
該最新バージョンよりも前のバージョンであって、当該データ供給システムにおけろ最新のバージョン（Ｖｅｒ．Ｎ−１）のデータを格納するデータ格納ステップと、
前記データ格納ステップにおいて格納されたデータよりも前の各バージョンから前記データ格納ステップにおいて格納されたデータと同一のバージョン（Ｖｅｒ．Ｎ−１）へ更新可能な更新差分データを格納する更新差分データ格納ステップと、
該データ格納ステップにおいて格納されたデータ（Ｖｅｒ．Ｎ−１）と、該最新バージョンデータ入力ステップにおいて入力された前記最新のバージョン（Ｖｅｒ．Ｎ）のデータとに基づいて、該データ格納ステップにおいて格納されたデータから、前記最新のバージョン（Ｖｅｒ．Ｎ）のデータへ更新可能な更新差分データを作成する第１の更新差分作成ステップと、
該更新差分データ格納ステップにおいて格納された該更新差分データと該第１の更祈差分作成ステップにおいて作成された該更新差分データとに基づいて、前記データ格納ステップにおいて格納されたデータよりも前の各バージョンから前記最新のバージョン（Ｖｅｒ．Ｎ）のデータへ更新可能な更新差分データを生成する第２の更新差分生成ステップとをそなえることを特徴とする、データ管理方法。
【請求項１６】
データを格納可能な情報処理装置に最新のバージョンの該データを提供するべく該データを管理するデータ管理方法であって、
前記最新のバージョン（Ｖｅｒ．Ｎ）のデータを入力可能な最新バージョンデータ入力ステップと、
前記最新のバージョン（Ｖｅｒ．Ｎ）よりも古いバージョンの該データを格納するデータ格納ステップと、
前記データ格納ステップにおいて格納された該データを、前記複数の各バージョンのデータへ更新可能な複数の更新差分データを格納する第１の更新差分データ格納ステップと、
前記データ格納ステップにおいて格納されたデータと、該第１の更新差分データ格納ステップにおいて格納された各更新差分データとに基づいて、各バージョンのデータを生成するデータ生成ステップと、
該データ生成ステップにおいて生成された前記各バージョンのデータと、該最新バージョンデータ入力ステップにおいて入力された前記最新のバージョン（Ｖｅｒ．Ｎ）のデータとに基づいて、前記各バージョンのデータから、前記最新のバージョン（Ｖｅｒ．Ｎ）のデータへ更新可能な更新差分データを作成する更新差分作成ステップと、
該更新差分作成ステップにおいて作成された該更新差分データを格納する第２の更新差分データ格納ステップとをそなえることを特徴とする、データ管理方法。
【請求項１７】
更新可能なデータを格納可能な情報処理装置と通信可能に接続され、複数のバージョンの該データを管理して、該情報処理装置に最新のバージョンの該データを提供するデータ供給システムであって、
前記最新のバージョンのデータを格納する最新バージョンデータ格納部（２０ａ）と、
前記最新のバージョン（Ｖｅｒ．Ｎ）よりも前の各バージョンから前記最新バージョンのデータへ更新可能な複数の更新差分データを格納する更新差分データ格納部（１８）と、
該情報処理装置に格納された該データのバージョンに応じて、該更新差分データ格納部（１８）に格納された前記複数の更新差分データの中から、一の更新差分データを選択する選択部（１３）と、
該選択部（１３）によって選択された該更新差分データを該情報処理装置に提供する提供部（１５）とをそなえることを特徴とする、データ供給システム。
【請求項１８】
データを格納可能な情報処理装置と通信可能に接続され、複数のバージョンの該データを管理して、該情報処理装置に最新のバージョンの該データを提供するデータ供給システムであって、
前記最新のバージョンよりも古いバージョンの該データを格納するデータ格納部（２０ｂ）と、
前記データ格納部（２０ｂ）に格納されたデータを各バージョンのデータに更新可能な複数の更新差分データを格納する第１の更新差分データ格納部（１８１）と、
前記最新のバージョンよりも前の各バージョンから前記最新バージョンのデータへ更新可能な複数の更新差分データを格納する第２の更新差分データ格納部（１８２）と、
該情報処理装置に格納された該データのバージョンに応じて、該第２の更新差分データ格納部（１８２）に格納された前記複数の更新差分データの中から、一の更新差分データを選択する選択部（１３）と、
該選択部（１３）によって選択された該更新差分データを該情報処理装置に提供する提供部（１５）とをそなえることを特徴とする、データ供給システム。
【請求項１９】
データを格納可能な情報処理装置に最新のバージョンの該データを提供するべく該データを管理するデータ管理機能をコンピュータに実行させるためのデータ管理プログラムであって、
前記最新のバージョン（Ｖｅｒ．Ｎ）のデータを入力する最新バージョンデータ入力ステップと、
該最新バージョンよりも前のバージョンであって、前記最新バージョンデータ入力ステップにおいて入力されるデータよりも前のバージョンのうちで最も新しいバージョン（Ｖｅｒ．Ｎ−１）のデータを格納するデータ格納ステップと、
前記データ格納ステップにおいて格納されたデータよりも前の各バージョンから前記データ格納部（２０ａ）に格納されたデータと同一のバージョン（Ｖｅｒ．Ｎ−１）へ更新可能な更新差分データを格納する更新差分データ格納ステップと、
該データ格納ステップにおいて格納されたデータ（Ｖｅｒ．Ｎ−１）と、該最新バージョンデータ入力ステップにおいて入力された前記最新のバージョン（Ｖｅｒ．Ｎ）のデータとに基づいて、該データ格納ステップにおいて格納されたデータから、前記最新のバージョン（Ｖｅｒ．Ｎ）のデータへ更新可能な更新差分データを作成する第１の更新差分作成ステップと、
該更新差分データ格納ステップにおいて格納された該更新差分データと該第１の更新差分作成ステップにおいて作成された該更新差分データとに基づいて、前記データ格納ステップにおいて格納されたデータよりも前の各バージョンから前記最新のバージョン（Ｖｅｒ．Ｎ）のデータへ更新可能な更新差分データを生成する第２の更新差分生成ステップとを、該コンピュータに実行させることを特徴とするデータ管理プログラム。
【請求項２０】
データを格納可能な情報処理装置に最新のバージョンの該データを提供するべく該データを管理するデータ管理機能をコンピュータに実行させるためのデータ管理プログラムであって、
前記最新のバージョン（Ｖｅｒ．Ｎ）のデータを入力可能な最新バージョンデータ入力ステップと、
前記最新のバージョン（Ｖｅｒ．Ｎ）よりも古いバージョンの該データを格納するデータ格納ステップと、
前記データ格納ステップにおいて格納された該データを、前記複数の各バージョンのデータへ更新可能な複数の更新差分データを格納する第１の更新差分データ格納ステップと、
前記データ格納ステップにおいて格納されたデータと、該第１の更新差分データ格納ステップにおいて格納された各更新差分データとに基づいて、各バージョンのデータを生成するデータ生成ステップと、
該データ生成ステップにおいて生成された前記各バージョンのデータと、該最新バージョンデータ入力ステップにおいて入力された前記最新のバージョン（Ｖｅｒ．Ｎ）のデータとに基づいて、前記各バージョンのデータから、前記最新のバージョン（Ｖｅｒ．Ｎ）のデータへ更新可能な更新差分データを作成する更新差分作成ステップと、
該更新差分作成ステップにおいて作成された該更新差分データを格納する第２の更新差分データ格納ステップとを、該コンピュータに実行させることを特徴とする、データ管理プログラム。
【請求項２１】
データを格納可能な情報処理装置に最新のバージョンの該データを提供するべく該データを管理するデータ管理機能をコンピュータに実行させるためのデータ管理プログラムを記録したコンピュータ読取可能な記録媒体であって、
該データ管理プログラムが、
前記最新のバージョン（Ｖｅｒ．Ｎ）のデータを入力する最新バージョンデータ入力ステップと、
前記最新バージョンデータ入力ステップにおいて入力されるデータよりも前のバージョンのうちで最も新しいバージョン（Ｖｅｒ．Ｎ−１）のデータを格納するデータ格納ステップと、
前記データ格納ステップにおいて格納されたデータよりも前の各バージョンから前記データ格納部（２０ａ）に格納されたデータと同一のバージョン（Ｖｅｒ．Ｎ−１）へ更新可能な更新差分データを格納する更新差分データ格納ステップと、
該データ格納ステップにおいて格納されたデータ（Ｖｅｒ．Ｎ−１）と、該最新バージョンデータ入力ステップにおいて入力された前記最新のバージョン（Ｖｅｒ．Ｎ）のデータとに基づいて、該データ格納ステップにおいて格納されたデータから、前記最新のバージョン（Ｖｅｒ．Ｎ）のデータへ更新可能な更新差分データを作成する第１の更新差分作成ステップと、
該更新差分データ格納ステップにおいて格納された該更新差分データと該第１の更新差分作成ステップにおいて作成された該更新差分データとに基づいて、前記データ格納ステップにおいて格納されたデータよりも前の各バージョンから前記最新のバージョン（Ｖｅｒ．Ｎ）のデータへ更新可能な更新差分データを生成する第２の更新差分生成ステップとを、該コンピュータに実行させることを特徴とするデータ管理プログラムを記録したコンピュータ読取可能な記録媒体。
【請求項２２】
データを格納可能な情報処理装置に最新のバージョンの該データを提供するべく該データを管理するデータ管理機能をコンピュータに実行させるためのデータ管理プログラムを記録したコンピュータ読取可能な記録媒体であって、
該データ管理プログラムが、
前記最新のバージョン（Ｖｅｒ．Ｎ）のデータを入力可能な最新バージョンデータ入力ステップと、
前記最新のバージョン（Ｖｅｒ．Ｎ）よりも古いバージョンの該データを格納するデータ格納ステップと、
前記データ格納ステップにおいて格納された該データを、前記複数の各バージョンのデータへ更新可能な複数の更新差分データを格納する第１の更新差分データ格納ステップと、
前記データ格納ステップにおいて格納されたデータと、該第１の更新差分データ格納ステップにおいて格納された各更新差分データとに基づいて、各バージョンのデータを生成するデータ生成ステップと、
該データ生成ステップにおいて生成された前記各バージョンのデータと、該最新バージョンデータ入力ステップにおいて入力された前記最新のバージョン（Ｖｅｒ．Ｎ）のデータとに基づいて、前記各バージョンのデータから、前記最新のバージョン（Ｖｅｒ．Ｎ）のデータへ更新可能な更新差分データを作成する更新差分作成ステップと、
該更新差分作成ステップにおいて作成された該更新差分データを格納する第２の更新差分データ格納ステップとを、該コンピュータに実行させることを特徴とする、データ管理プログラムを記録したコンピュータ読取可能な記録媒体。
【発明の詳細な説明】
【技術分野】  本発明は、例えばＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）等の手段で通信可能に接続されたコンピュータや携帯電話器等の情報処理装置に格納されたデータ（プログラム）のバージョンの管理に関し、情報処理装置のデータを最新のバージョンに更新する更新処理に用いて好適な、データ管理システム，データ管理装置，データ管理方法，データ供給システム，データ管理プログラムおよび同プログラムを記録したコンピュータ読取可能な記録媒体に関する。
【背景技術】  例えば、携帯電話器等のような組込型システムの情報処理装置は、内部のメモリに格納されたソフトウェア（プログラム）をＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）が実行することにより動作しており、又、これらのプログラムは、不具合の除去や仕様変更，機能拡張等、必要に応じて更新（バージョンアップ）されることがある。
このようなプログラムが更新され新しいバージョンのプログラムが作成された場合には、この最新のバージョンのプログラムを情報処理装置に速やかに提供して、情報処理装置においてプログラムを最新のバージョンに更新することが望ましい。
さて、最新のバージョンのプログラムが作成される度に、その最新のバージョンのプログラム全体をＬＡＮ等の通信回線を介して情報処理装置に送信する代わりに、変更された部分のみのデータである更新差分データだけを送信することで、通信回線におけるデータの通信量を軽減したり、情報処理装置におけるプログラムの更新処理にかかる時間を短くする手法が知られている。
図１５および図１６はそれぞれ従来のプログラムの更新管理手法を説明するための図である。例えば、特開平１１−２７２４７１号公報（下記特許文献１）や、特開２０００−１０７８７号公報（下記特許文献２），特開２００２−９１７７６号公報（下記特許文献３），特開平１０−３４１５号公報（下記特許文献４）には、ネットワーク（通信回線）を介して接続されたコンピュータ（計算機）に対して、各コンピュータにおいて用いられているプログラムとその最新バージョンのプログラムとの差分データ（バージョンアップデータ）を送信するシステムが開示されている。
図１５は特許文献１および特許文献２にかかる従来のシステムの機能構成を模式的に示す図であるが、この図１５に示すように、特許文献１および特許文献２にかかる従来のシステムにおいては、送信側（プログラムローダ）において、各バージョンのプログラム全体を保存するとともに、各バージョンのプログラムに対する最新バージョンへの差分データを保存・管理し、通信回線を介して接続された受信側コンピュータ（計算機）に対して、この差分データを送信するようになっている。
また、図１６は特許文献３および特許文献４にかかる従来のシステムの機能構成を模式的に示す図であるが、この図１６に示すように、特許文献３および特許文献４にかかる従来のシステムにおいては、サーバ側において、最新のバージョン（Ｖｅｒ．Ｎ−１）のプログラム全体を保存するとともに、システム中における最も古いバージョン（例えばＶｅｒ．１）から最新のバージョン（Ｖｅｒ．Ｎ−１）までの各バージョンについて、それぞれ１つ新しいバージョンに更新するための差分データ（例えば、Ｖｅｒ．１からＶｅｒ．２，Ｖｅｒ．２からＶｅｒ．３・・・，Ｖｅｒ．Ｎ−２からＶｅｒ．Ｎ−１等）をそれぞれ保存するようになっている。すなわち、最新のバージョン（Ｖｅｒ．Ｎ−１）のプログラム全体とともに、隣り合う世代のバージョン間の差分データを各バージョン毎にそなえている。
そして、この図１６に示す従来手法においては、クライアントのプログラムを最新のバージョンに更新する際には、そのクライアントのプログラムのバージョンから順番にそのクライアントのプログラムが最新のバージョンになるまで、各バージョンに対応する差分データのクライアントへの送信と、そのクライアントにおける差分データを用いた展開（更新処理）とを繰り返し行なうようになっている。
しかしながら、図１５に示す従来手法においては、各バージョンのプログラム全体を保存しているので保持すべきデータ量が多くなり、かかるデータの格納領域を確保するためにハードウェアの製造コストが高くなり非経済的であるという課題がある。特に、プログラムの更新が数多く行なわれバージョン数が多くなるに従って、保存するデータ量も増えるのである。又、新しいバージョン（Ｖｅｒ．Ｎ）のプログラムが作成された場合には、この最新のプログラムを登録する際に、新旧プログラムの比較ツール等を用いて、既存の各バージョンのプログラムから新たに作成された最新バージョンのプログラムに更新するための差分データをそれぞれ作成する必要があり、かかる差分データの作成工程が繁雑であるとともに時間がかかるという課題もある。
また、図１６に示す従来手法においては、クライアントのプログラムを最新のバージョンに更新する際には、そのクライアントのプログラムのバージョンに対応する差分データをから順番に、そのクライアントのプログラムが最新のバージョンになるまで、各バージョンに対応する差分データのクライアントへの送信と、そのクライアントにおける差分データを用いた展開（更新処理）とを繰り返し行なう必要があり、例えば、クライアントのプログラムのバージョンが何世代も前のバージョンである場合には、更新処理が繁雑であるとともに時間がかかるという課題がある。
本発明は、このような課題に鑑み創案されたもので、情報処理装置のデータの更新処理を高速に行なうとともに、最新のバージョンのデータが作成された場合に、この最新のバージョンのデータを高速に登録可能であり、且つ、使用するデータ容量を少なくすることが可能な、データ管理システム，データ管理装置，データ管理方法，データ供給システム，データ管理プログラムおよび同プログラムを記録したコンピュータ読取可能な記録媒体を提供することを目的とする。
【特許文献１】特開平１１−２７２４７１号公報
【特許文献２】特開２０００−１０７８７号公報
【特許文献３】特開２００２−９１７７６号公報
【特許文献４】特開平１０−３４１５号公報
【発明の開示】
上記の目的を達成するために、本発明のデータ管理システムは、データを格納可能な情報処理装置と通信可能に接続され、複数のバージョンの該データを管理して、該情報処理装置に最新のバージョンの該データを提供するべく該データを管理するデータ管理システムであって、前記最新のバージョン（Ｖｅｒ．Ｎ）のデータを入力可能な最新バージョンデータ入力部と、該最新バージョンよりも前のバージョンであって、当該データ管理システムにおける最新のバージョン（Ｖｅｒ．Ｎ−１）のデータを格納するデータ格納部と、前記データ格納部に格納されたデータよりも前の各バージョンから前記データ格納部に格納されたデータと同一のバージョン（Ｖｅｒ．Ｎ−１）へ更新可能な更新差分データを格納する更新差分データ格納部と、該データ格納部に格納されたデータ（Ｖｅｒ．Ｎ−１）と、該最新バージョンデータ入力部により入力された前記最新のバージョン（Ｖｅｒ．Ｎ）のデータとに基づいて、該データ格納部に格納されたデータから、前記最新のバージョン（Ｖｅｒ．Ｎ）のデータへ更新可能な更新差分データを作成する第１の更新差分作成部と、該更新差分データ格納部に格納された該更新差分データと該第１の更新差分作成部によって作成された該更新差分データとに基づいて、前記データ格納部に格納されたデータよりも前の各バージョンから前記最新のバージョン（Ｖｅｒ．Ｎ）のデータへ更新可能な更新差分データを生成する第２の更新差分作成部とをそなえることを特徴としている。
なお、前記更新差分データ格納部に格納された更新差分データを、前記第１の更新差分作成部によって作成された更新差分データおよび前記第２の更新差分作成部によって作成された更新差分データと置換する新旧更新差分データ置換部と、前記データ格納部に格納されたデータを、前記最新バージョンデータ入力部から入力された前記最新のバージョン（Ｖｅｒ．Ｎ）のデータと置換する新旧データ置換部とをそなえてもよい。
また、前記更新差分データ格納部が複数の更新差分データをそなえるとともに、前記複数の更新差分データの中から、情報処理装置に格納された該データのバージョンに応じて一の更新差分データを選択する選択部と、該選択部によって選択された該更新差分データを該情報処理装置に提供する提供部とをそなえてもよい。
さらに、該第２の更新差分作成部が、該更新差分データ格納部に格納された該更新差分データと該第１の更新差分作成部によって作成された該更新差分データとに基づいて、前記更新差分データ格納部に格納された更新差分データと前記第１の更新差分作成部によって作成された更新差分データとのいずれもが「複写」を意味する部分については、作成する更新差分データにおける当該位置に複写を、前記更新差分データ格納部に格納された更新差分データと前記第１の更新差分作成部によって作成された更新差分データとの少なくとも一方が「新規」を意味する部分については、作成する更新差分データにおける当該位置に新規を、前記更新差分データ格納部に格納された更新差分データが移動であり、且つ前記第１の更新差分作成部によって作成された更新差分データが「複写」もしくは「移動」を意味する部分と、前記更新差分データ格納部に格納された更新差分データが「複写」であり、且つ前記第１の更新差分作成部によって作成された更新差分データが「移動」を意味する部分については、作成する更新差分データにおける当該位置に移動を、それぞれ設定してもよい。
また、該第２の更新差分作成部が、該更新差分データ格納部に格納された該更新差分データと該第１の更新差分作成部によって作成された該更新差分データとに基づいて、前記データ格納部に格納されたデータよりも前のバージョンのデータに基づいて作成した第１ダミーデータに、前記更新差分データ格納部に格納された該更新差分データを適用することにより、前記データ格納部に格納されたデータと同一のバージョン（Ｖｅｒ．Ｎ−１）の第２ダミーデータを作成した後、当該第２ダミーデータに、前記第１の更新差分作成部によって作成された更新差分データを適用することにより、前記最新のバージョン（Ｖｅｒ．Ｎ）のデータ同一のバージョンの第３ダミーデータを作成し、当該第３ダミーデータに基づいて、前記データ格納部に格納されたデータよりも前の各バージョンから前記最新のバージョン（Ｖｅｒ．Ｎ）のデータへ更新可能な更新差分データを生成してもよい。
さらに、該第２の更新差分作成部が、該第２更新差分データ格納部に格納された更新差分データと、前記第１の更新差分作成部によって作成された更新差分データと、該最新バージョンデータ入力部により入力された前記最新のバージョン（Ｖｅｒ．Ｎ）のデータとに基づいて、
（１）第１のダミー空データ（Ｖｅｒ．Ｎ−１の空データ）と該最新バージョンデータ入力部により入力された前記最新のバージョン（Ｖｅｒ．Ｎ）のデータと前記第１の更新差分作成部によって作成された更新差分データ（Ｖｅｒ．Ｎ−１からＶｅｒ．Ｎ）とに基づいて、前記第１の更新差分作成部によって作成された更新差分データ（Ｖｅｒ．Ｎ−１からＶｅｒ．Ｎ）を解析して、該第１のダミー空データ中に前記最新のバージョン（Ｖｅｒ．Ｎ）のデータの一部を複写するとともに、当該ダミー空データ中における前記複写されたデータ以外の領域にダミーデータを設定して第１のダミーデータを作成し、
（２）第２のダミー空データ（Ｖｅｒ．Ｘの空データ）と該第１のダミーデータと前記更新差分データ格納部に格納された更新差分データ（Ｖｅｒ．ＸからＶｅｒ．Ｎ−１）とに基づいて、前記更新差分データ格納部に格納された更新差分データ（Ｖｅｒ．ＸからＶｅｒ．Ｎ−１）を解析して、該第２のダミー空データ中に前記第１のダミーデータの一部を複写するとともに、当該第２のダミー空データ中における前記複写されたデータ以外の領域にダミーデータを設定して第２のダミーデータを作成し、
（３）該第２のダミーデータと該最新バージョンデータ入力部により入力された前記最新のバージョン（Ｖｅｒ．Ｎ）のデータとを比較することにより、前記データ格納部に格納されたデータよりも前の各バージョンから前記最新のバージョン（Ｖｅｒ．Ｎ）のデータへ更新可能な更新差分データ（Ｖｅｒ．ＸからＶｅｒ．Ｎ）を生成してもよい。
なお、該更新差分データ格納部に格納された前記複数の更新差分データの中から、特定のバージョンに対応する該更新差分データを選択的に削除可能な更新差分データ削除部をそなえてもよい。
また、本発明のデータ管理システムは、データを格納可能な情報処理装置と通信可能に接続され、複数のバージョンの該データを管理して、該情報処理装置に最新のバージョンの該データを提供するべく該データを管理するデータ管理システムであって、前記最新のバージョン（Ｖｅｒ．Ｎ）のデータを入力可能な最新バージョンデータ入力部と、前記最新のバージョン（Ｖｅｒ．Ｎ）よりも前のバージョンの該データを格納するデータ格納部と、前記データ格納部に格納されたデータを、前記複数の各バージョン（Ｖｅｒ．Ｘ）のデータへ更新可能な複数の更新差分データを格納する第１の更新差分データ格納部と、前記データ格納部に格納されたデータと、該第１の更新差分データ格納部に格納された各更新差分データとに基づいて、各バージョンのデータを生成するデータ生成部と、該データ生成部によって生成された前記各バージョン（Ｖｅｒ．Ｘ）のデータと、該最新バージョンデータ入力部により入力された前記最新のバージョン（Ｖｅｒ．Ｎ）のデータとに基づいて、前記各バージョン（Ｖｅｒ．Ｘ）のデータから、前記最新のバージョン（Ｖｅｒ．Ｎ）のデータへ更新可能な更新差分データを作成する更新差分作成部と、該更新差分作成部によって作成された該更新差分データを格納する第２の更新差分データ格納部とをそなえることを特徴としている。
なお、該データ格納部に、前記複数のバージョンのうち最も古いバージョンの該データを格納してもよい。
また、該第２の更新差分データ格納部に前記更新差分作成部によって作成された更新差分データを格納する際に、該第２の更新差分データ格納部に格納されている、前記各バージョン（Ｖｅｒ．Ｘ）のデータから前記最新のバージョン（Ｖｅｒ．Ｎ）より前のバージョン（Ｖｅｒ．Ｎ−１）の該データへ更新可能な該更新差分データを、前記更新差分作成部（１１ｂ）によって作成された更新差分データと置換する新旧更新差分データ置換部をそなえてもよい。
さらに、該第２の更新差分データ格納部に格納された前記複数の更新差分データの中から、特定のバージョンに対応する該更新差分データを選択的に削除可能な更新差分データ削除部をそなえてもよい。
また、本発明のデータ管理システムは、データを格納可能な情報処理装置と通信可能に接続され、複数のバージョンの該データを管理して、該情報処理装置に最新のバージョンの該データを提供するべく該データを管理するデータ管理システムであって、前記最新のバージョン（Ｖｅｒ．Ｎ）のデータを入力可能な最新バージョンデータ入力部と、前記最新のバージョン（Ｖｅｒ．Ｎ）よりも前のバージョンの該データを格納するデータ格納部と、前記データ格納部に格納されたデータを、前記最新バージョンデータ入力部から入力される最新のバージョン（Ｖｅｒ．Ｎ）よりも前のバージョン（Ｖｅｒ．Ｎ−１）であって、当該データ管理システム内における最新のバージョン（Ｖｅｒ．Ｎ−１）のデータへ更新可能な更新差分データを格納する第１の更新差分データ格納部と、前記データ格納部（２０ｂ）に格納されたデータと、該第１の更新差分データ格納部に格納された更新差分データとに基づいて、前記最新バージョンデータ入力部から入力される最新のバージョンよりも前のバージョン（Ｖｅｒ．Ｎ−１）であって、当該データ管理システム内における最新のバージョン（Ｖｅｒ．Ｎ−１）のデータを生成するデータ生成部と、該データ生成部によって生成されたデータ（Ｖｅｒ．Ｎ−１）と、該最新バージョンデータ入力部により入力される前記最新のバージョン（Ｖｅｒ．Ｎ）のデータとに基づいて、前記最新バージョンデータ入力部から入力される最新のバージョンよりも前のバージョン（Ｖｅｒ．Ｎ−１）であって、当該データ管理システム内における最新のバージョン（Ｖｅｒ．Ｎ−１）のデータから、前記最新バージョンデータ入力部から入力される最新のバージョン（Ｖｅｒ．Ｎ）のデータへ更新可能な更新差分データを作成する第１の更新差分作成部と、当該データ管理システム内における最新のバージョン（Ｖｅｒ．Ｎ−１）のデータよりも前の各バージョン（Ｖｅｒ．Ｘ）から当該データ管理システムにおける最新のバージョン（Ｖｅｒ．Ｎ−１）のデータと同一のバージョン（Ｖｅｒ．Ｎ−１）へ更新可能な更新差分データを格納する第２の更新差分データ格納部と、該第２の更新差分データ格納部に格納された該更新差分データと該第１の更新差分作成部によって作成された該更新差分データとに基づいて、最新バージョンデータ入力部により入力される前記最新のバージョン（Ｖｅｒ．Ｎ）のデータよりも前のバージョンであって、当該データ管理システムにおける最新のバージョン（Ｖｅｒ．Ｎ−１）のデータよりも前の各バージョンから、最新バージョンデータ入力部により入力される前記最新のバージョン（Ｖｅｒ．Ｎ）のデータへ更新可能な更新差分データを生成する第２の更新差分作成部とをそなえることを特徴としている。
さらに、本発明のデータ管理装置は、データを格納可能な情報処理装置と通信可能に接続され、複数のバージョンの該データを管理して、該情報処理装置に最新のバージョンの該データを提供するべく該データを管理するデータ管理装置であって、前記最新のバージョン（Ｖｅｒ．Ｎ）のデータを入力可能な最新バージョンデータ入力部と、該最新バージョンよりも前のバージョンであって、当該データ管理システムにおける最新のバージョン（Ｖｅｒ．Ｎ−１）のデータを格納するデータ格納部と、前記データ格納部に格納されたデータよりも前の各バージョンから前記データ格納部に格納されたデータと同一のバージョン（Ｖｅｒ．Ｎ−１）へ更新可能な更新差分データを格納する更新差分データ格納部と、該データ格納部に格納されたデータ（Ｖｅｒ．Ｎ−１）と、該最新バージョンデータ入力部により入力された前記最新のバージョン（Ｖｅｒ．Ｎ）のデータとに基づいて、該データ格納部に格納されたデータから、前記最新のバージョン（Ｖｅｒ．Ｎ）のデータへ更新可能な更新差分データを作成する第１の更新差分作成部と、該更新差分データ格納部に格納された該更新差分データと該第１の更新差分作成部によって作成された該更新差分データとに基づいて、前記データ格納部に格納されたデータよりも前の各バージョンから前記最新のバージョン（Ｖｅｒ．Ｎ）のデータへ更新可能な更新差分データを生成する第２の更新差分作成部とをそなえることを特徴としている。
また、本発明のデータ管理装置は、データを格納可能な情報処理装置と通信可能に接続され、複数のバージョンの該データを管理して、該情報処理装置に最新のバージョンの該データを提供するべく該データを管理するデータ管理装置であって、前記最新のバージョン（Ｖｅｒ．Ｎ）のデータを入力可能な最新バージョンデータ入力部と、前記最新のバージョン（Ｖｅｒ．Ｎ）よりも古いバージョンの該データを格納するデータ格納部と、前記データ格納部に格納された該データを、前記複数の各バージョン（Ｖｅｒ．Ｘ）のデータへ更新可能な複数の更新差分データを格納する第１の更新差分データ格納部と、前記データ格納部に格納されたデータと、該第１の更新差分データ格納部に格納された各更新差分データとに基づいて、各バージョンのデータを生成するデータ生成部と、該データ生成部によって生成された前記各バージョン（Ｖｅｒ．Ｘ）のデータと、該最新バージョンデータ入力部により入力された前記最新のバージョン（Ｖｅｒ．Ｎ）のデータとに基づいて、前記各バージョンのデータから、前記最新のバージョン（Ｖｅｒ．Ｎ）のデータへ更新可能な更新差分データを作成する更新差分作成部と、該更新差分作成部によって作成された該更新差分データを格納する第２の更新差分データ格納部とをそなえることを特徴としている。
さらに、本発明のデータ管理方法は、データを格納可能な情報処理装置に最新のバージョンの該データを提供するべく該データを管理するデータ管理方法であって、前記最新のバージョン（Ｖｅｒ．Ｎ）のデータを入力する最新バージョンデータ入力ステップと、該最新バージョンよりも前のバージョンであって、当該データ供給システムにおける最新のバージョン（Ｖｅｒ．Ｎ−１）のデータを格納するデータ格納ステップと、前記データ格納ステップにおいて格納されたデータよりも前の各バージョンから前記データ格納ステップにおいて格納されたデータと同一のバージョン（Ｖｅｒ．Ｎ−１）へ更新可能な更新差分データを格納する更新差分データ格納ステップと、該データ格納ステップにおいて格納されたデータ（Ｖｅｒ．Ｎ−１）と、該最新バージョンデータ入力ステップにおいて入力された前記最新のバージョン（Ｖｅｒ．Ｎ）のデータとに基づいて、該データ格納ステップにおいて格納されたデータから、前記最新のバージョン（Ｖｅｒ．Ｎ）のデータへ更新可能な更新差分データを作成する第１の更新差分作成ステップと、該更新差分データ格納ステップにおいて格納された該更新差分データと該第１の更新差分作成ステップにおいて作成された該更新差分データとに基づいて、前記データ格納ステップにおいて格納されたデータよりも前の各バージョンから前記最新のバージョン（Ｖｅｒ．Ｎ）のデータへ更新可能な更新差分データを生成する第２の更新差分生成ステップとをそなえることを特徴としている。
また、本発明のデータ管理方法は、データを格納可能な情報処理装置に最新のバージョンの該データを提供するべく該データを管理するデータ管理方法であって、前記最新のバージョン（Ｖｅｒ．Ｎ）のデータを入力可能な最新バージョンデータ入力ステップと、前記最新のバージョン（Ｖｅｒ．Ｎ）よりも古いバージョンの該データを格納するデータ格納ステップと、前記データ格納ステップにおいて格納された該データを、前記複数の各バージョンのデータへ更新可能な複数の更新差分データを格納する第１の更新差分データ格納ステップと、前記データ格納ステップにおいて格納されたデータと、該第１の更新差分データ格納ステップにおいて格納された各更新差分データとに基づいて、各バージョンのデータを生成するデータ生成ステップと、該データ生成ステップにおいて生成された前記各バージョンのデータと、該最新バージョンデータ入力ステップにおいて入力された前記最新のバージョン（Ｖｅｒ．Ｎ）のデータとに基づいて、前記各バージョンのデータから、前記最新のバージョン（Ｖｅｒ．Ｎ）のデータへ更新可能な更新差分データを作成する更新差分作成ステップと、該更新差分作成ステップにおいて作成された該更新差分データを格納する第２の更新差分データ格納ステップとをそなえることを特徴としている。
さらに、本発明のデータ供給システムは、更新可能なデータを格納可能な情報処理装置と通信可能に接続され、複数のバージョンの該データを管理して、該情報処理装置に最新のバージョンの該データを提供するデータ供給システムであって、前記最新のバージョンのデータを格納する最新バージョンデータ格納部と、前記最新のバージョン（Ｖｅｒ．Ｎ）よりも前の各バージョンから前記最新バージョンのデータへ更新可能な複数の更新差分データを格納する更新差分データ格納部と、該情報処理装置に格納された該データのバージョンに応じて、該更新差分データ格納部に格納された前記複数の更新差分データの中から、一の更新差分データを選択する選択部と、該選択部によって選択された該更新差分データを該情報処理装置に提供する提供部とをそなえることを特徴としている。
また、本発明のデータ供給システムは、データを格納可能な情報処理装置と通信可能に接続され、複数のバージョンの該データを管理して、該情報処理装置に最新のバージョンの該データを提供するデータ供給システムであって、前記最新のバージョンよりも古いバージョンの該データを格納するデータ格納部と、前記データ格納部に格納されたデータを各バージョンのデータに更新可能な複数の更新差分データを格納する第１の更新差分データ格納部と、前記最新のバージョンよりも前の各バージョンから前記最新バージョンのデータへ更新可能な複数の更新差分データを格納する第２の更新差分データ格納部と、該情報処理装置に格納された該データのバージョンに応じて、該第２の更新差分データ格納部に格納された前記複数の更新差分データの中から、一の更新差分データを選択する選択部と、該選択部によって選択された該更新差分データを該情報処理装置に提供する提供部とをそなえることを特徴としている。
さらに、本発明のデータ管理プログラムは、データを格納可能な情報処理装置に最新のバージョンの該データを提供するべく該データを管理するデータ管理機能をコンピュータに実行させるためのデータ管理プログラムであって、前記最新のバージョン（Ｖｅｒ．Ｎ）のデータを入力する最新バージョンデータ入力ステップと、該最新バージョンよりも前のバージョンであって、前記最新バージョンデータ入力ステップにおいて入力されるデータよりも前のバージョンのうちで最も新しいバージョン（Ｖｅｒ．Ｎ−１）のデータを格納するデータ格納ステップと、前記データ格納ステップにおいて格納されたデータよりも前の各バージョンから前記データ格納部に格納されたデータと同一のバージョン（Ｖｅｒ．Ｎ−１）へ更新可能な更新差分データを格納する更新差分データ格納ステップと、該データ格納ステップにおいて格納されたデータ（Ｖｅｒ．Ｎ−１）と、該最新バージョンデータ入力ステップにおいて入力された前記最新のバージョン（Ｖｅｒ．Ｎ）のデータとに基づいて、該データ格納ステップにおいて格納されたデータから、前記最新のバージョン（Ｖｅｒ．Ｎ）のデータへ更新可能な更新差分データを作成する第１の更新差分作成ステップと、該更新差分データ格納ステップにおいて格納された該更新差分データと該第１の更新差分作成ステップにおいて作成された該更新差分データとに基づいて、前記データ格納ステップにおいて格納されたデータよりも前の各バージョンから前記最新のバージョン（Ｖｅｒ．Ｎ）のデータへ更新可能な更新差分データを生成する第２の更新差分生成ステップとを、該コンピュータに実行させることを特徴としている。
また、本発明のデータ管理プログラムは、データを格納可能な情報処理装置に最新のバージョンの該データを提供するべく該データを管理するデータ管理機能をコンピュータに実行させるためのデータ管理プログラムであって、前記最新のバージョン（Ｖｅｒ．Ｎ）のデータを入力可能な最新バージョンデータ入力ステップと、前記最新のバージョン（Ｖｅｒ．Ｎ）よりも古いバージョンの該データを格納するデータ格納ステップと、前記データ格納ステップにおいて格納された該データを、前記複数の各バージョンのデータへ更新可能な複数の更新差分データを格納する第１の更新差分データ格納ステップと、前記データ格納ステップにおいて格納されたデータと、該第１の更新差分データ格納ステップにおいて格納された各更新差分データとに基づいて、各バージョンのデータを生成するデータ生成ステップと、該データ生成ステップにおいて生成された前記各バージョンのデータと、該最新バージョンデータ入力ステップにおいて入力された前記最新のバージョン（Ｖｅｒ．Ｎ）のデータとに基づいて、前記各バージョンのデータから、前記最新のバージョン（Ｖｅｒ．Ｎ）のデータへ更新可能な更新差分データを作成する更新差分作成ステップと、該更新差分作成ステップにおいて作成された該更新差分データを格納する第２の更新差分データ格納ステップとを、該コンピュータに実行させることを特徴としている。
なお、本発明のコンピュータ読取可能な記録媒体は、上述したデータ管理プログラムを記録したものである。
このように、本発明によれば、以下の効果ないし利点がある。
（１）一度の更新処理で各バージョンから最新のバージョンにデータを更新することができ、データの更新を短時間で行なうことができる。
（２）データや更新差分データの格納に要する容量を少なく構成することができる。
（３）最新のデータを容易に登録することができ、システム管理者の工数を低減することができる。
（４）最新のバージョンのデータが新たに作成された場合においても、常に最新のデータに更新可能な更新差分データを登録することができ、システムの信頼性を向上させることができる。
（５）最新のバージョンへの更新差分データを短時間で作成することができる。
（６）所定のバージョンに対する更新差分データを容易且つ高速に取得することができ利便性が高い。
（７）更新差分データの容量を小さくすることができる。
【図面の簡単な説明】  図１は本発明の第１実施形態としてのデータ管理システム（データ供給システム）の構成を模式的に示すものである。
図２は本発明の第１実施形態としてのデータ管理システムにおける更新差分データ格納情報テーブルの例を示す図である。
図３は本発明の第１実施形態としてのデータ管理システムにおける第１更新差分作成部による更新差分データの作成手法を説明するためのフローチャートである。
図４Ａおよび図４Ｂは本発明の第１実施形態としてのデータ管理システムにおける第２更新差分作成部による更新差分データの作成手法を説明するためのフローチャートである。
図５は本発明の第１実施形態としてのデータ管理システムにおいて、最新のバージョンのデータが作成された場合にその最新バージョンのデータについての更新差分データを登録する手法を説明するための図である。
図６は本発明の第１実施形態としてのデータ管理システムにおける情報処理装置のデータの更新手法を説明するためのフローチャートである。
図７Ａおよび図７Ｂは本発明の第１実施形態としてのデータ管理システムの変形例における第２更新差分作成部による、更新差分データの作成手法を説明するためのフローチャートである。
図８は本発明の第１実施形態の第１変形例において用いられるダミーデータの例を示す図である。
図９は本発明の第１実施形態としてのデータ管理システムの第２変形例の構成を模式的に示す図である。
図１０Ａおよび図１０Ｂは本発明の第１実施形態としてのデータ管理システムの第２変形例における第２更新差分作成部による更新差分データの作成手法を説明するためのフローチャートである。
図１１は本発明の第２実施形態としてのデータ管理システムの構成を模式的に示す図である。
図１２は本発明の第２実施形態としてのデータ管理システムにおいて、最新のバージョンのデータが作成された場合にその最新バージョンのデータについての更新差分データを登録する手法を説明するための図である。
図１３は本発明の第２実施形態としてのデータ管理システムの変形例の構成を模式的に示す図である。
図１４は本発明の第３実施形態としてのデータ管理システムの構成を模式的に示す図である。
図１５および図１６は従来のプログラムの更新管理手法を説明するための図である。
【発明を実施するための最良の形態】  以下、図面を参照して本発明の実施の形態を説明する。
（Ａ）第１実施形態の説明
図１は本発明の第１実施形態としてのデータ管理システム（データ供給システム）の構成を模式的に示すものである。
本第１実施形態のデータ管理システム１ａは、データやプログラム（以下、単にデータという）を格納可能な情報処理装置（更新対象機器）３と通信可能に接続され、複数のバージョンのデータを管理して、情報処理装置３に最新のバージョンのデータを提供するべくこれらのデータを管理するものである。
なお、本データ管理システム１ａにおいて管理するデータとしては、情報処理装置３において実行される種々のプログラム（ソフトウェア）やプログラムによって用いられる種々のデータ等であり、以下、これらのプログラムやデータ等を含む概念を総称して単にデータと称する。
また、以下、本実施形態においては、データ管理システム１ａに登録されているデータの複数のバージョン（既存のバージョン）のうち最も新しいバージョンがＶｅｒ．Ｎ−１であり、新たに作成され、これから本データ管理システム１ａに登録される最新のバージョンをＶｅｒ．Ｎとして表わす。
本発明の第１実施形態としてのデータ管理システム１ａは、図１に示すように、情報処理装置３に通信可能に接続されたデータ管理サーバ（データ管理装置）２ａをそなえて構成されている。このデータ管理サーバ２ａは、例えば、サーバ機能をそなえたコンピュータによって実現され、図１に示すように、最新バージョンデータ入力部１０，第１更新差分作成部（第１の更新差分作成部）１１ａ，第２更新差分作成部（第２の更新差分作成部）１２，選択部１３，バージョン取得部１４，更新差分データ送出部（提供部）１５，新旧データ置換部１６，不要更新差分除去部（更新差分データ削除部）１７，更新差分データ格納部１８，新旧更新差分データ置換部１９，データ格納部（最新バージョンデータ格納部）２０ａおよび更新差分データ格納情報テーブル２１ａをそなえて構成されている。
管理サーバ２ａと情報処理装置３とは、例えば、ＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）やＵＳＢ（Ｕｎｉｖｅｒｓａｌ  Ｓｅｒｉａｌ  Ｂｕｓ），無線ＬＡＮ，ブルートゥース（Ｂｌｕｅｔｏｏｔｈ）等の有線，無線を問わず種々の通信手法で接続されている。
最新バージョンデータ入力部１０は、最新のバージョン（Ｖｅｒ．Ｎ）のデータを取得（入力）するためのものであり、例えば、コンピュータシステムにおけるキーボード，マウスやフレキシブルディスクドライブ等の入力機能をそなえる種々のデバイスの他、アプリケーションにおけるＡＰＩ（Ａｐｐｌｉｃａｔｉｏｎ  Ｐｒｏｇｒａｍ  Ｉｎｔｅｒｆａｃｅ）等によって実現される。
データ格納部（最新バージョンデータ格納部）２０ａは、最新バージョンデータ入力部１０によって入力される最新バージョン（Ｖｅｒ．Ｎ）よりも前のバージョンであって、かかる最新バージョン（Ｖｅｒ．Ｎ）のデータが作成されるまでは最新のバージョン（Ｖｅｒ．Ｎ−１）であったデータを格納するものである（Ｎは整数）。すなわち、データ管理サーバ２ａ内における最新のバージョンのデータ全体を格納するものである。このデータ格納部２０ａは、例えば、コンピュータシステムにおけるハードディスクやメモリ等の記憶装置によって実現される。
更新差分データ格納部１８は、データ格納部２０ａに格納されたデータよりも前の各バージョン（例えば、Ｖｅｒ．１〜Ｖｅｒ．Ｎ−２）から、データ格納部２０ａに格納されたデータと同一のバージョン（Ｖｅｒ．Ｎ−１）へ更新可能な更新差分データを格納するものである。
なお、以下、データの任意のバージョンを変数Ｘ（ただし、Ｘは１≦Ｘ≦Ｎ−２）を用いて、Ｖｅｒ．Ｘの如く示す場合もある。
この更新差分データ格納部１８もデータ格納部２０ａと同様に、例えば、コンピュータシステムにおけるハードディスクやメモリ等の記憶装置によって実現される。
また、以下、本実施形態においては、更新差分データは、「新規」，「複写」および「移動（参照ポインタの移動）」の３種類の差分コードから構成されており、これらの差分コードは、それぞれ「複写長」，「新規データ長」および「移動量」という属性をそなえている。
更新差分データ格納情報テーブル２１ａは、更新差分データ格納部１８に格納されている各更新差分データの格納位置を管理するテーブルである。
図２は本発明の第１実施形態としてのデータ管理システム１ａにおける更新差分データ格納情報テーブル２１ａの例を示す図である。この図２に示すように、更新差分データ格納情報テーブル２１ａは、更新前のバージョンとそのバージョンに対応する、すなわち、そのバージョンのデータを更新するための更新差分データの格納位置（格納アドレス）とを関連付けて登録することによって構成されており、後述する選択部１３が、この更新差分データ格納情報テーブル２１ａを参照することにより、特定バージョンに対応する更新差分データの格納場所を高速に参照・取得することができるようになっている。
また、この更新差分データ格納情報テーブル２１ａは、新旧更新差分データ置換部１９（後述）が、更新差分データ格納部１８に格納されている更新差分データの置換を行なう際に、併せて更新するようになっている。
さらに、不要更新差分除去部１７（後述）が、特定の更新差分データを更新差分データ格納部１８から削除した場合には、不要更新差分除去部１７は、更新差分データ格納情報テーブル２１ａにおけるその更新差分データの格納位置も削除するようになっている
新旧更新差分データ置換部１９は、更新差分データ格納部１８に格納された更新差分データを、第１更新差分作成部１１ａによって作成された更新差分データおよび第２更新差分作成部１２によって作成された更新差分データと置換するものである。この新旧更新差分データ置換部１９は、第１更新差分作成部１１ａが更新差分データを作成する度に、その更新差分データを新たに追加し、又、第２更新差分作成部１２が更新差分データ作成する度に、更新差分データ格納部１８に格納されているそのバージョン（更新前のバージョン）が同一の更新差分データを、第２更新差分作成部１２によって作成された新しい更新差分データと置換するようになっている。
また、新旧更新差分データ置換部１９は、第１更新差分作成部１１ａによって作成された更新差分データを更新差分データ格納部１８に新たに追加する場合には、その更新差分データの格納位置（格納アドレス）を更新差分データ格納情報テーブル２１ａに記録するようになっている。又、新旧更新差分データ置換部１９は、第２更新差分作成部１２によって作成された更新差分データを更新差分データ格納部１８格納されている更新差分データと置換して登録する度に、更新差分データ格納部１８におけるその格納位置（格納アドレス）を、更新差分データ格納情報テーブル２１ａにおけるそのバージョン（更新前のバージョン）に対応する項に登録（上書き，置換）するようになっている。
本データ管理システム１ａにおいては、この更新差分データ格納部１８に格納された複数の更新差分データの中から、情報処理装置３における更新対象のデータのバージョンに対応する更新差分データを選択・取得して、情報処理装置３において、その更新対象のデータにこの更新差分データを適用することにより、そのデータを最新のバージョンに更新することができるのである。
なお、この更新差分データ格納部１８も、例えば、コンピュータシステムにおけるハードディスクやメモリ等の記憶装置によって実現される。
新旧データ置換部１６は、データ格納部に格納されたデータ（Ｖｅｒ．Ｎ−１）を、最新バージョンデータ入力部１０から入力された最新バージョン（Ｖｅｒ．Ｎ）のデータと置換するものである。
第１更新差分作成部１１ａは、データ格納部２０ａに格納されたデータ（Ｖｅｒ．Ｎ−１）と、最新バージョンデータ入力部１０により入力された最新のバージョン（Ｖｅｒ．Ｎ）のデータとに基づいて、データ格納部２０ａに格納されたデータから、前記最新のバージョン（Ｖｅｒ．Ｎ）のデータへ更新可能な更新差分データを作成するものであり、例えば、新旧ソフトウェアの比較ツール（プログラム）等によって実現することができる。
ここで、本発明の第１実施形態としてのデータ管理システム１ａにおける第１更新差分作成部１１ａによる更新差分データの作成手法を、図３に示すフローチャート（ステップＡ１０〜Ａ１３０）に従って説明する。
データ格納部２０に格納されたデータ（Ｖｅｒ．Ｎ−１）から最新バージョンデータ入力部１０により入力された最新のバージョン（Ｖｅｒ．Ｎ）へバージョンアップ（更新）するための更新差分データ（Ｖｅｒ．Ｎ−１からＶｅｒ．Ｎ）を作成するためには（ステップＡ１０）、これらのＶｅｒ．Ｎ−１のデータとＶｅｒ．Ｎのデータとを、その先頭から１命令長単位で順番に比較する（ステップＡ２０）。
最初に、比較位置における両者のデータが等しいか否かを調べ（ステップＡ３０）、データが等しい場合には（ステップＡ３０のＹＥＳルート参照）、データが一致し続ける位置の長さ（複写長）を取得して、更新差分データ（Ｖｅｒ．Ｎ−１からＶｅｒ．Ｎ）に、「複写」として複写を示す差分コードとその「複写長」とを記述する（ステップＡ８０）。
また、データが等しくない場合には（ステップＡ３０のＮＯルート参照）、次に、Ｖｅｒ．Ｎ−１のデータとＶｅｒ．Ｎとの両データにおいてデータが連続して一致する部分を検索して（ステップＡ４０）、その検索の結果、Ｖｅｒ．Ｎ−１のデータに連続して一致する部分を発見できたか否かを確認する（ステップＡ５０）。Ｎ−１のデータに連続して一致する部分を発見できた場合には（ステップＡ５０のＹＥＳルート参照）、更新差分データ（Ｖｅｒ．Ｎ−１からＶｅｒ．Ｎ）に、「複写」として、その発見位置と比較位置との差を「移動量」として、移動を示す差分コードとともに記述する（ステップＡ６０）。
Ｎ−１のデータに連続して一致する部分を発見できなかった場合には（ステップＡ５０のＮＯルート参照）、更新差分データ（Ｖｅｒ．Ｎ−１からＶｅｒ．Ｎ）に、比較位置の値は「新規」データとして、新規を示す差分コードを「新規データ長」とともに記述する（ステップＡ７０）。
そして、第１更新差分作成部１１ａは、Ｖｅｒ．Ｎ−１のデータおよびＶｅｒ．Ｎの各データの最後まで比較を行なったか否かを確認して（ステップＡ９０）、最後まで比較を行なっていない場合には（ステップＡ９０のＮＯルート参照）、比較位置を１命令長移動させた後（ステップＡ１００）、ステップＡ３０に戻る。又、最後まで比較を行なった場合には（ステップＡ９０のＹＥＳルート参照）、更新差分データ（Ｖｅｒ．Ｎ−１からＶｅｒ．Ｎ）の生成が完了する（ステップＡ１１０）。
また、新旧データ置換部１６は、データ格納部２０ａからＶｅｒ．Ｎ−１のデータ削除するとともに（ステップＡ１２０）、データ格納部２０ａにＶｅｒ．Ｎのデータを格納（保存）することにより（ステップＡ１３０）、データ格納部２０ａに格納されたデータを、最新バージョンデータ入力部１０から入力された最新のバージョン（Ｖｅｒ．Ｎ）のデータと置換するのである。
第２更新差分作成部１２は、更新差分データ格納部１８に格納されたＶｅｒ．ＸからＶｅｒ．Ｎ−１へのデータの更新を行なう更新差分データ（Ｖｅｒ．ＸからＶｅｒ．Ｎ−１）と第１更新差分作成部１１ａによって作成された更新差分データ（Ｖｅｒ．Ｎ−１からＶｅｒ．Ｎ）とに基づいて、データ格納部２０ａに格納されたデータ（Ｖｅｒ．Ｎ−１）よりも前の各バージョン（Ｖｅｒ．Ｘ）から最新のバージョン（Ｖｅｒ．Ｎ）のデータへ更新可能な更新差分データ（Ｖｅｒ．ＸからＶｅｒ．Ｎ）を生成するものである。
本発明の第１実施形態としてのデータ管理システム１ａにおける第２更新差分作成部１２による更新差分データの作成手法を、図４Ａおよび図４Ｂに示すフローチャート（ステップＢ１０〜Ｂ１９０）に従って説明する。なお、図４Ａに示すフローチャート（ステップＢ１０〜Ｂ１２０）と図４Ｂに示すフローチャート（ステップＢ１３０〜Ｂ１９０）とに、ステップＢ１０〜Ｂ１９０からなる一のフローチャートを便宜上分けて示している。
先ず、第２更新差分作成部１２は、変数ＸにＮ−２を設定して（ステップＢ１０）、更新差分データ（Ｖｅｒ．ＸからＶｅｒ．Ｎ）の作成を開始する（ステップＢ２０）。
第２更新差分作成部１２は、更新差分データ格納部１８に格納された各更新差分データ（Ｖｅｒ．ＸからＶｅｒ．Ｎ−１）と第１更新差分作成部１１ａによって作成された更新差分データ（Ｖｅｒ．Ｎ−１からＶｅｒ．Ｎ）とをそれぞれ取得して、これらの更新差分データの先頭から順番に比較する（ステップＢ３０）。
最初に、比較位置における双方の差分コードが「複写」であるか否かを調べ（ステップＢ４０）、双方ともが複写である場合には（ステップＢ４０のＹＥＳルート参照）、双方の複写長の差し引き分を計算した後、「複写」として複写を示す差分コードと算出した複写長とを更新差分データ（Ｖｅｒ．ＸからＶｅｒ．Ｎ）に記述する（ステップＢ１１０）。
そして、第２更新差分作成部１２は、更新差分データどうしの比較を最後まで行なったか否かを確認して（ステップＢ１３０）、最後まで比較を行なっていない場合には（ステップＢ１３０のＮＯルート参照）、比較位置を移動させた後（ステップＢ１２０）、ステップＢ４０に戻る。
また、双方ともが「複写」ではない場合、すなわち、比較位置において、各更新差分データ（Ｖｅｒ．ＸからＶｅｒ．Ｎ−１）と更新差分データ（Ｖｅｒ．Ｎ−１からＶｅｒ．Ｎ）との一方もしくは双方ともが「複写」以外の場合には（ステップＢ４０のＮＯルート参照）、次に、一方が「新規」であるか否かを確認する（ステップＢ５０）。
比較位置において、各更新差分データ（Ｖｅｒ．ＸからＶｅｒ．Ｎ−１）と更新差分データ（Ｖｅｒ．Ｎ−１からＶｅｒ．Ｎ）とのうち、双方もしくは一方が「新規」である場合には（ステップＢ５０のＹＥＳルート参照）、更新差分データ（Ｖｅｒ．Ｎ−１からＶｅｒ．Ｎ）における比較位置の値を「新規」データとして更新差分データ（Ｖｅｒ．ＸからＶｅｒ．Ｎ）に記述して（ステップＢ１００）、ステップＢ１３０に移行する。
また、各更新差分データ（Ｖｅｒ．ＸからＶｅｒ．Ｎ−１）と更新差分データ（Ｖｅｒ．Ｎ−１からＶｅｒ．Ｎ）とのうち、双方もしくは一方が「新規」ではない場合には（ステップＢ５０のＮＯルート参照）、第２更新差分作成部１２は、次に、更新差分データ（Ｖｅｒ．ＸからＶｅｒ．Ｎ−１）における比較位置のデータが「移動（参照ポインタの移動）」であるか否かを確認する（ステップＢ６０）。
更新差分データ（Ｖｅｒ．ＸからＶｅｒ．Ｎ−１）における比較位置のデータが「移動」である場合には（ステップＢ６０のＹＥＳルート参照）、ステップＢ６０における移動量を求めるとともに、複写を示す差分コードと算出した移動量とを更新差分データ（Ｖｅｒ．ＸからＶｅｒ．Ｎ）に記述して（ステップＢ９０）、ステップＢ１３０に移行する。又、この際、「移動」が連続する場合には、差し引きの移動量を計算する。
また、更新差分データ（Ｖｅｒ．ＸからＶｅｒ．Ｎ−１）における比較位置のデータが「移動」ではない場合には（ステップＢ６０のＮＯルート参照）、第２更新差分作成部１２は、次に、更新差分データ（Ｖｅｒ．Ｎ−１からＶｅｒ．Ｎ）における比較位置のデータが「移動」であるか否かを確認する（ステップＢ７０）。
更新差分データ（Ｖｅｒ．Ｎ−１からＶｅｒ．Ｎ）における比較位置のデータが「移動」である場合には（ステップＢ７０のＹＥＳルート参照）、更新差分データ（Ｖｅｒ．ＸからＶｅｒ．Ｎ−１）において、ステップＢ７０での移動先として指定されたＶｅｒ．Ｎ−１中のデータを展開するための差分データの位置へ比較位置を１命令長移動させて（ステップＢ８０）、ステップＢ１３０に移行する。
また、更新差分データどうしの比較を最後まで行なった場合には（ステップＢ１３０のＹＥＳルート参照）、更新差分データ（Ｖｅｒ．ＸからＶｅｒ．Ｎ）の生成が完了する（ステップＢ１４０）。
また、新旧更新差分データ置換部１９は、更新差分データ格納部１８から更新差分データ（Ｖｅｒ．ＸからＶｅｒ．Ｎ−１）を削除するとともに（ステップＢ１５０）、更新差分データ格納部１８に更新差分データ（Ｖｅｒ．ＸからＶｅｒ．Ｎ）を格納（保存）し（ステップＢ１６０）、更に、更新差分データ格納情報テーブル２１ａにおけるＶｅｒ．Ｘに相当する項に、更新差分データ（Ｖｅｒ．ＸからＶｅｒ．Ｎ）の格納位置を記述する（ステップＢ１７０）。
第２更新差分作成部１２は、Ｘの値をデクリメント（Ｘ＝Ｘ−１）した後（ステップＢ１８０）、Ｘ＝０であるか否かを確認して（ステップＢ１９０）、Ｘ＝０の場合には（ステップＢ１９０のＹＥＳルート参照）、処理を終了する。又、Ｘ＝０ではない場合には（ステップＢ１９０のＮＯルート参照）、ステップＢ２０に戻る。
バージョン取得部１４は、データの更新対象機器（情報処理装置）３における更新対象のデータの現在のバージョンを取得するものである。このバージョン取得部１４は、例えば、通信手段を介して情報処理装置３にデータのバージョンを確認するコマンドを送出して、その情報処理装置３からの回答に基づいてそのバージョンを判断・取得してもよく、又、例えば図示しないバージョン管理テーブルをそなえ、このバージョン管理テーブルに情報処理装置３とそのデータのバージョンとを関連付けて登録・管理することにより、情報処理装置のデータのバージョンを取得してもよい。
選択部１３は、更新差分データ格納部１８に格納された複数の更新差分データの中から、情報処理装置３に格納されたデータのバージョンに応じて一の更新差分データを選択するものである。この選択部１３は、バージョン取得部１４によって取得された情報処理装置３のデータのバージョンに基づいて、更新差分データ格納情報テーブル２１ａを参照して、そのバージョンを最新のバージョンに更新するための更新差分データの格納位置を取得し、この格納位置から更新差分データを取得するようになっている。
更新差分データ送出部（提供部）１５は、選択部１３によって選択された更新差分データを更新対象機器（情報処理装置）３に提供するものであって、例えば、ＬＡＮや無線ＬＡＮ，ＵＳＢ，ブルートゥース（Ｂｌｕｅｔｏｏｔｈ）等の種々の通信手段（プロトコル）を介して情報処理装置３にデータを送信（送出）するデータ転送機能によって実現することができる。
不要更新差分除去部（更新差分データ削除部）１７は、更新差分データ格納部１８に格納された複数の更新差分データの中から、特定のバージョンに対応する更新差分データを選択的に削除するものである。例えば、情報処理装置３において格納（内蔵）されている可能性がないバージョンのデータがある場合には、不要更新差分除去部１７は、更新差分データ格納部１８に格納された更新差分データのうち、そのバージョンに対応する更新差分データを、例えばシステム管理者による指示等に従って、選択的に削除するようになっている。
また、不要更新差分除去部１７は、特定の更新差分データを更新差分データ格納部１８から削除した場合には、更新差分データ格納情報テーブル２１ａにおけるその更新差分データの格納位置も削除するようになっている。
上述の如く構成された本発明の第１実施形態としてのデータ管理システム１ａにおいて、最新のバージョン（Ｖｅｒ．Ｎ）のデータが作成された場合にその最新バージョンのデータについての更新差分データを登録する手法を、図５を用いて説明する。
最新バージョン（Ｖｅｒ．Ｎ）のデータが作成された場合には、最新バージョンデータ入力部１０によってそのデータが入力され、第１更新差分作成部１１ａが、データ格納部２０ａに格納されている、それまでデータ管理サーバ２ａ内において最新であったバージョン（Ｖｅｒ．Ｎ−１）から新たに作成されたバージョン（Ｖｅｒ．Ｎ）に更新するための更新差分データ（Ｖｅｒ．Ｎ−１からＶｅｒ．Ｎ）を作成する（図５のステップＣ１０参照）。
なお、データ格納部２０ａに格納されているデータ（Ｖｅｒ．Ｎ−１）は、新旧データ管理サーバ２ａ置換部１６によって、最新バージョンデータ入力部１０から入力された最新のデータ（Ｖｅｒ．Ｎ）と置換され、又、第１更新差分作成部１１ａによって作成された更新差分データ（Ｖｅｒ．Ｎ−１からＶｅｒ．Ｎ）は、新旧更新差分データ置換部１９によって更新差分データ格納部１８に格納される。又、これらの処理に伴って、更新差分データ格納情報テーブル２１ａの更新処理も併せて行なわれる。
次に、第２更新差分作成部１２が、第１更新差分作成部１１ａによって作成された更新差分データ（Ｖｅｒ．Ｎ−１からＶｅｒ．Ｎ）と、更新差分データ格納部１８に格納されている各更新差分データとに基づいて、各バージョンから最新のバージョンのデータに更新するための更新差分データ（Ｖｅｒ．ＸからＶｅｒ．Ｎ）を作成する（図５のステップＣ２０参照）。
新旧更新差分データ置換部１９によって、更新差分データ格納部１８に登録されているＶｅｒ．Ｎ−１までの各更新差分データ（Ｖｅｒ．ＸからＶｅｒ．Ｎ−１）は、第２更新差分作成部１２によって作成された各更新差分データ（Ｖｅｒ．ＸからＶｅｒ．Ｎ）と置換される。又、この際、更新差分データ格納情報テーブル２１ａの更新処理も併せて行なわれるのである。
次に、本発明の第１実施形態としてのデータ管理システム１ａにおける情報処理装置３のデータの更新手法を、図６に示すフローチャート（ステップＤ１０〜Ｄ５０）に従って説明する。
データ管理サーバ２ａ（バージョン取得部１４）は、更新対象機器の情報処理装置３が通信可能に接続されているか否かを確認して（ステップＤ１０）、情報処理装置３が接続されていない場合には（ステップＤ１０のＮＯルート参照）、情報処理装置の接続待ちを行なう。
情報処理装置３が接続された場合には（ステップＤ１０のＹＥＳルート参照）、バージョン取得部１４がその情報処理装置３のデータのバージョンを取得する（ステップＤ２０）。選択部１３は、バージョン取得部１４によって取得された情報処理装置３のデータのバージョンに対応する更新差分データの格納位置を、更新差分データ格納情報テーブル２１ａを参照して取得する（ステップＤ３０）。
そして、選択部１３は、その取得した格納位置に基づいて、更新差分データ格納部１８におけるその更新差分データの格納位置から、目的の更新差分データを取得する（ステップＤ４０）。
更新差分データ送出部１５は、選択部１３によって取得された更新差分データを、情報処理装置３に送出する（ステップＤ５０）。情報処理装置３においては、その更新差分データをデータに適用することにより、旧バージョンのデータを最新のバージョンのデータに更新する。
このように、本発明の第１実施形態としてのデータ管理システム１ａによれば、更新差分データ格納部１８に、最新のバージョンよりも前の各バージョンから最新バージョンのデータへ更新可能な複数の更新差分データを格納し、選択部１３が、情報処理装置３に格納されたデータのバージョンに応じて、更新差分データ格納部１８に格納された前記複数の更新差分データの中から、一の更新差分データを選択し、更新差分データ送出部１５が、この選択された更新差分データを情報処理装置３に提供するので、情報処理装置３においてどのバージョンのデータを用いている場合においても、データ管理サーバ２ａから取得した更新差分データにより、１度の更新差分データの受信およびその更新差分データを用いた更新処理で、現在のバージョンから最新のバージョンに更新（バージョンアップ）を行なうことができ、データの更新を短時間で行なうことができるので利便性が高い。
データ管理サーバ２ａにおいて、データ格納部２０ａにデータ管理サーバ２ａ内における最新のバージョンのデータ（全体）を１つだけ格納するとともに、更新差分データ格納部１８に、データ格納部２０ａに格納されたデータよりも前の各バージョンからデータ格納部２０ａに格納されたデータと同一のバージョンへ更新可能な更新差分データを格納しているので、これらのデータや更新差分データを格納するために要する記憶領域の容量を少なく構成することができ、システムの製造コストを低減することができる。
また、最新のバージョンのデータを新たに作成した場合においても、この最新のバージョンのデータを最新バージョンデータ入力部１０から入力するだけで、新旧データ置換部１６や第１更新差分データ作成部１１ａ，第２更新差分作成部１２，新旧更新差分データ置換部１９が、データ格納部２０ａへのデータの登録や必要な更新差分データの作成，置換等を自動的に行なうようになっているので、システム管理者の工数を低減することができ利便性が高い。
さらに、最新のバージョンのデータが新たに登録された際に、更新差分データ格納部１８に格納されている旧バージョンへの更新差分データを、新旧更新差分データ置換部１９が、第１更新差分作成部１１ａや第２更新差分作成部１２によって作成された更新差分データと置換するので、更新差分データ格納部１８には確実に最新のバージョンのデータに更新可能な更新差分データが登録され、システムの信頼性を向上させることができる。
同様に、最新のバージョンのデータが新たに登録された際に、データ格納部２０ａに格納されている旧バージョンのデータを、新旧データ置換部１６が、最新バージョンデータ入力部１０から入力された最新バージョンのデータと置換するので、データ格納部２０ａには確実に最新のバージョンのデータが登録され、システムの信頼性を向上させることができる。
また、例えば、情報処理装置３において格納（内蔵）されている可能性がないバージョンのデータがある場合等に、不要更新差分除去部（更新差分データ削除部）１７が、更新差分データ格納部１８に格納された複数の更新差分データの中から、そのバージョンに対応する更新差分データを選択的に削除するので、更新差分データ格納部１８の容量を節約することができ経済的である。
さらに、第２更新差分作成部１２が、第１更新差分作成部１１ａによって作成された更新差分データと、更新差分データ格納部１８に格納された更新差分データとに基づいて、データ格納部２０ａに格納されたデータよりも前の各バージョンから最新のバージョンのデータへ更新可能な更新差分データを生成するので、最新のバージョンへの更新差分データを短時間で作成することができ利便性が高い。又、データ格納領域１８を短時間で最新の状態にすることもできる。
また、更新差分データ格納情報テーブル２１ａが、更新差分データ格納部１８に格納されている各更新差分データの格納位置を管理し、選択部１３が、この更新差分データ格納情報テーブル２１ａを参照して、特定のバージョンに対応する更新差分データの格納位置を取得するので、必要な更新差分データを容易且つ高速に取得することができ利便性が高い。
（Ｂ）第１実施形態の第１変形例の説明
上述した第１実施形態としてのデータ管理システム１ａにおいては、第２更新差分作成部１２が、図４のフローチャートに示した手法によって、更新差分データ格納部１８に格納されたＶｅｒ．ＸからＶｅｒ．Ｎ−１へのデータの更新を行なう更新差分データ（Ｖｅｒ．ＸからＶｅｒ．Ｎ−１）と第１更新差分作成部１１ａによって作成された更新差分データ（Ｖｅｒ．Ｎ−１からＶｅｒ．Ｎ）とに基づいて、データ格納部２０ａに格納されたデータ（Ｖｅｒ．Ｎ−１）よりも前の各バージョン（Ｖｅｒ．Ｘ）から最新のバージョン（Ｖｅｒ．Ｎ）のデータへ更新可能な更新差分データ（Ｖｅｒ．ＸからＶｅｒ．Ｎ）を生成しているが、かかる更新差分データ（Ｖｅｒ．ＸからＶｅｒ．Ｎ）の作成手法は、上述した図４のフローチャートに記載された手法に限定されるものではなく、本発明の趣旨を逸脱しない範囲で種々変更して実施することができる。
本発明の第１実施形態のデータ管理システム１ａの第１変形例としてのデータ管理システム１ａ′（図１参照）は、第１実施形態のデータ管理システム１ａのデータ管理サーバ２ａに代えてデータ管理サーバ２ａ′をそなえて構成されている。そして、このデータ管理サーバ２ａ′は、第１実施形態の第２更新差分作成部１２に代えて、第２更新差分作成部１２′をそなえて構成されている他は、第１実施形態のデータ管理サーバ２ａと同様もしくは略同様の構成をそなえている。又、このデータ管理サーバ２ａ′も、例えば、サーバ機能をそなえたコンピュータシステムによって実現される。
本第１変形例における第２更新差分作成部１２′も、第１実施形態の第２更新差分作成部１２と同様に、更新差分データ格納部１８に格納されたＶｅｒ．ＸからＶｅｒ．Ｎ−１へのデータの更新を行なう更新差分データ（Ｖｅｒ．ＸからＶｅｒ．Ｎ−１）と第１更新差分作成部１１ａによって作成された更新差分データ（Ｖｅｒ．Ｎ−１からＶｅｒ．Ｎ）とに基づいて、データ格納部２０ａに格納されたデータ（Ｖｅｒ．Ｎ−１）よりも前の各バージョン（Ｖｅｒ．Ｘ）から最新のバージョン（Ｖｅｒ．Ｎ）のデータへ更新可能な更新差分データ（Ｖｅｒ．ＸからＶｅｒ．Ｎ）を生成するものであり、各バージョン（Ｖｅｒ．Ｘ，Ｎ−１，Ｎ）のデータのダミーデータを用いて更新差分データ（Ｖｅｒ．ＸからＶｅｒ．Ｎ）を生成するようになっている。
本発明の第１実施形態の第１変形例としてのデータ管理システム１ａ′における第２更新差分作成部１２′による、更新差分データ（Ｖｅｒ．ＸからＶｅｒ．Ｎ）の作成手法を、図８を参照しながら、図７Ａおよび図７Ｂに示すフローチャート（ステップＥ１０〜Ｅ２００）に従って説明する。なお、図７Ａに示すフローチャート（ステップＥ１０〜Ｅ１３０）と図７Ｂに示すフローチャート（ステップＥ１４０〜Ｅ２００）とに、ステップＥ１０〜Ｅ２００からなる一のフローチャートを便宜上分けて示している。又、図８は本第１変形例において用いられるダミーデータ（ダミーデータＸ）の例を示す図である。
なお、本第１変形例においても、第１実施形態と同様に、データの任意のバージョンを変数Ｘ（ただし、Ｘは１≦Ｘ≦Ｎ−２）を用いて示すものとし、又、本説明中における既述の符号と同一の符号は同一もしくは略同一の部分を示しているので、その説明は省略する。
先ず、第２更新差分作成部１２′は、変数ＸにＮ−２を設定して（ステップＥ１０）、更新差分データ（Ｖｅｒ．ＸからＶｅｒ．Ｎ）の作成を開始する（ステップＥ２０）。
第２更新差分作成部１２′は、データ値をすべてダミーとした上でそのデータの位置を示すアドレス値を代入した、Ｖｅｒ．Ｘのデータのダミーデータである「ダミーデータＸ」を作成する（ステップＥ３０）。
このダミーデータＸは、図８に示すように、Ｖｅｒ．Ｘのデータを配列化して示すものであり、例えば、アドレスとダミーフラグおよび値もしくは位置を示すアドレスを相互に関連付けることによって構成されている。このダミーデータＸにおいては、そのアドレスのダミーフラグを参照することにより、代入されている値が「位置を示すアドレス」であるのか「実際の値」であるのかを判断することができるようになっている。なお、このようなダミーデータの作成および使用方法としてはプログラミングにおいて一般的に用いられている種々の手法を用いてもよく、例えば、ダミーデータを外部リスト化してもよい。
そして、第２更新差分作成部１２′は、更新差分データ格納部１８に格納された各更新差分データ（Ｖｅｒ．ＸからＶｅｒ．Ｎ−１）をステップＥ３０において作成したダミーデータＸに適用することにより、Ｖｅｒ．Ｎ−１のダミーデータ（ダミーデータＮ−１）を作成して、図示しないメモリ空間上に展開する（ステップＥ４０）。
また、第２更新差分作成部１２′は、第１更新差分作成部１１ａによって作成された更新差分データ（Ｖｅｒ．Ｎ−１からＶｅｒ．Ｎ）をステップＥ４０において作成したダミーデータＮ−１に適用することにより、Ｖｅｒ．Ｎのダミーデータ（ダミーデータＮ）を作成して、図示しないメモリ空間上に展開する（ステップＥ５０）。
そして、第２更新差分作成部１２′は、ステップＥ５０において展開したダミーデータＮを、その先頭から順番に分析する（ステップＥ６０）。なお、以下、ダミーデータＮにおける分析が行なわれている位置を分析位置という。
最初に、その分析位置における差分コードがダミーであり、且つ、代入されているアドレスが、前回の分析位置の代入アドレスから連続しているか否かを判断して（ステップＥ７０）、差分コードがダミーであり且つアドレスが連続している場合には（ステップＥ７０のＹＥＳルート参照）、アドレスの連続が途切れるまでの長さである複写長を求めた後、「複写」として複写を示す差分コードと求めた複写長とを更新差分データ（Ｖｅｒ．ＸからＶｅｒ．Ｎ）に記述する（ステップＥ１２０）。
そして、第２更新差分作成部１２は、ダミーデータＮの分析を最後まで行なったか否かを確認して（ステップＥ１４０）、最後まで比較を行なっていない場合には（ステップＥ１４０のＮＯルート参照）、比較位置を移動させた後（ステップＥ１３０）、ステップＢ７０に戻る。
また、代入されているアドレスが、前回の分析位置の代入アドレスから連続していない場合には（ステップＥ７０のＮＯルート参照）、次に、分析位置のデータがダミーであり、且つ代入されているアドレスが、前回の分析位置の代入アドレスとは異なる、もしくは前回分析位置のデータがダミーではなかったか否かを確認する（ステップＥ８０）。分析位置のデータダミーであり、且つ代入されているアドレスが、前回の分析位置の代入アドレスとは異なる（新出）、もしくは前回分析位置のデータがダミーである場合には（ステップＥ８０のＹＥＳルート参照）、分析対象アドレスからステップＥ８０において代入されていたアドレスまでの移動量を求めるとともに、「移動」として移動を示す差分コードと求めた移動量とを更新差分データ（Ｖｅｒ．ＸからＶｅｒ．Ｎ）に記述して（ステップＥ１１０）、ステップＥ１４０に移行する。
次に、分析位置のデータがダミーではないか否かを判断して（ステップＥ９０）、ダミーではない場合には（ステップＥ９０のＮＯルート参照）、ステップＥ１３０に移行する。又、ダミーである場合には（ステップＥ９０のＹＥＳルート参照）、「新規」データとして分析位置のデータを更新差分データ（Ｖｅｒ．ＸからＶｅｒ．Ｎ）に記述して（ステップＥ１００）、ステップＥ１４０に移行する。
また、ダミーデータＮの分析を最後まで行なった場合には（ステップＥ１４０のＹＥＳルート参照）、更新差分データ（Ｖｅｒ．ＸからＶｅｒ．Ｎ）の生成が完了する（ステップＥ１５０）。
また、新旧更新差分データ置換部１９が、更新差分データ格納部１８から更新差分データ（Ｖｅｒ．ＸからＶｅｒ．Ｎ−１）を削除するとともに（ステップＥ１６０）、更新差分データ格納部１８に上述の如く作成した更新差分データ（Ｖｅｒ．ＸからＶｅｒ．Ｎ）を格納（保存）し（ステップＥ１７０）、更に、更新差分データ格納情報テーブル２１ａにおけるＶｅｒ．Ｘに相当する項に、更新差分データ（Ｖｅｒ．ＸからＶｅｒ．Ｎ）の格納位置を記述する（ステップＥ１８０）。
第２更新差分作成部１２′は、Ｘの値をデクリメント（Ｘ＝Ｘ−１）した後（ステップＥ１９０）、Ｘ＝０であるか否かを確認して（ステップＥ２００）、Ｘ＝０の場合には（ステップＥ２００のＹＥＳルート参照）、処理を終了する。又、Ｘ＝０ではない場合には（ステップＥ２００のＮＯルート参照）、ステップＥ２０に戻る。
本発明の第１実施形態の第１変形例としてのデータ管理システム１ａ′（データ管理サーバ２ａ′）においても、更新差分データ（Ｖｅｒ．ＸからＶｅｒ．Ｎ）を作成することができ、第１実施形態と同様の作用効果を得ることができる。
（Ｃ）第１実施形態の第２変形例の説明
図９は本発明の第１実施形態のデータ管理システム１ａの第２変形例としてのデータ管理システム１ａ″の構成を模式的に示す図である。
本第２変形例のデータ管理システム１ａ″は、図９に示すように、第１実施形態のデータ管理システム１ａのデータ管理サーバ２ａに代えてデータ管理サーバ２ａ″をそなえて構成されている。そして、このデータ管理サーバ２ａ″は、第１実施形態の第２更新差分作成部１２に代えて、第２更新差分作成部１２″をそなえて構成されている他は、第１実施形態のデータ管理サーバ２ａ（図１参照）やその変形例のデータ管理サーバ２ａ′（図１参照）と同様もしくは略同様の構成をそなえている。又、このデータ管理サーバ２ａ″も、例えば、サーバ機能をそなえたコンピュータシステムによって実現される。
本第２変形例における第２更新差分作成部（第２の更新差分作成部）１２″は、更新差分データ格納部１８に格納された更新差分データ（Ｖｅｒ．ＸからＶｅｒ．Ｎ−１）と、第１更新差分作成部（第１の更新差分作成部）１１ａによって作成された更新差分データ（Ｖｅｒ．Ｎ−１からＶｅｒ．Ｎ）と、最新バージョンデータ入力部１０により入力された最新のバージョン（Ｖｅｒ．Ｎ）のデータとに基づいて、更新差分データ（Ｖｅｒ．ＸからＶｅｒ．Ｎ）を作成するものである。
なお、本第２変形例においても、第１実施形態と同様に、データの任意のバージョンを変数Ｘ（ただし、Ｘは１≦Ｘ≦Ｎ−２）を用いて示すものとし、又、本説明中における既述の符号と同一の符号は同一もしくは略同一の部分を示しているので、その説明は省略する
この第２更新差分作成部１２″は、以下の（１）〜（３）の手順に従って更新差分データ（Ｖｅｒ．ＸからＶｅｒ．Ｎ）を作成するようになっている。なお、本変形例においては、中身に何も記載されていない（ブランクデータ）の第１のダミー空データ（Ｖｅｒ．Ｎ−１の空データ）および第２のダミー空データ（Ｖｅｒ．Ｘの空データ）を用いる（予め用意）。
（１）第１のダミー空データ（Ｖｅｒ．Ｎ−１の空データ）と最新バージョンデータ入力部１０により入力された最新のバージョン（Ｖｅｒ．Ｎ）のデータと前記第１更新差分作成部１１ａによって作成された更新差分データ（Ｖｅｒ．Ｎ−１からＶｅｒ．Ｎ）とに基づいて、第１更新差分作成部１１ａによって作成された更新差分データ（Ｖｅｒ．Ｎ−１からＶｅｒ．Ｎ）を解析して、Ｖｅｒ．Ｎ−１の空データ中にＶｅｒ．Ｎのデータの一部を複写するとともに、当該ダミー空データ中における前記複写されたデータ以外の領域にダミーデータを設定してＶｅｒ．Ｎ−１のダミーデータＢ′（第１のダミーデータ）を作成。
（２）第２のダミー空データ（Ｖｅｒ．Ｘの空データ）と上記ダミーデータＢ′と第２更新差分データ格納部１８２に格納された更新差分データ（Ｖｅｒ．ＸからＶｅｒ．Ｎ−１）とに基づいて、第２更新差分データ格納部１８２に格納された更新差分データ（Ｖｅｒ．ＸからＶｅｒ．Ｎ−１）を解析して、Ｖｅｒ．Ｘの空データ中にダミーデータＢ′のデータの一部を複写するとともに、当該ダミー空データ中における前記複写されたデータ以外の領域にダミーデータを設定してＶｅｒ．ＸのダミーデータＡ′（第２のダミーデータ）を作成。
（３）上記ダミーデータＡ′と最新バージョンデータ入力部１０により入力された最新のバージョン（Ｖｅｒ．Ｎ）のデータとを比較することにより、データ格納部２０ａに格納されたデータよりも前の各バージョンから最新のバージョン（Ｖｅｒ．Ｎ）のデータへ更新可能な更新差分データ（Ｖｅｒ．ＸからＶｅｒ．Ｎ）を生成。
本発明の第１実施形態の第２変形例としてのデータ管理システム１ａ″における第２更新差分作成部１２″による更新差分データ（Ｖｅｒ．ＸからＶｅｒ．Ｎ）の作成手法を、図１０Ａおよび図１０Ｂに示すフローチャート（ステップＧ１０〜Ｇ３４０）に従って説明する。なお、図１０Ａに示すフローチャート（ステップＧ１０〜Ｇ２２０）と図１０Ｂに示すフローチャート（ステップＧ２３０〜Ｇ３４０）とに、ステップＧ１０〜Ｇ３４０からなる一のフローチャートを便宜上分けて示している。
先ず、第２更新差分作成部１２″は、Ｖｅｒ．Ｎ−１の空データと、最新バージョンデータ入力部２０から入力された最新バージョン（Ｖｅｒ．Ｎ）のデータとをメモリ（例えばデータ展開用高速メモリ２３）上に展開して、参照ポインタを各データの先頭位置に設定する（ステップＧ１０）。
次に、第２更新差分作成部１２″は、第１更新差分作成部１１ａによって作成された更新差分データ（Ｖｅｒ．Ｎ−１からＶｅｒ．Ｎ）をその先頭の差分コードから順番に解析する（ステップＧ２０）。
先ず、差分コードが「複写」であるか否かを判断して（ステップＧ３０）、複写である場合には（ステップＧ３０のＹＥＳルート参照）、Ｖｅｒ．Ｎ−１の空データの参照位置に、Ｖｅｒ．Ｎの参照位置から複写長分のデータをコピーし（ステップＧ８０）、更に、Ｖｅｒ．Ｎ−１の空データにおける参照位置を複写長分後ろへ移動させる（ステップＧ９０）。
そして、更新差分データ（Ｖｅｒ．Ｎ−１からＶｅｒ．Ｎ）の全ての差分コードについて解析を行なったか否か、すなわち、差分コードの終わりであるか否かを判断して（ステップＧ１００）、終わりではない場合には（ステップＧ１００のＮＯルート参照）、ステップＧ３０に戻る。
差分コードが複写ではない場合には（ステップＧ３０のＮＯルート参照）、第２更新差分作成部１２″は、次に差分コードが「新規」であるか否かを判断する（ステップＧ４０）。差分コードが新規である場合には（ステップＧ４０のＹＥＳルート参照）、Ｖｅｒ．Ｎ−１の空データにおける参照位置を新規データ長分後ろへ移動させて（ステップＧ７０）、ステップＧ１００に移行する。
また、差分コードが新規ではない場合には（ステップＧ４０のＮＯルート参照）、第２更新差分作成部１２″は、差分コードが「移動」であると判断して（ステップＧ５０）、Ｖｅｒ．Ｎ−１の空データにおける参照位置を移動量に基づいて移動させて（ステップＧ６０）、ステップＧ１００に移行する。
差分コードが終わりである場合には（ステップＧ１００のＹＥＳルート参照）、Ｖｅｒ．Ｎ−１の空データにおいて、複写によるデータ代入が行われなかった部分にダミーのデータ（ダミー部）を代入して、Ｖｅｒ．Ｎ−１のダミーデータ（ダミーデータＢ′）を完成させる（ステップＧ１１０）。
次に、第２更新差分作成部１２″は、Ｘ＝Ｎ−２と設定した後（ステップＧ１２０）、ステップＧ１１０において作成したＶｅｒ．Ｎ−１のダミーデータ（ダミーデータＢ′）と、Ｖｅｒ．Ｘの空データとをメモリ（例えばデータ展開用高速メモリ２３）上に展開して、参照ポインタを各データの先頭位置に設定する（ステップＧ１３０）。
次に、第２更新差分作成部１２″は、更新差分データ格納部１８から取得した更新差分データ（Ｖｅｒ．ＸからＶｅｒ．Ｎ−１）をその先頭の差分コードから順番に解析する（ステップＧ１４０）。
先ず、差分コードが「複写」であるか否かを判断して（ステップＧ１５０）、複写である場合には（ステップＧ１５０のＹＥＳルート参照）、Ｖｅｒ．Ｘの空データの参照位置に、Ｖｅｒ．Ｎ−１の参照位置から複写長分のデータをコピーし（ステップＧ２００）、更に、Ｖｅｒ．Ｘの空データにおける参照位置を複写長分後ろへ移動させる（ステップＧ２１０）。
そして、更新差分データ（Ｖｅｒ．ＸからＶｅｒ．Ｎ−１）の全ての差分コードについて解析を行なったか否か、すなわち、差分コードの終わりであるか否かを判断して（ステップＧ２２０）、終わりではない場合には（ステップＧ２２０のＮＯルート参照）、ステップＧ１５０に戻る。
差分コードが複写ではない場合には（ステップＧ１５０のＮＯルート参照）、第２更新差分作成部１２″は、次に差分コードが「新規」であるか否かを判断する（ステップＧ１６０）。差分コードが新規である場合には（ステップＧ１６０のＹＥＳルート参照）、Ｖｅｒ．Ｘの空データの参照位置を新規データ長分後ろへ移動させて（ステップＧ１９０）、ステップＧ２２０に移行する。
また、差分コードが新規ではない場合には（ステップＧ１６０のＮＯルート参照）、第２更新差分作成部１２″は、差分コードが「移動」であると判断して（ステップＧ１７０）、Ｖｅｒ．Ｘの空データにおける参照位置を移動量に基づいて移動させて（ステップＧ１８０）、ステップＧ２２０に移行する。
差分コードが終わりである場合には（ステップＧ２２０のＹＥＳルート参照）、Ｖｅｒ．Ｘの空データにおいて、複写によるデータ代入が行われなかった部分にダミーのデータ（ダミー部）を代入することにより、Ｖｅｒ．Ｘのダミーデータ（ダミーデータＡ′）を完成させる（ステップＧ２３０）。
次に、第２更新差分作成部１２″は、ステップＧ２３０において作成されたＶｅｒ．Ｘのダミーデータ（ダミーデータＡ′）と、最新バージョンデータ入力部２０から入力された最新バージョン（Ｖｅｒ．Ｎ）のデータとを、先頭のデータから比較する（ステップＧ２４０）。
Ｖｅｒ．ＸのダミーデータとＶｅｒ．Ｎのデータとが等しいか否かを判断して（ステップＧ２５０）、等しい場合には（ステップＧ２５０のＹＥＳルート参照）、更新差分データ（Ｖｅｒ．ＸからＶｅｒ．Ｎ）に複写として複写長を記述する（ステップＧ３１０）。そして、データの最後まで比較を行なったか否かを判断して（ステップＧ３２０）、最後まで比較を行なっていない場合には（ステップＧ３２０のＮＯルート参照）、ステップＧ２５０に戻る。
Ｖｅｒ．ＸのダミーデータとＶｅｒ．Ｎのデータとが異なる場合には、（ステップＧ２５０のＮＯルート参照）、第２更新差分作成部１２″は、次に、Ｖｅｒ．Ｘのダミーデータにおける比較位置のデータがダミーデータであるか否かを判断する（ステップＧ２６０）。ダミーデータである場合には（ステップＧ２６０のＹＥＳルート参照）、新規データとしてＶｅｒ．Ｎのデータ内容を更新差分データ（Ｖｅｒ．Ｎ−１からＶｅｒ．Ｎ）に記述して（ステップＧ３００）、ステップＧ３２０に移行する。
また、Ｖｅｒ．Ｘのダミーデータにおける当該比較位置におけるデータがダミーデータではない場合には（ステップＧ２６０のＮＯルート参照）、Ｖｅｒ．Ｘのダミーデータの中からＶｅｒ．Ｎのデータに等しいデータを検索して（ステップＧ２７０）、等しい箇所を発見することができたか否かを判断する（ステップＧ２８０）。
等しい箇所が発見されない場合には（ステップＧ２８０のＮＯルート参照）、ステップＧ３００に移行する。又、等しい箇所が発見された場合には（ステップＧ２８０のＹＥＳルート参照）、発見位置への移動量を更新差分データ（Ｖｅｒ．ＸからＶｅｒ．Ｎ）に記述して（ステップＧ２９０）、ステップＧ３２０に移行する。
データを最後まで比較した場合には（ステップＧ３２０のＹＥＳルート参照）、次に、Ｘの値をデクリメント（Ｘ＝Ｘ−１）して（ステップＧ３３０）、Ｘ＝０であるか否かを判断する（ステップＧ３４０）。Ｘ＝０でない場合には（Ｇ３４０のＮＯルート参照）、ステップＧ１３０に戻り、Ｘ＝０の場合には（Ｇ３４０のＹＥＳルート参照）、処理を終了する。
上述の如く構成された本発明の第１実施形態の第２変形例としてのデータ管理システム１ａ″においても、上述した第１実施形態およびその第１変形例と同様の作用効果を得ることができる。
（Ｄ）第２実施形態の説明
図１１は本発明の第２実施形態としてのデータ管理システム（データ供給システム）１ｂの構成を模式的に示す図である。
本第２実施形態のデータ管理システム１ｂも、第１実施形態のデータ管理システム１ａと同様に、データやプログラム（以下、単にデータという）を格納可能な情報処理装置（更新対象機器）３と通信可能に接続され、複数のバージョンのデータを管理して、情報処理装置３に最新のバージョンのデータを提供するべくこれらのデータを管理するものである。
本発明の第２実施形態としてのデータ管理システム１ｂは、図１１に示すように、情報処理装置３に通信可能に接続されたデータ管理サーバ（データ管理装置）２ｂをそなえて構成されている。又、このデータ管理サーバ２ｂは、例えば、サーバ機能をそなえたコンピュータシステムによって実現され、図１１に示すように、最新バージョンデータ入力部１０，更新差分作成部（第１の更新差分作成部）１１ｂ，選択部１３，バージョン取得部１４，更新差分データ送出部（提供部）１５，不要更新差分除去部（更新差分データ削除部）１７，第１更新差分データ格納部（第１の更新差分データ格納部）１８１，第２更新差分データ格納部（第２の更新差分データ格納部）１８２，新旧更新差分データ置換部１９，データ格納部２０ｂ，データ生成部２２および更新差分データ格納情報テーブル２１ｂをそなえて構成されている。
すなわち、本第２実施形態のデータ管理サーバ２ｂは、第１実施形態のデータ管理サーバ２ａにおける、第１更新差分作成部１１および第２更新差分作成部１２に代えて更新差分作成部１１ｂをそなえるとともに、更新差分データ格納部１８に代えて第１更新差分データ格納部１８１および第２更新差分データ格納部１８２を、又、更新差分データ格納情報テーブル２１ａに代えて更新差分データ格納情報テーブル２１ｂを、更に、データ格納部２０ａに代えてデータ格納部２０ｂを、それぞれそなえて構成されている。
また、データ管理サーバ２ｂは、第１実施形態のデータ管理サーバ２ａにおける新旧データ置換部１６を除いて構成される一方で、新たにデータ生成部２２およびデータ展開用高速メモリ２３をそなえて構成されている。
なお、図中、既述の符号と同一の符号は同一もしくは略同一の部分を示しているので、その詳細な説明は省略する。
データ格納部２０ｂは、最新バージョンデータ入力部１０から入力される最新のバージョン（Ｖｅｒ．Ｎ）よりも古いバージョンのデータ全体を格納するものであって、本第２実施形態においては、最も古いバージョン（Ｖｅｒ．１）のデータ（全体）を格納している。
第１更新差分データ格納部（第１の更新差分データ格納部）１８１は、データ格納部２０ｂに格納されたデータを、本データ管理システム１ｂにおいて管理する複数の各バージョン（Ｖｅｒ．Ｘ）のデータへ更新可能な複数の更新差分データをそれぞれ格納するものであり、例えば、コンピュータシステムにおけるハードディスクやメモリ等の記憶装置によって実現される。
データ生成部２２は、データ格納部２０ｂに格納されたデータと、第１更新差分データ格納部１８１に格納された各更新差分データとに基づいて、各バージョンのデータを生成するものであり、データ格納部２０ｂに格納されたデータに、第１更新差分データ格納部１８１に格納された各更新差分データを選択的に適用することにより、任意のバージョン（Ｖｅｒ．Ｘ）のデータ（全体）を生成することができるようになっている。
データ展開用高速メモリ２３は、データ生成部２２によって生成されたデータを展開するものであり、特にアクセス速度が高速なメモリを使用することにより、処理速度を向上させることができる。
更新差分作成部１１ｂは、データ生成部２２によって生成された各バージョンのデータと、最新バージョンデータ入力部１０により入力された最新のバージョン（Ｖｅｒ．Ｎ）のデータとに基づいて、各バージョン（Ｖｅｒ．Ｘ）のデータから最新のバージョン（Ｖｅｒ．Ｎ）のデータへ更新可能な更新差分データ（Ｖｅｒ．ＸからＶｅｒ．Ｎ）を作成するものである。なお、この更新差分作成部１１ｂが更新差分データ（Ｖｅｒ．ＸからＶｅｒ．Ｎ）を作成する手法は、第１実施形態の第１更新差分作成部１１ａによる更新差分データ（Ｖｅｒ．Ｎ−１からＶｅｒ．Ｎ）の生成手法（図３参照）と略同様であるので、その説明は省略する。
第２更新差分データ格納部（第２の更新差分データ格納部）１８２は、更新差分作成部１１ｂによって作成された更新差分データを格納するものであり、各バージョンのデータを本データ管理システム１ｂにおける最新のバージョンに更新可能な各更新差分データを格納するようになっている。なお、この第２更新差分データ格納部１８２も、例えば、コンピュータシステムにおけるハードディスクやメモリ等の記憶装置によって実現される。
更新差分データ格納情報テーブル２１ｂは、第２更新差分データ格納部１８２に格納されている各更新差分データの格納位置を管理するテーブルであり、第１実施形態の更新差分データ格納情報テーブル２１ａ（図２参照）と同様に、更新前のバージョンとそのバージョンに対応する更新差分データの格納位置（格納アドレス）とを関連付けて登録することによって構成されており、選択部１３が、この更新差分データ格納情報テーブル２１ｂを参照することにより、特定バージョンに対応する更新差分データの格納場所を高速に取得することができるようになっている。
上述の如く構成された本発明の第２実施形態としてのデータ管理システム１ｂにおいて、最新のバージョン（Ｖｅｒ．Ｎ）のデータが作成された場合にその最新バージョンのデータについての更新差分データを登録する手法を、図１２を用いて説明する。
最新バージョン（Ｖｅｒ．Ｎ）のデータが作成された場合には、先ず、データ生成部２２が、データ格納部２０ｂに格納されているＶｅｒ．１のデータ（全体）と、第１更新差分データ格納部１８１に格納されている各更新差分データとに基づいて、各バージョン（Ｖｅｒ．Ｘ）のデータ（全体）を生成して（図１２のステップＦ１０）、データ展開用高速メモリ２３に展開する。
なお、データ生成部２２は、各バージョンのデータを逐次、生成・展開することが望ましいが、例えばデータ展開用高速メモリ２３の容量が各データのサイズに比べて十分に大きい場合には、複数のバージョンのデータを一度に生成・展開してもよい。
そして、更新差分作成部１１ｂが、最新バージョンデータ入力部１０によって入力されたデータ（Ｖｅｒ．Ｎ）と、データ展開用高速メモリ２３に展開されたデータ（Ｖｅｒ．Ｘ）とに基づいて、Ｖｅｒ．Ｘのデータから最新のバージョン（Ｖｅｒ．Ｎ）のデータへ更新するための更新差分データ（Ｖｅｒ．ＸからＶｅｒ．Ｎ）を作成する（図１２のステップＦ２０参照）。
更新差分データ格納部１８に登録されているＶｅｒ．Ｎ−１までの各更新差分データ（Ｖｅｒ．ＸからＶｅｒ．Ｎ−１）は、新旧更新差分データ置換部１９によって、更新差分作成部１１ｂによって作成された更新差分データ（Ｖｅｒ．ＸからＶｅｒ．Ｎ）と置換される。又、この際、更新差分データ格納情報テーブル２１ａの更新処理も併せて行なわれる。
なお、本発明の第２実施形態としてのデータ管理システム１ｂにおける情報処理装置３のデータの更新手法は、選択部１３が、バージョン取得部１４によって取得された情報処理装置３のデータのバージョンに対応する更新差分データを、第２更新差分データ格納部１８２におけるその更新差分データの格納位置から取得すること以外は、前述した第１実施形態のデータ管理システム１ａ（図６参照）とほぼ同様であるので、その詳細な説明は省略する。
このように、本発明の第２実施形態としてのデータ管理システム１ｂによれば、上述した第１実施形態と同様の作用効果を得ることができる他、更新差分作成部１１ｂが、最新バージョンデータ入力部１０から入力された最新バージョンのデータ全体と、データ生成部２２によって生成された各旧バージョンのデータ全体とに基づいて各更新差分データ（Ｖｅｒ．ＸからＶｅｒ．Ｎ）を作成するので、第１実施形態の第２更新差分作成部１２の如く更新差分データどうし（更新差分データ（Ｖｅｒ．ＸからＶｅｒ．Ｎ−１）と更新差分データ（Ｖｅｒ．Ｎ−１からＶｅｒ．Ｎ））から更新差分データ（Ｖｅｒ．ＸからＶｅｒ．Ｎ）を生成するよりも、作成する更新差分データ（Ｖｅｒ．ＸからＶｅｒ．Ｎ）の容量を小さくすることができる場合がある。
例えば、データを複数のバージョンにわたって更新する過程において、あるバージョンにおいて変更した部分をその後のバージョンにおいて元に戻した場合には、第１実施形態の如く第２更新差分作成部１２が更新差分データどうしから更新差分データ（Ｖｅｒ．ＸからＶｅｒ．Ｎ）を作成した場合には、作成された更新差分データ（Ｖｅｒ．ＸからＶｅｒ．Ｎ）には、これらの更新過程が差分コードとして含まれるのに対して、本第２実施形態の如く全体のデータどうしから更新差分データ（Ｖｅｒ．ＸからＶｅｒ．Ｎ）を作成した場合には、このような更新過程の差分コードが含まれることがなく、最小限のサイズの更新差分データ（Ｖｅｒ．ＸからＶｅｒ．Ｎ）を作成することができるのである。
（Ｅ）第２実施形態の変形例の説明
上述した第２実施形態のデータ管理システム１ｂにおいては、データ格納部２０ｂに、最新バージョンデータ入力部１０から入力される最新のバージョン（Ｖｅｒ．Ｎ）よりも古いバージョンのデータとして、最も古いバージョン（Ｖｅｒ．１）のデータを格納しているが、これに限定されるものではなく、最新バージョンデータ入力部１０から入力される最新のバージョン（Ｖｅｒ．Ｎ）よりも前の他のバージョン（Ｖｅｒ．Ｂ）のデータを格納してもよい（ただし、Ｂは１＜Ｂ＜Ｎ）。
図１３は本発明の第２実施形態の変形例としてのデータ管理システム１ｂ′の構成を模式的に示す図である。この図１３に示すように、本変形例のデータ管理システム１ｂ′は、第２実施形態のデータ管理システム１ｂにおけるデータ格納部２０ｂに代えてデータ格納部２０ｂ′をそなえるとともに、第１更新差分データ格納部１８１に代えて、第１更新差分データ格納部１８１′をそなえて構成されている。なお、図中、既述の符号と同一の符号は同一もしくは略同一の部分を示しているので、その詳細な説明は省略する。
データ格納部２０ｂ′は、最新バージョンデータ入力部１０から入力される最新のバージョン（Ｖｅｒ．Ｎ）よりも前の他のバージョン（Ｖｅｒ．Ｂ）のデータを格納している。
また、第１更新差分データ格納部１８１′は、データ格納部２０ｂ′に格納されたデータを、本データ管理システム１ｂ′において管理する複数の各バージョンのデータへ更新可能な各更新差分データを格納するようになっている。
なお、本変形例において、Ｂ＞Ｘとなる場合、すなわちＶｅｒ．ＢがＶｅｒ．Ｘよりも新しいバージョンの場合には、第１更新差分データ格納部１８１′には、新しいバージョンであるＶｅｒ．Ｂのデータから古いバージョンであるＶｅｒ．Ｘのデータに更新（バージョンダウン）するための更新差分データ（Ｖｅｒ．ＢからＶｅｒ．Ｘ）が登録される。
このような本発明の第２実施形態の変形例としてのデータ管理システム１ｂ′においても、第２実施形態と同様の作用効果を得ることができる。
（Ｆ）第３実施形態の説明
図１４は本発明の第３実施形態としてのデータ管理システム１ｃの構成を模式的に示す図である。
本第３実施形態のデータ管理システム１ｃも、第２実施形態のデータ管理システム１ｂと同様に、データやプログラム（以下、単にデータという）を格納可能な情報処理装置（更新対象機器）３と通信可能に接続され、複数のバージョンのデータを管理して、情報処理装置３に最新のバージョンのデータを提供するべくこれらのデータを管理するものである。
本発明の第３実施形態としてのデータ管理システム１ｃは、図１４に示すように、情報処理装置３に通信可能に接続されたデータ管理サーバ（データ管理装置）２ｃをそなえて構成されている。
そして、このデータ管理サーバ２ｃは、図１４に示すように、第２実施形態のデータ管理サーバ２ｂに第３更新差分作成部（第２の更新差分作成部）２５をそなえるとともに、第１更新差分データ格納部１８１に代えて第１更新差分データ格納部１８１（第１の更新差分データ格納部）ｃをそなえ、更に、更新差分作成部１１ｂに代えて第１更新差分作成部（第１の更新差分作成部）１１ｃをそなえて構成されている。なお、図中、既述の符号と同一の符号は同一もしくは略同一の部分を示しているので、その詳細な説明は省略する。又、このデータ管理サーバ２ｃは、例えば、サーバ機能をそなえたコンピュータシステムによって実現される。
第１更新差分データ格納部１８１ｃは、データ格納部２０ｂに格納されたバージョンのデータをＶｅｒ．Ｎ−１のデータに更新するための更新差分データを格納するものである。なお、図１４に示す例においては、データ格納部２０ｂにＶｅｒ．１のデータ（全体）が格納されているので、第１更新差分データ格納部１８１ｄは、更新差分データ（Ｖｅｒ．１からＶｅｒ．Ｎ−１）を格納している。
本第３実施形態のデータ管理システム１ｄにおいては、データ生成部２２は、データ格納部２０ｂに格納されたＶｅｒ．１のデータと、第１更新差分データ格納部１８１ｃに格納された各更新差分データ（Ｖｅｒ．１からＶｅｒ．Ｎ−１）とに基づいて、Ｖｅｒ．Ｎ−１のデータ（全体）を生成するようになっており、生成したＶｅｒ．Ｎ−１のデータは、データ展開用高速メモリ２３上に展開されるようになっている。
第１更新差分作成部１１ｃは、データ生成部２２によって生成されたＶｅｒ．Ｎ−１のデータと、最新バージョンデータ入力部１０により入力された最新のバージョン（Ｖｅｒ．Ｎ）のデータとに基づいて、Ｖｅｒ．Ｎ−１のデータから最新のバージョン（Ｖｅｒ．Ｎ）のデータへ更新可能な更新差分データ（Ｖｅｒ．Ｎ−１からＶｅｒ．Ｎ）を作成するものである。なお、この第１更新差分作成部１１ｃが更新差分データ（Ｖｅｒ．Ｎ−１からＶｅｒ．Ｎ）を作成する手法は、上述した第１実施形態の第１更新差分作成部１１による更新差分データ（Ｖｅｒ．Ｎ−１からＶｅｒ．Ｎ）の生成手法（図３参照）と略同様であるので、その説明は省略する。
第３更新差分作成部２５は、第１更新差分作成部１１ｃによって作成された更新差分データ（Ｖｅｒ．Ｎ−１からＶｅｒ．Ｎ）と、第２更新差分データ格納部１８２に格納されている各更新差分データ（Ｖｅｒ．ＸからＶｅｒ．Ｎ−１）とに基づいて、更新差分データ（Ｖｅｒ．ＸからＶｅｒ．Ｎ）を作成するものである。
また、この第３更新差分作成部２５は、作成した更新差分データ（Ｖｅｒ．ＸからＶｅｒ．Ｎ）を、新旧更新差分データ置換部１９に渡すようになっている。
本第３実施形態のデータ管理システム１ｃにおいては、最新のデータが最新バージョンデータ入力部１０から入力され、その更新差分データが第３更新差分作成部２５によって作成された場合に、新旧更新差分データ置換部１９は、第２更新差分データ格納部１８２に格納された更新差分データ（Ｖｅｒ．ＸからＶｅｒ．Ｎ−１）の更新（置換）を行なうとともに、第１更新差分データ格納部１８１ｃに格納されている更新差分データ（Ｖｅｒ．１からＶｅｒ．Ｎ−１）についても、データ格納部２０ｂに格納されているデータを最新バージョンデータ入力部１０から入力された最新のバージョンのデータに更新するための更新差分データと置換するようになっている。
なお、第３更新差分作成部２５による更新差分データ（Ｖｅｒ．ＸからＶｅｒ．Ｎ）の生成手法は、上述した第１実施形態の第２更新差分作成部１２や、その第１変形例の第２更新差分作成部１２′，第２変形例の第２更新差分作成部１２″による更新差分データ（Ｖｅｒ．Ｎ−１からＶｅｒ．Ｎ）の生成手法（図４，図７参照）と略同様であるので、その説明は省略する。
本発明の第３実施形態としてのデータ管理システム１ｃによっても、第１実施形態と同様の作用効果を得ることができる。
（Ｇ）その他
上述した各実施形態およびその変形例においては、データ管理サーバ２ａ，２ａ′，２ａ″，２ｂ，２ｃを構成するコンピュータのＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）が、データ管理プログラムを実行することにより、上述した、最新バージョンデータ入力部１０，第１更新差分作成部１１ａ，第２更新差分作成部１２，１２′，１２″，選択部１３，バージョン取得部１４，更新差分データ送出部１５，新旧データ置換部１６，不要更新差分除去部１７，新旧更新差分データ置換部１９，更新差分データ格納情報テーブル２１ａ，第２更新差分作成部１２′，更新差分作成部１１ｂ，１１ｄ，第３更新差分作成部２５および更新差分データ格納情報テーブル２１ｂとして機能するようになっている。
なお、これらの最新バージョンデータ入力部１０，更新作成部１１ｂ，１１ｃ第１更新差分作成部１１ａ，第２更新差分作成部１２，１２′，１２″，選択部１３，バージョン取得部１４，更新差分データ送出部１５，新旧データ置換部１６，不要更新差分除去部１７，新旧更新差分データ置換部１９，更新差分データ格納情報テーブル２１ａおよび更新差分データ格納情報テーブル２１ｂとしての機能を実現するためのプログラム（データ管理プログラム）は、例えばフレキシブルディスク，ＣＤ−ＲＯＭ，ＣＤ−Ｒ，ＣＤ−Ｒ／Ｗ，ＤＶＤ，ＤＶＤ−Ｒ，ＤＶＤ−Ｒ／Ｗ，磁気ディスク，光ディスク，光磁気ディスク等の、コンピュータ読取可能な記録媒体に記録された形態で提供される。そして、コンピュータはその記録媒体からプログラムを読み取って内部記憶装置または外部記憶装置に転送し格納して用いる。又、そのプログラムを、例えば磁気ディスク，光ディスク，光磁気ディスク等の記憶装置（記録媒体）に記録しておき、その記憶装置から通信経路を介してコンピュータに提供するようにしてもよい。
なお、本実施形態において、コンピュータとは、ハードウェアとオペレーティングシステムとを含む概念であり、オペレーティングシステムの制御の下で動作するハードウェアを意味している。又、オペレーティングシステムが不要でアプリケーションプログラム単独でハードウェアを動作させるような場合には、そのハードウェア自体がコンピュータに相当する。ハードウェアは、少なくとも、ＣＰＵ等のマイクロプロセッサと、記録媒体に記録されたコンピュータプログラムを読み取るための手段とをそなえており、本実施形態においては、データ管理サーバ２ａ，２ａ′，２ａ″，２ｂ，２ｂ′，２ｃがコンピュータとしての機能を有しているのである。
さらに、本実施形態における記録媒体としては、上述したフレキシブルディスク，ＣＤ−ＲＯＭ，ＣＤ−Ｒ，ＣＤ−Ｒ／Ｗ，ＤＶＤ，ＤＶＤ−Ｒ，ＤＶＤ−Ｒ／Ｗ，磁気ディスク，光ディスク，光磁気ディスクのほか、ＩＣカード，ＲＯＭカートリッジ，磁気テープ，パンチカード，コンピュータの内部記憶装置（ＲＡＭやＲＯＭなどのメモリ），外部記憶装置等や、バーコードなどの符号が印刷された印刷物等のコンピュータ読取可能な種々の媒体を利用することができる。
また、上述した各実施形態およびその変形例においては、管理サーバ２ａ，２ａ′，２ａ″，２ｂ，２ｂ′，２ｃと情報処理装置３とは、例えば、ＬＡＮやＵＳＢ，無線ＬＡＮ，ブルートゥース（Ｂｌｕｅｔｏｏｔｈ；登録商標）等の有線，無線を問わず種々の通信手法で通信可能に接続することができるが、本発明は、このような通信手法として、ＵＳＢ等のデータ管理サーバ２ａ，２ａ′，２ａ″，２ｂ，２ｂ′，２ｃと情報処理装置３との間で転送されるデータ量に従って、その転送に要する時間（転送時間）が目に見えて多くなるような通信手段を用いる場合に特に有効である。
そして、本発明は上述した実施形態に限定されるものではなく、本発明の趣旨を逸脱しない範囲で種々変形して実施することができる。
例えば、上述した各実施形態においては、データ管理サーバ２ａ，２ａ′，２ａ″，２ｂ，２ｂ′，２ｃに、最新バージョンデータ入力部１０や更新差分作成部１１ｂ，１１ｃ，第１更新差分作成部１１ａ，第２更新差分作成部１２，１２′，１２″選択部１３，バージョン取得部１４，更新差分データ送出部１５，新旧データ置換部１６，不要更新差分除去部１７，新旧更新差分データ置換部１９，更新差分データ格納情報テーブル２１ａ，第３更新差分作成部２５および更新差分データ格納情報テーブル２１ｂ，データ格納部２０ａ，２０ｂ，２０ｂ′，更新差分データ格納部１８，第１更新差分データ格納部１８１，１８１′，１８１ｄ，第２更新差分データ格納部１８２がそなえられているが、これに限定されるものではなく、相互に通信可能に接続された１台以上の他のコンピュータにこれらのうちの一部の機能を分割してそなえてもよい。
また、上述した各実施形態およびその変形例においては、データ管理サーバ２ａ，２ａ′，２ａ″，２ｂ，２ｂ′，２ｃに１つの情報処理装置３が接続されている例を示しているが、これに限定されるものではなく、データ管理サーバ２ａ，２ａ′，２ａ″，２ｂ，２ｂ′，２ｃに２以上の情報処理装置３が接続され、これらの各情報処理装置３に対して、最新のバージョンのデータを提供すべく更新差分データの送信等を行なってもよい。
また、上述した第３実施形態において、第３更新差分作成部２５が、第１実施形態の第１変形例や第２変形例における第２更新差分作成部１２′，１２″と同様の手法で更新差分データを作成してもよい。
なお、本発明の各実施形態が開示されていれば、本発明のデータ管理システム，データ管理装置，データ管理方法，データ供給システム，データ管理プログラムおよび同プログラムを記録したコンピュータ読取可能な記録媒体を当業者によって実施・製造することが可能である。
【産業上の利用可能性】  以上のように、本発明のデータ管理システム，データ管理装置，データ管理方法，データ供給システム，データ管理プログラムおよび同プログラムを記録したコンピュータ読取可能な記録媒体は、情報処理装置におけるデータのバージョン管理を行なうのに有用であり、例えば携帯電話器やコンピュータ等におけるプログラムやデータの更新管理に適している。
【図１】
2005055055.tif 000002
【図２】
2005055055.tif 000003
【図３】
2005055055.tif 000004
2005055055.tif 000005
2005055055.tif 000006
【図５】
2005055055.tif 000007
【図６】
2005055055.tif 000008
2005055055.tif 000009
2005055055.tif 000010
【図８】
2005055055.tif 000011
【図９】
2005055055.tif 000012
2005055055.tif 000013
2005055055.tif 000014
【図１１】
2005055055.tif 000015
【図１２】
2005055055.tif 000016
【図１３】
2005055055.tif 000017
【図１４】
2005055055.tif 000018
【図１５】
2005055055.tif 000019
【図１６】
2005055055.tif 000020
【手続補正書】
【提出日】平成18年4月17日(2006.4.17)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
データを格納可能な情報処理装置と通信可能に接続され、複数のバージョンの該データを管理して、該情報処理装置に最新のバージョンの該データを提供するべく該データを管理するデータ管理システムであって、
前記最新のバージョン（Ｖｅｒ．Ｎ）のデータを入力可能な最新バージョンデータ入力部と、
該最新バージョンよりも前のバージョンであって、当該データ管理システムにおける最新のバージョン（Ｖｅｒ．Ｎ−１）のデータを格納するデータ格納部と、
前記データ格納部に格納されたデータよりも前の各バージョンから前記データ格納部に格納されたデータと同一のバージョン（Ｖｅｒ．Ｎ−１）へ更新可能な更新差分データを格納する更新差分データ格納部と、
該データ格納部に格納されたデータ（Ｖｅｒ．Ｎ−１）と、該最新バージョンデータ入力部により入力された前記最新のバージョン（Ｖｅｒ．Ｎ）のデータとに基づいて、該データ格納部に格納されたデータから、前記最新のバージョン（Ｖｅｒ．Ｎ）のデータへ更新可能な更新差分データを作成する第１の更新差分作成部と、
該更新差分データ格納部に格納された該更新差分データと該第１の更新差分作成部によって作成された該更新差分データとに基づいて、前記データ格納部に格納されたデータよりも前の各バージョンから前記最新のバージョン（Ｖｅｒ．Ｎ）のデータへ更新可能な更新差分データを生成する第２の更新差分作成部とをそなえることを特徴とする、データ管理システム。
【請求項２】
前記更新差分データ格納部に格納された更新差分データを、前記第１の更新差分作成部によって作成された更新差分データおよび前記第２の更新差分作成部によって作成された更新差分データと置換する新旧更新差分データ置換部と、
前記データ格納部に格納されたデータを、前記最新バージョンデータ入力部から入力された前記最新のバージョン（Ｖｅｒ．Ｎ）のデータと置換する新旧データ置換部とをそなえることを特徴とする、請求の範囲第１項に記載のデータ管理システム。
【請求項３】
前記更新差分データ格納部が複数の更新差分データをそなえるとともに、
前記複数の更新差分データの中から、情報処理装置に格納された該データのバージョンに応じて一の更新差分データを選択する選択部と、
該選択部によって選択された該更新差分データを該情報処理装置に提供する提供部とをそなえることを特徴とする、請求の範囲第２項に記載のデータ管理システム。
【請求項４】
該第２の更新差分作成部が、該更新差分データ格納部に格納された該更新差分データと該第１の更新差分作成部によって作成された該更新差分データとに基づいて、
前記更新差分データ格納部に格納された更新差分データと前記第１の更新差分作成部によって作成された更新差分データとのいずれもが「複写」を意味する部分については、作成する更新差分データにおける当該位置に複写を、
前記更新差分データ格納部に格納された更新差分データと前記第１の更新差分作成部によって作成された更新差分データとの少なくとも一方が「新規」を意味する部分については、作成する更新差分データにおける当該位置に新規を、
前記更新差分データ格納部に格納された更新差分データが移動であり、且つ前記第１の更新差分作成部によって作成された更新差分データが「複写」もしくは「移動」を意味する部分と、前記更新差分データ格納部に格納された更新差分データが「複写」であり、且つ前記第１の更新差分作成部によって作成された更新差分データが「移動」を意味する部分については、作成する更新差分データにおける当該位置に移動を、それぞれ設定することを特徴とする、請求の範囲第１項〜第３項のいずれか１項に記載のデータ管理システム。
【請求項５】
該第２の更新差分作成部が、該更新差分データ格納部に格納された該更新差分データと該第１の更新差分作成部によって作成された該更新差分データとに基づいて、
前記データ格納部に格納されたデータよりも前のバージョンのデータに基づいて作成した第１ダミーデータに、前記更新差分データ格納部に格納された該更新差分データを適用することにより、前記データ格納部に格納されたデータと同一のバージョン（Ｖｅｒ．Ｎ−１）の第２ダミーデータを作成した後、当該第２ダミーデータに、前記第１の更新差分作成部によって作成された更新差分データを適用することにより、前記最新のバージョン（Ｖｅｒ．Ｎ）のデータ同一のバージョンの第３ダミーデータを作成し、当該第３ダミーデータに基づいて、前記データ格納部に格納されたデータよりも前の各バージョンから前記最新のバージョン（Ｖｅｒ．Ｎ）のデータへ更新可能な更新差分データを生成することを特徴とする、請求の範囲第１項〜第３項のいずれか１項に記載のデータ管理システム。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、例えばＬＡＮ（Local Area Network）等の手段で通信可能に接続されたコンピュータや携帯電話器等の情報処理装置に格納されたデータ（プログラム）のバージョンの管理に関し、情報処理装置のデータを最新のバージョンに更新する更新処理に用いて好適な、データ管理システムに関する。
【背景技術】
【０００２】
例えば、携帯電話器等のような組込型システムの情報処理装置は、内部のメモリに格納されたソフトウェア（プログラム）をＣＰＵ（Central Processing Unit）が実行することにより動作しており、又、これらのプログラムは、不具合の除去や仕様変更，機能拡張等、必要に応じて更新（バージョンアップ）されることがある。
このようなプログラムが更新され新しいバージョンのプログラムが作成された場合には、この最新のバージョンのプログラムを情報処理装置に速やかに提供して、情報処理装置においてプログラムを最新のバージョンに更新することが望ましい。
【０００３】
さて、最新のバージョンのプログラムが作成される度に、その最新のバージョンのプログラム全体をＬＡＮ等の通信回線を介して情報処理装置に送信する代わりに、変更された部分のみのデータである更新差分データだけを送信することで、通信回線におけるデータの通信量を軽減したり、情報処理装置におけるプログラムの更新処理にかかる時間を短くする手法が知られている。
【０００４】
図１５および図１６はそれぞれ従来のプログラムの更新管理手法を説明するための図である。例えば、特開平１１−２７２４７１号公報（下記特許文献１）や、特開２０００−１０７８７号公報（下記特許文献２），特開２００２−９１７７６号公報（下記特許文献３），特開平１０−３４１５号公報（下記特許文献４）には、ネットワーク（通信回線）を介して接続されたコンピュータ（計算機）に対して、各コンピュータにおいて用いられているプログラムとその最新バージョンのプログラムとの差分データ（バージョンアップデータ）を送信するシステムが開示されている。
【０００５】
図１５は特許文献１および特許文献２にかかる従来のシステムの機能構成を模式的に示す図であるが、この図１５に示すように、特許文献１および特許文献２にかかる従来のシステムにおいては、送信側（プログラムローダ）において、各バージョンのプログラム全体を保存するとともに、各バージョンのプログラムに対する最新バージョンへの差分データを保存・管理し、通信回線を介して接続された受信側コンピュータ（計算機）に対して、この差分データを送信するようになっている。
【０００６】
また、図１６は特許文献３および特許文献４にかかる従来のシステムの機能構成を模式的に示す図であるが、この図１６に示すように、特許文献３および特許文献４にかかる従来のシステムにおいては、サーバ側において、最新のバージョン（Ｖｅｒ．Ｎ−１）のプログラム全体を保存するとともに、システム中における最も古いバージョン（例えばＶｅｒ．１）から最新のバージョン（Ｖｅｒ．Ｎ−１）までの各バージョンについて、それぞれ１つ新しいバージョンに更新するための差分データ（例えば、Ｖｅｒ．１からＶｅｒ．２，Ｖｅｒ．２からＶｅｒ．３・・・，Ｖｅｒ．Ｎ−２からＶｅｒ．Ｎ−１等）をそれぞれ保存するようになっている。すなわち、最新のバージョン（Ｖｅｒ．Ｎ−１）のプログラム全体とともに、隣り合う世代のバージョン間の差分データを各バージョン毎にそなえている。
【０００７】
そして、この図１６に示す従来手法においては、クライアントのプログラムを最新のバージョンに更新する際には、そのクライアントのプログラムのバージョンから順番にそのクライアントのプログラムが最新のバージョンになるまで、各バージョンに対応する差分データのクライアントへの送信と、そのクライアントにおける差分データを用いた展開（更新処理）とを繰り返し行なうようになっている。
【特許文献１】特開平１１−２７２４７１号公報
【特許文献２】特開２０００−１０７８７号公報
【特許文献３】特開２００２−９１７７６号公報
【特許文献４】特開平１０−３４１５号公報
【発明の開示】
【発明が解決しようとする課題】
【０００８】
しかしながら、図１５に示す従来手法においては、各バージョンのプログラム全体を保存しているので保持すべきデータ量が多くなり、かかるデータの格納領域を確保するためにハードウェアの製造コストが高くなり非経済的であるという課題がある。特に、プログラムの更新が数多く行なわれバージョン数が多くなるに従って、保存するデータ量も増えるのである。又、新しいバージョン（Ｖｅｒ．Ｎ）のプログラムが作成された場合には、この最新のプログラムを登録する際に、新旧プログラムの比較ツール等を用いて、既存の各バージョンのプログラムから新たに作成された最新バージョンのプログラムに更新するための差分データをそれぞれ作成する必要があり、かかる差分データの作成工程が繁雑であるとともに時間がかかるという課題もある。
【０００９】
また、図１６に示す従来手法においては、クライアントのプログラムを最新のバージョンに更新する際には、そのクライアントのプログラムのバージョンに対応する差分データをから順番に、そのクライアントのプログラムが最新のバージョンになるまで、各バージョンに対応する差分データのクライアントへの送信と、そのクライアントにおける差分データを用いた展開（更新処理）とを繰り返し行なう必要があり、例えば、クライアントのプログラムのバージョンが何世代も前のバージョンである場合には、更新処理が繁雑であるとともに時間がかかるという課題がある。
【００１０】
本発明は、このような課題に鑑み創案されたもので、情報処理装置のデータの更新処理を高速に行なうとともに、最新のバージョンのデータが作成された場合に、この最新のバージョンのデータを高速に登録可能であり、且つ、使用するデータ容量を少なくすることが可能な、データ管理システムを提供することを目的とする。
【課題を解決するための手段】
【００１１】
上記の目的を達成するために、本発明のデータ管理システムは、データを格納可能な情報処理装置と通信可能に接続され、複数のバージョンの該データを管理して、該情報処理装置に最新のバージョンの該データを提供するべく該データを管理するデータ管理システムであって、前記最新のバージョン（Ｖｅｒ．Ｎ）のデータを入力可能な最新バージョンデータ入力部と、該最新バージョンよりも前のバージョンであって、当該データ管理システムにおける最新のバージョン（Ｖｅｒ．Ｎ−１）のデータを格納するデータ格納部と、前記データ格納部に格納されたデータよりも前の各バージョンから前記データ格納部に格納されたデータと同一のバージョン（Ｖｅｒ．Ｎ−１）へ更新可能な更新差分データを格納する更新差分データ格納部と、該データ格納部に格納されたデータ（Ｖｅｒ．Ｎ−１）と、該最新バージョンデータ入力部により入力された前記最新のバージョン（Ｖｅｒ．Ｎ）のデータとに基づいて、該データ格納部に格納されたデータから、前記最新のバージョン（Ｖｅｒ．Ｎ）のデータへ更新可能な更新差分データを作成する第１の更新差分作成部と、該更新差分データ格納部に格納された該更新差分データと該第１の更新差分作成部によって作成された該更新差分データとに基づいて、前記データ格納部に格納されたデータよりも前の各バージョンから前記最新のバージョン（Ｖｅｒ．Ｎ）のデータへ更新可能な更新差分データを生成する第２の更新差分作成部とをそなえることを特徴としている。
【００１２】
なお、前記更新差分データ格納部に格納された更新差分データを、前記第１の更新差分作成部によって作成された更新差分データおよび前記第２の更新差分作成部によって作成された更新差分データと置換する新旧更新差分データ置換部と、前記データ格納部に格納されたデータを、前記最新バージョンデータ入力部から入力された前記最新のバージョン（Ｖｅｒ．Ｎ）のデータと置換する新旧データ置換部とをそなえてもよい。
【００１３】
また、前記更新差分データ格納部が複数の更新差分データをそなえるとともに、前記複数の更新差分データの中から、情報処理装置に格納された該データのバージョンに応じて一の更新差分データを選択する選択部と、該選択部によって選択された該更新差分データを該情報処理装置に提供する提供部とをそなえてもよい。
さらに、該第２の更新差分作成部が、該更新差分データ格納部に格納された該更新差分データと該第１の更新差分作成部によって作成された該更新差分データとに基づいて、前記更新差分データ格納部に格納された更新差分データと前記第１の更新差分作成部によって作成された更新差分データとのいずれもが「複写」を意味する部分については、作成する更新差分データにおける当該位置に複写を、前記更新差分データ格納部に格納された更新差分データと前記第１の更新差分作成部によって作成された更新差分データとの少なくとも一方が「新規」を意味する部分については、作成する更新差分データにおける当該位置に新規を、前記更新差分データ格納部に格納された更新差分データが移動であり、且つ前記第１の更新差分作成部によって作成された更新差分データが「複写」もしくは「移動」を意味する部分と、前記更新差分データ格納部に格納された更新差分データが「複写」であり、且つ前記第１の更新差分作成部によって作成された更新差分データが「移動」を意味する部分については、作成する更新差分データにおける当該位置に移動を、それぞれ設定してもよい。
【００１４】
また、該第２の更新差分作成部が、該更新差分データ格納部に格納された該更新差分データと該第１の更新差分作成部によって作成された該更新差分データとに基づいて、前記データ格納部に格納されたデータよりも前のバージョンのデータに基づいて作成した第１ダミーデータに、前記更新差分データ格納部に格納された該更新差分データを適用することにより、前記データ格納部に格納されたデータと同一のバージョン（Ｖｅｒ．Ｎ−１）の第２ダミーデータを作成した後、当該第２ダミーデータに、前記第１の更新差分作成部によって作成された更新差分データを適用することにより、前記最新のバージョン（Ｖｅｒ．Ｎ）のデータ同一のバージョンの第３ダミーデータを作成し、当該第３ダミーデータに基づいて、前記データ格納部に格納されたデータよりも前の各バージョンから前記最新のバージョン（Ｖｅｒ．Ｎ）のデータへ更新可能な更新差分データを生成してもよい。
【００１５】
さらに、該第２の更新差分作成部が、該第２更新差分データ格納部に格納された更新差分データと、前記第１の更新差分作成部によって作成された更新差分データと、該最新バージョンデータ入力部により入力された前記最新のバージョン（Ｖｅｒ．Ｎ）のデータとに基づいて、
（１）第１のダミー空データ（Ｖｅｒ．Ｎ−１の空データ）と該最新バージョンデータ入力部により入力された前記最新のバージョン（Ｖｅｒ．Ｎ）のデータと前記第１の更新差分作成部によって作成された更新差分データ（Ｖｅｒ．Ｎ−１からＶｅｒ．Ｎ）とに基づいて、前記第１の更新差分作成部によって作成された更新差分データ（Ｖｅｒ．Ｎ−１からＶｅｒ．Ｎ）を解析して、該第１のダミー空データ中に前記最新のバージョン（Ｖｅｒ．Ｎ）のデータの一部を複写するとともに、当該ダミー空データ中における前記複写されたデータ以外の領域にダミーデータを設定して第１のダミーデータを作成し、
（２）第２のダミー空データ（Ｖｅｒ．Ｘの空データ）と該第１のダミーデータと前記更新差分データ格納部に格納された更新差分データ（Ｖｅｒ．ＸからＶｅｒ．Ｎ−１）とに基づいて、前記更新差分データ格納部に格納された更新差分データ（Ｖｅｒ．ＸからＶｅｒ．Ｎ−１）を解析して、該第２のダミー空データ中に前記第１のダミーデータの一部を複写するとともに、当該第２のダミー空データ中における前記複写されたデータ以外の領域にダミーデータを設定して第２のダミーデータを作成し、
（３）該第２のダミーデータと該最新バージョンデータ入力部により入力された前記最新のバージョン（Ｖｅｒ．Ｎ）のデータとを比較することにより、前記データ格納部に格納されたデータよりも前の各バージョンから前記最新のバージョン（Ｖｅｒ．Ｎ）のデータへ更新可能な更新差分データ（Ｖｅｒ．ＸからＶｅｒ．Ｎ）を生成してもよい。
【００１６】
なお、該更新差分データ格納部に格納された前記複数の更新差分データの中から、特定のバージョンに対応する該更新差分データを選択的に削除可能な更新差分データ削除部をそなえてもよい。
また、本発明のデータ管理システムは、データを格納可能な情報処理装置と通信可能に接続され、複数のバージョンの該データを管理して、該情報処理装置に最新のバージョンの該データを提供するべく該データを管理するデータ管理システムであって、前記最新のバージョン（Ｖｅｒ．Ｎ）のデータを入力可能な最新バージョンデータ入力部と、前記最新のバージョン（Ｖｅｒ．Ｎ）よりも前のバージョンの該データを格納するデータ格納部と、前記データ格納部に格納されたデータを、前記複数の各バージョン（Ｖｅｒ．Ｘ）のデータへ更新可能な複数の更新差分データを格納する第１の更新差分データ格納部と、前記データ格納部に格納されたデータと、該第１の更新差分データ格納部に格納された各更新差分データとに基づいて、各バージョンのデータを生成するデータ生成部と、該データ生成部によって生成された前記各バージョン（Ｖｅｒ．Ｘ）のデータと、該最新バージョンデータ入力部により入力された前記最新のバージョン（Ｖｅｒ．Ｎ）のデータとに基づいて、前記各バージョン（Ｖｅｒ．Ｘ）のデータから、前記最新のバージョン（Ｖｅｒ．Ｎ）のデータへ更新可能な更新差分データを作成する更新差分作成部と、該更新差分作成部によって作成された該更新差分データを格納する第２の更新差分データ格納部とをそなえることを特徴としている。
【００１７】
なお、該データ格納部に、前記複数のバージョンのうち最も古いバージョンの該データを格納してもよい。
また、該第２の更新差分データ格納部に前記更新差分作成部によって作成された更新差分データを格納する際に、該第２の更新差分データ格納部に格納されている、前記各バージョン（Ｖｅｒ．Ｘ）のデータから前記最新のバージョン（Ｖｅｒ．Ｎ）より前のバージョン（Ｖｅｒ．Ｎ−１）の該データへ更新可能な該更新差分データを、前記更新差分作成部（１１ｂ）によって作成された更新差分データと置換する新旧更新差分データ置換部をそなえてもよい。
【００１８】
さらに、該第２の更新差分データ格納部に格納された前記複数の更新差分データの中から、特定のバージョンに対応する該更新差分データを選択的に削除可能な更新差分データ削除部をそなえてもよい。
また、本発明のデータ管理システムは、データを格納可能な情報処理装置と通信可能に接続され、複数のバージョンの該データを管理して、該情報処理装置に最新のバージョンの該データを提供するべく該データを管理するデータ管理システムであって、前記最新のバージョン（Ｖｅｒ．Ｎ）のデータを入力可能な最新バージョンデータ入力部と、前記最新のバージョン（Ｖｅｒ．Ｎ）よりも前のバージョンの該データを格納するデータ格納部と、前記データ格納部に格納されたデータを、前記最新バージョンデータ入力部から入力される最新のバージョン（Ｖｅｒ．Ｎ）よりも前のバージョン（Ｖｅｒ．Ｎ−１）であって、当該データ管理システム内における最新のバージョン（Ｖｅｒ．Ｎ−１）のデータへ更新可能な更新差分データを格納する第１の更新差分データ格納部と、前記データ格納部（２０ｂ）に格納されたデータと、該第１の更新差分データ格納部に格納された更新差分データとに基づいて、前記最新バージョンデータ入力部から入力される最新のバージョンよりも前のバージョン（Ｖｅｒ．Ｎ−１）であって、当該データ管理システム内における最新のバージョン（Ｖｅｒ．Ｎ−１）のデータを生成するデータ生成部と、該データ生成部によって生成されたデータ（Ｖｅｒ．Ｎ−１）と、該最新バージョンデータ入力部により入力される前記最新のバージョン（Ｖｅｒ．Ｎ）のデータとに基づいて、前記最新バージョンデータ入力部から入力される最新のバージョンよりも前のバージョン（Ｖｅｒ．Ｎ−１）であって、当該データ管理システム内における最新のバージョン（Ｖｅｒ．Ｎ−１）のデータから、前記最新バージョンデータ入力部から入力される最新のバージョン（Ｖｅｒ．Ｎ）のデータへ更新可能な更新差分データを作成する第１の更新差分作成部と、当該データ管理システム内における最新のバージョン（Ｖｅｒ．Ｎ−１）のデータよりも前の各バージョン（Ｖｅｒ．Ｘ）から当該データ管理システムにおける最新のバージョン（Ｖｅｒ．Ｎ−１）のデータと同一のバージョン（Ｖｅｒ．Ｎ−１）へ更新可能な更新差分データを格納する第２の更新差分データ格納部と、該第２の更新差分データ格納部に格納された該更新差分データと該第１の更新差分作成部によって作成された該更新差分データとに基づいて、最新バージョンデータ入力部により入力される前記最新のバージョン（Ｖｅｒ．Ｎ）のデータよりも前のバージョンであって、当該データ管理システムにおける最新のバージョン（Ｖｅｒ．Ｎ−１）のデータよりも前の各バージョンから、最新バージョンデータ入力部により入力される前記最新のバージョン（Ｖｅｒ．Ｎ）のデータへ更新可能な更新差分データを生成する第２の更新差分作成部とをそなえることを特徴としている。
【００１９】
さらに、本発明のデータ管理装置は、データを格納可能な情報処理装置と通信可能に接続され、複数のバージョンの該データを管理して、該情報処理装置に最新のバージョンの該データを提供するべく該データを管理するデータ管理装置であって、前記最新のバージョン（Ｖｅｒ．Ｎ）のデータを入力可能な最新バージョンデータ入力部と、該最新バージョンよりも前のバージョンであって、当該データ管理システムにおける最新のバージョン（Ｖｅｒ．Ｎ−１）のデータを格納するデータ格納部と、前記データ格納部に格納されたデータよりも前の各バージョンから前記データ格納部に格納されたデータと同一のバージョン（Ｖｅｒ．Ｎ−１）へ更新可能な更新差分データを格納する更新差分データ格納部と、該データ格納部に格納されたデータ（Ｖｅｒ．Ｎ−１）と、該最新バージョンデータ入力部により入力された前記最新のバージョン（Ｖｅｒ．Ｎ）のデータとに基づいて、該データ格納部に格納されたデータから、前記最新のバージョン（Ｖｅｒ．Ｎ）のデータへ更新可能な更新差分データを作成する第１の更新差分作成部と、該更新差分データ格納部に格納された該更新差分データと該第１の更新差分作成部によって作成された該更新差分データとに基づいて、前記データ格納部に格納されたデータよりも前の各バージョンから前記最新のバージョン（Ｖｅｒ．Ｎ）のデータへ更新可能な更新差分データを生成する第２の更新差分作成部とをそなえることを特徴としている。
【００２０】
また、本発明のデータ管理装置は、データを格納可能な情報処理装置と通信可能に接続され、複数のバージョンの該データを管理して、該情報処理装置に最新のバージョンの該データを提供するべく該データを管理するデータ管理装置であって、前記最新のバージョン（Ｖｅｒ．Ｎ）のデータを入力可能な最新バージョンデータ入力部と、前記最新のバージョン（Ｖｅｒ．Ｎ）よりも古いバージョンの該データを格納するデータ格納部と、前記データ格納部に格納された該データを、前記複数の各バージョン（Ｖｅｒ．Ｘ）のデータへ更新可能な複数の更新差分データを格納する第１の更新差分データ格納部と、前記データ格納部に格納されたデータと、該第１の更新差分データ格納部に格納された各更新差分データとに基づいて、各バージョンのデータを生成するデータ生成部と、該データ生成部によって生成された前記各バージョン（Ｖｅｒ．Ｘ）のデータと、該最新バージョンデータ入力部により入力された前記最新のバージョン（Ｖｅｒ．Ｎ）のデータとに基づいて、前記各バージョンのデータから、前記最新のバージョン（Ｖｅｒ．Ｎ）のデータへ更新可能な更新差分データを作成する更新差分作成部と、該更新差分作成部によって作成された該更新差分データを格納する第２の更新差分データ格納部とをそなえることを特徴としている。
【００２１】
さらに、本発明のデータ管理方法は、データを格納可能な情報処理装置に最新のバージョンの該データを提供するべく該データを管理するデータ管理方法であって、前記最新のバージョン（Ｖｅｒ．Ｎ）のデータを入力する最新バージョンデータ入力ステップと、該最新バージョンよりも前のバージョンであって、当該データ供給システムにおける最新のバージョン（Ｖｅｒ．Ｎ−１）のデータを格納するデータ格納ステップと、前記データ格納ステップにおいて格納されたデータよりも前の各バージョンから前記データ格納ステップにおいて格納されたデータと同一のバージョン（Ｖｅｒ．Ｎ−１）へ更新可能な更新差分データを格納する更新差分データ格納ステップと、該データ格納ステップにおいて格納されたデータ（Ｖｅｒ．Ｎ−１）と、該最新バージョンデータ入力ステップにおいて入力された前記最新のバージョン（Ｖｅｒ．Ｎ）のデータとに基づいて、該データ格納ステップにおいて格納されたデータから、前記最新のバージョン（Ｖｅｒ．Ｎ）のデータへ更新可能な更新差分データを作成する第１の更新差分作成ステップと、該更新差分データ格納ステップにおいて格納された該更新差分データと該第１の更新差分作成ステップにおいて作成された該更新差分データとに基づいて、前記データ格納ステップにおいて格納されたデータよりも前の各バージョンから前記最新のバージョン（Ｖｅｒ．Ｎ）のデータへ更新可能な更新差分データを生成する第２の更新差分生成ステップとをそなえることを特徴としている。
【００２２】
また、本発明のデータ管理方法は、データを格納可能な情報処理装置に最新のバージョンの該データを提供するべく該データを管理するデータ管理方法であって、前記最新のバージョン（Ｖｅｒ．Ｎ）のデータを入力可能な最新バージョンデータ入力ステップと、前記最新のバージョン（Ｖｅｒ．Ｎ）よりも古いバージョンの該データを格納するデータ格納ステップと、前記データ格納ステップにおいて格納された該データを、前記複数の各バージョンのデータへ更新可能な複数の更新差分データを格納する第１の更新差分データ格納ステップと、前記データ格納ステップにおいて格納されたデータと、該第１の更新差分データ格納ステップにおいて格納された各更新差分データとに基づいて、各バージョンのデータを生成するデータ生成ステップと、該データ生成ステップにおいて生成された前記各バージョンのデータと、該最新バージョンデータ入力ステップにおいて入力された前記最新のバージョン（Ｖｅｒ．Ｎ）のデータとに基づいて、前記各バージョンのデータから、前記最新のバージョン（Ｖｅｒ．Ｎ）のデータへ更新可能な更新差分データを作成する更新差分作成ステップと、該更新差分作成ステップにおいて作成された該更新差分データを格納する第２の更新差分データ格納ステップとをそなえることを特徴としている。
【００２３】
さらに、本発明のデータ供給システムは、更新可能なデータを格納可能な情報処理装置と通信可能に接続され、複数のバージョンの該データを管理して、該情報処理装置に最新のバージョンの該データを提供するデータ供給システムであって、前記最新のバージョンのデータを格納する最新バージョンデータ格納部と、前記最新のバージョン（Ｖｅｒ．Ｎ）よりも前の各バージョンから前記最新バージョンのデータへ更新可能な複数の更新差分データを格納する更新差分データ格納部と、該情報処理装置に格納された該データのバージョンに応じて、該更新差分データ格納部に格納された前記複数の更新差分データの中から、一の更新差分データを選択する選択部と、該選択部によって選択された該更新差分データを該情報処理装置に提供する提供部とをそなえることを特徴としている。
【００２４】
また、本発明のデータ供給システムは、データを格納可能な情報処理装置と通信可能に接続され、複数のバージョンの該データを管理して、該情報処理装置に最新のバージョンの該データを提供するデータ供給システムであって、前記最新のバージョンよりも古いバージョンの該データを格納するデータ格納部と、前記データ格納部に格納されたデータを各バージョンのデータに更新可能な複数の更新差分データを格納する第１の更新差分データ格納部と、前記最新のバージョンよりも前の各バージョンから前記最新バージョンのデータへ更新可能な複数の更新差分データを格納する第２の更新差分データ格納部と、該情報処理装置に格納された該データのバージョンに応じて、該第２の更新差分データ格納部に格納された前記複数の更新差分データの中から、一の更新差分データを選択する選択部と、該選択部によって選択された該更新差分データを該情報処理装置に提供する提供部とをそなえることを特徴としている。
【００２５】
さらに、本発明のデータ管理プログラムは、データを格納可能な情報処理装置に最新のバージョンの該データを提供するべく該データを管理するデータ管理機能をコンピュータに実行させるためのデータ管理プログラムであって、前記最新のバージョン（Ｖｅｒ．Ｎ）のデータを入力する最新バージョンデータ入力ステップと、該最新バージョンよりも前のバージョンであって、前記最新バージョンデータ入力ステップにおいて入力されるデータよりも前のバージョンのうちで最も新しいバージョン（Ｖｅｒ．Ｎ−１）のデータを格納するデータ格納ステップと、前記データ格納ステップにおいて格納されたデータよりも前の各バージョンから前記データ格納部に格納されたデータと同一のバージョン（Ｖｅｒ．Ｎ−１）へ更新可能な更新差分データを格納する更新差分データ格納ステップと、該データ格納ステップにおいて格納されたデータ（Ｖｅｒ．Ｎ−１）と、該最新バージョンデータ入力ステップにおいて入力された前記最新のバージョン（Ｖｅｒ．Ｎ）のデータとに基づいて、該データ格納ステップにおいて格納されたデータから、前記最新のバージョン（Ｖｅｒ．Ｎ）のデータへ更新可能な更新差分データを作成する第１の更新差分作成ステップと、該更新差分データ格納ステップにおいて格納された該更新差分データと該第１の更新差分作成ステップにおいて作成された該更新差分データとに基づいて、前記データ格納ステップにおいて格納されたデータよりも前の各バージョンから前記最新のバージョン（Ｖｅｒ．Ｎ）のデータへ更新可能な更新差分データを生成する第２の更新差分生成ステップとを、該コンピュータに実行させることを特徴としている。
【００２６】
また、本発明のデータ管理プログラムは、データを格納可能な情報処理装置に最新のバージョンの該データを提供するべく該データを管理するデータ管理機能をコンピュータに実行させるためのデータ管理プログラムであって、前記最新のバージョン（Ｖｅｒ．Ｎ）のデータを入力可能な最新バージョンデータ入力ステップと、前記最新のバージョン（Ｖｅｒ．Ｎ）よりも古いバージョンの該データを格納するデータ格納ステップと、前記データ格納ステップにおいて格納された該データを、前記複数の各バージョンのデータへ更新可能な複数の更新差分データを格納する第１の更新差分データ格納ステップと、前記データ格納ステップにおいて格納されたデータと、該第１の更新差分データ格納ステップにおいて格納された各更新差分データとに基づいて、各バージョンのデータを生成するデータ生成ステップと、該データ生成ステップにおいて生成された前記各バージョンのデータと、該最新バージョンデータ入力ステップにおいて入力された前記最新のバージョン（Ｖｅｒ．Ｎ）のデータとに基づいて、前記各バージョンのデータから、前記最新のバージョン（Ｖｅｒ．Ｎ）のデータへ更新可能な更新差分データを作成する更新差分作成ステップと、該更新差分作成ステップにおいて作成された該更新差分データを格納する第２の更新差分データ格納ステップとを、該コンピュータに実行させることを特徴としている。
【００２７】
なお、本発明のコンピュータ読取可能な記録媒体は、上述したデータ管理プログラムを記録したものである。
【発明の効果】
【００２８】
このように、本発明によれば、以下の少なくともいずれか１つの効果ないし利点がある。
（１）一度の更新処理で各バージョンから最新のバージョンにデータを更新することができ、データの更新を短時間で行なうことができる。
（２）データや更新差分データの格納に要する容量を少なく構成することができる。
【００２９】
（３）最新のデータを容易に登録することができ、システム管理者の工数を低減することができる。
（４）最新のバージョンのデータが新たに作成された場合においても、常に最新のデータに更新可能な更新差分データを登録することができ、システムの信頼性を向上させることができる。
【００３０】
（５）最新のバージョンへの更新差分データを短時間で作成することができる。
（６）所定のバージョンに対する更新差分データを容易且つ高速に取得することができ利便性が高い。
（７）更新差分データの容量を小さくすることができる。
【発明を実施するための最良の形態】
【００３１】
以下、図面を参照して本発明の実施の形態を説明する。
（Ａ）第１実施形態の説明
図１は本発明の第１実施形態としてのデータ管理システム（データ供給システム）の構成を模式的に示すものである。
本第１実施形態のデータ管理システム１ａは、データやプログラム（以下、単にデータという）を格納可能な情報処理装置（更新対象機器）３と通信可能に接続され、複数のバージョンのデータを管理して、情報処理装置３に最新のバージョンのデータを提供するべくこれらのデータを管理するものである。
【００３２】
なお、本データ管理システム１ａにおいて管理するデータとしては、情報処理装置３において実行される種々のプログラム（ソフトウェア）やプログラムによって用いられる種々のデータ等であり、以下、これらのプログラムやデータ等を含む概念を総称して単にデータと称する。
また、以下、本実施形態においては、データ管理システム１ａに登録されているデータの複数のバージョン（既存のバージョン）のうち最も新しいバージョンがＶｅｒ．Ｎ−１であり、新たに作成され、これから本データ管理システム１ａに登録される最新のバージョンをＶｅｒ．Ｎとして表わす。
【００３３】
本発明の第１実施形態としてのデータ管理システム１ａは、図１に示すように、情報処理装置３に通信可能に接続されたデータ管理サーバ（データ管理装置）２ａをそなえて構成されている。このデータ管理サーバ２ａは、例えば、サーバ機能をそなえたコンピュータによって実現され、図１に示すように、最新バージョンデータ入力部１０，第１更新差分作成部（第１の更新差分作成部）１１ａ，第２更新差分作成部（第２の更新差分作成部）１２，選択部１３，バージョン取得部１４，更新差分データ送出部（提供部）１５，新旧データ置換部１６，不要更新差分除去部（更新差分データ削除部）１７，更新差分データ格納部１８，新旧更新差分データ置換部１９，データ格納部（最新バージョンデータ格納部）２０ａおよび更新差分データ格納情報テーブル２１ａをそなえて構成されている。
【００３４】
管理サーバ２ａと情報処理装置３とは、例えば、ＬＡＮ（Local Area Network）やＵＳＢ（Universal Serial Bus），無線ＬＡＮ，ブルートゥース（Bluetooth）（登録商標）等の有線，無線を問わず種々の通信手法で接続されている。
最新バージョンデータ入力部１０は、最新のバージョン（Ｖｅｒ．Ｎ）のデータを取得（入力）するためのものであり、例えば、コンピュータシステムにおけるキーボード，マウスやフレキシブルディスクドライブ等の入力機能をそなえる種々のデバイスの他、アプリケーションにおけるＡＰＩ（Application Program Interface）等によって実現される。
【００３５】
データ格納部（最新バージョンデータ格納部）２０ａは、最新バージョンデータ入力部１０によって入力される最新バージョン（Ｖｅｒ．Ｎ）よりも前のバージョンであって、かかる最新バージョン（Ｖｅｒ．Ｎ）のデータが作成されるまでは最新のバージョン（Ｖｅｒ．Ｎ−１）であったデータを格納するものである（Ｎは整数）。すなわち、データ管理サーバ２ａ内における最新のバージョンのデータ全体を格納するものである。このデータ格納部２０ａは、例えば、コンピュータシステムにおけるハードディスクやメモリ等の記憶装置によって実現される。
【００３６】
更新差分データ格納部１８は、データ格納部２０ａに格納されたデータよりも前の各バージョン（例えば、Ｖｅｒ．１〜Ｖｅｒ．Ｎ−２）から、データ格納部２０ａに格納されたデータと同一のバージョン（Ｖｅｒ．Ｎ−１）へ更新可能な更新差分データを格納するものである。
なお、以下、データの任意のバージョンを変数Ｘ（ただし、Ｘは１≦Ｘ≦Ｎ―２）を用いて、Ｖｅｒ．Ｘの如く示す場合もある。
【００３７】
この更新差分データ格納部１８もデータ格納部２０ａと同様に、例えば、コンピュータシステムにおけるハードディスクやメモリ等の記憶装置によって実現される。
また、以下、本実施形態においては、更新差分データは、「新規」，「複写」および「移動（参照ポインタの移動）」の３種類の差分コードから構成されており、これらの差分コードは、それぞれ「複写長」，「新規データ長」および「移動量」という属性をそなえている。
【００３８】
更新差分データ格納情報テーブル２１ａは、更新差分データ格納部１８に格納されている各更新差分データの格納位置を管理するテーブルである。
図２は本発明の第１実施形態としてのデータ管理システム１ａにおける更新差分データ格納情報テーブル２１ａの例を示す図である。この図２に示すように、更新差分データ格納情報テーブル２１ａは、更新前のバージョンとそのバージョンに対応する、すなわち、そのバージョンのデータを更新するための更新差分データの格納位置（格納アドレス）とを関連付けて登録することによって構成されており、後述する選択部１３が、この更新差分データ格納情報テーブル２１ａを参照することにより、特定バージョンに対応する更新差分データの格納場所を高速に参照・取得することができるようになっている。
【００３９】
また、この更新差分データ格納情報テーブル２１ａは、新旧更新差分データ置換部１９（後述）が、更新差分データ格納部１８に格納されている更新差分データの置換を行なう際に、併せて更新するようになっている。
さらに、不要更新差分除去部１７（後述）が、特定の更新差分データを更新差分データ格納部１８から削除した場合には、不要更新差分除去部１７は、更新差分データ格納情報テーブル２１ａにおけるその更新差分データの格納位置も削除するようになっている
新旧更新差分データ置換部１９は、更新差分データ格納部１８に格納された更新差分データを、第１更新差分作成部１１ａによって作成された更新差分データおよび第２更新差分作成部１２によって作成された更新差分データと置換するものである。この新旧更新差分データ置換部１９は、第１更新差分作成部１１ａが更新差分データを作成する度に、その更新差分データを新たに追加し、又、第２更新差分作成部１２が更新差分データ作成する度に、更新差分データ格納部１８に格納されているそのバージョン（更新前のバージョン）が同一の更新差分データを、第２更新差分作成部１２によって作成された新しい更新差分データと置換するようになっている。
【００４０】
また、新旧更新差分データ置換部１９は、第１更新差分作成部１１ａによって作成された更新差分データを更新差分データ格納部１８に新たに追加する場合には、その更新差分データの格納位置（格納アドレス）を更新差分データ格納情報テーブル２１ａに記録するようになっている。又、新旧更新差分データ置換部１９は、第２更新差分作成部１２によって作成された更新差分データを更新差分データ格納部１８格納されている更新差分データと置換して登録する度に、更新差分データ格納部１８におけるその格納位置（格納アドレス）を、更新差分データ格納情報テーブル２１ａにおけるそのバージョン（更新前のバージョン）に対応する項に登録（上書き，置換）するようになっている。
【００４１】
本データ管理システム１ａにおいては、この更新差分データ格納部１８に格納された複数の更新差分データの中から、情報処理装置３における更新対象のデータのバージョンに対応する更新差分データを選択・取得して、情報処理装置３において、その更新対象のデータにこの更新差分データを適用することにより、そのデータを最新のバージョンに更新することができるのである。
【００４２】
なお、この更新差分データ格納部１８も、例えば、コンピュータシステムにおけるハードディスクやメモリ等の記憶装置によって実現される。
新旧データ置換部１６は、データ格納部に格納されたデータ（Ｖｅｒ．Ｎ−１）を、最新バージョンデータ入力部１０から入力された最新バージョン（Ｖｅｒ．Ｎ）のデータと置換するものである。
【００４３】
第１更新差分作成部１１ａは、データ格納部２０ａに格納されたデータ（Ｖｅｒ．Ｎ−１）と、最新バージョンデータ入力部１０により入力された最新のバージョン（Ｖｅｒ．Ｎ）のデータとに基づいて、データ格納部２０ａに格納されたデータから、前記最新のバージョン（Ｖｅｒ．Ｎ）のデータへ更新可能な更新差分データを作成するものであり、例えば、新旧ソフトウェアの比較ツール（プログラム）等によって実現することができる。
【００４４】
ここで、本発明の第１実施形態としてのデータ管理システム１ａにおける第１更新差分作成部１１ａによる更新差分データの作成手法を、図３に示すフローチャート（ステップＡ１０〜Ａ１３０）に従って説明する。
データ格納部２０に格納されたデータ（Ｖｅｒ．Ｎ−１）から最新バージョンデータ入力部１０により入力された最新のバージョン（Ｖｅｒ．Ｎ）へバージョンアップ（更新）するための更新差分データ（Ｖｅｒ．Ｎ−１からＶｅｒ．Ｎ）を作成するためには（ステップＡ１０）、これらのＶｅｒ．Ｎ−１のデータとＶｅｒ．Ｎのデータとを、その先頭から１命令長単位で順番に比較する（ステップＡ２０）。
【００４５】
最初に、比較位置における両者のデータが等しいか否かを調べ（ステップＡ３０）、データが等しい場合には（ステップＡ３０のＹＥＳルート参照）、データが一致し続ける位置の長さ（複写長）を取得して、更新差分データ（Ｖｅｒ．Ｎ−１からＶｅｒ．Ｎ）に、「複写」として複写を示す差分コードとその「複写長」とを記述する（ステップＡ８０）。
【００４６】
また、データが等しくない場合には（ステップＡ３０のＮＯルート参照）、次に、Ｖｅｒ．Ｎ−１のデータとＶｅｒ．Ｎとの両データにおいてデータが連続して一致する部分を検索して（ステップＡ４０）、その検索の結果、Ｖｅｒ．Ｎ−１のデータに連続して一致する部分を発見できたか否かを確認する（ステップＡ５０）。Ｎ−１のデータに連続して一致する部分を発見できた場合には（ステップＡ５０のＹＥＳルート参照）、更新差分データ（Ｖｅｒ．Ｎ−１からＶｅｒ．Ｎ）に、「複写」として、その発見位置と比較位置との差を「移動量」として、移動を示す差分コードとともに記述する（ステップＡ６０）。
【００４７】
Ｎ−１のデータに連続して一致する部分を発見できなかった場合には（ステップＡ５０のＮＯルート参照）、更新差分データ（Ｖｅｒ．Ｎ−１からＶｅｒ．Ｎ）に、比較位置の値は「新規」データとして、新規を示す差分コードを「新規データ長」とともに記述する（ステップＡ７０）。
そして、第１更新差分作成部１１ａは、Ｖｅｒ．Ｎ−１のデータおよびＶｅｒ．Ｎの各データの最後まで比較を行なったか否かを確認して（ステップＡ９０）、最後まで比較を行なっていない場合には（ステップＡ９０のＮＯルート参照）、比較位置を１命令長移動させた後（ステップＡ１００）、ステップＡ３０に戻る。又、最後まで比較を行なった場合には（ステップＡ９０のＹＥＳルート参照）、更新差分データ（Ｖｅｒ．Ｎ−１からＶｅｒ．Ｎ）の生成が完了する（ステップＡ１１０）。
【００４８】
また、新旧データ置換部１６は、データ格納部２０ａからＶｅｒ．Ｎ−１のデータ削除するとともに（ステップＡ１２０）、データ格納部２０ａにＶｅｒ．Ｎのデータを格納（保存）することにより（ステップＡ１３０）、データ格納部２０ａに格納されたデータを、最新バージョンデータ入力部１０から入力された最新のバージョン（Ｖｅｒ．Ｎ）のデータと置換するのである。
【００４９】
第２更新差分作成部１２は、更新差分データ格納部１８に格納されたＶｅｒ．ＸからＶｅｒ．Ｎ−１へのデータの更新を行なう更新差分データ（Ｖｅｒ．ＸからＶｅｒ．Ｎ−１）と第１更新差分作成部１１ａによって作成された更新差分データ（Ｖｅｒ．Ｎ−１からＶｅｒ．Ｎ）とに基づいて、データ格納部２０ａに格納されたデータ（Ｖｅｒ．Ｎ−１）よりも前の各バージョン（Ｖｅｒ．Ｘ）から最新のバージョン（Ｖｅｒ．Ｎ）のデータへ更新可能な更新差分データ（Ｖｅｒ．ＸからＶｅｒ．Ｎ）を生成するものである。
【００５０】
本発明の第１実施形態としてのデータ管理システム１ａにおける第２更新差分作成部１２による更新差分データの作成手法を、図４Ａおよび図４Ｂに示すフローチャート（ステップＢ１０〜Ｂ１９０）に従って説明する。なお、図４Ａに示すフローチャート（ステップＢ１０〜Ｂ１２０）と図４Ｂに示すフローチャート（ステップＢ１３０〜Ｂ１９０）とに、ステップＢ１０〜Ｂ１９０からなる一のフローチャートを便宜上分けて示している。
【００５１】
先ず、第２更新差分作成部１２は、変数ＸにＮ−２を設定して（ステップＢ１０）、更新差分データ（Ｖｅｒ．ＸからＶｅｒ．Ｎ）の作成を開始する（ステップＢ２０）。
第２更新差分作成部１２は、更新差分データ格納部１８に格納された各更新差分データ（Ｖｅｒ．ＸからＶｅｒ．Ｎ−１）と第１更新差分作成部１１ａによって作成された更新差分データ（Ｖｅｒ．Ｎ−１からＶｅｒ．Ｎ）とをそれぞれ取得して、これらの更新差分データの先頭から順番に比較する（ステップＢ３０）。
【００５２】
最初に、比較位置における双方の差分コードが「複写」であるか否かを調べ（ステップＢ４０）、双方ともが複写である場合には（ステップＢ４０のＹＥＳルート参照）、双方の複写長の差し引き分を計算した後、「複写」として複写を示す差分コードと算出した複写長とを更新差分データ（Ｖｅｒ．ＸからＶｅｒ．Ｎ）に記述する（ステップＢ１１０）。
【００５３】
そして、第２更新差分作成部１２は、更新差分データどうしの比較を最後まで行なったか否かを確認して（ステップＢ１３０）、最後まで比較を行なっていない場合には（ステップＢ１３０のＮＯルート参照）、比較位置を移動させた後（ステップＢ１２０）、ステップＢ４０に戻る。
また、双方ともが「複写」ではない場合、すなわち、比較位置において、各更新差分データ（Ｖｅｒ．ＸからＶｅｒ．Ｎ−１）と更新差分データ（Ｖｅｒ．Ｎ−１からＶｅｒ．Ｎ）との一方もしくは双方ともが「複写」以外の場合には（ステップＢ４０のＮＯルート参照）、次に、一方が「新規」であるか否かを確認する（ステップＢ５０）。
【００５４】
比較位置において、各更新差分データ（Ｖｅｒ．ＸからＶｅｒ．Ｎ−１）と更新差分データ（Ｖｅｒ．Ｎ−１からＶｅｒ．Ｎ）とのうち、双方もしくは一方が「新規」である場合には（ステップＢ５０のＹＥＳルート参照）、更新差分データ（Ｖｅｒ．Ｎ−１からＶｅｒ．Ｎ）における比較位置の値を「新規」データとして更新差分データ（Ｖｅｒ．ＸからＶｅｒ．Ｎ）に記述して（ステップＢ１００）、ステップＢ１３０に移行する。
【００５５】
また、各更新差分データ（Ｖｅｒ．ＸからＶｅｒ．Ｎ−１）と更新差分データ（Ｖｅｒ．Ｎ−１からＶｅｒ．Ｎ）とのうち、双方もしくは一方が「新規」ではない場合には（ステップＢ５０のＮＯルート参照）、第２更新差分作成部１２は、次に、更新差分データ（Ｖｅｒ．ＸからＶｅｒ．Ｎ−１）における比較位置のデータが「移動（参照ポインタの移動）」であるか否かを確認する（ステップＢ６０）。
【００５６】
更新差分データ（Ｖｅｒ．ＸからＶｅｒ．Ｎ−１）における比較位置のデータが「移動」である場合には（ステップＢ６０のＹＥＳルート参照）、ステップＢ６０における移動量を求めるとともに、複写を示す差分コードと算出した移動量とを更新差分データ（Ｖｅｒ．ＸからＶｅｒ．Ｎ）に記述して（ステップＢ９０）、ステップＢ１３０に移行する。又、この際、「移動」が連続する場合には、差し引きの移動量を計算する。
【００５７】
また、更新差分データ（Ｖｅｒ．ＸからＶｅｒ．Ｎ−１）における比較位置のデータが「移動」ではない場合には（ステップＢ６０のＮＯルート参照）、第２更新差分作成部１２は、次に、更新差分データ（Ｖｅｒ．Ｎ−１からＶｅｒ．Ｎ）における比較位置のデータが「移動」であるか否かを確認する（ステップＢ７０）。
更新差分データ（Ｖｅｒ．Ｎ−１からＶｅｒ．Ｎ）における比較位置のデータが「移動」である場合には（ステップＢ７０のＹＥＳルート参照）、更新差分データ（Ｖｅｒ．ＸからＶｅｒ．Ｎ−１）において、ステップＢ７０での移動先として指定されたＶｅｒ．Ｎ−１中のデータを展開するための差分データの位置へ比較位置を１命令長移動させて（ステップＢ８０）、ステップＢ１３０に移行する。
【００５８】
また、更新差分データどうしの比較を最後まで行なった場合には（ステップＢ１３０のＹＥＳルート参照）、更新差分データ（Ｖｅｒ．ＸからＶｅｒ．Ｎ）の生成が完了する（ステップＢ１４０）。
また、新旧更新差分データ置換部１９は、更新差分データ格納部１８から更新差分データ（Ｖｅｒ．ＸからＶｅｒ．Ｎ−１）を削除するとともに（ステップＢ１５０）、更新差分データ格納部１８に更新差分データ（Ｖｅｒ．ＸからＶｅｒ．Ｎ）を格納（保存）し（ステップＢ１６０）、更に、更新差分データ格納情報テーブル２１ａにおけるＶｅｒ．Ｘに相当する項に、更新差分データ（Ｖｅｒ．ＸからＶｅｒ．Ｎ）の格納位置を記述する（ステップＢ１７０）。
【００５９】
第２更新差分作成部１２は、Ｘの値をデクリメント（Ｘ＝Ｘ−１）した後（ステップＢ１８０）、Ｘ＝０であるか否かを確認して（ステップＢ１９０）、Ｘ＝０の場合には（ステップＢ１９０のＹＥＳルート参照）、処理を終了する。又、Ｘ＝０ではない場合には（ステップＢ１９０のＮＯルート参照）、ステップＢ２０に戻る。
バージョン取得部１４は、データの更新対象機器（情報処理装置）３における更新対象のデータの現在のバージョンを取得するものである。このバージョン取得部１４は、例えば、通信手段を介して情報処理装置３にデータのバージョンを確認するコマンドを送出して、その情報処理装置３からの回答に基づいてそのバージョンを判断・取得してもよく、又、例えば図示しないバージョン管理テーブルをそなえ、このバージョン管理テーブルに情報処理装置３とそのデータのバージョンとを関連付けて登録・管理することにより、情報処理装置のデータのバージョンを取得してもよい。
【００６０】
選択部１３は、更新差分データ格納部１８に格納された複数の更新差分データの中から、情報処理装置３に格納されたデータのバージョンに応じて一の更新差分データを選択するものである。この選択部１３は、バージョン取得部１４によって取得された情報処理装置３のデータのバージョンに基づいて、更新差分データ格納情報テーブル２１ａを参照して、そのバージョンを最新のバージョンに更新するための更新差分データの格納位置を取得し、この格納位置から更新差分データを取得するようになっている。
【００６１】
更新差分データ送出部（提供部）１５は、選択部１３によって選択された更新差分データを更新対象機器（情報処理装置）３に提供するものであって、例えば、ＬＡＮや無線ＬＡＮ，ＵＳＢ，ブルートゥース（Bluetooth）等の種々の通信手段（プロトコル）を介して情報処理装置３にデータを送信（送出）するデータ転送機能によって実現することができる。
【００６２】
不要更新差分除去部（更新差分データ削除部）１７は、更新差分データ格納部１８に格納された複数の更新差分データの中から、特定のバージョンに対応する更新差分データを選択的に削除するものである。例えば、情報処理装置３において格納（内蔵）されている可能性がないバージョンのデータがある場合には、不要更新差分除去部１７は、更新差分データ格納部１８に格納された更新差分データのうち、そのバージョンに対応する更新差分データを、例えばシステム管理者による指示等に従って、選択的に削除するようになっている。
【００６３】
また、不要更新差分除去部１７は、特定の更新差分データを更新差分データ格納部１８から削除した場合には、更新差分データ格納情報テーブル２１ａにおけるその更新差分データの格納位置も削除するようになっている。
上述の如く構成された本発明の第１実施形態としてのデータ管理システム１ａにおいて、最新のバージョン（Ｖｅｒ．Ｎ）のデータが作成された場合にその最新バージョンのデータについての更新差分データを登録する手法を、図５を用いて説明する。
【００６４】
最新バージョン（Ｖｅｒ．Ｎ）のデータが作成された場合には、最新バージョンデータ入力部１０によってそのデータが入力され、第１更新差分作成部１１ａが、データ格納部２０ａに格納されている、それまでデータ管理サーバ２ａ内において最新であったバージョン（Ｖｅｒ．Ｎ−１）から新たに作成されたバージョン（Ｖｅｒ．Ｎ）に更新するための更新差分データ（Ｖｅｒ．Ｎ−１からＶｅｒ．Ｎ）を作成する（図５のステップＣ１０参照）。
【００６５】
なお、データ格納部２０ａに格納されているデータ（Ｖｅｒ．Ｎ−１）は、新旧データ管理サーバ２ａ置換部１６によって、最新バージョンデータ入力部１０から入力された最新のデータ（Ｖｅｒ．Ｎ）と置換され、又、第１更新差分作成部１１ａによって作成された更新差分データ（Ｖｅｒ．Ｎ−１からＶｅｒ．Ｎ）は、新旧更新差分データ置換部１９によって更新差分データ格納部１８に格納される。又、これらの処理に伴って、更新差分データ格納情報テーブル２１ａの更新処理も併せて行なわれる。
【００６６】
次に、第２更新差分作成部１２が、第１更新差分作成部１１ａによって作成された更新差分データ（Ｖｅｒ．Ｎ−１からＶｅｒ．Ｎ）と、更新差分データ格納部１８に格納されている各更新差分データとに基づいて、各バージョンから最新のバージョンのデータに更新するための更新差分データ（Ｖｅｒ．ＸからＶｅｒ．Ｎ）を作成する（図５のステップＣ２０参照）。
【００６７】
新旧更新差分データ置換部１９によって、更新差分データ格納部１８に登録されているＶｅｒ．Ｎ−１までの各更新差分データ（Ｖｅｒ．ＸからＶｅｒ．Ｎ−１）は、第２更新差分作成部１２によって作成された各更新差分データ（Ｖｅｒ．ＸからＶｅｒ．Ｎ）と置換される。又、この際、更新差分データ格納情報テーブル２１ａの更新処理も併せて行なわれるのである。
【００６８】
次に、本発明の第１実施形態としてのデータ管理システム１ａにおける情報処理装置３のデータの更新手法を、図６に示すフローチャート（ステップＤ１０〜Ｄ５０）に従って説明する。
データ管理サーバ２ａ（バージョン取得部１４）は、更新対象機器の情報処理装置３が通信可能に接続されているか否かを確認して（ステップＤ１０）、情報処理装置３が接続されていない場合には（ステップＤ１０のＮＯルート参照）、情報処理装置の接続待ちを行なう。
【００６９】
情報処理装置３が接続された場合には（ステップＤ１０のＹＥＳルート参照）、バージョン取得部１４がその情報処理装置３のデータのバージョンを取得する（ステップＤ２０）。選択部１３は、バージョン取得部１４によって取得された情報処理装置３のデータのバージョンに対応する更新差分データの格納位置を、更新差分データ格納情報テーブル２１ａを参照して取得する（ステップＤ３０）。
【００７０】
そして、選択部１３は、その取得した格納位置に基づいて、更新差分データ格納部１８におけるその更新差分データの格納位置から、目的の更新差分データを取得する（ステップＤ４０）。
更新差分データ送出部１５は、選択部１３によって取得された更新差分データを、情報処理装置３に送出する（ステップＤ５０）。情報処理装置３においては、その更新差分データをデータに適用することにより、旧バージョンのデータを最新のバージョンのデータに更新する。
【００７１】
このように、本発明の第１実施形態としてのデータ管理システム１ａによれば、更新差分データ格納部１８に、最新のバージョンよりも前の各バージョンから最新バージョンのデータへ更新可能な複数の更新差分データを格納し、選択部１３が、情報処理装置３に格納されたデータのバージョンに応じて、更新差分データ格納部１８に格納された前記複数の更新差分データの中から、一の更新差分データを選択し、更新差分データ送出部１５が、この選択された更新差分データを情報処理装置３に提供するので、情報処理装置３においてどのバージョンのデータを用いている場合においても、データ管理サーバ２ａから取得した更新差分データにより、１度の更新差分データの受信およびその更新差分データを用いた更新処理で、現在のバージョンから最新のバージョンに更新（バージョンアップ）を行なうことができ、データの更新を短時間で行なうことができるので利便性が高い。
【００７２】
データ管理サーバ２ａにおいて、データ格納部２０ａにデータ管理サーバ２ａ内における最新のバージョンのデータ（全体）を１つだけ格納するとともに、更新差分データ格納部１８に、データ格納部２０ａに格納されたデータよりも前の各バージョンからデータ格納部２０ａに格納されたデータと同一のバージョンへ更新可能な更新差分データを格納しているので、これらのデータや更新差分データを格納するために要する記憶領域の容量を少なく構成することができ、システムの製造コストを低減することができる。
【００７３】
また、最新のバージョンのデータを新たに作成した場合においても、この最新のバージョンのデータを最新バージョンデータ入力部１０から入力するだけで、新旧データ置換部１６や第１更新差分データ作成部１１ａ，第２更新差分作成部１２，新旧更新差分データ置換部１９が、データ格納部２０ａへのデータの登録や必要な更新差分データの作成，置換等を自動的に行なうようになっているので、システム管理者の工数を低減することができ利便性が高い。
【００７４】
さらに、最新のバージョンのデータが新たに登録された際に、更新差分データ格納部１８に格納されている旧バージョンへの更新差分データを、新旧更新差分データ置換部１９が、第１更新差分作成部１１ａや第２更新差分作成部１２によって作成された更新差分データと置換するので、更新差分データ格納部１８には確実に最新のバージョンのデータに更新可能な更新差分データが登録され、システムの信頼性を向上させることができる。
【００７５】
同様に、最新のバージョンのデータが新たに登録された際に、データ格納部２０ａに格納されている旧バージョンのデータを、新旧データ置換部１６が、最新バージョンデータ入力部１０から入力された最新バージョンのデータと置換するので、データ格納部２０ａには確実に最新のバージョンのデータが登録され、システムの信頼性を向上させることができる。
【００７６】
また、例えば、情報処理装置３において格納（内蔵）されている可能性がないバージョンのデータがある場合等に、不要更新差分除去部（更新差分データ削除部）１７が、更新差分データ格納部１８に格納された複数の更新差分データの中から、そのバージョンに対応する更新差分データを選択的に削除するので、更新差分データ格納部１８の容量を節約することができ経済的である。
【００７７】
さらに、第２更新差分作成部１２が、第１更新差分作成部１１ａによって作成された更新差分データと、更新差分データ格納部１８に格納された更新差分データとに基づいて、データ格納部２０ａに格納されたデータよりも前の各バージョンから最新のバージョンのデータへ更新可能な更新差分データを生成するので、最新のバージョンへの更新差分データを短時間で作成することができ利便性が高い。又、データ格納領域１８を短時間で最新の状態にすることもできる。
【００７８】
また、更新差分データ格納情報テーブル２１ａが、更新差分データ格納部１８に格納されている各更新差分データの格納位置を管理し、選択部１３が、この更新差分データ格納情報テーブル２１ａを参照して、特定のバージョンに対応する更新差分データの格納位置を取得するので、必要な更新差分データを容易且つ高速に取得することができ利便性が高い。
【００７９】
（Ｂ）第１実施形態の第１変形例の説明
上述した第１実施形態としてのデータ管理システム１ａにおいては、第２更新差分作成部１２が、図４のフローチャートに示した手法によって、更新差分データ格納部１８に格納されたＶｅｒ．ＸからＶｅｒ．Ｎ−１へのデータの更新を行なう更新差分データ（Ｖｅｒ．ＸからＶｅｒ．Ｎ−１）と第１更新差分作成部１１ａによって作成された更新差分データ（Ｖｅｒ．Ｎ−１からＶｅｒ．Ｎ）とに基づいて、データ格納部２０ａに格納されたデータ（Ｖｅｒ．Ｎ−１）よりも前の各バージョン（Ｖｅｒ．Ｘ）から最新のバージョン（Ｖｅｒ．Ｎ）のデータへ更新可能な更新差分データ（Ｖｅｒ．ＸからＶｅｒ．Ｎ）を生成しているが、かかる更新差分データ（Ｖｅｒ．ＸからＶｅｒ．Ｎ）の作成手法は、上述した図４のフローチャートに記載された手法に限定されるものではなく、本発明の趣旨を逸脱しない範囲で種々変更して実施することができる。
【００８０】
本発明の第１実施形態のデータ管理システム１ａの第１変形例としてのデータ管理システム１ａ′（図１参照）は、第１実施形態のデータ管理システム１ａのデータ管理サーバ２ａに代えてデータ管理サーバ２ａ′をそなえて構成されている。そして、このデータ管理サーバ２ａ′は、第１実施形態の第２更新差分作成部１２に代えて、第２更新差分作成部１２′をそなえて構成されている他は、第１実施形態のデータ管理サーバ２ａと同様もしくは略同様の構成をそなえている。又、このデータ管理サーバ２ａ′も、例えば、サーバ機能をそなえたコンピュータシステムによって実現される。
【００８１】
本第１変形例における第２更新差分作成部１２′も、第１実施形態の第２更新差分作成部１２と同様に、更新差分データ格納部１８に格納されたＶｅｒ．ＸからＶｅｒ．Ｎ−１へのデータの更新を行なう更新差分データ（Ｖｅｒ．ＸからＶｅｒ．Ｎ−１）と第１更新差分作成部１１ａによって作成された更新差分データ（Ｖｅｒ．Ｎ−１からＶｅｒ．Ｎ）とに基づいて、データ格納部２０ａに格納されたデータ（Ｖｅｒ．Ｎ−１）よりも前の各バージョン（Ｖｅｒ．Ｘ）から最新のバージョン（Ｖｅｒ．Ｎ）のデータへ更新可能な更新差分データ（Ｖｅｒ．ＸからＶｅｒ．Ｎ）を生成するものであり、各バージョン（Ｖｅｒ．Ｘ，Ｎ−１，Ｎ）のデータのダミーデータを用いて更新差分データ（Ｖｅｒ．ＸからＶｅｒ．Ｎ）を生成するようになっている。
【００８２】
本発明の第１実施形態の第１変形例としてのデータ管理システム１ａ′における第２更新差分作成部１２′による、更新差分データ（Ｖｅｒ．ＸからＶｅｒ．Ｎ）の作成手法を、図８を参照しながら、図７Ａおよび図７Ｂに示すフローチャート（ステップＥ１０〜Ｅ２００）に従って説明する。なお、図７Ａに示すフローチャート（ステップＥ１０〜Ｅ１３０）と図７Ｂに示すフローチャート（ステップＥ１４０〜Ｅ２００）とに、ステップＥ１０〜Ｅ２００からなる一のフローチャートを便宜上分けて示している。又、図８は本第１変形例において用いられるダミーデータ（ダミーデータＸ）の例を示す図である。
【００８３】
なお、本第１変形例においても、第１実施形態と同様に、データの任意のバージョンを変数Ｘ（ただし、Ｘは１≦Ｘ≦Ｎ―２）を用いて示すものとし、又、本説明中における既述の符号と同一の符号は同一もしくは略同一の部分を示しているので、その説明は省略する。
先ず、第２更新差分作成部１２′は、変数ＸにＮ−２を設定して（ステップＥ１０）、更新差分データ（Ｖｅｒ．ＸからＶｅｒ．Ｎ）の作成を開始する（ステップＥ２０）。
【００８４】
第２更新差分作成部１２′は、データ値をすべてダミーとした上でそのデータの位置を示すアドレス値を代入した、Ｖｅｒ．Ｘのデータのダミーデータである「ダミーデータＸ」を作成する（ステップＥ３０）。
このダミーデータＸは、図８に示すように、Ｖｅｒ．Ｘのデータを配列化して示すものであり、例えば、アドレスとダミーフラグおよび値もしくは位置を示すアドレスを相互に関連付けることによって構成されている。このダミーデータＸにおいては、そのアドレスのダミーフラグを参照することにより、代入されている値が「位置を示すアドレス」であるのか「実際の値」であるのかを判断することができるようになっている。なお、このようなダミーデータの作成および使用方法としてはプログラミングにおいて一般的に用いられている種々の手法を用いてもよく、例えば、ダミーデータを外部リスト化してもよい。
【００８５】
そして、第２更新差分作成部１２′は、更新差分データ格納部１８に格納された各更新差分データ（Ｖｅｒ．ＸからＶｅｒ．Ｎ−１）をステップＥ３０において作成したダミーデータＸに適用することにより、Ｖｅｒ．Ｎ−１のダミーデータ（ダミーデータＮ−１）を作成して、図示しないメモリ空間上に展開する（ステップＥ４０）。
また、第２更新差分作成部１２′は、第１更新差分作成部１１ａによって作成された更新差分データ（Ｖｅｒ．Ｎ−１からＶｅｒ．Ｎ）をステップＥ４０において作成したダミーデータＮ−１に適用することにより、Ｖｅｒ．Ｎのダミーデータ（ダミーデータＮ）を作成して、図示しないメモリ空間上に展開する（ステップＥ５０）。
【００８６】
そして、第２更新差分作成部１２′は、ステップＥ５０において展開したダミーデータＮを、その先頭から順番に分析する（ステップＥ６０）。なお、以下、ダミーデータＮにおける分析が行なわれている位置を分析位置という。
最初に、その分析位置における差分コードがダミーであり、且つ、代入されているアドレスが、前回の分析位置の代入アドレスから連続しているか否かを判断して（ステップＥ７０）、差分コードがダミーであり且つアドレスが連続している場合には（ステップＥ７０のＹＥＳルート参照）、アドレスの連続が途切れるまでの長さである複写長を求めた後、「複写」として複写を示す差分コードと求めた複写長とを更新差分データ（Ｖｅｒ．ＸからＶｅｒ．Ｎ）に記述する（ステップＥ１２０）。
【００８７】
そして、第２更新差分作成部１２は、ダミーデータＮの分析を最後まで行なったか否かを確認して（ステップＥ１４０）、最後まで比較を行なっていない場合には（ステップＥ１４０のＮＯルート参照）、比較位置を移動させた後（ステップＥ１３０）、ステップＢ７０に戻る。
また、代入されているアドレスが、前回の分析位置の代入アドレスから連続していない場合には（ステップＥ７０のＮＯルート参照）、次に、分析位置のデータがダミーであり、且つ代入されているアドレスが、前回の分析位置の代入アドレスとは異なる、もしくは前回分析位置のデータがダミーではなかったか否かを確認する（ステップＥ８０）。分析位置のデータがダミーであり、且つ代入されているアドレスが、前回の分析位置の代入アドレスとは異なる（新出）、もしくは前回分析位置のデータがダミーである場合には（ステップＥ８０のＹＥＳルート参照）、分析対象アドレスからステップＥ８０において代入されていたアドレスまでの移動量を求めるとともに、「移動」として移動を示す差分コードと求めた移動量とを更新差分データ（Ｖｅｒ．ＸからＶｅｒ．Ｎ）に記述して（ステップＥ１１０）、ステップＥ１４０に移行する。
【００８８】
次に、分析位置のデータがダミーではないか否かを判断して（ステップＥ９０）、ダミーではない場合には（ステップＥ９０のＮＯルート参照）、ステップＥ１３０に移行する。又、ダミーである場合には（ステップＥ９０のＹＥＳルート参照）、「新規」データとして分析位置のデータを更新差分データ（Ｖｅｒ．ＸからＶｅｒ．Ｎ）に記述して（ステップＥ１００）、ステップＥ１４０に移行する。
【００８９】
また、ダミーデータＮの分析を最後まで行なった場合には（ステップＥ１４０のＹＥＳルート参照）、更新差分データ（Ｖｅｒ．ＸからＶｅｒ．Ｎ）の生成が完了する（ステップＥ１５０）。
また、新旧更新差分データ置換部１９が、更新差分データ格納部１８から更新差分データ（Ｖｅｒ．ＸからＶｅｒ．Ｎ−１）を削除するとともに（ステップＥ１６０）、更新差分データ格納部１８に上述の如く作成した更新差分データ（Ｖｅｒ．ＸからＶｅｒ．Ｎ）を格納（保存）し（ステップＥ１７０）、更に、更新差分データ格納情報テーブル２１ａにおけるＶｅｒ．Ｘに相当する項に、更新差分データ（Ｖｅｒ．ＸからＶｅｒ．Ｎ）の格納位置を記述する（ステップＥ１８０）。
【００９０】
第２更新差分作成部１２′は、Ｘの値をデクリメント（Ｘ＝Ｘ−１）した後（ステップＥ１９０）、Ｘ＝０であるか否かを確認して（ステップＥ２００）、Ｘ＝０の場合には（ステップＥ２００のＹＥＳルート参照）、処理を終了する。又、Ｘ＝０ではない場合には（ステップＥ２００のＮＯルート参照）、ステップＥ２０に戻る。
本発明の第１実施形態の第１変形例としてのデータ管理システム１ａ′（データ管理サーバ２ａ′）においても、更新差分データ（Ｖｅｒ．ＸからＶｅｒ．Ｎ）を作成することができ、第１実施形態と同様の作用効果を得ることができる。
【００９１】
（Ｃ）第１実施形態の第２変形例の説明
図９は本発明の第１実施形態のデータ管理システム１ａの第２変形例としてのデータ管理システム１ａ″の構成を模式的に示す図である。
本第２変形例のデータ管理システム１ａ″は、図９に示すように、第１実施形態のデータ管理システム１ａのデータ管理サーバ２ａに代えてデータ管理サーバ２ａ″をそなえて構成されている。そして、このデータ管理サーバ２ａ″は、第１実施形態の第２更新差分作成部１２に代えて、第２更新差分作成部１２″をそなえて構成されている他は、第１実施形態のデータ管理サーバ２ａ（図１参照）やその変形例のデータ管理サーバ２ａ′（図１参照）と同様もしくは略同様の構成をそなえている。又、このデータ管理サーバ２ａ″も、例えば、サーバ機能をそなえたコンピュータシステムによって実現される。
【００９２】
本第２変形例における第２更新差分作成部（第２の更新差分作成部）１２″は、更新差分データ格納部１８に格納された更新差分データ（Ｖｅｒ．ＸからＶｅｒ．Ｎ−１）と、第１更新差分作成部（第１の更新差分作成部）１１ａによって作成された更新差分データ（Ｖｅｒ．Ｎ−１からＶｅｒ．Ｎ）と、最新バージョンデータ入力部１０により入力された最新のバージョン（Ｖｅｒ．Ｎ）のデータとに基づいて、更新差分データ（Ｖｅｒ．ＸからＶｅｒ．Ｎ）を作成するものである。
【００９３】
なお、本第２変形例においても、第１実施形態と同様に、データの任意のバージョンを変数Ｘ（ただし、Ｘは１≦Ｘ≦Ｎ―２）を用いて示すものとし、又、本説明中における既述の符号と同一の符号は同一もしくは略同一の部分を示しているので、その説明は省略する
この第２更新差分作成部１２″は、以下の（１）〜（３）の手順に従って更新差分データ（Ｖｅｒ．ＸからＶｅｒ．Ｎ）を作成するようになっている。なお、本変形例においては、中身に何も記載されていない（ブランクデータ）の第１のダミー空データ（Ｖｅｒ．Ｎ−１の空データ）および第２のダミー空データ（Ｖｅｒ．Ｘの空データ）を用いる（予め用意）。
【００９４】
（１）第１のダミー空データ（Ｖｅｒ．Ｎ−１の空データ）と最新バージョンデータ入力部１０により入力された最新のバージョン（Ｖｅｒ．Ｎ）のデータと前記第１更新差分作成部１１ａによって作成された更新差分データ（Ｖｅｒ．Ｎ−１からＶｅｒ．Ｎ）とに基づいて、第１更新差分作成部１１ａによって作成された更新差分データ（Ｖｅｒ．Ｎ−１からＶｅｒ．Ｎ）を解析して、Ｖｅｒ．Ｎ−１の空データ中にＶｅｒ．Ｎのデータの一部を複写するとともに、当該ダミー空データ中における前記複写されたデータ以外の領域にダミーデータを設定してＶｅｒ．Ｎ−１のダミーデータＢ′（第１のダミーデータ）を作成。
【００９５】
（２）第２のダミー空データ（Ｖｅｒ．Ｘの空データ）と上記ダミーデータＢ′と第２更新差分データ格納部１８２に格納された更新差分データ（Ｖｅｒ．ＸからＶｅｒ．Ｎ−１）とに基づいて、第２更新差分データ格納部１８２に格納された更新差分データ（Ｖｅｒ．ＸからＶｅｒ．Ｎ−１）を解析して、Ｖｅｒ．Ｘの空データ中にダミーデータＢ′のデータの一部を複写するとともに、当該ダミー空データ中における前記複写されたデータ以外の領域にダミーデータを設定してＶｅｒ．ＸのダミーデータＡ′（第２のダミーデータ）を作成。
【００９６】
（３）上記ダミーデータＡ′と最新バージョンデータ入力部１０により入力された最新のバージョン（Ｖｅｒ．Ｎ）のデータとを比較することにより、データ格納部２０ａに格納されたデータよりも前の各バージョンから最新のバージョン（Ｖｅｒ．Ｎ）のデータへ更新可能な更新差分データ（Ｖｅｒ．ＸからＶｅｒ．Ｎ）を生成。
本発明の第１実施形態の第２変形例としてのデータ管理システム１ａ″における第２更新差分作成部１２″による更新差分データ（Ｖｅｒ．ＸからＶｅｒ．Ｎ）の作成手法を、図１０Ａおよび図１０Ｂに示すフローチャート（ステップＧ１０〜Ｇ３４０）に従って説明する。なお、図１０Ａに示すフローチャート（ステップＧ１０〜Ｇ２２０）と図１０Ｂに示すフローチャート（ステップＧ２３０〜Ｇ３４０）とに、ステップＧ１０〜Ｇ３４０からなる一のフローチャートを便宜上分けて示している。
【００９７】
先ず、第２更新差分作成部１２″は、Ｖｅｒ．Ｎ−１の空データと、最新バージョンデータ入力部２０から入力された最新バージョン（Ｖｅｒ．Ｎ）のデータとをメモリ（例えばデータ展開用高速メモリ２３）上に展開して、参照ポインタを各データの先頭位置に設定する（ステップＧ１０）。
次に、第２更新差分作成部１２″は、第１更新差分作成部１１ａによって作成された更新差分データ（Ｖｅｒ．Ｎ−１からＶｅｒ．Ｎ）をその先頭の差分コードから順番に解析する（ステップＧ２０）。
【００９８】
先ず、差分コードが「複写」であるか否かを判断して（ステップＧ３０）、複写である場合には（ステップＧ３０のＹＥＳルート参照）、Ｖｅｒ．Ｎ−１の空データの参照位置に、Ｖｅｒ．Ｎの参照位置から複写長分のデータをコピーし（ステップＧ８０）、更に、Ｖｅｒ．Ｎ−１の空データにおける参照位置を複写長分後ろへ移動させる（ステップＧ９０）。
【００９９】
そして、更新差分データ（Ｖｅｒ．Ｎ−１からＶｅｒ．Ｎ）の全ての差分コードについて解析を行なったか否か、すなわち、差分コードの終わりであるか否かを判断して（ステップＧ１００）、終わりではない場合には（ステップＧ１００のＮＯルート参照）、ステップＧ３０に戻る。
差分コードが複写ではない場合には（ステップＧ３０のＮＯルート参照）、第２更新差分作成部１２″は、次に差分コードが「新規」であるか否かを判断する（ステップＧ４０）。差分コードが新規である場合には（ステップＧ４０のＹＥＳルート参照）、Ｖｅｒ．Ｎ−１の空データにおける参照位置を新規データ長分後ろへ移動させて（ステップＧ７０）、ステップＧ１００に移行する。
【０１００】
また、差分コードが新規ではない場合には（ステップＧ４０のＮＯルート参照）、第２更新差分作成部１２″は、差分コードが「移動」であると判断して（ステップＧ５０）、Ｖｅｒ．Ｎ−１の空データにおける参照位置を移動量に基づいて移動させて（ステップＧ６０）、ステップＧ１００に移行する。
差分コードが終わりである場合には（ステップＧ１００のＹＥＳルート参照）、Ｖｅｒ．Ｎ−１の空データにおいて、複写によるデータ代入が行われなかった部分にダミーのデータ（ダミー部）を代入して、Ｖｅｒ．Ｎ−１のダミーデータ（ダミーデータＢ′）を完成させる（ステップＧ１１０）。
【０１０１】
次に、第２更新差分作成部１２″は、Ｘ＝Ｎ−２と設定した後（ステップＧ１２０）、ステップＧ１１０において作成したＶｅｒ．Ｎ−１のダミーデータ（ダミーデータＢ′）と、Ｖｅｒ．Ｘの空データとをメモリ（例えばデータ展開用高速メモリ２３）上に展開して、参照ポインタを各データの先頭位置に設定する（ステップＧ１３０）。
次に、第２更新差分作成部１２″は、更新差分データ格納部１８から取得した更新差分データ（Ｖｅｒ．ＸからＶｅｒ．Ｎ−１）をその先頭の差分コードから順番に解析する（ステップＧ１４０）。
【０１０２】
先ず、差分コードが「複写」であるか否かを判断して（ステップＧ１５０）、複写である場合には（ステップＧ１５０のＹＥＳルート参照）、Ｖｅｒ．Ｘの空データの参照位置に、Ｖｅｒ．Ｎ−１の参照位置から複写長分のデータをコピーし（ステップＧ２００）、更に、Ｖｅｒ．Ｘの空データにおける参照位置を複写長分後ろへ移動させる（ステップＧ２１０）。
【０１０３】
そして、更新差分データ（Ｖｅｒ．ＸからＶｅｒ．Ｎ−１）の全ての差分コードについて解析を行なったか否か、すなわち、差分コードの終わりであるか否かを判断して（ステップＧ２２０）、終わりではない場合には（ステップＧ２２０のＮＯルート参照）、ステップＧ１５０に戻る。
差分コードが複写ではない場合には（ステップＧ１５０のＮＯルート参照）、第２更新差分作成部１２″は、次に差分コードが「新規」であるか否かを判断する（ステップＧ１６０）。差分コードが新規である場合には（ステップＧ１６０のＹＥＳルート参照）、Ｖｅｒ．Ｘの空データの参照位置を新規データ長分後ろへ移動させて（ステップＧ１９０）、ステップＧ２２０に移行する。
【０１０４】
また、差分コードが新規ではない場合には（ステップＧ１６０のＮＯルート参照）、第２更新差分作成部１２″は、差分コードが「移動」であると判断して（ステップＧ１７０）、Ｖｅｒ．Ｘの空データにおける参照位置を移動量に基づいて移動させて（ステップＧ１８０）、ステップＧ２２０に移行する。
差分コードが終わりである場合には（ステップＧ２２０のＹＥＳルート参照）、Ｖｅｒ．Ｘの空データにおいて、複写によるデータ代入が行われなかった部分にダミーのデータ（ダミー部）を代入することにより、Ｖｅｒ．Ｘのダミーデータ（ダミーデータＡ′）を完成させる（ステップＧ２３０）。
【０１０５】
次に、第２更新差分作成部１２″は、ステップＧ２３０において作成されたＶｅｒ．Ｘのダミーデータ（ダミーデータＡ′）と、最新バージョンデータ入力部２０から入力された最新バージョン（Ｖｅｒ．Ｎ）のデータとを、先頭のデータから比較する（ステップＧ２４０）。
Ｖｅｒ．ＸのダミーデータとＶｅｒ．Ｎのデータとが等しいか否かを判断して（ステップＧ２５０）、等しい場合には（ステップＧ２５０のＹＥＳルート参照）、更新差分データ（Ｖｅｒ．ＸからＶｅｒ．Ｎ）に複写として複写長を記述する（ステップＧ３１０）。そして、データの最後まで比較を行なったか否かを判断して（ステップＧ３２０）、最後まで比較を行なっていない場合には（ステップＧ３２０のＮＯルート参照）、ステップＧ２５０に戻る。
【０１０６】
Ｖｅｒ．ＸのダミーデータとＶｅｒ．Ｎのデータとが異なる場合には、（ステップＧ２５０のＮＯルート参照）、第２更新差分作成部１２″は、次に、Ｖｅｒ．Ｘのダミーデータにおける比較位置のデータがダミーデータであるか否かを判断する（ステップＧ２６０）。ダミーデータである場合には（ステップＧ２６０のＹＥＳルート参照）、新規データとしてＶｅｒ．Ｎのデータ内容を更新差分データ（Ｖｅｒ．Ｎ−１からＶｅｒ．Ｎ）に記述して（ステップＧ３００）、ステップＧ３２０に移行する。
【０１０７】
また、Ｖｅｒ．Ｘのダミーデータにおける当該比較位置におけるデータがダミーデータではない場合には（ステップＧ２６０のＮＯルート参照）、Ｖｅｒ．Ｘのダミーデータの中からＶｅｒ．Ｎのデータに等しいデータを検索して（ステップＧ２７０）、等しい箇所を発見することができたか否かを判断する（ステップＧ２８０）。
等しい箇所が発見されない場合には（ステップＧ２８０のＮＯルート参照）、ステップＧ３００に移行する。又、等しい箇所が発見された場合には（ステップＧ２８０のＹＥＳルート参照）、発見位置への移動量を更新差分データ（Ｖｅｒ．ＸからＶｅｒ．Ｎ）に記述して（ステップＧ２９０）、ステップＧ３２０に移行する。
【０１０８】
データを最後まで比較した場合には（ステップＧ３２０のＹＥＳルート参照）、次に、Ｘの値をデクリメント（Ｘ＝Ｘ−１）して（ステップＧ３３０）、Ｘ＝０であるか否かを判断する（ステップＧ３４０）。Ｘ＝０でない場合には（Ｇ３４０のＮＯルート参照）、ステップＧ１３０に戻り、Ｘ＝０の場合には（Ｇ３４０のＹＥＳルート参照）、処理を終了する。
【０１０９】
上述の如く構成された本発明の第１実施形態の第２変形例としてのデータ管理システム１ａ″においても、上述した第１実施形態およびその第１変形例と同様の作用効果を得ることができる。
（Ｄ）第２実施形態の説明
図１１は本発明の第２実施形態としてのデータ管理システム（データ供給システム）１ｂの構成を模式的に示す図である。
【０１１０】
本第２実施形態のデータ管理システム１ｂも、第１実施形態のデータ管理システム１ａと同様に、データやプログラム（以下、単にデータという）を格納可能な情報処理装置（更新対象機器）３と通信可能に接続され、複数のバージョンのデータを管理して、情報処理装置３に最新のバージョンのデータを提供するべくこれらのデータを管理するものである。
【０１１１】
本発明の第２実施形態としてのデータ管理システム１ｂは、図１１に示すように、情報処理装置３に通信可能に接続されたデータ管理サーバ（データ管理装置）２ｂをそなえて構成されている。又、このデータ管理サーバ２ｂは、例えば、サーバ機能をそなえたコンピュータシステムによって実現され、図１１に示すように、最新バージョンデータ入力部１０，更新差分作成部（第１の更新差分作成部）１１ｂ，選択部１３，バージョン取得部１４，更新差分データ送出部（提供部）１５，不要更新差分除去部（更新差分データ削除部）１７，第１更新差分データ格納部（第１の更新差分データ格納部）１８１，第２更新差分データ格納部（第２の更新差分データ格納部）１８２，新旧更新差分データ置換部１９，データ格納部２０ｂ，データ生成部２２および更新差分データ格納情報テーブル２１ｂをそなえて構成されている。
【０１１２】
すなわち、本第２実施形態のデータ管理サーバ２ｂは、第１実施形態のデータ管理サーバ２ａにおける、第１更新差分作成部１１および第２更新差分作成部１２に代えて更新差分作成部１１ｂをそなえるとともに、更新差分データ格納部１８に代えて第１更新差分データ格納部１８１および第２更新差分データ格納部１８２を、又、更新差分データ格納情報テーブル２１ａに代えて更新差分データ格納情報テーブル２１ｂを、更に、データ格納部２０ａに代えてデータ格納部２０ｂを、それぞれそなえて構成されている。
【０１１３】
また、データ管理サーバ２ｂは、第１実施形態のデータ管理サーバ２ａにおける新旧データ置換部１６を除いて構成される一方で、新たにデータ生成部２２およびデータ展開用高速メモリ２３をそなえて構成されている。
なお、図中、既述の符号と同一の符号は同一もしくは略同一の部分を示しているので、その詳細な説明は省略する。
【０１１４】
データ格納部２０ｂは、最新バージョンデータ入力部１０から入力される最新のバージョン（Ｖｅｒ．Ｎ）よりも古いバージョンのデータ全体を格納するものであって、本第２実施形態においては、最も古いバージョン（Ｖｅｒ．１）のデータ（全体）を格納している。
第１更新差分データ格納部（第１の更新差分データ格納部）１８１は、データ格納部２０ｂに格納されたデータを、本データ管理システム１ｂにおいて管理する複数の各バージョン（Ｖｅｒ．Ｘ）のデータへ更新可能な複数の更新差分データをそれぞれ格納するものであり、例えば、コンピュータシステムにおけるハードディスクやメモリ等の記憶装置によって実現される。
【０１１５】
データ生成部２２は、データ格納部２０ｂに格納されたデータと、第１更新差分データ格納部１８１に格納された各更新差分データとに基づいて、各バージョンのデータを生成するものであり、データ格納部２０ｂに格納されたデータに、第１更新差分データ格納部１８１に格納された各更新差分データを選択的に適用することにより、任意のバージョン（Ｖｅｒ．Ｘ）のデータ（全体）を生成することができるようになっている。
【０１１６】
データ展開用高速メモリ２３は、データ生成部２２によって生成されたデータを展開するものであり、特にアクセス速度が高速なメモリを使用することにより、処理速度を向上させることができる。
更新差分作成部１１ｂは、データ生成部２２によって生成された各バージョンのデータと、最新バージョンデータ入力部１０により入力された最新のバージョン（Ｖｅｒ．Ｎ）のデータとに基づいて、各バージョン（Ｖｅｒ．Ｘ）のデータから最新のバージョン（Ｖｅｒ．Ｎ）のデータへ更新可能な更新差分データ（Ｖｅｒ．ＸからＶｅｒ．Ｎ）を作成するものである。なお、この更新差分作成部１１ｂが更新差分データ（Ｖｅｒ．ＸからＶｅｒ．Ｎ）を作成する手法は、第１実施形態の第１更新差分作成部１１ａによる更新差分データ（Ｖｅｒ．Ｎ−１からＶｅｒ．Ｎ）の生成手法（図３参照）と略同様であるので、その説明は省略する。
【０１１７】
第２更新差分データ格納部（第２の更新差分データ格納部）１８２は、更新差分作成部１１ｂによって作成された更新差分データを格納するものであり、各バージョンのデータを本データ管理システム１ｂにおける最新のバージョンに更新可能な各更新差分データを格納するようになっている。なお、この第２更新差分データ格納部１８２も、例えば、コンピュータシステムにおけるハードディスクやメモリ等の記憶装置によって実現される。
【０１１８】
更新差分データ格納情報テーブル２１ｂは、第２更新差分データ格納部１８２に格納されている各更新差分データの格納位置を管理するテーブルであり、第１実施形態の更新差分データ格納情報テーブル２１ａ（図２参照）と同様に、更新前のバージョンとそのバージョンに対応する更新差分データの格納位置（格納アドレス）とを関連付けて登録することによって構成されており、選択部１３が、この更新差分データ格納情報テーブル２１ｂを参照することにより、特定バージョンに対応する更新差分データの格納場所を高速に取得することができるようになっている。
【０１１９】
上述の如く構成された本発明の第２実施形態としてのデータ管理システム１ｂにおいて、最新のバージョン（Ｖｅｒ．Ｎ）のデータが作成された場合にその最新バージョンのデータについての更新差分データを登録する手法を、図１２を用いて説明する。
最新バージョン（Ｖｅｒ．Ｎ）のデータが作成された場合には、先ず、データ生成部２２が、データ格納部２０ｂに格納されているＶｅｒ．１のデータ（全体）と、第１更新差分データ格納部１８１に格納されている各更新差分データとに基づいて、各バージョン（Ｖｅｒ．Ｘ）のデータ（全体）を生成して（図１２のステップＦ１０）、データ展開用高速メモリ２３に展開する。
【０１２０】
なお、データ生成部２２は、各バージョンのデータを逐次、生成・展開することが望ましいが、例えばデータ展開用高速メモリ２３の容量が各データのサイズに比べて十分に大きい場合には、複数のバージョンのデータを一度に生成・展開してもよい。
そして、更新差分作成部１１ｂが、最新バージョンデータ入力部１０によって入力されたデータ（Ｖｅｒ．Ｎ）と、データ展開用高速メモリ２３に展開されたデータ（Ｖｅｒ．Ｘ）とに基づいて、Ｖｅｒ．Ｘのデータから最新のバージョン（Ｖｅｒ．Ｎ）のデータへ更新するための更新差分データ（Ｖｅｒ．ＸからＶｅｒ．Ｎ）を作成する（図１２のステップＦ２０参照）。
【０１２１】
更新差分データ格納部１８に登録されているＶｅｒ．Ｎ−１までの各更新差分データ（Ｖｅｒ．ＸからＶｅｒ．Ｎ−１）は、新旧更新差分データ置換部１９によって、更新差分作成部１１ｂによって作成された更新差分データ（Ｖｅｒ．ＸからＶｅｒ．Ｎ）と置換される。又、この際、更新差分データ格納情報テーブル２１ａの更新処理も併せて行なわれる。
【０１２２】
なお、本発明の第２実施形態としてのデータ管理システム１ｂにおける情報処理装置３のデータの更新手法は、選択部１３が、バージョン取得部１４によって取得された情報処理装置３のデータのバージョンに対応する更新差分データを、第２更新差分データ格納部１８２におけるその更新差分データの格納位置から取得すること以外は、前述した第１実施形態のデータ管理システム１ａ（図６参照）とほぼ同様であるので、その詳細な説明は省略する。
【０１２３】
このように、本発明の第２実施形態としてのデータ管理システム１ｂによれば、上述した第１実施形態と同様の作用効果を得ることができる他、更新差分作成部１１ｂが、最新バージョンデータ入力部１０から入力された最新バージョンのデータ全体と、データ生成部２２によって生成された各旧バージョンのデータ全体とに基づいて各更新差分データ（Ｖｅｒ．ＸからＶｅｒ．Ｎ）を作成するので、第１実施形態の第２更新差分作成部１２の如く更新差分データどうし（更新差分データ（Ｖｅｒ．ＸからＶｅｒ．Ｎ−１）と更新差分データ（Ｖｅｒ．Ｎ−１からＶｅｒ．Ｎ））から更新差分データ（Ｖｅｒ．ＸからＶｅｒ．Ｎ）を生成するよりも、作成する更新差分データ（Ｖｅｒ．ＸからＶｅｒ．Ｎ）の容量を小さくすることができる場合がある。
【０１２４】
例えば、データを複数のバージョンにわたって更新する過程において、あるバージョンにおいて変更した部分をその後のバージョンにおいて元に戻した場合には、第１実施形態の如く第２更新差分作成部１２が更新差分データどうしから更新差分データ（Ｖｅｒ．ＸからＶｅｒ．Ｎ）を作成した場合には、作成された更新差分データ（Ｖｅｒ．ＸからＶｅｒ．Ｎ）には、これらの更新過程が差分コードとして含まれるのに対して、本第２実施形態の如く全体のデータどうしから更新差分データ（Ｖｅｒ．ＸからＶｅｒ．Ｎ）を作成した場合には、このような更新過程の差分コードが含まれることがなく、最小限のサイズの更新差分データ（Ｖｅｒ．ＸからＶｅｒ．Ｎ）を作成することができるのである。
【０１２５】
（Ｅ）第２実施形態の変形例の説明
上述した第２実施形態のデータ管理システム１ｂにおいては、データ格納部２０ｂに、最新バージョンデータ入力部１０から入力される最新のバージョン（Ｖｅｒ．Ｎ）よりも古いバージョンのデータとして、最も古いバージョン（Ｖｅｒ．１）のデータを格納しているが、これに限定されるものではなく、最新バージョンデータ入力部１０から入力される最新のバージョン（Ｖｅｒ．Ｎ）よりも前の他のバージョン（Ｖｅｒ．Ｂ）のデータを格納してもよい（ただし、Ｂは１＜Ｂ＜Ｎ）。
【０１２６】
図１３は本発明の第２実施形態の変形例としてのデータ管理システム１ｂ′の構成を模式的に示す図である。この図１３に示すように、本変形例のデータ管理システム１ｂ′は、第２実施形態のデータ管理システム１ｂにおけるデータ格納部２０ｂに代えてデータ格納部２０ｂ′をそなえるとともに、第１更新差分データ格納部１８１に代えて、第１更新差分データ格納部１８１′をそなえて構成されている。なお、図中、既述の符号と同一の符号は同一もしくは略同一の部分を示しているので、その詳細な説明は省略する。
【０１２７】
データ格納部２０ｂ′は、最新バージョンデータ入力部１０から入力される最新のバージョン（Ｖｅｒ．Ｎ）よりも前の他のバージョン（Ｖｅｒ．Ｂ）のデータを格納している。
また、第１更新差分データ格納部１８１′は、データ格納部２０ｂ′に格納されたデータを、本データ管理システム１ｂ′において管理する複数の各バージョンのデータへ更新可能な各更新差分データを格納するようになっている。
【０１２８】
なお、本変形例において、Ｂ＞Ｘとなる場合、すなわちＶｅｒ．ＢがＶｅｒ．Ｘよりも新しいバージョンの場合には、第１更新差分データ格納部１８１′には、新しいバージョンであるＶｅｒ．Ｂのデータから古いバージョンであるＶｅｒ．Ｘのデータに更新（バージョンダウン）するための更新差分データ（Ｖｅｒ．ＢからＶｅｒ．Ｘ）が登録される。
このような本発明の第２実施形態の変形例としてのデータ管理システム１ｂ′においても、第２実施形態と同様の作用効果を得ることができる。
【０１２９】
（Ｆ）第３実施形態の説明
図１４は本発明の第３実施形態としてのデータ管理システム１ｃの構成を模式的に示す図である。
本第３実施形態のデータ管理システム１ｃも、第２実施形態のデータ管理システム１ｂと同様に、データやプログラム（以下、単にデータという）を格納可能な情報処理装置（更新対象機器）３と通信可能に接続され、複数のバージョンのデータを管理して、情報処理装置３に最新のバージョンのデータを提供するべくこれらのデータを管理するものである。
【０１３０】
本発明の第３実施形態としてのデータ管理システム１ｃは、図１４に示すように、情報処理装置３に通信可能に接続されたデータ管理サーバ（データ管理装置）２ｃをそなえて構成されている。
そして、このデータ管理サーバ２ｃは、図１４に示すように、第２実施形態のデータ管理サーバ２ｂに第３更新差分作成部（第２の更新差分作成部）２５をそなえるとともに、第１更新差分データ格納部１８１に代えて第１更新差分データ格納部１８１（第１の更新差分データ格納部）ｃをそなえ、更に、更新差分作成部１１ｂに代えて第１更新差分作成部（第１の更新差分作成部）１１ｃをそなえて構成されている。なお、図中、既述の符号と同一の符号は同一もしくは略同一の部分を示しているので、その詳細な説明は省略する。又、このデータ管理サーバ２ｃは、例えば、サーバ機能をそなえたコンピュータシステムによって実現される。
【０１３１】
第１更新差分データ格納部１８１ｃは、データ格納部２０ｂに格納されたバージョンのデータをＶｅｒ．Ｎ−１のデータに更新するための更新差分データを格納するものである。なお、図１４に示す例においては、データ格納部２０ｂにＶｅｒ．１のデータ（全体）が格納されているので、第１更新差分データ格納部１８１ｄは、更新差分データ（Ｖｅｒ．１からＶｅｒ．Ｎ−１）を格納している。
【０１３２】
本第３実施形態のデータ管理システム１ｄにおいては、データ生成部２２は、データ格納部２０ｂに格納されたＶｅｒ．１のデータと、第１更新差分データ格納部１８１ｃに格納された各更新差分データ（Ｖｅｒ．１からＶｅｒ．Ｎ−１）とに基づいて、Ｖｅｒ．Ｎ−１のデータ（全体）を生成するようになっており、生成したＶｅｒ．Ｎ−１のデータは、データ展開用高速メモリ２３上に展開されるようになっている。
【０１３３】
第１更新差分作成部１１ｃは、データ生成部２２によって生成されたＶｅｒ．Ｎ−１のデータと、最新バージョンデータ入力部１０により入力された最新のバージョン（Ｖｅｒ．Ｎ）のデータとに基づいて、Ｖｅｒ．Ｎ−１のデータから最新のバージョン（Ｖｅｒ．Ｎ）のデータへ更新可能な更新差分データ（Ｖｅｒ．Ｎ−１からＶｅｒ．Ｎ）を作成するものである。なお、この第１更新差分作成部１１ｃが更新差分データ（Ｖｅｒ．Ｎ−１からＶｅｒ．Ｎ）を作成する手法は、上述した第１実施形態の第１更新差分作成部１１による更新差分データ（Ｖｅｒ．Ｎ−１からＶｅｒ．Ｎ）の生成手法（図３参照）と略同様であるので、その説明は省略する。
【０１３４】
第３更新差分作成部２５は、第１更新差分作成部１１ｃによって作成された更新差分データ（Ｖｅｒ．Ｎ−１からＶｅｒ．Ｎ）と、第２更新差分データ格納部１８２に格納されている各更新差分データ（Ｖｅｒ．ＸからＶｅｒ．Ｎ−１）とに基づいて、更新差分データ（Ｖｅｒ．ＸからＶｅｒ．Ｎ）を作成するものである。
また、この第３更新差分作成部２５は、作成した更新差分データ（Ｖｅｒ．ＸからＶｅｒ．Ｎ）を、新旧更新差分データ置換部１９に渡すようになっている。
【０１３５】
本第３実施形態のデータ管理システム１ｃにおいては、最新のデータが最新バージョンデータ入力部１０から入力され、その更新差分データが第３更新差分作成部２５によって作成された場合に、新旧更新差分データ置換部１９は、第２更新差分データ格納部１８２に格納された更新差分データ（Ｖｅｒ．ＸからＶｅｒ．Ｎ−１）の更新（置換）を行なうとともに、第１更新差分データ格納部１８１ｃに格納されている更新差分データ（Ｖｅｒ．１からＶｅｒ．Ｎ−１）についても、データ格納部２０ｂに格納されているデータを最新バージョンデータ入力部１０から入力された最新のバージョンのデータに更新するための更新差分データと置換するようになっている。
【０１３６】
なお、第３更新差分作成部２５による更新差分データ（Ｖｅｒ．ＸからＶｅｒ．Ｎ）の生成手法は、上述した第１実施形態の第２更新差分作成部１２や、その第１変形例の第２更新差分作成部１２′，第２変形例の第２更新差分作成部１２″による更新差分データ（Ｖｅｒ．Ｎ−１からＶｅｒ．Ｎ）の生成手法（図４，図７参照）と略同様であるので、その説明は省略する。
【０１３７】
本発明の第３実施形態としてのデータ管理システム１ｃによっても、第１実施形態と同様の作用効果を得ることができる。
（Ｇ）その他
上述した各実施形態およびその変形例においては、データ管理サーバ２ａ，２ａ′，２ａ″，２ｂ，２ｃを構成するコンピュータのＣＰＵ（Central Processing Unit）が、データ管理プログラムを実行することにより、上述した、最新バージョンデータ入力部１０，第１更新差分作成部１１ａ，第２更新差分作成部１２，１２′，１２″，選択部１３，バージョン取得部１４，更新差分データ送出部１５，新旧データ置換部１６，不要更新差分除去部１７，新旧更新差分データ置換部１９，更新差分データ格納情報テーブル２１ａ，第２更新差分作成部１２′，更新差分作成部１１ｂ，１１ｄ，第３更新差分作成部２５および更新差分データ格納情報テーブル２１ｂとして機能するようになっている。
【０１３８】
なお、これらの最新バージョンデータ入力部１０，更新作成部１１ｂ，１１ｃ第１更新差分作成部１１ａ，第２更新差分作成部１２，１２′，１２″，選択部１３，バージョン取得部１４，更新差分データ送出部１５，新旧データ置換部１６，不要更新差分除去部１７，新旧更新差分データ置換部１９，更新差分データ格納情報テーブル２１ａおよび更新差分データ格納情報テーブル２１ｂとしての機能を実現するためのプログラム（データ管理プログラム）は、例えばフレキシブルディスク，ＣＤ−ＲＯＭ，ＣＤ−Ｒ，ＣＤ−Ｒ／Ｗ，ＤＶＤ，ＤＶＤ−Ｒ，ＤＶＤ−Ｒ／Ｗ，磁気ディスク，光ディスク，光磁気ディスク等の、コンピュータ読取可能な記録媒体に記録された形態で提供される。そして、コンピュータはその記録媒体からプログラムを読み取って内部記憶装置または外部記憶装置に転送し格納して用いる。又、そのプログラムを、例えば磁気ディスク，光ディスク，光磁気ディスク等の記憶装置（記録媒体）に記録しておき、その記憶装置から通信経路を介してコンピュータに提供するようにしてもよい。
【０１３９】
なお、本実施形態において、コンピュータとは、ハードウェアとオペレーティングシステムとを含む概念であり、オペレーティングシステムの制御の下で動作するハードウェアを意味している。又、オペレーティングシステムが不要でアプリケーションプログラム単独でハードウェアを動作させるような場合には、そのハードウェア自体がコンピュータに相当する。ハードウェアは、少なくとも、ＣＰＵ等のマイクロプロセッサと、記録媒体に記録されたコンピュータプログラムを読み取るための手段とをそなえており、本実施形態においては、データ管理サーバ２ａ，２ａ′，２ａ″，２ｂ，２ｂ′，２ｃがコンピュータとしての機能を有しているのである。
【０１４０】
さらに、本実施形態における記録媒体としては、上述したフレキシブルディスク，ＣＤ−ＲＯＭ，ＣＤ−Ｒ，ＣＤ−Ｒ／Ｗ，ＤＶＤ，ＤＶＤ−Ｒ，ＤＶＤ−Ｒ／Ｗ，磁気ディスク，光ディスク，光磁気ディスクのほか、ＩＣカード，ＲＯＭカートリッジ，磁気テープ，パンチカード，コンピュータの内部記憶装置（ＲＡＭやＲＯＭなどのメモリ），外部記憶装置等や、バーコードなどの符号が印刷された印刷物等のコンピュータ読取可能な種々の媒体を利用することができる。
【０１４１】
また、上述した各実施形態およびその変形例においては、管理サーバ２ａ，２ａ′，２ａ″，２ｂ，２ｂ′，２ｃと情報処理装置３とは、例えば、ＬＡＮやＵＳＢ，無線ＬＡＮ，ブルートゥース（Bluetooth；登録商標）等の有線，無線を問わず種々の通信手法で通信可能に接続することができるが、本発明は、このような通信手法として、ＵＳＢ等のデータ管理サーバ２ａ，２ａ′，２ａ″，２ｂ，２ｂ′，２ｃと情報処理装置３との間で転送されるデータ量に従って、その転送に要する時間（転送時間）が目に見えて多くなるような通信手段を用いる場合に特に有効である。
【０１４２】
そして、本発明は上述した実施形態に限定されるものではなく、本発明の趣旨を逸脱しない範囲で種々変形して実施することができる。
例えば、上述した各実施形態においては、データ管理サーバ２ａ，２ａ′，２ａ″，２ｂ，２ｂ′，２ｃに、最新バージョンデータ入力部１０や更新差分作成部１１ｂ，１１ｃ，第１更新差分作成部１１ａ，第２更新差分作成部１２，１２′，１２″選択部１３，バージョン取得部１４，更新差分データ送出部１５，新旧データ置換部１６，不要更新差分除去部１７，新旧更新差分データ置換部１９，更新差分データ格納情報テーブル２１ａ，第３更新差分作成部２５および更新差分データ格納情報テーブル２１ｂ，データ格納部２０ａ，２０ｂ，２０ｂ′，更新差分データ格納部１８，第１更新差分データ格納部１８１，１８１′，１８１ｄ，第２更新差分データ格納部１８２がそなえられているが、これに限定されるものではなく、相互に通信可能に接続された１台以上の他のコンピュータにこれらのうちの一部の機能を分割してそなえてもよい。
【０１４３】
また、上述した各実施形態およびその変形例においては、データ管理サーバ２ａ，２ａ′，２ａ″，２ｂ，２ｂ′，２ｃに１つの情報処理装置３が接続されている例を示しているが、これに限定されるものではなく、データ管理サーバ２ａ，２ａ′，２ａ″，２ｂ，２ｂ′，２ｃに２以上の情報処理装置３が接続され、これらの各情報処理装置３に対して、最新のバージョンのデータを提供すべく更新差分データの送信等を行なってもよい。
【０１４４】
また、上述した第３実施形態において、第３更新差分作成部２５が、第１実施形態の第１変形例や第２変形例における第２更新差分作成部１２′，１２″と同様の手法で更新差分データを作成してもよい。
なお、本発明の各実施形態が開示されていれば、本発明のデータ管理システム，データ管理装置，データ管理方法，データ供給システム，データ管理プログラムおよび同プログラムを記録したコンピュータ読取可能な記録媒体を当業者によって実施・製造することが可能である。
【産業上の利用可能性】
【０１４５】
以上のように、本発明のデータ管理システムは、情報処理装置におけるデータのバージョン管理を行なうのに有用であり、例えば携帯電話器やコンピュータ等におけるプログラムやデータの更新管理に適している。
【図面の簡単な説明】
【０１４６】
【図１】本発明の第１実施形態としてのデータ管理システム（データ供給システム）の構成を模式的に示すものである。
【図２】本発明の第１実施形態としてのデータ管理システムにおける更新差分データ格納情報テーブルの例を示す図である。
【図３】本発明の第１実施形態としてのデータ管理システムにおける第１更新差分作成部による更新差分データの作成手法を説明するためのフローチャートである。
【図４Ａ】本発明の第１実施形態としてのデータ管理システムにおける第２更新差分作成部による更新差分データの作成手法を説明するためのフローチャートである。
【図４Ｂ】本発明の第１実施形態としてのデータ管理システムにおける第２更新差分作成部による更新差分データの作成手法を説明するためのフローチャートである。
【図５】本発明の第１実施形態としてのデータ管理システムにおいて、最新のバージョンのデータが作成された場合にその最新バージョンのデータについての更新差分データを登録する手法を説明するための図である。
【図６】本発明の第１実施形態としてのデータ管理システムにおける情報処理装置のデータの更新手法を説明するためのフローチャートである。
【図７Ａ】本発明の第１実施形態としてのデータ管理システムの変形例における第２更新差分作成部による、更新差分データの作成手法を説明するためのフローチャートである。
【図７Ｂ】本発明の第１実施形態としてのデータ管理システムの変形例における第２更新差分作成部による、更新差分データの作成手法を説明するためのフローチャートである。
【図８】本発明の第１実施形態の第１変形例において用いられるダミーデータの例を示す図である。
【図９】本発明の第１実施形態としてのデータ管理システムの第２変形例の構成を模式的に示す図である。
【図１０Ａ】本発明の第１実施形態としてのデータ管理システムの第２変形例における第２更新差分作成部による更新差分データの作成手法を説明するためのフローチャートである。
【図１０Ｂ】本発明の第１実施形態としてのデータ管理システムの第２変形例における第２更新差分作成部による更新差分データの作成手法を説明するためのフローチャートである。
【図１１】本発明の第２実施形態としてのデータ管理システムの構成を模式的に示す図である。
【図１２】本発明の第２実施形態としてのデータ管理システムにおいて、最新のバージョンのデータが作成された場合にその最新バージョンのデータについての更新差分データを登録する手法を説明するための図である。
【図１３】本発明の第２実施形態としてのデータ管理システムの変形例の構成を模式的に示す図である。
【図１４】本発明の第３実施形態としてのデータ管理システムの構成を模式的に示す図である。
【図１５】従来のプログラムの更新管理手法を説明するための図である。
【図１６】従来のプログラムの更新管理手法を説明するための図である。
【手続補正書】
【提出日】平成18年10月2日(2006.10.2)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
データを格納可能な情報処理装置と通信可能に接続され、複数のバージョンの該データを管理して、該情報処理装置に最新のバージョンの該データを提供するべく該データを管理するデータ管理システムであって、
前記最新のバージョン（Ｖｅｒ．Ｎ）のデータを入力可能な最新バージョンデータ入力部と、
該最新バージョンよりも前のバージョンであって、当該データ管理システムにおける最新のバージョン（Ｖｅｒ．Ｎ−１）のデータを格納するデータ格納部と、
前記データ格納部に格納されたデータよりも前の各バージョンから前記データ格納部に格納されたデータと同一のバージョン（Ｖｅｒ．Ｎ−１）へ更新可能な更新差分データを格納する更新差分データ格納部と、
該データ格納部に格納されたデータ（Ｖｅｒ．Ｎ−１）と、該最新バージョンデータ入力部により入力された前記最新のバージョン（Ｖｅｒ．Ｎ）のデータとに基づいて、該データ格納部に格納されたデータから、前記最新のバージョン（Ｖｅｒ．Ｎ）のデータへ更新可能な更新差分データを作成する第１の更新差分作成部と、
該更新差分データ格納部に格納された該更新差分データと該第１の更新差分作成部によって作成された該更新差分データとに基づいて、前記データ格納部に格納されたデータよりも前の各バージョンから前記最新のバージョン（Ｖｅｒ．Ｎ）のデータへ更新可能な更新差分データを生成する第２の更新差分作成部とをそなえることを特徴とする、データ管理システム。
【請求項２】
前記更新差分データ格納部に格納された更新差分データを、前記第１の更新差分作成部によって作成された更新差分データおよび前記第２の更新差分作成部によって作成された更新差分データと置換する新旧更新差分データ置換部と、
前記データ格納部に格納されたデータを、前記最新バージョンデータ入力部から入力された前記最新のバージョン（Ｖｅｒ．Ｎ）のデータと置換する新旧データ置換部とをそなえることを特徴とする、請求項１記載のデータ管理システム。
【請求項３】
前記更新差分データ格納部が複数の更新差分データをそなえるとともに、
前記複数の更新差分データの中から、情報処理装置に格納された該データのバージョンに応じて一の更新差分データを選択する選択部と、
該選択部によって選択された該更新差分データを該情報処理装置に提供する提供部とをそなえることを特徴とする、請求項２記載のデータ管理システム。
【請求項４】
該第２の更新差分作成部が、該更新差分データ格納部に格納された該更新差分データと該第１の更新差分作成部によって作成された該更新差分データとに基づいて、
前記更新差分データ格納部に格納された更新差分データと前記第１の更新差分作成部によって作成された更新差分データとのいずれもが「複写」を意味する部分については、作成する更新差分データにおける当該位置に複写を、
前記更新差分データ格納部に格納された更新差分データと前記第１の更新差分作成部によって作成された更新差分データとの少なくとも一方が「新規」を意味する部分については、作成する更新差分データにおける当該位置に新規を、
前記更新差分データ格納部に格納された更新差分データが移動であり、且つ前記第１の更新差分作成部によって作成された更新差分データが「複写」もしくは「移動」を意味する部分と、前記更新差分データ格納部に格納された更新差分データが「複写」であり、且つ前記第１の更新差分作成部によって作成された更新差分データが「移動」を意味する部分については、作成する更新差分データにおける当該位置に移動を、それぞれ設定することを特徴とする、請求項１〜請求項３のいずれか１項に記載のデータ管理システム。
【請求項５】
該第２の更新差分作成部が、該更新差分データ格納部に格納された該更新差分データと該第１の更新差分作成部によって作成された該更新差分データとに基づいて、
前記データ格納部に格納されたデータよりも前のバージョンである任意のバージョン（Ｖｅｒ．Ｘ）のデータに基づいて、当該データのデータ値を全てダミーとして配列化した上で、アドレスとダミーフラグおよび値もしくは位置を示すアドレスを相互に関連付けることによって構成した第１ダミーデータを用いて、前記更新差分データ格納部に格納された該更新差分データを更新することにより、前記データ格納部に格納されたデータと同一のバージョン（Ｖｅｒ．Ｎ−１）のデータのデータ値を全てダミーとして配列化して表し、アドレスとダミーフラグおよび値もしくは位置を示すアドレスを相互に関連付けることによって構成された第２ダミーデータを作成した後、当該第２ダミーデータを、前記第１の更新差分作成部によって作成された更新差分データを用いて更新することにより、前記最新のバージョン（Ｖｅｒ．Ｎ）のデータ同一のバージョンの該データのデータ値を全てダミーとして配列化して表し、アドレスとダミーフラグおよび値もしくは位置を示すアドレスを相互に関連付けることによって構成された第３ダミーデータを作成し、当該第３ダミーデータに基づいて、前記データ格納部に格納されたデータよりも前の各バージョン（Ｖｅｒ．Ｘ）から前記最新のバージョン（Ｖｅｒ．Ｎ）のデータへ更新可能な更新差分データを生成することを特徴とする、請求項１〜請求項３のいずれか１項に記載のデータ管理システム。
【請求項６】
該第２の更新差分作成部が、該第２更新差分データ格納部に格納された更新差分データと、前記第１の更新差分作成部によって作成された更新差分データと、該最新バージョンデータ入力部により入力された前記最新のバージョン（Ｖｅｒ．Ｎ）のデータとに基づいて、
（１）第１のダミー空データ（Ｖｅｒ．Ｎ−１の空データ）と該最新バージョンデータ入力部により入力された前記最新のバージョン（Ｖｅｒ．Ｎ）のデータと前記第１の更新差分作成部によって作成された更新差分データ（Ｖｅｒ．Ｎ−１からＶｅｒ．Ｎ）とに基づいて、前記第１の更新差分作成部によって作成された更新差分データ（Ｖｅｒ．Ｎ−１からＶｅｒ．Ｎ）を解析して、該第１のダミー空データ中に前記最新のバージョン（Ｖｅｒ．Ｎ）のデータの一部を複写するとともに、当該ダミー空データ中における前記複写されたデータ以外の領域にダミーデータを設定して第１のダミーデータを作成し、
（２）第２のダミー空データ（Ｖｅｒ．Ｘの空データ）と該第１のダミーデータと前記更新差分データ格納部に格納された更新差分データ（Ｖｅｒ．ＸからＶｅｒ．Ｎ−１）とに基づいて、前記更新差分データ格納部に格納された更新差分データ（Ｖｅｒ．ＸからＶｅｒ．Ｎ−１）を解析して、該第２のダミー空データ中に前記第１のダミーデータの一部を複写するとともに、当該第２のダミー空データ中における前記複写されたデータ以外の領域にダミーデータを設定して第２のダミーデータを作成し、
（３）該第２のダミーデータと該最新バージョンデータ入力部により入力された前記最新のバージョン（Ｖｅｒ．Ｎ）のデータとを比較することにより、前記データ格納部に格納されたデータよりも前の各バージョンから前記最新のバージョン（Ｖｅｒ．Ｎ）のデータへ更新可能な更新差分データ（Ｖｅｒ．ＸからＶｅｒ．Ｎ）を生成することを特徴とする、請求項１〜３のいずれか１項に記載のデータ管理システム。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】００１４
【補正方法】変更
【補正の内容】
【００１４】
また、該第２の更新差分作成部が、該更新差分データ格納部に格納された該更新差分データと該第１の更新差分作成部によって作成された該更新差分データとに基づいて、前記データ格納部に格納されたデータよりも前のバージョンである任意のバージョン（Ｖｅｒ.Ｘ）のデータに基づいて、当該データのデータ値を全てダミーとして配列化した上で、アドレスとダミーフラグおよび値もしくは位置を示すアドレスを相互に関連付けることによって構成作成した第１ダミーデータを用いて、前記更新差分データ格納部に格納された該更新差分データを更新することにより、前記データ格納部に格納されたデータと同一のバージョン（Ｖｅｒ．Ｎ−１）のデータのデータ値を全てダミーとして配列化して表し、アドレスとダミーフラグおよび値もしくは位置を示すアドレスを相互に関連付けることによって構成された第２ダミーデータを作成した後、当該第２ダミーデータを、前記第１の更新差分作成部によって作成された更新差分データを用いて更新することにより、前記最新のバージョン（Ｖｅｒ．Ｎ）のデータ同一のバージョンの該データのデータ値を全てダミーとして配列化して表し、アドレスとダミーフラグおよび値もしくは位置を示すアドレスを相互に関連付けることによって構成された第３ダミーデータを作成し、当該第３ダミーデータに基づいて、前記データ格納部に格納されたデータよりも前の各バージョン（Ｖｅｒ．Ｘ）から前記最新のバージョン（Ｖｅｒ．Ｎ）のデータへ更新可能な更新差分データを生成してもよい。
【手続補正３】
【補正対象書類名】明細書
【補正対象項目名】００３７
【補正方法】変更
【補正の内容】
【００３７】
この更新差分データ格納部１８もデータ格納部２０ａと同様に、例えば、コンピュータシステムにおけるハードディスクやメモリ等の記憶装置によって実現される。
また、以下、本実施形態においては、更新差分データは、「新規」，「複写」および「移動（参照ポインタの移動）」の３種類の差分コードから構成されており、「新規」の差分コードは「新規データ長」という属性を、「複写」の差分コードは「複写長」という属性を、「移動」の差分コードは「移動量」という属性をそれぞれそなえている
【手続補正４】
【補正対象書類名】明細書
【補正対象項目名】００４６
【補正方法】変更
【補正の内容】
【００４６】
また、データが等しくない場合には（ステップＡ３０のＮＯルート参照）、次に、Ｖｅｒ．Ｎ−１のデータとＶｅｒ．Ｎとの両データにおいてデータが連続して一致する部分を検索して（ステップＡ４０）、その検索の結果、Ｖｅｒ．Ｎ−１のデータに連続して一致する部分を発見できたか否かを確認する（ステップＡ５０）。Ｎ−１のデータに連続して一致する部分を発見できた場合には（ステップＡ５０のＹＥＳルート参照）、更新差分データ（Ｖｅｒ．Ｎ−１からＶｅｒ．Ｎ）に、「移動」として、その発見位置と比較位置との差を「移動量」として、移動を示す差分コードとともに記述する（ステップＡ６０）。
【手続補正５】
【補正対象書類名】明細書
【補正対象項目名】００５６
【補正方法】変更
【補正の内容】
【００５６】
更新差分データ（Ｖｅｒ．ＸからＶｅｒ．Ｎ−１）における比較位置のデータが「移動」である場合には（ステップＢ６０のＹＥＳルート参照）、ステップＢ６０における移動量を求めるとともに、移動を示す差分コードと算出した移動量とを更新差分データ（Ｖｅｒ．ＸからＶｅｒ．Ｎ）に記述して（ステップＢ９０）、ステップＢ１３０に移行する。又、この際、「移動」が連続する場合には、差し引きの移動量を計算する。
【手続補正６】
【補正対象書類名】明細書
【補正対象項目名】００８５
【補正方法】変更
【補正の内容】
【００８５】
そして、第２更新差分作成部１２′は、更新差分データ格納部１８に格納された各更新差分データ（Ｖｅｒ．ＸからＶｅｒ．Ｎ−１）をステップＥ３０において作成したダミーデータＸに用いて更新することにより、Ｖｅｒ．Ｎ−１のダミーデータ（ダミーデータＮ−１）を作成して、図示しないメモリ空間上に展開する（ステップＥ４０）。
また、第２更新差分作成部１２′は、第１更新差分作成部１１ａによって作成された更新差分データ（Ｖｅｒ．Ｎ−１からＶｅｒ．Ｎ）をステップＥ４０において作成したダミーデータＮ−１に適用することにより、Ｖｅｒ．Ｎのダミーデータ（ダミーデータＮ）を作成して、図示しないメモリ空間上に展開する（ステップＥ５０）。
【国際調査報告】
2005055055.tif 000021
2005055055.tif 000022
2005055055.tif 000023
2005055055.tif 000024