"複数の単元および各単元に属する学習項目の名称が各単元と各学習項目との階層関係に基づき配列された目次画面を表示し、この目次画面で学習項目を選択する操作が行われたことに応じて選択された学習項目に対応する学習コンテンツを実行する学習支援装置として、コンピュータを機能させるためのプログラムであって、各単元の単元名がそれぞれ識別コードと共に登録された単元データ記憶部と、各単元に属する学習項目の項目名がそれぞれ識別コードと共に登録された学習項目データ記憶部と、前記学習項目データ記憶部に登録されている学習項目の識別コードが当該項目に対応する単元の識別コードおよび前記目次画面における表示順序を示すシリアル番号に組み合わせられて登録された識別コード記憶部と、前記識別コード記憶部に登録されている各識別コードとシリアル番号との組み合わせに基づき、前記学習項目データ記憶部に登録されている学習項目と前記単元データ記憶部に登録されている単元との関係および各学習項目の表示順序を特定して、目次画面における単元名および学習項目名の配列を決定し、当該目次画面の表示用データを作成する目次画面作成手段と、表示された目次画面内の学習項目名を選択する操作が行われたことに応じて、各学習項目に対応する学習コンテンツが登録されている学習コンテンツ記憶部から選択された学習項目に対応する学習コンテンツを読み出して、当該学習コンテンツを実行するコンテンツ実行手段とを、前記コンピュータに付与するプログラムが含まれている、学習支援用のプログラム。上記のような構成のアプリケーションでは、学習指導要領が改訂されて各学年で学習すべき内容が変更されると、それに合わせてデータベースを更新する必要がある。特許文献2に記載されているように、単元名や学習項目名は識別コードにより管理されるのが一般的であるが、この種の識別コードは、単元と学習項目との対応づけや目次画面における表示の順序などを考慮して設定されることが多いため、データベースを更新する際には、識別コードの付け替えが必要になる。また、一般に、学習コンテンツと学習項目とは、学習項目の識別コードによって紐付けられるため、この紐付け情報も更新する必要が生じる。上記の識別コードの付け替えや紐付け情報の更新にミスがあると、目次画面の表示やコンテンツの呼び出しに支障が生じる。このため、開発者は、念入りなチェックをしながら更新作業を行う必要があり、その作業の手間は膨大なものになる。また、この作業によるコストを回収する必要があるため、アプリケーションの販売価格を引き下げることが困難になる。本発明は上記の問題に着目し、学習内容の変更に容易に対応できる構成のアプリケーションを提供することを課題とする。本発明によるプログラムは、複数の単元および各単元に属する学習項目の名称が各単元と各学習項目との階層関係に基づき配列された目次画面を表示し、この目次画面で学習項目を選択する操作が行われたことに応じて選択された学習項目に対応する学習コンテンツを実行する学習支援装置として、コンピュータを機能させる。この学習支援装置は、各単元の単元名がそれぞれ識別コードと共に登録された単元データ記憶部と、各単元に属する学習項目の項目名がそれぞれ識別コードと共に登録された学習項目データ記憶部と、学習項目データ記憶部に登録されている学習項目の識別コードが当該項目に対応する単元の識別コードおよび目次画面における表示順序を示すシリアル番号に組み合わせられて登録された識別コード記憶部と、識別コード記憶部に登録されている各識別コードとシリアル番号との組み合わせに基づき、学習項目データ記憶部に登録されている学習項目と単元データ記憶部に登録されている単元との関係および各学習項目の表示順序を特定して、目次画面における単元名および学習項目名の配列を決定し、当該目次画面の表示用データを作成する目次画面作成手段と、表示された目次画面内の学習項目名を選択する操作が行われたことに応じて、各学習項目に対応する学習コンテンツが登録されている学習コンテンツ記憶部から選択された学習項目に対応する学習コンテンツを読み出して、当該学習コンテンツを実行するコンテンツ実行手段とを具備する。上記の構成によれば、目次画面を表示する場合には、識別コード記憶部に登録された識別コードの組み合わせにより単元データ記憶部および学習項目データ記憶部を参照することによって、単元と学習項目との関係を容易に特定し、これらの関係にシリアル番号による順序を適用することにより、目次画面における単元名および学習項目名の配列を容易に決定することができる。また単元や学習項目が変更される場合には、既存の単元や学習項目に関してはこれまでの識別データを維持し、新たに追加される単元や学習項目に新しい識別データを設定することで対応することができる。また、単元や学習項目の追加や削除に伴い、既存の単元や学習項目の表示順序を変更する必要が生じた場合にも、識別コード記憶部の該当するレコードのシリアル番号を変更することで対応することができる。特に、学習項目の識別データを、原則として不変のコードとしておけば、学習項目データ記憶部の更新を、新規の学習項目を追加する処理にとどめることができる。また、既存の学習項目と単元との対応関係が変更される場合にも、識別コード記憶部の登録情報を書き換える処理により対応することができる。学習項目と学習コンテンツとの紐付けに用いられる情報を、既存の内容で維持することもできる。なお、単元名の識別コードも不変のコードとするのが望ましいが、単元の数が比較的少ない場合には、更新に応じて単元名の識別コードを設定し直してもよい。本発明によれば、学習指導要領の改訂などに伴って単元と学習項目との階層関係や目次画面の構成を変更する必要が生じた場合でも、多大な労力をかけることなく、容易に対応することが可能になる。よって、品質の良い学習用アプリケーションを安定した価格で提供することが可能になる。図1は、本発明が適用された自主学習用のアプリケーションの構成例を示す。このアプリケーションは、パーソナルコンピュータを、中学生の自主学習を支援するための装置として機能させるためのもので、ユーザインタフェース1、データ処理部2、固定データテーブル群3、コンテンツ用データベース4、および可変データテーブル群5などにより構成される。これらの機能は、パーソナルコンピュータのハードディスク装置にインストールされた相当数のプログラムファイルおよびデータファイルにより設定される。なお、インストール用のプログラムは、CD-Rなどの記憶媒体やネットワークによる配信により提供されるが、コンテンツ用データベース4は容量が大きいので、たとえば、あらかじめコンテンツ用データベース4が登録されたハードディスク装置を販売するなど、他の機能とは別の方法で提供してもよい。ユーザインタフェース1は、図示しないモニタに種々の画面を表示すると共に、マウス、キーボードなどの入力部を介して学習者からの入力を受け付ける。図1では、ユーザインタフェース1に含まれる主要な機能として、コンテンツ選択処理部11,コンテンツ実行部12、学習記録処理部13、総合成績処理部14を示すが、これらのほか、ユーザインタフェース1には、学習者の登録情報を受け付ける機能や登録された学習者のログインを受け付ける機能なども設定される。データ処理部2は、ユーザインタフェース1に出力用のデータを提供したり、ユーザインタフェース1が受け付けたデータを処理するためのもので、コンテンツ読出部21、参照データ読出部22、採点処理部23、成績処理部24、登録処理部25などが含まれる。固定データテーブル群3には、科目データテーブル31、単元データテーブル32、学習項目データテーブル33、対応づけデータテーブル34などが含まれる。これらのデータテーブルは、開発者により作成され、特定のパスワードによりアクセスした者にのみ書き換えを許可するように設定されている。科目データテーブル31には、後記する14種類の科目名が科目コードに組み合わせられて登録される。いずれの科目にも複数の単元が含まれ、各単元には、少なくとも1つの学習項目が含まれる。単元データテーブル32には、各科目に設定されている単元の単元名が単元コードに組み合わせられて登録される。学習項目データテーブル33には、各学習項目の項目名が学習項目コードに組み合わせられて登録される。この実施例では、14種類の科目に、それぞれ1~14の数字を100倍した数字100,200,3001400を科目コードとして設定する。また各科目の単元には、対応する科目の科目コードに続くシリアル番号を単元コードとして設定する。たとえば、後記する数学S3の科目コードは600であり、単元コードは、601,602,603,となる。学習項目コードには、二桁のシリアル番号が割り当てられる。このシリアル番号は、科目毎に01を初期値として振り直されるため、科目間で数字が重複するが、この実施例では、科目コードと学習項目コードとを組み合わせることにより600-01のようなユニークなコードを設定する。この科目コードと学習項目コードとの組み合わせによるコードは、学習コンテンツの呼び出しや学習履歴の保存などの際に処理対象の学習項目を特定するための識別コードとして使用されるもので、以下、このコードを学習項目特定コードと呼ぶ。この実施例では、原則として、学習項目コードを書き換えないようにしているが、科目コードと学習項目コードとの組み合わせにより学習項目を特定するので、新たな学習項目が追加された場合でも、科目毎に学習項目コードを連続させることができる。なお、項目コードを、単元コードと同様に、科目コードを表す数字が組み込まれた構成とすれば、項目コードのみで学習項目を特定することができ、科目毎に学習項目コードを連続させることもできる。科目毎に学習項目コードを連続させる必要がないのであれば、科目や学年を問わず、全ての学習項目に一連のシリアル番号による項目コードを付与してもよい。対応づけデータテーブル34には、各学習項目の項目コードと当該項目が属する単元の単元コードとの組み合わせが、それぞれシリアル番号に対応づけられて登録される。この項目コードと単元コードとの組み合わせも、学習項目特定コードと同様に、ユニークなコードとなる。コンテンツ用データベース4には、学習項目毎にコンテンツデータの格納領域フォルダが設定される。各フォルダには、それぞれ、一群のコンテンツデータ画像、音声、テキストなどのデータファイルや学習コンテンツの実行に必要な定義が書き込まれたファイルなどが格納される。このフォルダやファイルには、それぞれ対応する学習項目の学習項目特定データを含むフォルダ名またはファイル名が付与される。可変データテーブル群5には、学習履歴データテーブル51、ユーザ登録用データテーブル52などが含まれる。ユーザ登録用データテーブル52には、ユーザインタフェース1のユーザ登録機能により受け付けた学習者の名前や識別コードなどが登録される。この学習者の登録は一人に限らず、複数の学習者を登録することもできる。学習履歴データテーブル51には、実行された学習コンテンツやその学習コンテンツにより提示された演習問題に対する学習結果などが実行順に蓄積される。これらの蓄積情報にも、対応する学習項目の学習項目特定コードが付与される。またこの実施例では、ユーザ登録用データテーブル52に学習者が登録されたことに応じて新規の学習履歴データテーブル51を作成するようにしている。したがって、複数人の学習者が登録された場合には、それぞれの学習者毎に学習履歴データテーブル51が設定される。データ処理部2の各機能は、ユーザインターフェース1に連動して動作する。コンテンツ読出部21は、コンテンツ用データベース4からのコンテンツデータの読み出しを担当し、参照データ読出部22は、固定データテーブル群3の各データテーブル31~34からの情報の読み出しを担当する。採点処理部23は、実行されたコンテンツ中の演習問題に対する解答を採点し、登録処理部25は、その採点結果を学習履歴データテーブル51に保存する処理やユーザ登録用データテーブル52への登録処理を担当する。成績処理部24は、学習履歴データテーブル51に保存されているデータを統計処理して、科目毎に、週単位や月単位での成績データを導出する。図2は、ユーザインタフェース1により提示される主要な画面の関係を示す。この図に示すように、この実施例では、まずログイン画面GLにより学習者のログインを受け付けた後に、メニュー画面G0を提示する。このメニュー画面G0は、学習開始画面G1、学習記録表示画面G2、総合成績表示画面G3などを選択できるように構成されている。学習開始画面G1はコンテンツ選択処理部11により作成され、学習記録表示画面G2は学習記録処理部13により作成され、総合成績表示画面G3は総合成績処理部14により作成される。これらの画面作成にあたって必要なデータは、参照データ読出部22による読み出しや、成績処理部24による編集処理によって得られる。学習開始画面G1には、次の図3に示すように、単元名および学習項目名が配列された目次欄102が含まれ、この目次欄102において学習項目を選択できるように構成される。学習記録表示画面G2では各学習の履歴が日単位で示され、総合成績表示画面G3では毎回の学習で実行された演習の成績を単元毎または学習項目毎に累計した結果が示される。各画面G1,G2,G3は相互に移動できるように設定される。また、成績が悪い学習項目の再学習を促すために、学習記録表示画面G2や総合成績表示画面G3でも、学習項目の選択を受け付けることができるように設定されている。画面G1,G2,G3のいずれかにおいて学習項目が選択されると、その選択はユーザインターフェース1により受け付けられて、画面がコンテンツ実行画面G4に切り換えられる。この段階では、コンテンツ実行部12とコンテンツ読出部21とが協働して、選択された学習項目の学習コンテンツを実行する。また学習コンテンツ中の演習問題に対する利用者の解答は採点処理部22に渡されて採点処理が実施され、採点結果が画面に表示されると共に、採点に基づく成績データが学習履歴データテーブル51に格納される。学習コンテンツが終了すると、画面は、コンテンツ実行前に表示されていた画面に復帰する。以下、学習開始画面G1の構成や、この画面G1の作成に大きく関わる単元データテーブル32、学習項目データテーブル33、対応づけデータテーブル34について詳細に説明する。図3は、学習開始画面G1の具体例を示す。この画面G1には、科目選択欄101と、選択された科目に対応する目次欄102とが設けられる。科目選択欄101には、科目データテーブル31に登録されている科目毎に、その科目名を含む選択ボタン107が設けられる。図3の例の画面G1では、数学S3中学3年生の数学が選択されているが、いずれかのボタン107により科目の選択が切り換えられると、これに応じて目次欄102の表示が更新される。目次欄102には、選択された科目に設定されている単元の単元名と各単元に含まれる学習項目の項目名とが、単元と学習項目との階層関係に基づく表の形式に編集されて表される。さらに各学習項目に、学習コンテンツの呼び出し用のボタン110が設定されている。また目次欄102の右端部には、過去の学習回数を表示する欄111チャレンジ欄や、コンテンツ中の演習で得た得点を表示するための欄112得点欄が設けられる。これらの欄111,112に表示される情報は成績処理部24により作成されるが、その作成に必要な履歴データが学習履歴データテーブル51に保存されていない場合には、図3に示すように、欄111,112は空白状態となる。なお、図3の例では、各学習項目に対し、コンテンツの呼び出し用のボタン110を1つずつ設けているが、これに限らず、授業用のコンテンツの呼び出しボタンと演習用のコンテンツの呼び出しボタンとを分けるなどして、複数のボタンを設けてもよい。また、図3の例では、学習項目毎に1行ずつ表示行を設けているが、これに限らず、学習の内容やレベルなどに応じて、学習項目毎に複数行の表示を行ってもよい。上記のほか、図3の学習開始画面G1には、他の画面への切り換えを指示するボタン103,104,105や学習の終了を指示するボタン106などが設けられる。ボタン104が操作されると図2に示した学習記録表示画面G2に移行し、ボタン105が操作されると総合成績表示画面G3に移行する。またボタン103が操作されると、図2に示していない実戦問題用の学習開始画面図3と同様の構成の画面となる。に移行し、ボタン106が操作されると、ログイン画面GLに戻る。図4は単元データテーブル32の構成例を、図5は学習項目データテーブル33の構成例を、図6は対応づけデータテーブル34の構成例を、それぞれ示す。これらの図はいずれも、図3の画面で選択されている数学S3に対応する範囲のデータを抜き出したものである。図4に示す単元データテーブル32の各レコードには、3桁の数字による単元コードと単元名とが含まれる。先に述べたように、単元コードは、対応する科目の科目コード600から続くシリアル番号601,602,603である。また、この単元コードは、目次欄102における各単元の表示順に設定される。図5に示す学習項目データテーブル33の各レコードには、2桁の数字による項目コードと学習項目名とが含まれる。また、図5には示していないが、各レコードには、対応する科目の科目コード600が紐付けられ、この科目コードとレコード内の項目コードとを組み合わせることにより、当該レコード内の学習項目名に対応する学習項目特定コードを作成することができる。また図5は、初期状態のテーブルであるため、各項目コードは目次欄102における学習項目の表示順序と整合しているが、学習項目の追加や削除が行われると、項目コードと表示の順序との整合性が崩れる場合がある。図6に示す対応づけデータテーブル34には、図5の学習項目データテーブル33に登録されている学習項目毎に、その学習項目が属する単元の単元コードと当該学習項目の項目コードとシリアル番号とが登録される。単元コードと項目コードとの組み合わせは単元と学習項目との対応関係を表し、シリアル番号は、各学習項目が目次欄102に表示される場合の表示順序を示す。なお、対応づけデータテーブル34の各レコードには、さらに科目コードを含めてもよい。図7は、上記の3種類のデータテーブル32,33,34を用いて学習開始画面G1の目次欄102における単元や学習項目の配列を決定する場合について、処理の手順の一例を示す。この例では、対応づけデータテーブル34の各レコードをシリアル番号順に読み出し、このレコード内の単元コードおよび項目コードに基づき、目次欄102の各欄の表示を1行ずつ決定する。まず最初のステップS1で、読み出し対象のレコードを特定するための変数numを初期値の1にセットし、つぎのステップS2において、対応づけデータテーブル34からシリアル番号がnumのレコードを読み出す。読み出されたレコード内の単元コードが新規のコードまだ読み出されていないコードであれば、ステップS3の判定がYESとなり、ステップS4に進む。num=1のときは、ステップS3はYESとなる。ステップS4では、ステップS2で読み出されたレコード内の単元コードに対応する単元名を単元データテーブル32から読み出し、その名称を単元の欄に追加する。つぎにステップS5では、ステップS2で読み出されたレコード内の項目コードに対応する学習項目名を学習項目データテーブル33から読み出し、その名称を学習項目の欄に追加する。ステップS6では、選択中の科目の科目コードと読み出されたレコード内の項目コードとによる学習項目特定コードにより学習履歴データテーブル51を検索して、該当する学習項目の過去の学習回数や成績などを取得する。ステップS7では、ステップS6で取得した情報に基づき、チャレンジ欄111や得点欄112の表示を設定する。ただし、ステップS6で情報を取得できなかった場合には、これらの欄111,112は空白状態に設定される。ステップS4~S7の各処理により、目次欄102の1行分の表示情報が確定すると、ステップS8でnumをインクリメントしてステップS2に戻る。以下、numに対応するレコードがなくなってステップS9の判定がNOとなるまで、上記と同様の処理を繰り返す。なお、2番目以降に読み出されたレコードに、既に読み出されている単元コードが含まれている場合には、ステップS3がNOとなり、ステップS4がスキップされる。図7の処理により、各行の表示内容が決定すると、確定された内容に基づく目次欄102を含む学習開始画面G1が作成されて、モニタに表示される。なお、ステップS4の処理により単元名が設定された行には、単元の順番を表す数字1,2,3が設定されると共に、上の行との間に区切り線が設定される。また目次欄102の各行のボタン110には、その行に表示されている学習項目の学習項目特定コードのリンクが設定される。上記のとおり、この実施例では、各単元の単元コードと各学習項目の項目コードとをそれぞれデータテーブル32,33により個別に管理すると共に、各単元と学習項目との対応関係および表示の順序を対応づけデータテーブル34により定義し、対応づけデータテーブル34内の各レコードをシリアル番号順に読み出して、各レコード内の単元コードおよび項目コードによりテーブル32,33を参照することにより、目次欄102における単元名および学習項目名の配列を決定する。さらに、上記の3種類のデータテーブル32,33,34の構成によれば、指導要領の改訂などに伴って単元や学習項目の内訳を変更する必要が生じた場合でも、学習項目データテーブル33に登録されている既存の学習項目に関するデータを変更することなく、対応することができる。図8,図9,図10は、それぞれ単元データテーブル32,学習項目データテーブル33,対応づけデータテーブル34を更新する例を示す。いずれの図でも、左側の変更前のテーブルAは、図4,図5,図6に示したのと同じものであり、右側の変更後のテーブルBでは、変更された箇所を、太枠線一点鎖線により囲んで示す。また、各データテーブル32,33,34に追加されたレコードを、アルファベットの符号により識別する。図8に示す単元データテーブル32の更新例では、既存のレコードが全て維持されると共に、2つのレコードP,Qが追加されている。レコードPには、単元コードとして609が設定され、これに伴い、それまで609610611の各単元コードが設定されていたレコード単元名:図形と相似平行線と線分の比三平方の定理とその応用の単元コードが1つずつ繰り下げられている。他方の新規レコードQには、613の単元コードが割り当てられている。図9に示す学習項目テーブル33の更新の例では、既存の学習項目が全て維持されると共に、6個のレコードa,b,c,d,e,fが追加されている。既存のレコードの内容には変更はなく、新規のレコードa~fには、既存のレコードの項目コードに連続する新規の項目コード33~38が設定されている。図10に示す対応づけデータテーブル34の更新の例では、学習項目テーブル33の新規レコードに対応する6個のレコードa1,b1,c1,d1,e1,f1が追加されている。これら新規のレコードa1~f1には、それぞれ学習項目テーブル33内の対応レコード内の項目コードと、当該対応レコード内の学習項目が属する単元の単元コードとが含まれる。レコードa1~e1は既存のレコードの配列の間に挿入され、レコードf1は末尾のレコードに設定され、これら新規レコードを含む範囲内のシリアル番号が付け替えられる。また既存のレコードのうち単元コードが609610611に設定されていたものについては、図8の単元データテーブル32の変更と同様に、各単元コードが1ずつ繰り下げられる。図11は、各データテーブル32,33,34が図8,図9,図10のように変更されたことに伴い、学習開始画面G1の目次欄101の表示が変化する例を示す。具体的に図11では、データの変更の影響を受ける6番目の単元2次方程式以降を対象に、単元の欄および学習項目の欄を抜粋して示す。まず、この例では、既存の単元2次方程式に新規の学習項目2次方程式の解の公式が追加されている。この追加は、対応づけデータテーブル34の項目コードが16および17の各レコードの間に挿入された新規レコードa1により実現したものである。新規の学習項目名は、レコードa1内の項目コード33により学習項目テーブル32から新規レコードaを読み出すことにより導出されたものである。つぎに、既存の単元である関数とグラフと図形と相似との間に新規の単元円の性質が挿入されると共に、この新規単元に3個の学習項目直角三角形と円円周角の定理円周角の定理の逆が設定されている。これらの追加は、対応づけデータテーブル34の項目コードが22および23の各レコードの間に挿入された新規レコードb1,c1,d1により実現したものである。新規の単元名は、レコードb1内の単元コード609により単元データテーブル32から新規レコードPを読み出すことにより導出されたものである。新規の学習項目名は、各レコードb1,c1,d1内の項目コード343536により項目データテーブル33から新規レコードb1,c1,d1を読み出すことにより導出されたものである。さらに図11の例では、既存の単元平行線と線分の比の平行線と比と中点連結定理との間に新規の学習項目相似な図形の面積比と体積比が挿入されている。これは、対応づけデータテーブル34の項目コードが28および29の各レコードとの間に挿入された新規レコードe1により実現したものである。新規の学習項目名は、レコードe1内の項目コード37により学習項目データテーブル33の新規レコードeを読み出すことにより導出されたものである。最後に、新規の単元として標本調査が追加されて、この単元名と同じ名前の学習項目標本調査が設定されている。これは、対応づけデータテーブル34の最後に追加された新規レコードf1により実現したものである。新規の単元名は、レコードf1内の単元コード613により単元データテーブル32から新規レコードQを読み出すことにより導出されたものである。新規の学習項目名は、レコードf1内の項目コード38により学習項目テーブル33から新規レコードfを読み出すことにより導出されたものである。なお、上記の例では、単元データテーブル32に関しては、既存の単元の間に新規の単元を挿入するのに伴い、単元コードを付け直しているが、単元コードに関しても学習項目コードと同様に不変のコードとし、新規の単元の単元コードには、既存の単元コードに続く数字を設定してもよい。また、上記では、単元や学習項目を追加する例のみを示したが、単元や学習項目を削除する場合には、各データテーブル32,33,34内の削除対象のデータを含むレコードを削除すればよい。ただし、対応づけデータテーブル34内の対象レコードが削除されるのであれば、単元データテーブル32や学習項目データテーブル33の該当レコードを維持してもよい。なお、異なる学年間で単元を移動させる場合には、移動前の学年に関して単元や学習項目を削除する場合と同じ処理を実行し、移動後の学年に対し、単元や学習項目を追加する場合と同じ処理を実行すればよい。ただし、学習コンテンツに関しては、例外的に、既存のフォルダ名やファイル名を変更する処理が必要となる。各データテーブル32,33,34やコンテンツ用データベース4の更新は人手により行われるが、この実施例では、学習項目を追加する場合には、既存の学習項目の項目コードを維持し、追加された学習項目に新規の項目コードを設定する方法により対応することができるので、項目コードを割り当てる作業が容易になる。またコンテンツ用データベース4の更新についても、既存の学習項目に対応する学習コンテンツのデータファイル群の名称を変更する必要がなく、新規の学習項目に対応する学習コンテンツを追加する、という最小限の労力で対応することができる。さらに対応づけデータテーブル34を更新する作業でも、追加された項目コードにより新規のレコードを容易に見分け、そのレコード内の単元コードやシリアル番号の正否を判断することができるので、バグ探しも容易になる。よって、データの更新に要する労力が大幅に削減され、アプリケーションの提供価格を引き下げることが可能になる。また、上記の構成によれば、更新されたデータテーブル32,33,34や、その更新に伴い、追加または修正されたコンテンツ用データのみを、アップデート用のプログラムとして販売することもできる。"