(57)【要約】【課題】各社の定期券発行事業者経路運賃シミュレータのデータの経路解析の結果を用いて突合検証作業を行う定期券突合シミュレータを提供する。【解決手段】。本発明は、各社の定期券発行事業者経路運賃シミュレータ１００のデータを突合検証する定期券突合シミュレータ１である。定期券突合シミュレータ１は、各社の定期券発行事業者経路運賃シミュレータのデータを登録するデータ登録部１５と、このデータ登録部１５に登録されたデータ間を突合するデータ突合処理部４と、このデータ突合処理部４でデータ間の突合を行う際に用いる解析経路をデータから生成する経路生成部１２とを有する。【選択図】      図１
2007302078.tif 000002
【特許請求の範囲】
【請求項１】
各社の定期券発行事業者経路運賃シミュレータのデータを突合検証する定期券突合シミュレータであって、
各社の定期券発行事業者経路運賃シミュレータのデータを登録するデータ登録部と、
該データ登録部に登録されたデータ間を突合するデータ突合処理部と、
該データ突合処理部でデータ間の突合を行う際に用いる解析経路をデータから生成する経路生成部と、を有することを特徴とする定期券突合シミュレータ。
【請求項２】
各社の定期券発行機のデータを突合検証する定期券突合シミュレータであって、
各社の定期券発行機のデータを登録するデータ登録部と、
該データ登録部に登録されたデータ間を突合するデータ突合処理部と、
該データ突合処理部でデータ間の突合を行う際に用いる解析経路をデータから生成する経路生成部と、を有することを特徴とする定期券突合シミュレータ。
【請求項３】
該経路生成部は、自線線区駅順コード、路線名、駅名、会社名、代表線区駅順コードを定義する線区駅順マスタを検索して経路解析を行うことを特徴とする請求項１又は請求項２に記載の定期券突合シミュレータ。
【請求項４】
該経路生成部は、線区駅順コード、線区名称、駅名、会社名、連絡駅コードを定義する連絡駅マスタを検索して経路解析を行うことを特徴とする請求項１乃至請求項３のいずれかに記載の定期券突合シミュレータ。
【請求項５】
該経路生成部は、省略コードを定義する省略コードマスタを検索して経路解析を行うことを特徴とする請求項１乃至請求項４のいずれかに記載の定期券突合シミュレータ。
【請求項６】
該経路生成部は、発駅、着駅、路線、連絡関係を定義する経由指定マスタを検索して経路解析を行うことを特徴とする請求項１乃至請求項５のいずれかに記載の定期券突合シミュレータ。
【請求項７】
該経路生成部は、発路線、着路線、会社名、交差駅を定義するルートマスタを検索して経路解析を行うことを特徴とする請求項１乃至請求項６のいずれかに記載の定期券突合シミュレータ。
【請求項８】
該経路生成部は、発路線、着路線、会社名、交差駅を定義するルートマスタを検索して経路解析を行うことを特徴とする請求項１乃至請求項７のいずれかに記載の定期券突合シミュレータ。
【請求項９】
該経路生成部は、該線区駅順マスタ、該連絡駅マスタ、該省略コードマスタ、該経由指定マスタ、該ルートマスタのいずれを検索しても経路解析を行うことができなかった場合には、キロ程データを用いて経路解析を行う特徴とする請求項８に記載の定期券突合シミュレータ。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、各社の定期券発行事業者経路運賃シミュレータのデータを突合検証する定期券突合シミュレータに関する。
【背景技術】
【０００２】
定期券には、券面印字の他に発駅−経由駅−着駅等に係る情報が、磁気記憶手段やＩＣチップに記録されている。特に、発駅−経由駅−着駅等に係る情報について説明すると、各社の全路線にはそれぞれ異なる線区コードが割り当てられ、各線区の駅にはさらに駅順コードが割り当てられている。図１６は、各駅に付されている線区コード−駅順コードを示すものである。図１６に示すように、○○線のＡ駅を特定するために、３桁の線区コードと３桁の駅順コードがそれぞれ付されている。
【０００３】
例えば、東海道線の線区コードは００１、東京駅から熱海駅まで順に駅順コードが００１、００２・・・０４３というように割り当てられており、東京駅は００１−００１、有楽町駅は００１−００２、新橋駅は００１−００３のように駅順コード（駅番号）が割り当てられる。このように、各社の全路線の全駅はこのような異なる駅番号がそれぞれユニークに付されており、定期券の経路はこの線区−駅順コードで特定され、このような線区駅順コードが定期券に記録されている。
【０００４】
図１７は、Ａ駅からＢ駅まで定期券を例に、該定期券に記憶される線区コード−駅順コードを示す図である。線区コード−駅順コードが００１−００１であるＡ駅から、線区コード−駅順コードが００１−０１０であるＢ駅までの定期券には、図示するように、「００１−００１〜００１−０１０」という情報が定期券に記憶される。このような定期券を用いれば、００１−００２〜００１−００９までの途中駅の改札を通過することができるが、これは改札機によって、
００１−００１（Ａ駅）＜００１−００２〜００１−００９＜００１−０１０（Ｂ駅）
というような駅順コードの大小比較がなされることによって通札可能となるものである。
【０００５】
次に、２つの路線にまたがった駅間の定期券につき説明する。図１８は、Ａ駅からＣ駅まで定期券を例に、該定期券に記憶される線区コード−駅順コードを示す図である。この図では、線区コード−駅順コードが００１−００１のＡ駅から始まる路線Ｘと、路線ＸのＢ駅を起点とする路線Ｙと、Ａ駅とＣ駅の両方で交差する路線Ｚとが示されている。路線Ｙには線区コード００２がつけられており、Ｂ駅には、路線Ｘの線区コード−駅順コード００１−０１０と、路線Ｙの線区コード−駅順コード００２−００１との両方が付されている。Ｂ駅以降の路線Ｙには、線区コード−駅順コードが順に、００２−００２、００２−００３、というように付されていく。路線Ｚについては詳細なコードの説明はしないが、同様のルールで線区コード−駅順コードで付されているものとする。ここで、Ａ駅からＣ駅まで定期券には、図に示されているように「００１−００１〜００２−００３」という情報に加えて、途中の経由駅Ｂに係る情報である「００１−０１０」も記憶される。以下、本明細書では、この経由駅に係る情報を「経由エンコード」と称する。また、これを簡単に「エンコード」というように表現することもある。また、発駅や着駅にかかるコードも「エンコード」と称することがある。
【０００６】
ところで、定期券発券機メーカーによって、この経由エンコードをどの駅に設定するか等が異なることなどがあり、同じ駅間の定期券でも、発券した定期券発券機の機種の違いによって、定期券に記録されるエンコード情報が異なることがある。経由エンコードが異なっていたとしても、実質的に、定期券が同一のものであることを保証するために、シミュレータで様々な経路の定期券を想定しておき、それぞれの経路で、定期券発券機の機種の違いが発生しないことを検証する必要がある。この作業を、突合検証作業といい、具体的には、例えば定期券発券機Ａ機が生成した様々な経路データである定期券データＡと、定期券発券機Ｂ機が生成した様々な経路データである定期券データＢとの両者を、比較検証するシミュレーション作業を行う。従来、この突合を行う際には、まずキロ程データをキーとソートして、次に、キロ程データが同一であるものの経路を順次比較していく、というような方式がとられていた。本件出願人による特許文献１（特願２００５−８３２６８号）には、この方式についての記載がある。
【特許文献１】特願２００５−８３２６８号
【発明の開示】
【発明が解決しようとする課題】
【０００７】
しかしながら、近年の路線網の発達により、キロ程データを同じくする区間が多数存在することとなったために、従来のようにまずキロ程データをキーとソートしたとしても、効率的に突合が行い得るとは言い難い状況となってきた。今後、定期券が内蔵されたＩＣカードが、関東ＩＣ相互利用に伴い加速度的に普及することが見込まれているが、定期券内蔵ＩＣカードによれば乗り越しの精算などは、改札機側が一方的にＩＣカードのストアードフェアから収受する仕組みとなるために、定期券発売機の信頼性の向上をよりいっそう図らなければならない。そのためにも、突合による検証作業には従来に増しての正確さが求められる。また、関東ＩＣ相互利用に加盟している社局のうちどれか一つの社局が運賃を改定したり、あらたな駅を開設したりすることになれば、その都度、定期券発売機の検証を行わなければならず、その頻度は相当高いものである。そして、その都度、突合検証作業が行われるために、突合方式にはよいいっそうの効率化が求められている。
【課題を解決するための手段】
【０００８】
このような課題を解決するために、請求項１に係る発明は、各社の定期券発行事業者経路運賃シミュレータのデータを突合検証する定期券突合シミュレータであって、各社の定期券発行事業者経路運賃シミュレータのデータを登録するデータ登録部と、該データ登録部に登録されたデータ間を突合するデータ突合処理部と、該データ突合処理部でデータ間の突合を行う際に用いる解析経路をデータから生成する経路生成部と、を有することを特徴とする。
【０００９】
また、請求項２に係る発明は、各社の定期券発行機のデータを突合検証する定期券突合シミュレータであって、各社の定期券発行機のデータを登録するデータ登録部と、該データ登録部に登録されたデータ間を突合するデータ突合処理部と、該データ突合処理部でデータ間の突合を行う際に用いる解析経路をデータから生成する経路生成部と、を有することを特徴とする。
【００１０】
また、請求項３に係る発明は、請求項１又は請求項２に記載の定期券突合シミュレータにおいて、該経路生成部は、自線線区駅順コード、路線名、駅名、会社名、代表線区駅順コードを定義する線区駅順マスタを検索して経路解析を行うことを特徴とする。
【００１１】
また、請求項４に係る発明は、請求項１乃至請求項３のいずれかに記載の定期券突合シミュレータにおいて、該経路生成部は、線区駅順コード、線区名称、駅名、会社名、連絡駅コードを定義する連絡駅マスタを検索して経路解析を行うことを特徴とする。
【００１２】
また、請求項５に係る発明は、請求項１乃至請求項４のいずれかに記載の定期券突合シミュレータにおいて、該経路生成部は、省略コードを定義する省略コードマスタを検索して経路解析を行うことを特徴とする。
【００１３】
また、請求項６に係る発明は、請求項１乃至請求項５のいずれかに記載の定期券突合シミュレータにおいて、該経路生成部は、発駅、着駅、路線、連絡関係を定義する経由指定マスタを検索して経路解析を行うことを特徴とする。
【００１４】
また、請求項７に係る発明は、請求項１乃至請求項６のいずれかに記載の定期券突合シミュレータにおいて、該経路生成部は、発路線、着路線、会社名、交差駅を定義するルートマスタを検索して経路解析を行うことを特徴とする。
【００１５】
また、請求項８に係る発明は、請求項１乃至請求項７のいずれかに記載の定期券突合シミュレータにおいて、該経路生成部は、発路線、着路線、会社名、交差駅を定義するルートマスタを検索して経路解析を行うことを特徴とする。
【００１６】
また、請求項９に係る発明は、請求項８に記載の定期券突合シミュレータにおいて、該経路生成部は、該線区駅順マスタ、該連絡駅マスタ、該省略コードマスタ、該経由指定マスタ、該ルートマスタのいずれを検索しても経路解析を行うことができなかった場合には、キロ程データを用いて経路解析を行う特徴とする。
【発明の効果】
【００１７】
本発明によれば、各社の定期券発行事業者経路運賃シミュレータのデータの経路解析の結果を用いて突合検証作業を行うので、キロ程をキーとして用いた従来の突合検証作業より効率的な突合検証作業ができるようになる。
【発明を実施するための最良の形態】
【００１８】
以下、本発明の実施の形態を図面を参照しつつ説明する。図１は、本発明の実施の形態に係る定期券突合シミュレータの概要を示す図である。図１において、１は定期券突合シミュレータ、２はマスタ、３は登録データ、４はデータ突合処理部、５は突合データ、６は結果レポート出力部、７はテストデータ、８はロジックシミュレータ、９は検証結果、１０は検証結果取込部、１１は出力レポート、１２は経路生成部、１３はキロ程データベース、１４はキロ程検索部、１５はデータ登録部、１００は定期券発行事業者路線運賃シミュレータである。マスタ２はさらに細かくは、線区駅順マスタ２１、連絡駅マスタ２２、省略コードマスタ２３、経由指定マスタ２４、ルートマスタ２５とからなる。
【００１９】
次に、本発明の実施の形態に係る定期券突合シミュレータ１によって突合を行う際のデータの流れの概要について説明する。まず、定期券発行事業者路線運賃シミュレータ１００によって、定期券発券機Ａ機が生成する様々な経路データである定期券データＡと、定期券発券機Ｂ機が生成する様々な経路データである定期券データＢを用意する。次に、これら定期券データＡと定期券データＢとを、データ登録部１５によって、定期券突合シミュレータ１の登録データ３として登録する。登録された定期券データＡと定期券データＢの様々な区間のデータは、データ突合処理部４によって突き合わせ（突合検証作業）が行われる。
【００２０】
上記の例では、定期券データＡをＡ機種の定期券発行事業者路線運賃シミュレータから、定期券データＢをＢ機種の定期券発行事業者路線運賃シミュレータから、それぞれ導くように構成した場合について説明したが、定期券データＡを定期券発券機Ａ機自体から、そして、定期券データＢを定期券発券機Ｂ機自体から、それぞれ導くように構成してもよい。なお、このようにする場合には、定期券発券機固有のデータから本発明の定期券突合シミュレータに適合する定期券データにフォーマットを変換する必要がある。
【００２１】
データ突合処理部４における処理としては、経路生成部１２によって解析された定期券データＡの経路解析結果Ａ、及び、経路生成部１２によって解析された定期券データＢの経路解析結果Ｂとの突合検証作業が基本的な処理となる。各定期券データによって経路を解析する際に経路生成部１２が用いられるデータベースが、線区駅順マスタ２１、連絡駅マスタ２２、省略コードマスタ２３、経由指定マスタ２４、ルートマスタ２５からなる各マスタ２であり、経路生成部１２は、これらの各マスタを検索しつつ、経路解析を行う。本発明では、従来と異なり、このような経路解析の結果を用いて突合検証作業を行うので、キロ程を用いての従来の突合検証作業より効率的な検証作業ができるようになる。なお、経路生成部１２がマスタ２を用いて経路解析が不可能な場合には、経路生成部１２は、キロ程データベース１３を検索部１４で検索することによって、経路解析を行う。
【００２２】
突合検証作業後の突合データ５は、定期券データＡと定期券データＢとで一致するもの、不一致であるものの２種類となるが、これらは結果レポート出力部６から、出力レポート１１として出力される。経路データ突合処理で不一致の経路データがでた場合には、その経路（テストデータ７）についてロジックシミュレータ８に読み込ませて定期券発行事業者経路運賃シミュレータ１００のプログラムミスであるか否かが再度の解析がなされる。ロジックシミュレータ８は、各社の定期券発行事業者経路運賃シミュレータの処理ロジックを搭載し、様々な経路パターンを設定したテスト券を入力して処理を実行させ、同じ処理ロジックに違いがあるか否かを検証するためのものである。これは、本来、同じ処理を行う駅務機器は全て同じ処理結果を出力すべきであるが、現実的には異なる会社で作製されたもの、異なる路線に配置されたもの等においては少しの設計思想の違いから同じ処理結果とならない場合があるため、これを検証するためのロジックシミュレータが開発されている。ロジックシミュレータ８による検証結果９は、フィードバックとして、定期券突合シミュレータ１の検証結果取込部１０により取り込まれる。
【００２３】
次に、経路生成部１２が経路解析を行う上で参照する各マスタの具体的な構成につき説明する。
（Ａ）線区駅順マスタ２１
図２は、線区駅順マスタ２１のデータ構造を例示する図である。線区駅順マスタ２１は、自線線区駅順コード、路線名、駅名、会社名、代表線区駅順コードを定義するものである。代表線区駅順コードは、一つの駅に複数の路線が交差している場合、そのうちの代表路線を定義することによりふられるものである。線区駅順マスタ２１のデータは、線区駅順コードで検索を行い、代表線区駅順コードから各自線線区駅順コードの取り出しを行い、駅間の乗車路線を結び付けるために使用する。また、突合結果レポートの駅名表示も本データから取得されたものが用いられる、というように非常に基本的なものである。
（Ｂ）連絡駅マスタ２２
図３は、連絡駅マスタ２２のデータ構造を例示する図である。連絡駅マスタ２２は、連絡駅コードが定義された駅について定義するものであり、そのデータ構造は、線区駅順コード、線区名称、駅名、会社名、連絡駅コードからなるものである。経路生成部１２は、連絡駅コードから対応する自線線区駅順コードの取り出しを行い、社局間の路線の結び付けを行う。本データは、会社間連絡定期券の発売経路データを生成するために使用するものである。
（Ｃ）省略コードマスタ２３
図４は、省略コードマスタ２３のデータ構造を例示する図である。省略コードは、山手線、西武線、東武線の省略コードを定義するものである。例えば、山手線の場合、複数のターミナル駅を繋ぐものであるので、エンコードが非常に複雑なものとなってしまう。ところが、エンコードは、磁気定期券の場合は８個まで、ＩＣカード定期券の場合は１０個までと定義されており、エンコード枠が足りなくなってしまう事態が考えられる。そこで、複雑な特定経路について省略コード一つで代表させることで、エンコード枠を節約する。
（Ｄ）経由指定マスタ２４
図５は、経由指定マスタ２４のデータ構造を例示する図である。経由指定マスタ２４は、同一発行機関経路および複数の発行機関に連絡する経路の乗線路線を決定するために定義するものであり、データ構造は、発駅、着駅、路線、連絡１、連絡２・・・のようになっている。
（Ｅ）ルートマスタ２５
図６は、ルートマスタ２５のデータ構造を例示する図である。２駅間の乗車路線の決定は、各々の自線線区駅順コードを組み合わせ同じ線区コードを持つ２駅を路線の乗車駅・降車駅とし、発売経路を生成することを基本としている。ただし、２つの駅に対して、同じ線区コードを持つ駅が存在しない場合は、経由駅が抜けていると考えられる。この抜けている経由駅を検索するためにルートマスタが定義される。データ構造は、発路線、着路線、会社名、交差駅である。
【００２４】
以上の構成において、本発明の実施の形態に係る定期券突合シミュレータの経路生成部１２がどのように経路解析を行うかについて説明する。図７は、経路生成部１２が経路解析を行う際の処理を段階的に示したものである。図７において、上に示された経路「神田（００２−００２）−お茶の水（００３−００３）」が解析すべき経路であり、下の示された枠で囲まれた経路「神田（００３−００２）−お茶の水（００３−００３）」が経路生成部１２によって解析された基本的な代表経路である。図中、上に示された経路と下の示された経路との間に記載されているものは、経路解析のための処理経過を示すものである。以下の図８乃至図１４において、同様の図面構成となっている。処理手順であるが、まず（１）「神田（００２−００２）」を、線区駅順マスタ２１を検索する（図２参照）ことによって、図示するように「００２−００２、００３−００３」と展開する。また、（２）「お茶の水（００３−００３）」の方も、線区駅順マスタ２１によって、図示するように「００３−００１、００７−００１」を得る。次に、（３）以上のようにして得られたそれぞれの線区駅順コードを比較して、同一の線区コード「００３」のもの同士を選択する。このようにして最終的に、経路解析結果「神田（００３−００２）−お茶の水（００３−００３）」を得ることができる。
【００２５】
次に、「浜松町（００１−００４）−新橋（１２７−００２）−銀座（２７７−０５４）」を解析する別の経路解析例について説明する。図８は、経路生成部１２が経路解析を行う際の処理を段階的に示したものである。まず（１）において、「浜松町（００１−００４）」について線区駅順マスタ２１を検索し、浜松町の線区駅順コード「００１−００４」を得る。次に（２）「新橋（１２７−００２）」については連絡駅コードが使われているので、連絡駅マスタ２２（図３参照）を検索して、図示するように「００１−００３、０２７−０１４、１０１−００１、２７７−０５５、２７３−０１１」を得る。また、（３）「銀座（２７４−０５４）」については、線区駅順マスタ２１を検索し、銀座の全線区駅順コード「２２７−０５４、２２９−０４４、２２８−０５１」を得る。次に（４）浜松町と新橋の線区駅順コードを比較して、同じ線区コード（００１）であるものを選択する。そして（５）新橋と銀座の線区駅順コードを比較して、同じ線区コード（２２７）であるものを選択する。以上のような処理手順によって、経路解析結果「浜松町（００１−００４）−新橋（００１−００３）、新橋（２７７−０５５）−銀座（２７７−０５４）」を得ることができる。
【００２６】
次に、「十条（０３８−００４）−省略コード（１２４−０９９）−川崎（００１−０１３）」を解析する別の経路解析例について説明する。図９は、経路生成部１２が経路解析を行う際の処理を段階的に示したものである。まず（１）において、「十条（０３８−００４）」について線区駅順マスタ２１を検索し、十条の線区駅順コード「０３８−００４」を得る。次に（２）エンコードに省略コード（１２４−０９９）が使われているので、省略コードマスタ２３（図４参照）を検索して、省略コードを展開し、図示するように「池袋（０３７−０１５）〜品川（０３７−００１）」を得る。（３）このようにして得られた「池袋（０３７−０１５）」を、線区駅順マスタ２１を検索し「０３７−０１５、０３８−００８」を得る。また（４）もう一方の「品川（０３７−００１）」についても、線区駅順マスタ２１を検索し「００１−００７、０３７−００１、０４２−０１５」を得る。（５）「品川（００１−０１３）」についもて線区駅順マスタ２１を検索し、川崎の全線区駅順コード「００１−０１３、０２４−００１、０２６−００１」を得る。以上のように全ての駅の全線区駅順コードを展開しておき、となり同士の全線区駅順コードで共通の線区コードを抽出する。すなわち、（６）十条と池袋の線区駅順コードを比較して、同じ線区コード（０３８）を選択し、（７）池袋と品川の線区駅順コードを比較して、同じ線区コード（０３７）を選択し、（８）品川と川崎の線区駅順コードを比較して、同じ線区コード（００１）を選択し、最終的に、経路解析結果「十条（０３８−００４）−池袋（０３８−００８）、池袋（０３７−０１５）−品川（０３７−００１）、品川（００１−００７）−川崎（００１−０１３）」を得ることができる。
【００２７】
次に、「銀座（２２７−０５４）−仲御徒町（２２８−０４３）−上野（２２７−０４７）」を解析する別の経路解析例について説明する。図１０は、経路生成部１２が経路解析を行う際の処理を段階的に示したものである。まず（１）において、発駅、経由１、着駅で経由指定マスタ２４を検索して（図５）、（２）に示すように全てのエンコードは日比谷線に属するものであることを明らかにする。次に（３）、（４）において、線区駅順マスタ２１を検索し、「日比谷線」の線区駅順コードを割り出しておく。そして、（５）、（６）で隣同士の線区駅順コードを参照する。すると、ここでは、（７）に示すように、２２８−０４２＜２２８−０４３＜２２８−０５４が成立しており、「２２８−０４３」に係る情報は同一路線中の、銀座、上野間に挟まれた駅であることが分かるので、不要とする。そして、最終的に、経路解析結果「銀座（２２８−０５１）−上野（２２７−０４２）」を得ることができる。
【００２８】
次に、「柏（００５−０１８）−東我孫子（０４０−００３）」を解析する別の経路解析例について説明する。図１１は、経路生成部１２が経路解析を行う際の処理を段階的に示したものである。まず（１）において、「柏（００５−０１８）」について線区駅順マスタ２１を検索し、柏の全線区駅順コード「００５−０１８」を得る。そして、次に（２）「東我孫子（０４０−００３）」について線区駅順マスタ２１を検索し、柏東我孫子の全線区駅順コード「０４０−００３」を得る。ここで、発駅と着駅との間で、共通の線区コードがないことが判明したので、（３）ルートマスタ２５（図６参照）から「００５−ＸＸＸ」及び「０４０−ＸＸＸ」の路線乗換駅である「我孫子（００５−０２１）」を取得する。そして（４）において、「我孫子（００５−０２１））」について線区駅順マスタ２１を検索し、我孫子の全線区駅順コード「００５−０２１、０４０−００１」を得る。次に（５）柏と我孫子の線区駅順コードを比較して、同じ線区コード（００５）であるものを選択する。そして（６）我孫子と東我孫子の線区駅順コードを比較して、同じ線区コード（０４０）であるものを選択する。以上のような処理手順によって、経路解析結果「柏（００５−０１８）−我孫子（００５−０２１）、我孫子（０４０−００１）−東我孫子（０４０−００３）」を得ることができる。
【００２９】
次に、「東京（００１−００１）−品川（００１−００７）−代々木（００３−０１２）−新宿（００３−０１３）」を解析する別の経路解析例について説明する。図１２は、経路生成部１２が経路解析を行う際の処理を段階的に示したものである。まず（１）「東京（００１−００１）」について、線区駅順マスタ２１を検索し、東京の線区駅順コード「００１−００１、００２−００１、００３−００１、０４２−０２０・・」を得る。次に、（２）「品川（００１−００７）」について、線区駅順マスタ２１を検索し、品川の線区駅順コード「００１−００７、０３７−００１、０４２−０１５、２１３−００２」を得る。（３）「代々木（００３−０１２）」について、線区駅順マスタ２１を検索し、代々木の線区駅順コード「００３−０１２、０３７−００９、００３−００１、２４２−０３０」を得る。そして（４）「新宿（００３−０１３）」について、線区駅順マスタ２１を検索し、新宿の線区駅順コード「００１−００１、００２−００１、００３−００１、０４２−０２０・・」を得る。次に、隣同士の線区駅順コードを参照する。（５）で東京と品川の線区駅順コードを比較して、同じ線区コード（００１）を抽出し、（６）で品川と代々木の線区駅順コードを比較して、同じ線区コード（０３７）を抽出し、（７）で代々木と新宿の線区駅順コードを比較して、同じ線区コード（０３７）を抽出する。ここで、（８）に示すように、０３７−００１＜０３７−００９＜０３７−０１１が成立しており、「０３７−００９」（代々木）に係る情報は同一路線中の、品川、新宿間に挟まれた駅であることが分かるので、不要とする。そして、最終的に、経路解析結果「東京（００１−００１）−品川（００１−００７）、品川（０３７−００１）−新宿（０３７−０１１）」を得ることができる。
【００３０】
次に、「東京（００１−００１）−大崎（０３７−００２）−新宿（００３−０１３）」を解析する別の経路解析例について説明する。図１３は、経路生成部１２が経路解析を行う際の処理を段階的に示したものである。まず（１）「東京（００１−００１）」について、線区駅順マスタ２１を検索し、東京の線区駅順コード「００１−００１、００２−００１、００３−００１、０４２−０２０・・」を得る。次に、（２）「大崎（０３７−００２）」について、線区駅順マスタ２１を検索し、大崎の線区駅順コード「０３７−００２」を得る。（３）「新宿（００３−０１３）」について、線区駅順マスタ２１を検索し、新宿の線区駅順コード「００１−００１、００２−００１、００３−００１、０４２−０２０・・」を得る。次に、隣同士の線区駅順コードを参照する。（４）で東京と大崎の線区駅順コードを比較すると、共通の線区コードが存在しないことがわかる。そして、（５）で大崎と新宿の線区駅順コードを比較して、共通の線区コード（０３７）を抽出することができる。そこで、（６）において、００１−XXXと０３７−XXXの双方の線区コードを有する駅である品川を抽出する。（８）、（９）において、あらためて隣同士の線区駅順コードを比較して、最終的に経路解析結果「東京（００１−００１）−品川（００１−００７）、品川（０３７−００１）−新宿（０３７−０１１）」を得る。
【００３１】
次に、「東京（００１−００１）−新宿（００３−０１３）」を解析する別の経路解析例について説明する。図１３は、経路生成部１２が経路解析を行う際の処理を段階的に示したものである。この例はエンコード情報が足りないために、これまで説明してきたような形での経路解析をすることは不可能であるので、経路生成部１２は検索部１４と協働して、キロ程データベース１３を、「（発駅）東京−（着駅）新宿、又は、（発駅）新宿−（着駅）東京であり、かつ、
キロ程が１７．４ｋｍを検索」という条件で検索し、経路解析結果「東京（００１−００１）−品川（００１−００７）、品川（０３７−００１）−新宿（０３７−０１１）」を得る。
【００３２】
以上説明してきた解析手法をフロー的にまとめたものが、図１５である。図１５は、経路生成部１２の処理の概略的な流れについて示す図である。なお、ここで示すフローはあくまで処理の流れの概略を説明するためのものであり、厳密なものではない。図１５において、ステップＳ０  で経路生成部１２の処理を開始すると、まずステップＳ１において、定期券の発駅、乗り継ぎ駅、着駅の全ての駅ついて、 線区駅順マスタ２１で、全線区駅順コードを割り出す。ステップＳ２では、連絡駅コードが使用されているかどうかをチェックして、使用されていたら、連絡駅マスタ２２を検索し、当該駅の全線区駅順コードを得る。また、ステップＳ３では、省略コードが使用されているどうかを判定し、使われていた場合には、省略コードマスタ２３により省略しない形式に展開する。また、ステップＳ４では、発駅、着駅、乗り継ぎ駅の線区コードが異なる場合には経由指定マスタ２４を検索して一致するデータを見つけるようにする。また、ステップＳ５において、発駅、着駅の線区コードが異なる場合にはルートマスタ２５を検索して路線乗換駅（交差駅）を見つける。また、ステップＳ６では、２駅間で線区コードが異なる場合には線区駅順２１を検索して、双方の線区コードを有する駅を抽出する。また、ステップＳ７においては、線区コードが異なる場合にはルートマスタ２５を検索して路線乗換駅（交差駅）を得る。また、ステップＳ８  必要であれば、さらに線区駅順マスタ２１によって、全ての線区駅順コードを割り出す。また、ステップＳ９では、駅間の共通の線区コードをみつけるようにする。また、ステップＳ１０  ＸＸＸ−ＡＡＡ＜ＸＸＸ−ＢＢＢ＜ＸＸＸ−ＣＣＣが成立すれば、ＸＸＸ−ＢＢＢは落として不要な乗り継ぎエンコード情報を削除する。また、ステップＳ１１においては、経路解析をするのにエンコード情報が足りない場合、キロ程データベースを援用して、経路解析を行う。
【図面の簡単な説明】
【００３３】
【図１】本発明の実施の形態に係る定期券突合シミュレータの概要を示す図である。
【図２】線区駅順マスタ２１のデータ構造を例示する図である。
【図３】連絡駅マスタ２２のデータ構造を例示する図である。
【図４】省略コードマスタ２３のデータ構造を例示する図である。
【図５】経由指定マスタ２４のデータ構造を例示する図である。
【図６】ルートマスタ２５のデータ構造を例示する図である。
【図７】経路生成部１２が経路解析を行う際の処理を段階的に示した図である。
【図８】経路生成部１２が経路解析を行う際の処理を段階的に示した図である。
【図９】経路生成部１２が経路解析を行う際の処理を段階的に示した図である。
【図１０】経路生成部１２が経路解析を行う際の処理を段階的に示した図である。
【図１１】経路生成部１２が経路解析を行う際の処理を段階的に示した図である。
【図１２】経路生成部１２が経路解析を行う際の処理を段階的に示した図である。
【図１３】経路生成部１２が経路解析を行う際の処理を段階的に示した図である。
【図１４】経路生成部１２が経路解析を行う際の処理を段階的に示した図である。
【図１５】経路生成部１２の処理の概略的な流れについて示す図である。
【図１６】各駅に付されている線区コード及び駅順コードを説明するための図である。
【図１７】Ａ駅からＢ駅まで定期券を例に、該定期券に記憶される線区コード−駅順コードを示す図である。
【図１８】Ａ駅からＣ駅まで定期券を例に、該定期券に記憶される線区コード−駅順コードを示す図である。
【符号の説明】
【００３４】
１・・・定期券突合シミュレータ、２・・・マスタ、２１・・・線区駅順マスタ、２２・・・連絡駅マスタ、２３・・・省略コードマスタ、２４・・・経由指定マスタ、２５・・・ルートマスタ、３・・・データ登録部、３・・・登録データ、４・・・データ突合処理部、５・・・突合データ、６・・・結果レポート出力部、７・・・テストデータ、８・・・ロジックシミュレータ、９・・・検証結果、１０・・・検証結果取込部、１１・・・出力レポート、１２・・・経路生成部、１３・・・キロ程データベース、１４・・・キロ程検索部、１５・・・データ登録部、１００・・・定期券発行事業者路線運賃シミュレータ
【図１】
2007302078.tif 000003
【図２】
2007302078.tif 000004
【図３】
2007302078.tif 000005
【図４】
2007302078.tif 000006
【図５】
2007302078.tif 000007
【図６】
2007302078.tif 000008
【図７】
2007302078.tif 000009
【図８】
2007302078.tif 000010
【図９】
2007302078.tif 000011
【図１０】
2007302078.tif 000012
【図１１】
2007302078.tif 000013
【図１２】
2007302078.tif 000014
【図１３】
2007302078.tif 000015
【図１４】
2007302078.tif 000016
【図１５】
2007302078.tif 000017
【図１６】
2007302078.tif 000018
【図１７】
2007302078.tif 000019
【図１８】
2007302078.tif 000020