"複数の店舗がそれぞれ発行したレシートの画像を認識することにより,各店舗に共通な特定の基本管理項目からなる基本管理データを収集するレシート認識システムが各店舗ごとのレシートの認識に用いるレシート定義データを作成するレシート定義データ作成装置であって,レシートのイメージデータを含む画像データを記憶する画像データ記憶手段と,前記基本管理項目の情報を記憶する基本データ記憶手段と,前記基本データ記憶手段に記憶された基本管理項目の情報の表示と前記画像データ記憶手段に記憶されたレシートのイメージデータの表示とを含む定義入力画面を表示する定義入力画面表示手段と,前記定義入力画面から,レシートの読取項目と,前記イメージデータにおける前記読取項目に対応する金額欄の位置情報と,前記読取項目と前記基本管理項目との対応情報とを入力する入力データ処理手段と,前記入力データ処理手段が入力した情報に基づき,前記レシートの読取項目,および前記イメージデータにおける前記読取項目に対応する金額欄の位置情報,および前記読取項目と前記基本管理項目との対応情報を含むレシート定義データを作成する定義データ作成手段と,作成されたレシート定義データを記憶する定義データ記憶手段とを備えることを特徴とするレシート定義データ作成装置。請求項1記載のレシート定義データ作成装置において,前記定義入力画面は,前記読取項目に対する演算式の入力画面を有し,前記入力データ処理手段は,前記定義入力画面に前記読取項目の演算式が入力された場合に,入力された演算式に従って複数の前記読取項目を一つの前記基本管理項目に対応づける対応情報を作成する手段を有することを特徴とするレシート定義データ作成装置。請求項1または請求項2記載のレシート定義データ作成装置において,前記入力データ処理手段は,レシート内に前記読取項目と同一名称の他の項目が存在する場合に,前記読取項目を特定する基準となる複数キーワードまたはマーカー項目を前記定義入力画面から入力する手段を有し,前記定義データ作成手段は,作成するレシート定義データ内の前記読取項目の定義データに前記複数キーワードまたは前記マーカー項目のデータを設定する手段を有することを特徴とするレシート定義データ作成装置。請求項1から請求項3までのいずれか1項に記載のレシート定義データ作成装置において,前記入力データ処理手段は,前記定義入力画面からの前記レシートの読取項目または前記金額欄の位置情報の入力において,前記レシートのイメージデータの表示における入力装置によるポイント操作またはドラッグ操作に対して,該当する読取項目の文字列または金額の文字列の領域を定めるとともに,その領域の大きさを自動調整し,領域を囲む枠線の表示または強調表示によって文字領域を特定する表示を行う手段を有することを特徴とするレシート定義データ作成装置。請求項1から請求項4までのいずれか1項に記載のレシート定義データ作成装置において,前記入力データ処理手段は,入力した前記読取項目について誤認識した場合またはその文字認識精度が悪い場合に,前記読取項目に代替する代替項目をユーザに指定させて代替項目を入力する手段を有し,前記定義データ作成手段は,前記読取項目に加えて前記代替項目をレシート定義データ内に設定するとともに,前記金額欄の位置情報を前記代替項目からの相対距離で設定する手段を有することを特徴とするレシート定義データ作成装置。請求項1から請求項5までのいずれか1項に記載のレシート定義データ作成装置において,前記入力データ処理手段は,前記作成されたレシート定義データまたはその履歴データから抽出したデータを,前記定義入力画面に設定し,他のレシート定義データの作成時に参照させる手段を有することを特徴とするレシート定義データ作成装置。コンピュータを,請求項1から請求項6までのいずれか1項に記載のレシート定義データ作成装置が備える,前記画像データ記憶手段と,前記基本データ記憶手段と,前記定義入力画面表示手段と,前記入力データ処理手段と,前記定義データ作成手段と,定義データ記憶手段,として機能させるためのレシート定義データ作成プログラム。前述したような,ショッピングセンター等の各店舗から提供される精算レシート以下,レシートというを集計するために,ショッピングセンター等を運営する会社組織のテナント管理部門では,従来,事務員が目視でレシートを読み取り,読み取ったデータを手作業でデータ処理装置に入力していた。この売上集計作業の作業量は,店舗数が100店舗以上に及ぶこともあり,しかも毎日行わなければならない作業であるため,非常に負担が大きいものであった。この負担を軽減するための一案としては,各店舗の売上データレシートデータを,各店舗の端末からネットワークを介して自動収集することが考えられる。しかし,一般に各店舗は企業体が異なるため,個々にネットワーク開設の許諾を得る必要があり,さらに導入されているシステムによって接続するネットワークの種類やアプリケーションの追加修正の難易度が異なるなど,解決が困難な問題が存在する。既存のシステムの変更,特に各店舗における端末などの情報機器の変更をできるだけ行わないで,前述した作業負担を軽減する他の案としては,レシートデータを人間が読み取るのではなく,文字画像の認識によって読み取る方法が考えられる。すなわち,各店舗のレシートを,例えばOCROpticalCharacterRecognition機能を有する読取装置,スキャナー等で読み取り,読み取ったレシート項目とその数値データについて売上管理項目に必要なものを抽出し,売上管理データに入力し直す方法である。このように,レシートの文字画像を認識して,売上管理データを自動で作成する場合,売上管理データとして必要な売上管理項目とレシートの読取項目とがどのように対応しているかの対応情報,また,レシートの読取項目の文字列項目名称およびその読取項目に対応する金額欄の画像上の位置情報を,レシート定義データとして事前に用意する必要がある。このレシート定義データを一度作成して,レシート認識装置に登録すれば,OCR機能を有する読取装置等によりレシート画像を読み取り,その読み取ったレシート画像から売上管理データの作成に必要なレシート項目を抽出し,毎日の売上管理データをある程度自動で収集することができると考えられる。問題は,このレシート定義データをどのような方法により作成するかである。まず,人手により,レシート定義データを一つずつ入力することが考えられるが,大規模ショッピングモール等では,店舗数が100店舗以上にもなることがざらであり,レシート定義データを人手により入力するのは大変な作業量となる。さらに,ショッピングモール等では,出店する店舗の入れ替えが頻繁にあり,新しい店舗が加入する都度,新しいレシート定義データを人手により入力するのは,煩雑な作業となる。そこで,レシート定義データをできるだけ簡単に作成することができるコンピュータによる支援技術が望まれるが,特許文献2のレシート画像から自動的に帳票定義を作成する技術は,本発明が対象とするようなケースでは不十分であり,次の理由により用いることができない。1特許文献2では,テナント部門が必要とする各店舗の売上の管理に共通する特定の売上管理項目群からなる売上管理データがまったく考慮されていない。2また,特許文献2の技術では,個々のレシートごとの項目定義情報の作成は可能であるが,レシートに印字されている全ての項目を対象としており,必要な項目だけを選択することはできない。3また,特にテナント管理部門が必要とする売上管理項目は,各店舗のレシートに印字されたレシート項目の項目名称と一致するとは限らず,また,必ずしも売上管理項目とレシート項目とが,一対一に対応しているとは限らない。図27は,売上管理項目とレシート項目との対応関係の例を示す図である。テナント管理部門が必要とする売上管理項目は,例えば図27Aに示すように,現金売上,掛売上,クレジット売上,......,純売上というような,各店舗に共通の統一された項目である。図27Bに示すレシートでは,第14行目の現金売上金額が,第1番目の売上管理項目現金売上に対応しており,第2番目の売上管理項目掛売上に対応するレシート項目はなく,第18行目のその他金券金額が,第3番目の売上管理項目クレジット売上に対応している。一方,図示省略するが,他の店舗のレシートでは,例えばレシート項目日報上現金有高とレシート項目感謝カードの金額を加算したものが,第1番目の売上管理項目現金売上に対応しており,レシート項目日報上掛売上が,第2番目の売上管理項目掛売上に対応しており,...というように,各売上管理項目とレシート項目との対応関係が店舗ごとに全く異なる。本発明は,このような背景において,売上管理データをレシートの認識により収集するためのレシート定義データを簡易に作成するための手段を提供することを目的とする。すなわち,本発明は,ショッピングモール等の複数の店舗から出力される形式の異なるレシートを読み込み,必要な売上管理項目だけを正確かつ効率的に取得するためのレシート定義データを簡易に効率よく作成する手段を提供することを目的としている。上記課題を解決するための本発明の概要は,以下のとおりである。なお,以下ではレシートから収集する各店舗に共通な特定の基本管理項目として,売上管理項目を用いる場合を例に説明する。1売上管理データを収集するためのレシート定義データの作成対象となる店舗が発行したレシートを画像として読み込み,画面上に表示し,画面操作によりレシート定義データを作成する。2このとき,あらかじめ定められた必要な売上管理項目精算項目ともいうを画面に表示し,その項目ごとにレシートのイメージデータ上で対応する読取項目レシート項目ともいうを,マウス等の入力装置によるポイント操作またはドラッグ操作等により選択させ,位置情報を取得してレシート定義データを作成する。なお,マウス等でドラッグする場合には,厳密である必要はなく,該当する項目上のどこかにあればよい。例えば,ドラッグされた位置をシステム側で判断して,選択された項目を囲む枠線を自動的に表示し,操作員が正しく指定されたことが確認できるようにする。3選択した項目を読取項目として表示するので,操作員は確認しながら作業ができる。4選択した読取項目は,例えば四則演算の指定により,他の読取項目との演算を可能にする。演算式が指定された場合のその演算式をレシート定義データ内に設定することにより,一つの売上管理項目に複数の読取項目を対応づけることができる。5また,レシート内において,選択した項目と同一名称の項目の存在をチェックする。同一名称の複数の項目が存在する場合,読取項目として特定するための複数のキーワードやマーカー項目必要な項目位置の基準を定める項目の設定を促す。6また,読取項目がOCR認識困難文字の潰れ,文字接触,罫線接触などと想定される場合に,読取項目に代替するレシート項目を代替項目として定義し,代替項目からの相対位置の金額を認識できるようにする。7また,例えば店舗情報を参照することにより,類似する業務のレシート定義データが既に存在する場合,その既存のレシート定義データを利用して,新しいレシート定義データを作成することを可能とする。詳しくは,本発明は,複数の店舗がそれぞれ発行したレシートの画像を認識することにより,各店舗に共通な特定の基本管理項目からなる基本管理データを収集するレシート認識システムが各店舗ごとのレシートの認識に用いるレシート定義データを作成するレシート定義データ作成装置であって,レシートのイメージデータを含む画像データを記憶する画像データ記憶手段と,前記基本管理項目の情報を記憶する基本データ記憶手段と,前記基本データ記憶手段に記憶された基本管理項目の情報の表示と前記画像データ記憶手段に記憶されたレシートのイメージデータの表示とを含む定義入力画面を表示する定義入力画面表示手段と,前記定義入力画面から,レシートの読取項目と,前記イメージデータにおける前記読取項目に対応する金額欄の位置情報と,前記読取項目と前記基本管理項目との対応情報とを入力する入力データ処理手段と,前記入力データ処理手段が入力した情報に基づき,前記レシートの読取項目,および前記イメージデータにおける前記読取項目に対応する金額欄の位置情報,および前記読取項目と前記基本管理項目との対応情報を含むレシート定義データを作成する定義データ作成手段と,作成されたレシート定義データを記憶する定義データ記憶手段とを備えることを特徴とする。また,本発明の一態様においては,さらに,前記定義入力画面は,前記読取項目に対する演算式の入力画面を有し,前記入力データ処理手段は,前記定義入力画面に前記読取項目の演算式が入力された場合に,入力された演算式に従って複数の前記読取項目を一つの前記基本管理項目に対応づける対応情報を作成する手段を有することを特徴とする。また,本発明の他の一態様においては,前記入力データ処理手段は,レシート内に前記読取項目と同一名称の他の項目が存在する場合に,前記読取項目を特定する基準となる複数キーワードまたはマーカー項目を前記定義入力画面から入力する手段を有し,前記定義データ作成手段は,作成するレシート定義データ内の前記読取項目の定義データに前記複数キーワードまたは前記マーカー項目のデータを設定する手段を有することを特徴とする。また,本発明の他の一態様においては,前記入力データ処理手段は,前記定義入力画面からの前記レシートの読取項目または前記金額欄の位置情報の入力において,前記レシートのイメージデータの表示における入力装置によるポイント操作またはドラッグ操作に対して,該当する読取項目の文字列または金額の文字列の領域を定めるとともに,その領域の大きさを自動調整し,領域を囲む枠線の表示または強調表示によって文字領域を特定する表示を行う手段を有することを特徴とする。また,本発明の他の一態様においては,前記入力データ処理手段は,入力した前記読取項目について誤認識した場合またはその文字認識精度が悪い場合に,前記読取項目に代替する代替項目をユーザに指定させて代替項目を入力する手段を有し,前記定義データ作成手段は,前記読取項目に加えて前記代替項目をレシート定義データ内に設定するとともに,前記金額欄の位置情報を前記代替項目からの相対距離で設定する手段を有することを特徴とする。また,本発明の他の一態様においては,前記入力データ処理手段は,前記作成されたレシート定義データまたはその履歴データから抽出したデータを,前記定義入力画面に設定し,他のレシート定義データの作成時に参照させる手段を有することを特徴とする。以上により作成されるレシート定義データは,以下のデータを含む。1基本管理項目とレシート内の読取項目との対応情報。すなわち,基本管理項目として計上する金額は,レシート内のどの読取項目に対する金額であるかを示す情報。2レシート内の読取項目の文字列と,それに対応する金額欄の相対的な位置情報。3基本管理項目の金額が,複数の読取項目の金額の四則演算によって算出される場合には,その演算式を示す情報。4その他,レシート内に必要な読取項目と同一名称同じ文字列の項目が複数あった場合に,必要な読取項目を特定するための複数キーワードやマーカー項目などの文字情報および読取文字との位置関係を示す情報。本発明の効果は以下のとおりである。1レシートから基本管理項目に必要な読取項目を抽出する場合,どの基本管理項目にどの読取項目が対応するかを示すレシート定義データを,実際のレシートを用いて簡易に作成することができる。特に,操作員は,選択した読取項目を画面上で確認しながら,入力ミスを防いで容易に入力作業をすることができる。2レシート定義データ中に読取項目の演算式を設定することができるので,一つの基本管理項目の金額を,複数の読取項目に対応する金額から算出することができ,レシート項目の内容が個々の店舗によって種々異なる場合でも,統一した基本管理項目のデータを収集することができる。3レシートから基本管理項目に必要な読取項目について項目名称に同一の名称が複数存在する場合に,選択する読取項目を特定するための複数のキーワードとなる項目名称や読取項目に対する位置関係を特定する他のユニークな項目名称を持つマーカー項目の情報をレシート定義データに設定することができる。これにより,基本管理データの収集時におけるレシートデータの抽出の誤認識を回避することができる。4画面上で基本管理項目に対応する読取項目を簡単な操作で選択することができ,また,指定された領域の自動調整機能を有することにより,その入力および確認が容易であり,効率よくレシート定義データを作成することができる。5また,レシートの印字における文字の潰れ,文字接触,罫線接触などにより,読取項目についてOCR認識困難な場合があっても,レシート内の他の項目を読取項目の代替項目として定義できるので,読取精度のよいレシート定義データの作成が可能になる。6また,同様な業務内容の店舗の新しいレシート定義データを作成する場合に,既存のレシート定義データを流用して,異なる読取項目の部分だけの入力でレシート定義データを作成することができるため,迅速にレシート定義データを作成することができる。本発明によって作成されたレシート定義データを用いることにより,レシートの読取項目が異なる各種店舗のレシートデータから,テナントの管理部門が必要とする基本的なデータを統一的に収集し,売上管理データベースなどの基本データ管理データベースに保存することができるようになる。以下,図面を用いながら,本発明の実施の形態について詳細に説明する。なお,以下では,主に店舗売上を集計する装置の例について説明するが,本発明は売上集計に限られるわけではなく,仕入集計データやその他の伝票などに印字された実績データを集計するための装置などにも同様に適用することができる。図1は,本発明の概要を説明するための装置構成例を示す。図1において,1はCPUおよびハードディスクやメモリ等の記憶装置等から構成され,レシートから読み取った画像データをもとに,レシート定義データを作成する処理を実行するレシート定義データ作成装置,2はレシート定義データの作成対象となるレシート,3は表示装置,4はキーボードやマウス等の入力装置である。レシート2は,透明なキャリアシート等に挟まれた状態で読取機10に読み取られる。読取機10は,光学方式などによる画像のスキャンニングにより,レシート2の画像を読み取る装置である。画像データ読込部11は,周知のOCR処理機能を持ち,読取機10により読み取った画像を所定の画像データに変換する。なお,読取機10がOCR処理機能を有する場合には,画像データ読込部11は,OCR処理機能を持たなくてもよい。画像データは,例えばイメージデータが格納された画像ファイル,OCRによる認識文字データを含む。画像データ読込部11は,OCR処理結果の画像データを画像データ記憶部101に保存する。定義入力画面表示部12は,店舗マスタ103を参照し,指定された店舗のレシート定義データを作成するために,基本データ記憶部102に格納されている基本的な売上管理項目の情報と,画像データ記憶部101に格納されているレシートのイメージデータを含む画像データの表示領域を有する定義入力画面を,表示装置3に表示する。入力データ処理部13は,表示された定義入力画面から,レシートの読取項目と,イメージデータにおける読取項目に対応する金額欄の位置情報と,読取項目と売上管理項目との対応情報とを入力する。このため,入力データ処理部13は,イメージデータにおける読取項目の位置の座標およびそれに対応する金額欄の位置の座標を入力装置4から取得する座標取得部131,複数の読取項目を一つの売上管理項目に対応づける演算式を定義する演算定義部132を備える。また,入力データ処理部13は,レシート内に読取項目と同一名称の他の項目が存在する場合に,読取項目を特定する基準となる複数キーワードを定義入力画面から入力して設定する複数キーワード設定部133および読取項目を特定する基準となる他のユニークな読取項目を定めるマーカー項目設定部134を備える。さらに,入力データ処理部13は,入力した読取項目について認識エラーがあった場合や文字認識精度が悪い場合に,読取項目に代替する他のレシート項目を代替項目として操作員に指定させて代替項目を入力する代替項目処理部135を備える。定義データ作成部14は,入力データ処理部13によって入力した情報をもとに,店舗ごとのレシート定義データを作成し,定義データ記憶部104に格納する。作成されるレシート定義データの具体例については後述する。レシート定義データは,レシートの読取項目における項目名称とそれに対応する金額項目の相対位置相対的な金額欄の位置などの情報を含むとともに,売上管理項目との対応関係情報を含んでいる。履歴データ作成部15は,定義データ作成部14によって作成されたレシート定義データの履歴データを作成し,履歴データ記憶部105に格納する。この履歴データは,類似する他のレシートのレシート定義データを作成するときに参照して利用することができる。図2は,図1に示すレシート定義データ作成装置1の処理の概要を示すフローチャートである。ステップS11では,画像データ読込部11が,読取機10により精算レシートを読み取る。精算レシートは,各店舗における1日分の売上情報の集計データであり,レシート項目は各店舗が使用しているPOSシステムによって異なっている。画像データ読込部11は,文字認識などによって得られた項目明細やレシートの全体イメージのデータを画像データ記憶部101に格納する。ステップS12では,定義入力画面表示部12が,画像データ記憶部101,基本データ記憶部102,店舗マスタ103のデータから定義入力画面を作成し,表示装置3に表示する。定義入力画面には,レシートの全体イメージの表示も行われる。ステップS13では,入力データ処理部13が,定義入力画面からの入力により,精算レシートの項目について,読取項目および演算式などを設定し,読取項目と売上管理項目との対応関係,読取項目とその読取項目に対応する金額欄の位置関係を定める。ステップS14では,定義データ作成部14が,入力データ処理部13により入力した情報をもとに,レシート定義データを作成し,定義データ記憶部104に格納する。ステップS15では,履歴データ作成部15が,作成したレシート定義データについての履歴データを作成し,履歴データ記憶部105に保存する。以上,レシート定義データ作成装置1が実行する大まかな処理を説明したが,以下では,具体的な処理内容やデータ構造について詳しく説明する。図3は,読取機10によって読み取られるレシート2の例を示す図である。読取機10が図3に示すようなレシート2を読み取ると,読取機10または画像データ読込部11のOCR処理により,画像の解析による文字認識が行われる。この文字認識では,図3に示すレシート2における文字列1,2,...,14,...のように,一連の文字列ごとに,文字列を構成する各認識文字の候補とその位置情報とが画像データとして抽出され,画像データ記憶部101に格納される。図4は,画像データ記憶部101に格納される画像データの例を示す図である。画像データ記憶部101には,図4Aに示すように,レシート画像のイメージデータに関するデータと,図4Bに示すように,レシートの文字認識結果のデータ以下,認識文字データというとが格納される。レシート画像のイメージデータは,例えばレシート全体またはレシートにおける文字が印字された部分全体の矩形領域の画像イメージがビットマップ形式の画像ファイルとして格納され,また,このレシート2を発行した店舗を識別する店舗コードが付与される。この店舗コードは,入力装置4から事前に入力してもよいし,また,レシート2を読取機10に読み取らせるときのレシート挟持用シートキャリアシートに付与された各店舗識別用の2次元コード等を解析して入力するようにしてもよい。図4Bに示す認識文字データは,一連の文字列nn=1,2,...についての文字認識の結果が格納されるが,その内容を図3に示す文字列14の例を用いて説明する。まず,文字列14がレシート2における14番目の文字列であり,識別番号がそれを示している。文字列14の文字数は3第1候補の並びは総売上であり,文字列14の座標は,x,y-x’,y’である。この座標は,あらかじめ定められたレシート2の画像の基準位置例えばレシート画像の左上角または文字列群を囲む矩形領域の左上角などを原点とした座標である。さらに,認識文字データは,文字列14を構成する各文字141,142,143の3文字について,各々の座標情報を持つ。また,認識結果の文字と認識用の辞書との相違度の小さい順に,認識結果のいくつかの文字が相違度とともに格納される。例えば,文字141の認識結果の第1番目の候補は総相違度=1311であり,第2番目の候補は脆相違度=1581,第3番目の候補は聡相違度=1640である。ここで,画像データ読込部11は,これらの認識結果の候補をすべて画像データ記憶部101に格納するのではなく,各文字列nを構成する認識候補の各文字の組み合わせと,すべての店舗に共通にあらかじめ用意された認識結果単語辞書であって,レシートに印字される可能性のある文字列があらかじめ格納されている辞書中の単語との照合により,認識結果の文字列を絞り込んで,その絞り込んだ結果だけを画像データ記憶部101に格納するようにしてもよい。図5は,基本データ記憶部102に格納される基本テーブルの例を示す図である。この基本テーブルは,テナント管理部門が集計する売上管理項目の情報を格納している。具体的には,ショッピングセンターにおける売上管理データの管理を対象とした場合,ショッピングセンターを識別するショッピングセンターコード,ショッピングセンターの名称および所在地,ショッンピングセンター内の店舗数の情報を格納している。また,テナント管理に必要な各売上管理項目の項目名称が格納される。この例では,売上管理項目として8個の項目があり,これらの各項目の名称が現金売上,掛売上,クレジット売上,商品券,総売上,消費税,その他控除,純売上である。本システムは,各店舗ごとに異なる各種のレシートの項目の中から,これらの売上管理項目の情報を自動で抽出するためのレシート定義データを,単純な操作で作成することができるようにすることを目的としている。また,この基本テーブルには,各演算管理項目ごとにその演算管理項目が取り得る値の下限値と上限値とが定められ,格納されている。この下限値と上限値とは,レシート画像を文字認識することによってレシートから売上管理項目の金額を自動で抽出した場合に,,誤認識誤入力を少なくするためのチェックに用いられる。図6は,店舗マスタ103の例を示す図である。店舗マスタ103は,レシートを発行する個別の店舗の情報を格納するテーブルであり,あらかじめ用意される。1番目の設定項目である店舗コードは,店舗を識別する番号である。2番目の店舗名称は,店舗の名称である。3番目の業種コードは,店舗の業種を表すコードである。4番目の業種名は,業種の名称である。続いてPOSシステム情報1,2,3として,順に,導入されているPOSシステムの識別コード例:F001,POSシステムのメーカー例:AAAAA,POSシステムの導入年月日例:2000年1月1日などの情報が格納される。また,精算レシート情報1,2,3,4として,順に,精算レシートの長さ,読込形式,精算レシート中の印字項目数,その他の必要な情報が格納される。読込形式の欄には,読取機10がレシート2をそのまま形で読み込む場合には0,レシート2が長過ぎるため,レシート2を複数片にカットして読み込む場合には1の値が設定される。本システムは,以上の画像データ記憶部101,基本データ記憶部102,店舗マスタ103に格納されているデータをもとに,レシート定義データを作成する。なお,店舗マスタ103は,店舗情報が既知であるか入力装置4から事前に入力される場合には必須ではない。図7は,レシート定義データであって,もっとも基本的なデータの例を示している。店舗コードは,どの店舗のレシート定義データであるかを示す店舗の識別コードである。続いて,レシートから読み取るレシート項目の情報が,各項目ごとに格納される。読取項目1識別コードは,1番目の読取項目1の識別コードであり,レシート定義データ内で読取項目を一意に識別するコードである。項目属性には,読取項目の属性が設定される。レシート内に同一名称読取文字が同じの読取項目が存在しない場合,属性値=1である。レシート内に同一名称の読取項目が存在したときに,マーカー項目を基準にして読取項目を特定する場合には,属性値=2である。レシート内に同一名称の読取項目が存在したときに,複数キーワードをもとに読取項目を特定する場合には,属性値=3である。読取文字の認識が困難で代替項目を設定した場合には,属性値=4である。図7Aのレシート定義データは,同一名称の読取項目が複数存在しない場合の例であり,項目属性の属性値は1となっている。1番目の読取項目の読取文字1は,この例では総売上となっている。金額欄の相対読取位置1は,総売上に対応する金額の文字列がどの部分に印字されているかを総売上の文字列の位置からの相対位置で示す。ここで相対位置とは,例えば総売上の文字列領域の左上角を原点としたときの金額欄の位置の座標である。金額欄の位置を読取文字1の位置からの相対位置で示すのは,同じレシートであっても,日によって実際にレシートに印字される行数が異なり,読取文字1の位置が可変であるからである。2番目の読取項目の読取文字2その他金券金額,3番目の読取項目の読取文字3現金売上についても,同様に識別コード,項目属性,読取文字,金額欄の相対読取位置のデータがレシート定義データとして格納される。図7Bのレシート定義データは,読取項目の文字認識が困難な場合の例であり,項目属性の属性値は4となっている。この場合,読取項目例えば消費税の認識の代わりとなる項目を代替項目例えば小計として定義し,金額欄の相対読取位置として代替項目からの相対距離を設定する。図8は,読取項目としてレシート内に同一名称が複数存在する場合のレシート定義データの例を示している。図8Aは,項目属性の属性値が2の場合の例,図8Bは,項目属性の属性値が3の場合の例である。レシート内に読取項目の名称が同じ項目が複数存在する場合例えば,読取項目の項目名称が消費税であり,その消費税という用語が複数行に印字されている場合,どちらの金額を売上管理項目として抽出するかを特定する情報が必要となる。項目属性の属性値が2の場合,読取項目の位置を特定する基準となる他のユニークな項目名称をマーカー項目として定義することにより,同一の名称の項目の一つを実際の読取項目として特定する。図8Aの例では,総売上が読取文字1であるが,レシート内に総売上の項目名称が複数存在するため,他のユニークなレシート上の印字名称である貸在高の項目をマーカー項目として定義している。また,読取文字1の読取位置およびその項目に対応する金額欄の相対読取位置1の他に,マーカー項目からの距離方向を含むの情報が定義される。このマーカー項目からの距離の情報は,マーカー項目貸在高の文字位置から読取文字1総売上の文字位置までの距離x座標,y座標の上限値を示しており,x座標については,読取文字1が右方向に存在する場合には正の値,左方向に存在する場合には負の値をとる。また,y座標については,読取文字1が上方向に存在する場合には正の値,読取文字1が下方向に存在する場合には負の値をとる。図8Aの例では,この値が-50,100であり,マーカー項目貸在高の文字位置からx座標で-50左方向,かつ,y座標で100上方向の範囲内に,収集対象となる読取文字1総売上が存在することを示している。項目属性の属性値が3の場合,複数行に連続して並ぶ複数の項目名称をキーワードとして,それらの複数のキーワードがレシート内でユニークになるように定義することにより,同一の名称の項目の一つを実際の読取項目として特定する。図8Bの例では,総売上が売上管理項目として必要な読取文字1であるが,レシート内に総売上の項目名称が複数存在するため,レシート内でユニークになる総売上,純売上,現金有高,貸在高の複数行にわたる一連の項目を,複数キーワードとして設定し,これらの一塊の文字列により,総売上の読取項目の位置を特定するようにしている。読取文字1の読取位置1は,総売上,純売上,現金有高,貸在高の複数キーワードが印字された最小矩形領域の左上と右下の座標である。また,金額欄の相対読取位置1は,読取文字1の読取位置1の左上の座標を原点として定義した座標である。さらに,レシート定義データとして,図7および図8に示すレシート定義データによって定義された読取項目と,図5に示した基本テーブル中の売上管理項目との対応関係を示す演算式の定義情報が設定される。図9は,その演算式を定義するレシート定義データの例を示している。演算式の定義情報は,図9に示すように,店舗を識別する店舗コードの他に,各売上管理項目と1または複数の読取項目識別コードとの対応情報を持つ。複数の読取項目が,1つの売上管理項目に対応づけられる場合には,複数の読取項目識別コードについての四則演算の演算式が用いられる。図9の例で説明すると,売上管理項目1現金売上に対応する読取項目識別コードは,ABとなっている。これは,読取項目識別コード=Aの読取項目に対応する金額欄に印字された数値と,読取項目識別コード=Bの読取項目に対応する金額欄に印字された数値とを加算した値を,売上管理項目1現金売上の金額として計上することを示している。2番目の売上管理項目2掛売上については,読取項目識別コードCの読取項目を,そのまま掛売上の金額とすることを示している。他の売上管理項目についても同様に,読取項目識別コードの演算式1対1対応の場合を含むによって,各売上管理項目とレシートからの読取項目との対応情報が定義される。次に,履歴データ作成部15によって作成され,履歴データ記憶部105に格納される履歴データの例を,図10に従って説明する。履歴データは,定義データ作成部14によって作成されたレシート定義データの内容を,他の同業種の店舗でのレシート定義データの作成に流用できるようにするために,まとめたものである。業種情報として,業種コード,業種名,POSシステム情報1~3,精算レシート情報1~4などが格納される。また,項目情報として,各読取項目の識別コード,項目属性,読取文字等が格納される。また,演算情報として,各売上管理項目と,該当する読取項目識別コードを用いた演算式が格納される。これらの具体的な内容は,図7ないし図10を用いて説明したレシート定義データの内容と同様である。また,履歴データ作成部15は,履歴データとして辞書情報を作成し,履歴データ記憶部105に格納する。図11は,その履歴データの辞書部の例を示す。履歴データの辞書部には,図11に示すように,業種コード,POSシステム情報,売上管理項目,読取文字,...などの実際にレシート定義データに利用された文字列情報単語などが格納される。この辞書部に格納された文字列情報は,作成済みのレシート定義データを用いて,新しい店舗のレシート定義データを作成する場合に,売上管理項目に該当する読取項目を類推するために用いられる。また,例えば図4で説明した文字認識結果の画像データにおいて,正しい認識結果の文字列を抽出するのに用いることができる。また,実際の売上管理データの収集作業において,自動で誤認識,誤入力を防止するのに用いることができる。次に,レシート定義データ作成装置1が実行する処理について,さらに詳しく説明する。図12~図14は,本実施形態に係るレシート定義データ作成処理の全体のフローチャートである。まず,ステップS201では,入力装置4からの操作員の入力を待ち合わせる。操作員が,メニュー等により,レシート定義データを新規に作成するのか,または作成済みのレシート定義データを参照して作成するのかを指定すると,ステップS202へ進む。ステップS202では,レシート定義データの新規作成か参照作成かを判定し,参照作成の場合,図13のステップ220へ進み,新規作成の場合には,ステップS203へ進む。ステップS203では,レシート定義データを作成するための定義入力画面の初期画面を表示装置3に表示する。図15に,定義入力画面の構成例を示す。定義入力画面30には,レシート定義データを作成する施設とテナント店舗情報の表示領域の下に,売上管理項目一覧表示領域31,OCR読取定義一覧表示領域32,レシート画像表示領域33,マーカー定義一覧表示領域34,計算式入力用領域35が設けられる。売上管理項目一覧表示領域31には,図16Aに示すように,売上管理項目一覧が表示される。売上管理項目一覧は,図5で説明した基本テーブルに格納されている売上管理項目の項目名称と,売上管理項目と読取項目とを対応づける計算式演算式が確定したときに,その計算式が表示される欄を持つ。また,OCR読取定義一覧表示領域32には,図16Bに示すように,操作員の入力操作によって入力されるOCRの読取項目や,レシート画像内においてその項目の領域情報が設定されたどうかを示す情報項目領域,その項目に対応する金額欄の領域情報が設定されたかどうかを示す情報金額情報が表示される。レシート画像表示領域33には,読取機10で読み取ったレシートの画像イメージデータが表示される。この領域の表示においては,スクロール,拡大/縮小などの機能が設けられている。マーカー定義一覧表示領域34は,レシート内に同一名称の読取項目が複数存在する場合に,読取項目を特定するためのユニークなマーカー項目を定義するための情報が表示される。また,計算式入力用領域35には,入力された売上管理項目と読取項目とを対応づける計算式が表示される。ステップS203で,以上のような定義入力画面30の初期画面を表示した後,ステップS204で,操作員の入力を待ち合わせる。ステップS205では,すべての項目の入力が終わると,操作員が定義確定のキーを押すので,その入力があったかどうかを判定し,定義確定の指示が入力されたならば,ステップS208へ進む。定義確定の指示がない場合には,ステップS206へ進み,読取項目の入力と,項目領域の選択と,金額領域の選択処理を行う。この処理の例について,図16および図17を用いて説明する。定義入力画面30の初期画面では,OCR読取定義一覧表示領域32は,図16B1に示すように自動で付与される読取項目ID例えば,aの表示と,空欄の読取項目,項目領域,金額領域の表示が行われている。ここで,読取項目として,例えば純売上が入力により設定されると,その純売上の項目に対するレシート内の項目領域および金額領域の領域が未設定であることを示す未設定の文字が,目立ちやすい表示色で,図16B2に示すように表示される。そこで,操作員は,項目領域の設定操作と金額領域の設定操作を行う。図17は,項目領域の設定を説明する図である。OCR読取定義一覧表示領域32の表示が図17Aに示すとおりであり,レシート画像表示領域33には,図17Bに示すようなレシート画像が表示されているとする。操作員は,レシート画像表示領域33における画像上で,マウス等の入力装置4により,純売上の文字列部分をポイントして,ドラッグまたはクリックする。入力データ処理部13の座標取得部131は,この入力を検知し,レシート画像における純売上の文字列を枠線で囲んで表示する。このとき,例えば図17Cの左側の図に示す矢印のように,純売上の文字列部分を大きくドラッグしても,枠線の自動調整により,図17Cの右側の図に示す点線枠のように必要最小限の大きさで枠線が表示される。このようにして選択された項目領域の左上角座標と,右下角座標とが,内部メモリに記憶される。OCR読取定義一覧では,図17Dに示すように,項目領域の欄が未設定から○に書き換えられ,項目領域の選択処理が済んだことが示される。枠線で囲む領域の大きさの自動調整は,図5で説明したOCRによる認識結果の画像データを参照することにより行うことができる。金額領域の選択処理についても,同様に,レシート画像における該当する金額欄に対するマウス等によるドラッグまたはクリックによって,枠線が表示され,その領域の座標情報が取り込まれることにより行われる。金額領域の設定により,OCR読取定義一覧における金額領域の欄は,未設定から○に書き換えられ,純売上の読取項目に対する定義が終了する。入力欄は,次の行に移る。入力欄がなければ,新しい入力欄が自動的に追加される。なお,枠線の表示で領域を示す代わりに,背景や文字の表示色を変えて領域を示してもよい。以上の読取項目の定義処理に続いて,ステップS207では,演算定義処理が行われる。演算定義処理は,売上管理項目とステップS206で定義された1または複数の読取項目との対応関係を示す計算式を定義する処理である。詳しくは後述する。その後,ステップS204へ戻り,同様に処理を繰り返す。定義確定の指示があった場合,ステップS208へ進み,ステップS208では,読取項目の再チェックを行う。ここでは,読取項目の項目領域について再度,文字認識を行う。または,図4Bで説明した画像データ記憶部101に格納されている認識文字データの中の読取項目の各認識文字に対する相違度の情報から,認識の精度を判定し,誤認識が生じていないかどうか,または認識の精度が所定の閾値より悪いかどうかをチェックする。ステップS209の判定により,認識エラーがないと判定された場合,または認識の精度が悪くないと判定された場合には,図14のステップS230へ進む。そうでない場合には,ステップS210へ進み,操作員に対して代替項目の入力を促す。代替項目は,本来の読取項目について,認識が困難であるか誤認識の可能性が大きいために,他のレシート項目を代替項目として認識対象とし,その代替項目からの相対位置情報によって,本来の読取項目に対する金額を取得することを目的とした項目である。操作員からの代替項目の入力操作があれば,ステップS211により,代替項目の定義処理を行う。その後に,ステップS204へ戻る。代替項目の具体例については,後に,図24を用いて説明する。ステップS202でレシート定義データの参照作成が指定された場合,ステップS220へ進み,参照するレシート定義データを手動で選択するか自動で選択するかの指示を入力する。手動で選択する場合,ステップS221へ進む。ステップS221では,既にレシート定義データを作成済みの店舗の店舗コードを指定する情報を入力し,その店舗コードに該当するレシート定義データを定義データ記憶部104から取得し,ステップS226へ進む。参照するレシート定義データを自動で選択する場合,ステップS222へ進み,履歴データ記憶部105に格納されている履歴データを参照する。次に,ステップS223では,類似データの有無を判断する。この類似データの有無を判断する処理については,図25を用いて後述する。ステップS224の判定により,履歴データ中に,これから作成しようとする店舗のレシート定義データと類似するデータがない場合には,参照作成は不可であるので,ステップS203へ戻り,新規作成と同様な処理を実行する。履歴データ中に,類似するデータがあると判定された場合には,ステップS225へ進み,その類似した店舗のレシート定義データを取得する。ステップS226では,ステップS221またはステップS225で取得したレシート定義データから,取得した店舗の読取項目を類推し,定義入力画面30の編集を行う。すなわち,定義入力画面30の初期画面として,OCR読取定義一覧が空欄の画面を表示するのではなく,参照するレシート定義データ中で定義されている読取項目のデータや,売上管理項目一覧における売上管理項目の計算式を埋め込んだ形の画面を作成し,表示する。その後,ステップS204に進む。ステップS204以降の処理は,前述した処理と同様である。これにより,参照作成の場合には,操作員は,参照する店舗のレシート定義データと異なる部分を必要に応じて修正するだけで,新しい店舗のレシート定義データを簡単に作成することができる。上述したステップS209で,読取項目の認識エラーがない,または認識精度が悪くないと判断された場合,図14のステップS230へ進む。ステップS230では,ステップS206で定義された読取項目について,レシート内に同一文字列の項目がないかをチェックする。続く,ステップ231の判定において,同一文字列があると判定された場合には,ステップS233へ進み,同一文字列がないと判定された場合には,ステップS232へ進む。ステップS232では,履歴データを作成した後,処理を終了する。履歴データ作成処理についての詳細は後述する。同一文字列があった場合,ステップS233により,必要な読取項目を特定するための同一文字列処理を行う。ここでは,マーカー項目の設定や複数キーワードの設定が行われるが,詳しくは後述する。同一文字列処理の後,ステップS204へ戻り,同様に処理を続ける。図18は,演算定義処理図12のステップS207の詳細を示すフローチャートである。以下の処理は,入力データ処理部13における演算定義部132が実行する。ステップS301では,演算の定義に対する入力を待ち合わせる。入力があれば,ステップS302へ進み,その入力をもとに,演算を定義する売上管理項目と,その演算に使用する読取項目を選択する。読取項目は,読取項目IDの指定によって選択することができる。読取項目の選択は1個でも複数個でもよい。ステップS303では,四則演算の演算子を入力し,演算子の選択を行う。なお,などの算術記号や演算の順序を指定する括弧記号等を用いることもできる。入力する演算子の数は,選択した読取項目の数による。1個の読取項目の場合には,演算子を入力する必要はない。ステップS304の判定処理により,必要なすべての読取項目および演算子の選択が終了するまで,ステップS301へ戻って同様に処理を繰り返す。読取項目および演算子の選択が終了したならば,ステップS305では,入力した演算子のチェックを行う。これは,以下のチェックである。1定義されていない読取項目IDを使用していないか。2使用できない演算子が指定されていないか。3設定された計算式を用いて金額を計算した場合に,結果が許容範囲内か。なお,結果が許容範囲内であるかどうかは,実際にレシートの画像データから得られた金額の数値を用いて計算した場合に,基本テーブルに格納されいてる該当する売上管理項目の下限値から上限値までの範囲に入っているかどうかにより判断される。ステップS306によるチェック結果の判定により,エラーが検出されれば,ステップS301に戻って,読取項目の再選択または演算子の再入力を行う。エラーがなければ,売上管理項目一覧における該当する売上管理項目の計算式の欄に,入力された計算式を表示し,一つの売上管理項目に対する演算定義を終了する。演算定義は,基本的にはすべての売上管理項目に対して行うが,該当する読取項目が存在しない売上管理項目に対しては,未定義であってもよい。図19は,演算定義の例を示している。図19Aに示すように,OCR読取定義一覧表示領域32には,読取項目の純売上ID=aと消費税ID=bと金券ID=cとが定義されていたとする。ここで,売上管理項目である総売上,商品券について,それぞれ図19Bに示すような読取項目との対応関係があった場合,図19Cに示すように,総売上に対してabの計算式の定義,商品券に対してcの計算式の定義を行う。この計算式を演算定義として,レシート定義データに設定することにより,店舗が発行する実際のレシートから,売上管理項目の金額を算出することが可能になる。図20は,ある店舗のレシートと売上管理項目との対応関係が,計算式によって定義されている例を示している。レシートの読取項目は,一般に店舗によって異なるので,テナント管理部門が必要とする売上管理項目と,各店舗のレシートの読取項目との対応関係は,店舗ごとに異なる。しかし,図20に示すように,店舗ごとに計算式を定義することができるので,売上管理項目とレシートの項目との対応づけを柔軟に行うことができる。図21は,同一文字列処理図14のステップS233の詳細を示すフローチャートである。以下の処理は,入力データ処理部13における複数キーワード設定部133およびマーカー項目設定部134が実行する。ステップS401では,OCR読取定義一覧表示領域32中で定義された読取項目に同一名称のものが複数あることを示すアラームを表示して,操作員からの入力を待ち合わせる。ステップS402では,操作員の入力に対して,複数の同一名称の中の読取項目をマーカー項目によって特定するか,複数キーワードによって特定するかを判定する。マーカー項目が選択された場合,ステップS403へ進み,複数キーワードが選択された場合,ステップS406へ進む。ステップS403では,マーカー項目の入力を待ち合わせる。マーカー項目の入力方法は,図17で説明した項目領域の設定における入力方法と同様である。ステップS404では,指定されたマーカー項目の文字項目の座標を取得する。続いて,ステップS405では,同一文字列の読取項目の中で,実際に定義で用いる読取項目がマーカー項目の上方向にあるのか下方向にあるのかを示す方向と,マーカー項目からの距離を算出し,読取項目がマーカー項目の上方向にあれば距離を正の値,下方向にあれば距離を負の値で定義する。この距離の値には,実際に日々発行されるレシートにおける読取項目の行位置の変動を考慮して,所定の行数分の距離を余裕分として加算してもよい。図22は,マーカー項目の定義例を示している。図22Aに示すレシート画像表示領域33に表示されたレシート画像において,実際に売上管理項目として必要になる読取項目が消費税であったとする。ここでは,消費税という同一名称の項目が複数存在するが,このうち,上方にある消費税が読取項目として定義したい項目であったとする。そこで,レシート内でユニークな他の項目この例では返品明細をマーカー項目として定義する。すなわち,図22Bに示すように,マーカー項目が返品明細であり,消費税への距離が右方向へ110,上方向へ100であったとする。このとき,マーカー項目返品明細からの読取項目消費税への距離として,110,100を定義する。マーカー項目は,1個に限らず複数個定義してもよい。図22Cの例では,返品明細をマーカー項目として定義する他に,売上明細についてもマーカー項目の定義を行っている。この場合,すべてのマーカー項目の定義による条件を満たした読取項目だけが,該当する読取項目として抽出され,読取項目がマーカー項目定義の条件を一つでも満たさない場合には,該当読取項目なしと認定されることになる。図21のステップS402で,複数キーワードによって読取項目を特定すると判定された場合,ステップS406へ進み,複数キーワードの入力を待ち合わせる。複数キーワードの入力があれば,ステップS407では,複数キーワードの文字項目と金額領域の座標を取得し,複数キーワードの定義とする。図23に,複数キーワードの設定例を示す。図23の例では,読取項目総売上と同一名称の文字項目が,Str12,Str22,Str32の3個存在する。また,その各々に対応する金額の文字列もDat12168,735,Dat2248,195およびDat3232,025の3個存在する。ここで必要とする読取項目がStr12の総売上であったとすると,総売上の文字列だけではStr12の読取項目を特定できないので,Str12を含む複数の文字項目を複数キーワードKey1として定義する。この例では,総売上,純売上,現金在高および貸在高を,複数のキーワードKey1として定義している。このレシート定義データでは,項目属性1として複数キーワードを示す3を定義し,読取文字1として総売上,純売上,現金在高,貸在高を定義する。また,売上管理項目の収集に必要な,金額の文字列Dat12の金額欄の相対読取位置1についてもレシート定義データ中に定義する。これによって,レシート中に総売上の文字列が複数個存在しても,複数キーワードがユニークであれば,複数キーワードに一致する文字列に含まれる総売上の読取項目が特定されることになる。図24は,代替項目の設定例を示す図である。前述した図12のステップS210,S211において,代替項目処理部135が行う処理について説明する。今,図24Aに示すように,OCR読取定義一覧表示領域32において,消費税の定義が行われ,また,その項目領域についても座標情報が取得されていたとする。ここで,図24Aに示すレシート画像表示領域33の表示元となったレシートの原画像について,再度この部分をOCR処理によって文字認識する。実際に操作員が入力した消費税と認識された場合には,正しいので代替項目の処理は行わない。違う文字に認識されて認識エラーがあった場合には,図24Bに示すように,読取困難な文字列です。代替項目を指定してください。という代替項目の入力を促す警告メッセージを出力する。なお,実際にOCR処理を行うのではなく,図4Bに示した認識文字データから,認識精度を推定してもよい。操作員は,図24Bに示すような警告メッセージが出力された場合,図24Cのレシート画像表示領域33における小計のような読取が容易なレシート項目を代替項目として指定する。代替項目は,本来の読取項目消費税の上側であっても下側であってもどちらでもよいが,行が近いほうが望ましい。この例のように,小計が代替項目として指定されると,消費税に対応する金額7,234の相対読取位置の情報は,レシート定義データ内において,消費税からの相対位置ではなく,読取が容易な小計からの相対位置が定義される。また,代替項目によって定義されたことを示すために,OCR読取定義一覧表示領域32内では,図24Dに示すように,代替項目小計と本来の読取項目消費税とが所定の区切記号で連結されて表示される。レシート定義データ内においても,図7Bに示すように,読取文字が小計消費税と定義され,代替項目によって定義されたことが示される。図25は,類似データの有無を判断する処理図13のステップS223の詳細を示すフローチャートである。新しい店舗のレシート定義データの作成において,既に作成済みのレシート定義データを参照して作成に利用する場合に,履歴データから類似するレシート定義データを自動抽出する処理を行うために,類似データの有無を判断する。まず,ステップS501では,店舗マスタ103を参照する。また,ステップS502では,履歴データ記憶部105に格納された履歴データを参照する。ステップS501,S502で参照した結果,新たにレシート定義データを作成する新規店舗の業種コードと履歴データ中の業種コードとが等しく,かつ,新規店舗のPOSシステム情報と履歴データ中のPOSシステム情報とが等しいものがあるかどうかを,ステップS503およびステップS504で判定する。判定した結果,どちらも等しいものが存在した場合,ステップS506へ進む。どちらも等しいものが存在しない場合には,ステップS505へ進み,判断結果を類似性無しとする。一方,ステップS506では,類似性有りと判断し,ステップS507では,履歴データ辞書部を参照する。ステップS508では,履歴データ辞書部を参照した結果から,売上管理項目に該当する読取項目を類推する。図26は,履歴データ作成処理図14のステップS232の詳細を示すフローチャートである。ステップS601では,新しくレシート定義データを作成した店舗の店舗コードから店舗マスタ103を参照する。ステップS602では,店舗マスタ103から該当する業種コード,POSシステム情報,精算レシート情報を取得する。ステップS603では,作成したレシート定義データから項目情報,演算情報を取得する。ステップS604では,図10および図11に示すような履歴データと履歴データの辞書部とを作成し,履歴データ記憶部105に格納する。以上のレシート定義データを作成する処理は,コンピュータとソフトウェアプログラムとによって実現することができ,そのプログラムをコンピュータ読み取り可能な記録媒体に記録することも,ネットワークを通して提供することも可能である。"