(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2022-09-30
(45)【発行日】2022-10-11
(54)【発明の名称】乗客またはユーザ情報を提供するためのシステム、デバイス、および方法
(51)【国際特許分類】
G06F 21/62 20130101AFI20221003BHJP
G06Q 50/30 20120101ALI20221003BHJP
G01C 21/26 20060101ALI20221003BHJP
G01C 21/36 20060101ALI20221003BHJP
【FI】
G06F21/62 318
G06Q50/30
G01C21/26 P
G01C21/36
(21)【出願番号】P 2019539174
(86)(22)【出願日】2018-05-18
(86)【国際出願番号】 GB2018051354
(87)【国際公開番号】W WO2018211290
(87)【国際公開日】2018-11-22
【審査請求日】2021-05-14
(32)【優先日】2017-05-19
(33)【優先権主張国・地域又は機関】US
(73)【特許権者】
【識別番号】519256916
【氏名又は名称】シータ インフォメーション ネットワーキング コンピューティング ユーケー リミテッド
【氏名又は名称原語表記】SITA INFORMATION NETWORKING COMPUTING UK LIMITED
(74)【代理人】
【識別番号】100147485
【氏名又は名称】杉村 憲司
(74)【代理人】
【識別番号】230118913
【氏名又は名称】杉村 光嗣
(74)【代理人】
【識別番号】100163511
【氏名又は名称】辻 啓太
(72)【発明者】
【氏名】ケビン オサリバン
(72)【発明者】
【氏名】ジム ピーターズ
【審査官】宮司 卓佳
(56)【参考文献】
【文献】米国特許出願公開第2013/0304508(US,A1)
【文献】国際公開第2012/131765(WO,A1)
【文献】特開平09-134500(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 21/62
G06Q 50/30
G01C 21/26
G01C 21/36
(57)【特許請求の範囲】
【請求項1】
第1のデータソースに関連する第1のデータセットであって、複数の異なる第1のデータ要素を含む第1のデータセットから、前記第1のデータソースに関連する第1のユニークキーを決定し、
第2のデータソースに関連する第2のデータセットであって、複数の異なる第2のデータ要素を含む第2のデータセットから、前記第2のデータソースに関連する第2のユニークキーを決定し、前記第1のデータセットおよび第2のデータセットは少なくとも1つの共通データ要素を共有しており、かつ前記第1のデータ要素のうちの少なくとも一部が前記第2のデータ要素とは異なっており、
前記キーに基づいて、前記第1のデータソースおよび第2のデータソースを確認し、
各データソースが前記
それぞれのデータ
セットのソースとして確認された場合、前記第1のデータセットおよび第2のデータセットを集約データセットに結合し、
第3のデータソースに関連する第3のデータセットであって、複数の異なる第3のデータ要素を含む第3のデータセットから、前記第3のデータソースに関連付けられた第3のユニークキーを決定し、前記第1のデータセットおよび第2のデータセットおよび第3のデータセットが少なくとも1つの共通データ要素を共有し、かつ前記第1のデータ要素のうちの少なくとも一部が前記第3のデータ要素とは異なり、
前記第3のキーに基づいて前記第3のデータソースを確認し、
前記第3のデータソースが前記第3のデータ
セットのソースとして確認された場合、前記集約データセットと前記第3のデータセットとを結合し、
各データソースが、前記第1のデータセット、前記第2のデータセットおよび前記第3のデータセットのそれぞれに関連する1つまたは複数のデータ要素を更新する資格があるかどうかを決定し、
2つ以上のデータソースが、2つ以上のデータセットに共通の1つ以上の同じデータ要素を更新する資格があると決定した場合、どの更新が最新であるかに基づいて、または、各データ要素に関連付けられた重み付けに基づいて、データソースからの更新間の調停を行い、ここで、重み付けは前記データソースに依存する
ように構成された処理手段を含む、データ処理システム。
【請求項2】
前記第1のデータソースから前記第1のデータセットを受信するように構成された受信手段、および/または前記第2のデータソースから前記第2のデータセットを受信するように構成された受信手段、および/または前記第3のデータソースから前記第3のデータセットを受信するように構成された受信手段を更に備える、請求項1に記載のシステム。
【請求項3】
各データ要素がキー/値ペアを含む、請求項1または2に記載のシステム。
【請求項4】
前記第1のデータセットおよび前記第2のデータセットが、同一のデータ要素を含むか否かを判定するステップを更に含む、請求項1に記載のシステム。
【請求項5】
前記第1のデータセットおよび第2のデータセットが同一の共通要素を含むと判定された場合、前記第1データセットに関連するデータソースおよび前記第2のデータセットに関連するデータソースに基づいて、前記共通要素に関連付けられた値に重み付けする、請求項1に記載のシステム。
【請求項6】
第1の頻度にて更新された第1のデータセットを受信するステップと、第2の頻度にて更新された第2のデータセットを受信するステップとを更に含む、請求項1~5のいずれか一項に記載のシステム。
【請求項7】
前記第2の頻度が前記第1の頻度よりも高い、請求項6に記載のシステム。
【請求項8】
前記第1のデータソースは旅行の出発地に関連付けられており、前記第2のデータソースは旅行の目的地に関連付けられている、請求項1~7のいずれか一項に記載のシステム。
【請求項9】
1または複数の前記データ
セットは、出発地と目的地との間の旅行またはフライトに関連付けられ、
第1のステータスデータおよび第2のステータスデータおよび第3のステータスデータのうち任意の1つ以上は、出発空港、出発ゲート、到着空港、到着ゲート、航空会社に関連付けられたフライトスケジュール情報に関連するステータス情報の異なる側面を定義するデータを含んでおり、前記
1または複数のデータ
セットはXMLまたはJSONデータ形式等の英数字データ形式に従ってフォーマットされ、
前記データまたはステータスデータは、
出発および/または到着予定時刻、
予測されるおよび実際の出発/到着時刻、
空港に関連する出発ゲートおよび/またはターミナル、
前記またはある空港に関連する到着ゲートおよび/またはターミナル、
到着空港に関連付けられた手荷物受け取りターンテーブル番号、
フライトをdelayedまたはgo to gateまたはboardingまたはclosingとして定義する特定のデータにおけるフライトステータス情報、並びに
航空機タイプおよびテールナンバー
、並びに、
フライトが遅延、搭乗中、または閉鎖中であるか否か、または前記フライトに関連する乗客が所定のゲート番号に行くべきか否かを規定する1または複数のデータを含む特定の英数字テキストを定義する任意の1つ以上の構文要素を含
み、
出発スケジュール、到着スケジュール、運航日付、運航航空会社、便名、出発空港および到着空港を定義するデータのうちの任意の1つ以上を含むフライトレコードを生成するように構成されており
、データベースが前記フライトのユニークキーに一致するデータを含まず、前記データベース内の前記フライトレコードに前記集約データを格納する場合にのみフライトレコードを作成し、
前記集約データを空港のディスプレイに送信するように更に構成されており、
前記システムは、
前記第1のデータソースから第1のステータスデータを受信し、
前記受信したステータスデータから更なるキーを決定するように構成され、前記更なるキーは、出発地と目的地との間の旅行またはフライトに関連付けられ、前記更なるキーは、予定された出発ゲートを定義する1または複数のデータに基づく前記またはある旅行に対するユニークキーである、アダプタをさらに備える、請求項1から8のいずれか一項に記載のデータ処理システム。
【請求項10】
コンピュータにより実行されるデータ処理の方法であって、
第1のデータソースに関連付けられた第1のデータセットであって、複数の異なる第1のデータ要素を含む第1のデータセットから、前記第1のデータソースに関連付けられた第1のユニークキーを決定するステップと、
第2のデータソースに関連付けられた第2のデータセットであって、複数の異なる第2のデータ要素を含む第2のデータセットから、前記第2のデータソースに関連付けられた第2のユニークキーを決定するステップであって、前記第1データセットおよび第2データセットは少なくとも1つの共通データ要素を共有しており、前記第1のデータ要素のうちの少なくとも一部が前記第2のデータ要素と異なる、ステップと、
前記キーに基づいて、前記第1のデータソースおよび第2のデータソースを確認するステップと、
各データソースが前記
それぞれのデータ
セットのソースとして確認された場合、前記第1データセットと第2データセットとを集約データセットに結合するステップと、
第3のデータソースに関連付けられた第3のデータセットであって、複数の異なる第3のデータ要素を含む第3のデータセットから、前記第3のデータソースに関連付けられた第3のユニークキーを決定するステップであって、前記第1のデータセットおよび第2のデータセットおよび第3のデータセットが、少なくとも1つの共通データ要素を共有しており、前記第1のデータ要素のうちの少なくとも一部が前記第3のデータ要素とは異なる、ステップと、
前記第3のキーに基づいて、前記第3のデータソースを確認するステップと、
前記第3のデータソースが前記第3のデータ
セットのソースとして確認された場合、前記集約データセットと前記第3のデータセットとを結合するステップと、
各データソースが、前記第1のデータセット、前記第2のデータセットおよび前記第3のデータセットのそれぞれに関連する1つまたは複数のデータ要素を更新する資格があるかどうかを決定するステップと、
2つ以上のデータソースが、2つ以上のデータセットに共通の1つ以上の同じデータ要素を更新する資格があると決定した場合、どの更新が最新であるかに基づいて、または、各データ要素に関連付けられた重み付けに基づいて、データソースからの更新間の調停を行い、ここで、重み付けは前記データソースに依存するステップと、を含む、方法。
【請求項11】
前記第1のデータソースから前記第1のデータセットを受信するステップ、および/または前記第2のデータソースから前記第2のデータセットを受信するステップ、および/または前記第3のデータソースから前記第3のデータセットを受信するステップを更に含む、請求項10に記載のシステムの方法。
【請求項12】
各データ要素がキー/値ペアを含む、請求項10または11に記載の方法。
【請求項13】
前記第1のデータセットおよび第2のデータセットが同一の共通要素を含むと判定された場合、前記第1のデータセットに関連するデータソースおよび前記第2のデータセットに関連するデータソースに基づいて、前記共通要素に関連付けられた値に重み付けする、
請求項10に記載の方法。
【請求項14】
第1の頻度にて更新された第1のデータセットを受信するステップと、第2の頻度にて更新された第2のデータセットを受信するステップとを更に含み、
前記第2の頻度が前記第1の頻度よりも高く、
前記第1のデータソースは旅行の出発地に関連付けられており、前記第2のデータソースは旅行の目的地に関連付けられている、請求項10~13のいずれか一項に記載の方法。
【請求項15】
コンピュータに、請求項10~14のいずれか一項に記載の方法を実行
させる、コンピュータプログラ
ム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、乗客またはユーザの情報またはデータを提供するためのシステム、装置、方法またはコンピュータプログラムに関する。より具体的には、本発明は、いくつかの異なるソースからのデータを集約するためのシステム、デバイス、および方法に関する。この情報は、通常、乗客、警備員、航空会社職員、または空港あるいは鉄道駅やバスの停留所等のその他の交通結節点におけるその他の職員に提供される。
【背景技術】
【0002】
航空輸送業界では、フライトのステータスは常に流動的であり、フライトのステータスを正確に特定するには複数のデータソースが必要である。フライトのステータスには、
-出発/到着予定時刻
-予測および実際の出発/到着時刻
-空港の出発ゲートおよびターミナル
-空港の到着ゲートおよびターミナル
-到着空港の手荷物受け取りターンテーブル番号
-「DELAYED」、「GO TO GATE」、「BOARDING」、「CLOSING」等、空港の画面表示に表示される英数字データ
-航空機タイプおよびテールナンバー
が含まれ得る。
【0003】
空港Aから空港Bに行くどのフライトについても、このデータの一部は航空会社によってのみ提供され、このデータの一部は空港Aによってのみ提供され、このデータの一部は空港Bによってのみ提供される。これに加えて、航空交通管制等の他の機関がこのデータの更新に関与し得る。
【発明の概要】
【発明が解決しようとする課題】
【0004】
通常、各航空会社および各空港は、運航データに関する独自のデータベースを有している。これらは常に一貫しているとは限らず、結果的に一貫性のないデータをもたらし、「唯一の真実(single version of the truth)」は存在しない。全フライトの全データの単一の一貫したビューを有することが業界にとって重要である。これなしでは、空港運営や航空会社運営の管理時、および顧客とのコミュニケーション時に混乱が生じる。
【課題を解決するための手段】
【0005】
本発明は、参照すべき添付の特許請求の範囲に定義されている。
【0006】
本発明の実施形態は、デバイスに関連付けられたデータベースまたは格納手段へのアクセスの許可または拒否を決定するためのコンピュータ処理デバイスを提供することにより、上記の問題に対処しようとするものであり、デバイスは、特定のステータス情報のデータを受信するための受信手段を含み、データはキーにより署名されている。デバイスは、このキーを、データベースまたは格納手段に格納されている1つ以上のキーと比較することによって、データの出所を決定してデータのソースを特定し、データベースまたは格納手段を検索して、データのソースに関連付けられた1つ以上のアクセスルールを決定するための手段を含むか、または、そのように構成される。ここでは、アクセスルールにより、そのデータについてのデータベースまたは格納手段への書き込みアクセスの許可または拒否を規定する。デバイスは、決定された1つ以上のルールに基づいて、データベースまたは格納手段への書き込みアクセスを許可または拒否することが好ましい。通常、受信手段は受信機である。
【0007】
本発明の実施形態は、出発地Aと目的地Bとの間の旅行に関連するステータス情報を決定するためのコンピュータ処理デバイスを提供することにより、上記の問題に対処しようとする。デバイスは、セキュリティキーを決定し、データのソース、出発地、または目的地に関連付けられた第1のステータス情報を受信するように構成された第1のアダプタを含む。出発地は、例えばロンドンのヒースロー(LHR)等の空港である一方、目的地は、例えばマイアミ国際空港等の空港であり得る。
【0008】
本発明の実施形態は、第1のデータソースに関連する第1のデータセットであって、複数の異なる第1のデータ要素を含む第1のデータセットから、第1のデータソースに関連する第1のユニークキーを決定し、第2のデータソースに関連する第2のデータセットであって、複数の異なる第2のデータ要素を含む第2のデータセットから、第2のデータソースに関連する第2のユニークキーを決定するように構成された処理手段を含むデータ処理のためのシステムを提供することにより、上記の問題に対処しようとするものである。ここで、第1のデータセットおよび第2のデータセットは、少なくとも1つの共通データ要素を共有しており、第1のデータ要素の少なくとも一部は第2のデータ要素とは異なる。好ましくは、第1のデータソースおよび第2のデータソースは、キーに基づいて確認される。より好ましくは、各データソースがデータのソースとして確認された場合、システムは、第1のデータセットと第2のデータセットとを集約データセットに結合する。
【0009】
本発明の実施形態は、データベースからデータを検索し、そのデータはユニークキーによって識別される。データベース内のデータは、1つ以上の書き込み許可ルールに基づいてアップデートされ得る。通常、ステータス情報が出発空港あるいは到着空港または航空会社から発信されたか否か、またはそれらに関連付けられているか否かに基づいて、異なるルールが提供される。各アダプタは、プライベートキーでデータに署名するコードを含むスマートコントラクトを実行するノードまたは処理デバイスにデータをプッシュすることができる。
【0010】
本発明の実施形態は、全フライトに関する全データを集約し、この時折対立するデータをフライトごとに単一のデータセットに合理化し、これを分散型台帳技術(DLT)に格納する、業界の中心的なフライト情報サービスを提供する。システム内の全ての参加者は、DLTのノードを操作することができる故、システム上に正確なデータを継続的に複製することができる。
【発明の効果】
【0011】
これは、単一の空港中心のビューだけでなく、信頼できるソースからのフライト情報のビューも含む、フライトの完全な視野を提供するという利点を有する。また、スマートコントラクトを使用してデータをマージし、DLTを使用してデータを分散することにより、システム上の全てのユーザが同じ情報を見ていることを確信することができる。
【0012】
次に、本発明の実施形態を、単なる例示として、添付の図面を参照して説明する。
【図面の簡単な説明】
【0013】
【
図1】本発明を実施する主要な機能コンポーネントの概略図である。
【
図2】例示的なステータス情報およびデータのソースを示す説明図である。
【
図3】例示的なステータス情報およびデータのソースを示す説明図である。
【
図4】例示的なステータス情報およびデータのソースを示す説明図である。
【
図5】例示的なステータス情報およびデータのソースを示す説明図である。
【
図6】例示的なステータス情報およびデータのソースを示す説明図である。
【
図7】例示的なステータス情報およびデータのソースを示す説明図である。
【
図8】本発明の一実施形態によって実行されるステップを示すフロー図である。
【
図9】本発明の更なる実施形態によって実行されるステップを示すフロー図である。
【発明を実施するための形態】
【0014】
以下の説明は、航空産業で使用するためのシステムに関するが、これは例示的なものであり、本発明の他の用途についても検討する。例えば、本システムは、鉄道、コーチ、自動車等の他の旅行業界、またはいくつかの異なるソースからの情報を集約する必要がある環境にて使用され得る。
【0015】
更に、説明される以下の実施形態は、例えばOpenCVライブラリを使用するC++プログラミング言語を使用して実施されてもよい。しかしながら、これは例示的なものであり、JAVAや.xml等、当業者に公知の他のプログラミング言語を使用することもできる。
【0016】
図1に戻ると、通常、
図1のラベル100内に示されている機能コンポーネントは、仮想プライベートクラウド内にて具現化される。クラウドへのアクセスは、ユーザ名およびパスワードで保護されている。通常、クラウドは1台以上のコンピュータまたはサーバ上に提供される。本発明の機能的態様を実施することができるクラウドの特定の一例として、Amazon(商標)のWeb Services cloudまたはVirtual Private Cloudが挙げられる。ここでは、異なるIPアドレス範囲を選択し、サブネットを作成し、ルートテーブルやネットワークゲートウェイを構成することができる。
【0017】
システムは、1つ以上のアダプタ101、103、105のうちの任意の1つ以上を備えることができる。各アダプタ101、103、105は、各データベース107、109、111に通信可能に連結される。通常、各アダプタは、定期的に、例えば毎分、データベースのうちの1つをポーリングする。あるいは、データベースは各アダプタ101、103、105にデータをプッシュする。
【0018】
通常、各データベースへのアクセスは、APIセキュリティキー102、104、106等のキーによって提供される。通常、キー102、104、および106は同じキーであるが、原則的にこれらは異なってもよい。通常、101等の各アダプタのデータベース107への結合は、HTTPS等の、当業者に公知の有線または無線通信手段113、115、117を介して行われる。
【0019】
更に、各アダプタ101、103、105は、分散型台帳技術(DLT)ノード119、121、123に通信可能に結合される。ここでもまた、アダプタ101等の各アダプタの各DLTノードへの結合は、一般的には、当業者に公知の有線または無線通信手段を介して行われる。通常、各ノード119、121、123へのアクセスは、各キー125、127、129によって保護されている。キー125、127、129は、公開暗号化キーまたは秘密暗号化キーのいずれかである。通常、キー125、127、129はそれぞれ異なり、それぞれを特定の航空会社または空港に関連付けることができる。各キーにより、特定の航空会社または空港、または、換言するとデータのソースを一意に識別および/または確認することができる。このようにして、各データソースは本物であると判断されるか、または認証される。
図1の矢印151、153、155は、各ピアまたはノード119、121、123と各アダプタ101、103、105との間の有線または無線通信チャネルを表す概略的な矢印である。これは、ハイパーテキストトランスファープロトコルセキュア(Hyper Text Transfer Protocol Secure)(HTTPS)に従い得る。
【0020】
フライト情報、FLIFO、データ構造
フライトステータスに対するデータ要素は十分に確立されており、利用可能な多様な標準が存在する。本発明の実施形態は、ACIT(商標)、IATA(商標)、およびSITA(商標)等の団体によって合意された標準であるACRIS(商標)Seamless Travelデータ標準を使用することができる。
【0021】
この標準は、以下に列挙されている要素のうちの任意の1つ以上を含むことができ、この情報にアップデートを送信することができるエンティティごとに分類される。通常、このデータは、構文要素またはデータ型を定義するフィールドを有する英数字形式と、一般的には英数字形式または文字列の関連値とである。
・航空会社データ(航空会社のみが定義可能なデータ)
・運航航空会社
・運航便名
・マーケティング航空会社
・マーケティング便名
・出発空港
・到着空港
・出発/到着予定時刻
・空港データ(空港のみが決定可能なデータ)
・出発ゲート
・到着ゲート
・チェックインデスク
・手荷物受け取りターンテーブル
・FIDS表示テキスト(BOARDING、CLOSING、GO TO GATE、WAIT IN LOUNGE等)
・航空会社/空港データ(航空会社と空港との両方が決定可能なデータ要素)
・予測される出発/到着時刻
・実際の出発/到着時間
【0022】
これらのデータ要素の一部は、図面の
図2~
図7に示されている。
【0023】
FLIFOイベント
これらは、フライトのライフサイクル中のイベントの一部であり、フライト情報データに影響を与え得る。
・航空会社によるスケジュールの公開
・出発空港によるチェックインデスクおよび出発ゲートの割り当て
・到着空港による到着ゲートおよび手荷物受け取りターンテーブルの割り当て
【0024】
更に、以下のイベントの任意の組み合わせは、フライト情報に影響し得る。
・乗務員がフライトに遅刻している、または病気であり交代要員の乗組員が必要である
・乗客の搭乗が遅延しており、荷物を降ろす必要がある
・出発空港または到着空港が混雑している
・到着時にゲートが利用不能である
・航空交通管制がフライトを遅延させる
【0025】
これは、フライトステータスの更新をトリガーし得るイベントの種類のほんの一例であり、フライトステータスデータはフライトの全期間を通じて継続的に更新可能である点に留意することが重要である。
【0026】
システム運用
次に、本発明の実施形態を、図面の
図1のアーキテクチャ図並びに
図8および
図9のフローチャートを参照して説明する。
【0027】
図1の概略図では、AODBシステム(空港/航空会社オペレーションデータベース)は、各航空会社/空港に既知のフライト情報を含む。更に、アダプタ101、103、105は、信頼できる空港および航空会社のシステムを分散型台帳技術に接続する役割を果たし得る。これらは、多くの場合「An Oracle」として知られており、DLTに保存される正式な信頼できる情報源である。
【0028】
パブリックまたはプライベート(例えば、ユーザ名およびパスワードを使用してアクセスを許可する)DLTまたはブロックチェーンを使用して、デジタル記録を保存し(スキャンされたバッグタグ等)、デジタルアセットを移送し(フライトの移送やバッグの移送等)、かつ、スマートコントラクト(WTRレコード、PAXへの支払い、または航空会社への請求)を実行することができる。
【0029】
このデータは、DLTで実行されるスマートコントラクトを介して集約され得る。データは既存のデータにマージされ(データが既に存在する場合)、ブロックチェーン上の全てのノードにわたって複製される。トークン(またはクレジット)は、更新をシステムにプッシュする参加航空会社/空港ごとに生成される。
【0030】
データ収集
第1または第2または第3のアダプタは、第1のステータス情報、または第2のステータス情報、または第3のステータス情報に関連する1つ以上の構文要素を読み取るように構成される。通常、ステータス情報は第1の形式に従って構成され、アダプタは構文要素を第1の形式とは異なる第2の形式にマッピングまたは解析する。
【0031】
通常、各アダプタは航空会社または空港のデータソースに固有である。通常、アダプタが呼び出す各データソースは、異なるエンドポイント、異なるデータ形式、およびサービスを呼び出すための異なるメカニズムを有する。通常、アダプタは、航空会社または空港のデータソースに特定の呼び出しを行うように構成されている。アダプタは、このデータソースからのデータを解析し、標準のACRIS jsonデータ形式に変換することもできる。
【0032】
例えば、LHRアダプタは、HTTPSを介してLHRエンドポイントにSOAP XML Webサービスコールを行うことができる。WebサービスコールはAPIキートークンによって保護されており、このトークンは、通常、サービスコールの一部として追加される。LHRサービスは、1つ以上のフライトに関連付けられた情報をXML形式で返す。通常、LHRアダプタは、このXMLデータをACRIS標準データ形式に変換する。次に、ブロックチェーン上のスマートコントラクトによりLHRがこのデータのソースであることを確認することができるように、アダプタはLHRキーでデータにスタンプする。各アダプタは、航空会社または空港を識別する固有のキーを有する。
【0033】
固有の旅行の識別子
出発地から、または目的地まで運航される特定の数のフライトに応じて、次のフィールドのうち任意の1つ以上を追加することで、フライトを一意に識別することができる。
・構文要素「originDate」で表すことができる、出発予定日
・構文要素「departureAirport」で表すことができる、出発空港
・構文要素「operatingAirline.iataCode」で表すことができる、運航航空会社
・構文要素「flightNumber.trackNumber」で表すことができる、運航便名
【0034】
例えば、識別子「2017-04-01LHRBA0122」は、LHRから2017-04-01に出発するBAフライト122を識別する。更なる例では、英数字文字列「2017-05-05LHRBA0734」は、2017年5月5日にロンドンのヒースロー空港から出発し、ブリティッシュエアウェイズが運航する便名0734を一意に識別することができる。従って、キーは、出発空港または旅行の出発地を定義するデータ、好ましくは旅行に関連する出発日を定義するデータ、更に好ましくは旅行のオペレータまたはプロバイダ並びにオプションの便名または旅行番号を定義するデータによって定義することができる。
【0035】
これは、フライトのユニークキーとして知られているが、ユニークキーは
図1には示されていない。アダプタ101、103、105のうちの1つがフライトをブロックチェーンにプッシュすると、本発明の実施形態は、コンピュータ、サーバまたはシステムに機能を提供することで、フライトのユニークキーを生成し、一致するフライトのブロックチェーンを検索する。この機能は、
図1に示す機能コンポーネントのいずれかによって実施され得る。フライトが存在しない場合、ACRISデータはそのままブロックチェーンに公開され、新しいフライトレコードが作成される。フライトが存在する場合、フライトデータはブロックチェーンから取得され、データマージプロセスが開始される。
【0036】
マージプロセスの説明
前述したように、システム内の各エンティティ(航空会社、出発空港、到着空港)は、単一のビューに結合する必要がある、各ソースからのデータおよび情報の部分的なビューのみを有する。いくつかの例として、以下が挙げられる。
-航空会社は最初にフライトスケジュールを公開する。これは、出発/到着空港、出発および到着予定時刻、並びに便名等の基本情報を含む。
-出発時刻が近づくと(一般的には24時間以内)、出発空港はチェックインデスクおよび出発ゲートを割り当てる。到着空港は、到着ゲートおよび手荷物受け取りターンテーブル情報も割り当てる。
-フライトが存在している間、この情報には多くの更新があり、両方の空港および航空会社(および航空管制ストライキ等の外的なソース)内での運航に関するイベントの変化を反映する。
【0037】
本発明を実施するコンピュータ、サーバ、またはシステムは、スマートコントラクトにおいて、これらの異なるソースからの部分データを単一の信頼できるフライト情報データセットに結合することができる。システムは、通常、スマートコントラクトのルールが適用され、無効な更新を排除し、競合する可能性のある更新間の調停を行う。無効な更新の例として、航空会社が運航していないフライトのフライトステータスを更新しようと試みる場合が挙げられる。例えば、ブリティッシュエアウェイズは、ライアンエアフライトのフライト情報を更新することはできない。
【0038】
別の例として、空港がその空港を通過しないフライトのデータを更新しようと試みる場合が挙げられる。ヒースローからダブリン空港へのフライトでは、アムステルダム空港はその特定のフライトの更新を送信することができない。本発明を実施するコンピュータ、サーバ、またはシステムは、スマートコントラクト機能がこれらの更新を識別し、必要に応じてブロックチェーンに書き込まれるのを防ぐ機能を実装してもよい。
【0039】
調停を必要とする他のデータ更新が存在する。これは、競合する更新がフライトのデータを更新する資格のあるエンティティから来る場合に生じる。例えば、航空会社および空港は、予測出発時刻の更新が競合するサイクルに陥る可能性があり、この場合、スマートコントラクト機能により、どれが正しく、どれを信頼できる更新としてDLTに書き込むべきかを決定する。本発明の実施形態は、これに対して以下の機能的解決策を提供し得る。
-ラストイン(Last in)が信頼できる。これは、正確性を判断しようとせず、最新の更新が最も信頼できると単純に判断するアルゴリズムである。
-重み付き権限。このアルゴリズムは、ソースに応じて、いくつかのフィールドにより高い重みを付ける。例えば、空港によるゲート情報の更新は、同じ情報に対する航空会社の更新よりも優先される。
【0040】
コンピュータ処理デバイスに実装されたノード119、121、123またはゲートウェイ131、133、135のうちの1つによって実施されるルールは、以下のうちの任意の1つ以上に従って定義することができる。
1.どのエンティティ(航空会社または空港)も、ブロックチェーン上に新しいフライトを公開することができる。このエンティティは、フライトに関する全てのデータを公開することができ、フライトの作成段階では、更新を制限するためのロジックルールを適用すべきではない。
2.乗客オブジェクトはクリアテキストで送信され、通常はブロックチェーンに保存される前に暗号化され、フライトに関連するエンティティのみが閲覧可能とすべきである。
3.特定の例では、次のフィールドは誰からも変更不能である。
・起点の日付
・出発空港
・運航航空会社
・便名
・出発.予定
・到着.予定
4.航空会社は任意のフィールドを更新することができる(#3に列挙されているフィールドを除く)
5.フライトの作成後、出発空港は以下を除くどのフィールドも更新可能である。
・#3に列挙されているフィールド
・到着オブジェクト
6.フライトの作成後、到着空港は以下を除くどのフィールドも更新可能である。
・#3に列挙されているフィールド
・出発オブジェクト
【0041】
クレジット/トークン
どのエンティティ(航空会社、空港)がフライトにとって最も価値のあるデータを提供したかを追跡するという概念がある。エンティティが有効なフライト更新をシステムにプッシュするたびに、そのエンティティはトークンでクレジットされる。これにより、システムは、フライトデータを最新の状態に保持するために最も寄与している者を追跡することができる。データへのアクセスが収益化されるシナリオでは、これらのトークンを後の段階で使用することで、誰が支払われるべきか、およびそのエンティティが支払われるべき総額を特定することができる。
【0042】
複数のソースからのデータマッピング
以下の開示は、異なるデータソースのサンプルと、本発明の実施形態による、それらのマージ方法とを提供する。
1.以下の表1は、航空会社からのサンプルデータを示す。このデータには、出発ゲート/ターミナル情報、または到着ゲート/ターミナル情報が含まれていないことに留意すべきである。これは、航空会社がこの情報を管理しておらず、多くの場合、出発が近づくまで(24時間以内)割り当てられないからである。一方、予定されている航空会社は12か月前までに指定される。
{
"MarketingCarrierCode": "BA",
"FlightNumber": 1476,
"Sector": {
"DepartureStatus": "Estimated",
"ArrivalStatus": "Estimated",
"DepartureAirport": "GLA",
"ArrivalAirport": "LHR",
"ScheduledDepartureDateTime": "2017-04-24T10:00:00",
"ScheduledArrivalDateTime": "2017-04-24T11:30:00",
"ReportedDepartureDateTime": "2017-04-24T10:00:00",
"ReportedArrivalDateTime": "2017-04-24T11:33:00",
"OperatingCarrierCode": "BA",
"AircraftTypeCode": 319,
"MatchesRequest": true
}
}
表1:キー/値ペアまたは構文要素として定義され得る航空会社からのサンプルJSONデータおよび関連するデータ値。
2.以下の表2は、到着空港からのサンプルデータを示す。このデータは、(航空会社からのjsonデータとは対照的に)XML形式である。また、これは到着空港である故、フライトの出発時刻(予定、予測、または実際)に関する情報がない。到着空港は、フライトの着陸予定時刻と、どのゲート/ターミナルであるかのみを認識している。また、空港は航空会社とは異なる機器タイプ(319対320)を有していることに留意すべきである。これにより、マージに際して特別な処理を必要とする(フェーズ3)。
<flight>
<flightIdentifier>BA1476</flightIdentifier>
<flightNumber>1476</flightNumber>
<airlineIataRef>BA</airlineIataRef>
<aircraftEquipmentIataRef>320</aircraftEquipmentIataRef>
<origin>
<airportIataRef>GLA</airportIataRef>
</origin>
<destination>
<airportIataRef>LHR</airportIataRef>
<terminalCode>5</terminalCode>
<terminalCode>22</terminalCode>
<status code="LD" statusTime="2014-07-11:30:00.000Z">
<interpretedStatus>Landed 11:30</interpretedStatus>
<category>INFO</category>
<messages>
<message>
<text>Landed</text>
<data>11:28</data>
</message>
</messages>
</status>
<scheduledDateTime>
<utc>2017-04-24T11:30:00.000</utc>
<local>2017-04-24T11:30:00.000</local>
<utcOffset>0</utcOffset>
</scheduledDateTime>
</destination>
<stops count="0"/>
<isHadacabCancelled>false</isHadacabCancelled>
</flight>
表2:キー/値ペアまたは構文要素として定義され得る到着空港からのサンプルXMLおよび関連するデータ値。
3.以下の表3は、結果として得られたマージされたデータセットを示す。これは、到着データおよび出発データの要素を含む、ACRISデータ標準にある。このjsonデータは、この特定のフライトに対する航空会社および到着空港からのマージされたデータを含む。更に、データをマージするロジックは、特定の要素(この場合は航空機の機器)についてデータに違いがある場合、航空会社が使用される航空機を管理しており、かつ空港が知らない変更を後に加えなければならなかった可能性もある故に、航空会社のデータが優先されることが想定される。また、データには他の外部データセットが追加されている。上記のデータには航空会社のIATAコードのみが含まれているが、マージプロセスでは他のコード標準(この場合はICAO)を検索し、航空会社用に使用可能な名前を取得することも可能である。これにより、データの品質が更に向上する。
{
operatingAirline: {
iataCode: "BA",
icaoCode: "BAW",
name: "British Airways"
},
aircraftType: {
icaoCode: "A319",
modelName: "319",
registration: ""
},
flightNumber: {
airlineCode: "BA",
trackNumber: "1476"
},
departureAirport: "GLA",
arrivalAirport: "LHR",
originDate: "2017-04-24",
arrival: {
scheduled: "2017-04-24T10:30",
actual: "2017-04-24T10:30",
terminal: "5",
gate: "22",
baggageClaim: {
carousel: ""
}
},
flightStatus: "Landed",
via: []
}
表3:マージされたJSONデータセットのサンプル。これは、キー/値ペアまたは構文要素および関連するデータ値として定義することができる。
【0043】
ノード119、121、123の機能
これらは、通常、スマートコントラクトの機能等、特定の機能を実行するように構成された追加のコードまたはロジックを備える。通常、ノード119、121、123のうち1つ以上は、HTTPS等の有線または無線のセキュアリンクを介してアダプタ101、103、105の1つから受信した書き込み要求を許可すべきか、または拒否すべきかを決定するコードを備える。この機能は、ゲートウェイ、ゲートキーパー、またはルールエンジンと呼ばれる場合があり、図面の
図1には示されていないが、データベースにデータを書き込む要求を許可すべきタイミングと、データベースにデータを書き込む要求を拒否すべきタイミングとを決定する。
【0044】
各ゲートウェイ131、133、135は、以下の機能を実行するように構成され得る。本発明の実施形態のこの説明は、ゲートウェイ131、133、135のうちの1つの機能に焦点を当てている。通常、各ノード119、121、および123は、以下で説明するものと同じまたは類似の機能をゲートウェイに採用する。従って、各ゲートウェイ131、133、135の機能は、各ノード119、121、123上で実装され得る。
【0045】
各アダプタ101、103、105は、HTTPS等の有線または無線リンク151、153、155を介して、各ノード119、121、123に決定されたステータス情報を定期的にプッシュすることができる。これは、通常、アダプタ101、103、105のうちの1つによる、各アダプタに関連付けられた各データベース107、109、111のうちの1つのポーリングに応じている。アダプタ101、103、105のうちの1つからノード119、121、123またはゲートウェイ131、133、135のうちの1つにプッシュされるステータス情報データは、通常、
図1に示すキー125、127、129のうちの1つを使用して暗号化される。データは、前述したように、キーの1つを含み得るREST APIコールを使用してプッシュすることができる。通常、データの署名に使用されるキー125、127、129はそれぞれ、公開キーまたは秘密キーである。更に、キー125、127、129はそれぞれ、異なるのが一般的である。更に、各キー125、127、129を使用して、データのソースまたは出所を識別することができる。キーは、データベース107、109、111に保存されているデータの出所またはソースを一意に識別することができる。特定の一例では、各アダプタは特定のデータベース107、109、111を特定の頻度でポーリングするように構成される。
【0046】
第1のアダプタ101は、第1の頻度で第1のデータベースをポーリングするように構成することができる。第2のアダプタ103は、第2の頻度で第2のデータベース109をポーリングするように構成することができる。第3のアダプタ105は、第3の頻度で第3のデータベース111をポーリングするように構成することができる。実装に応じて、第3の頻度は、第1の頻度または第2の頻度よりも頻繁でも、またはより少なくてもよい。第1の頻度は、第2の頻度に対応するか、または実質的に等しくてもよい。
【0047】
続いて、各アダプタにより、データソースの1つからステータス情報データを受信する。データは、前述したように、各ノードにXMLまたはJSONデータ形式に従って送信することができる。
【0048】
これに応じて、ノード119、121、123またはゲートウェイ131、133、123はそれぞれ、ペイロードの一部としても送信可能な書き込みコマンドを生成し、ステータス情報に定義された構文要素がデータベースまたはノード119、121、123の1つに書き込まれることを要求する。通常、データは、例えば約1分の頻度で、各アダプタ101、103、105から各ノード119、121、123に定期的に送信される。
【0049】
従って、ステップ801にて、ノード119、121、123またはゲートウェイ119、121、123のうちの1つ以上は、各アダプタ101、103、105からデータを受信する。通常、データはキーにより署名されている。次に、ステップ803にて、ノード119、121、123またはゲートウェイ119、121、123のうちの1つ以上により、データに関連付けられたアイデンティティを、換言するとデータの出所を決定する。これは、キーを使用して実行され得る。
【0050】
例えば、
図1の実施形態では、データベース107に格納されたデータは、ロンドンのヒースロー(LHR)等の空港から発信されるか、または空港に関連付けられている。データベース109に格納されたデータは、ブリティッシュエアウェイズ(商標)等の航空会社から発信されるか、または航空会社に関連付けられている。データベース111に格納されているデータは、フライトステータス情報データの提供者から発信されるか、または提供者に関連付けられている。
【0051】
各ノード119、121、123またはゲートウェイ131、133、135は、データに署名するためにアダプタによって使用されるキー125、127、129に基づいて、データに関連付けられたアイデンティティを決定することができる。以下で更に詳しく説明するように、ゲートキーパーにより、各ノードに保存されている1つ以上のルールに基づいて、ノードまたはデータベースへの書き込み要求をブロックまたは許可する。通常、単一のルールセットが提供され、これが各ノードにわたって複製される。しかしながら、原則として、データソースごとに異なるルールを提供することができる。
【0052】
従って、各ノード119、121、123またはゲートウェイ131、133、135は、データの署名方法の特徴からデータに関連付けられたアイデンティティを決定することができる。各キーは異なる場合がある故に、各ノード119、121、123またはゲートウェイ131、133、135は、例えばブリティッシュエアウェイズに関連付けられたキー、またはダブリン空港に関連付けられたキー、またはロンドンのヒースロー空港に関連付けられたキー等、データの署名にどのキーが使用されたかを判定することができる。
【0053】
通常は、一意にデータのソースが決定されると、各ノード119、121、123またはゲートウェイ131、133、135は、データベースまたはノードへのデータの書き込み要求を許可すべきか、または拒否すべきかを定義するルールを格納する前記データベースまたは更なるデータベースを検索する。
【0054】
データベースまたはノード119、121、123またはゲートウェイ119、121、123に保存されている特定の詳細ルールに関しては、以下で更に詳しく説明するが、通常、ステータス情報またはデータが出発空港あるいは到着空港または航空会社に関連付けられているか否かに応じて、異なるルールが提供される。
【0055】
ルールは、アダプタ101、103、105のうちの1つからノード119、121、123またはゲートウェイ119、121、123のうちの1つによって受信されたステータス情報に定義された構文要素の何れを書き込むか、またはノードの1つに格納されている既存の構文要素にマージするかを規定する。
【0056】
決定されたルールに基づいて、異なる各構文要素とデータの出所とがルールによりチェックされる。ステップ805にて、ノードに格納されている各構文要素を更新する書き込みアクセスが、ルールに基づいて許可または拒否される。
【0057】
更なる態様では、
図1に示されている機能コンポーネントのいずれかに送信される、またはいずれかから送信される1つ以上のフィールドまたは構文要素を暗号化することができる。
【0058】
特定の一例では、予測される出発スケジュールに関連付けられた構文要素またはデータは公開されており、公開キーで署名することができる。従って、
図1に示される仮想ネットワーク100へのアクセス権を有する全関係者が、この情報を解読することができる。
【0059】
しかしながら、ステータス情報に関連付けられた特定のフィールドまたは構文要素は、秘密キーで暗号化されてもよい。例えば、構文要素「航空機の乗客数」は、3way暗号化によって保護されてもよい。
【0060】
これの特定の用途として、例えば、フライトごとに、または特定の日にちの所定の期間に到着する乗客の総数を空港が判定する必要がある場合が挙げられる。更に、空港は、到着する乗客のうち何人が車椅子を必要とするかを決定する必要があるかもしれない。
【0061】
このデータは、アダプタ103等のアダプタの1つを使用する航空会社のソースによって提供され、データベース109から検索されるステータス情報に含まれ、例えば送信手段または送信機を使用してノード121に送信される。従って、例えばロンドンのヒースロー等の出発空港、BA等の航空会社、およびダブリン等の到着空港の間に秘密キーまたは3wayロックを提供することで、乗客数および/または車椅子ユーザの数のような、データベース107、109から検索されたステータス情報における1つ以上のフィールドまたは構文要素を、これらの三者のみが閲覧することができるようにする。
【0062】
即ち、第三者がノードのうちの1つに格納されているデータベースを照会するアプリケーションを構築した場合でさえも、特定の構文要素またはフィールドは3wayロックによってビューから保護されている故に、それらにより特定の構文要素またはフィールドを解読することはできないであろう。特定のデータまたは構文要素の秘密キーを使用した3wayロックまたは暗号化は、機密データに関連する他の構文要素にも適用することができる。
【0063】
前述したように、本発明の実施形態は、空港107、航空会社109、およびフライト情報データベース111等の複数のソースからフライトデータを引き出す。その後、データは、ブロックチェーンまたはDLTに格納される。データは、完全なフライトオブジェクト、または図面の
図2~
図7に示すデータ要素のうちの任意の1つ以上のような、フライトの任意の1つ以上の部分的要素であり得る。
【0064】
更に、ブロックチェーンに格納された、マージされたデータセットへのアクセスを可能にする、データベース111に関連付けられたAPI等のプログラミングインタフェースが提供されてもよい。APIは、上述したように、特定のフライトまたは旅行を一意に識別する任意の1つ以上のデータ等の1つ以上の入力データフィールドに基づいて、旅行またはフライトに関連する第1のキーを決定することができる機能を備え得る。これは、図面の
図9のステップ901として示されている。ステップ903にて、(ユニーク)キーを使用して、第1のキーに関連付けられた第1のステータス情報が、ブロックチェーンデータベースまたは他のデータベースから検索される。続いて、APIは、データベースの1つから
図2~
図7に示すデータフィールドのうちの任意の1つ以上を検索する。通常、
図2~
図7に示す1つ以上のデータ要素は、システムのユーザへ、モニタ、ディスプレイ、またはディスプレイ手段に出力される。
【0065】
いくつかの特定の例では、ノード119、121、123またはゲートウェイ119、121、123はそれぞれ、データベースに格納されているいくつかのフィールドを暗号化するように構成されてもよい。3way暗号化アルゴリズムを使用することができる。
【0066】
例えば、一般的な到着または出発のスケジュール情報に関連する、特に機密事項ではないフィールドは「パブリック」であり、必ずしも暗号化されるとは限らない。
【0067】
しかしながら、一部のデータは、例えば3way暗号化アルゴリズムを使用して暗号化することにより、プライベートデータとして保存されてもよい。
【0068】
特定の一例では、到着空港がダブリンであり、ダブリンのデータベースに結合されたアダプタにより出発ゲートを更新しようと試みたとすると、この更新は拒否される。なぜなら、通常、出発空港データベース、または換言すると、出発空港データベースに結合されたアダプタのみが、出発空港だけが更新することを認められているフィールドを更新するためのデータベースへの書き込みアクセスを許可されるからである。これにより、ブロックチェーンに保存されているフィールドの整合性が保たれる。
【0069】
このようにして、出発空港データベースに結合されたアダプタは、通常、出発に関連する情報の更新のみが許可され、例えば、到着に関連する情報または乗客の手荷物に関連する情報の更新は許可されない。
【0070】
同様に、到着空港データベースに結合されたアダプタは、通常、到着に関連する情報の更新のみが許可され、例えば、出発便に関連する如何なる情報の更新も許可されない。
【0071】
このようにして、データベースに保存されたフィールドの異なるサブセットは、定義されたアクセスルールに従って、特定のソースからのデータを使用して特定のアダプタによってのみ更新される。
【0072】
フライトのライフサイクル
フライトのライフサイクルは、最初のフライトオブジェクトであり、フライトに対する後続の全ての更新である。以下の例は、どの当事者がデータを提供しているかに応じて、本発明の実施形態によって実行され得る更新のタイプを示している。更新は、本発明の実施形態がデータを処理する典型的な順序で提示される。
航空会社ベースのアップデート#1:
・航空会社は、予定されたフライト情報(便名、出発/到着空港、出発/到着の日付/時刻)を公開する
出発空港ベースのアップデート#1:
・出発空港は、このフライトのチェックインデスク情報を更新する
・出発空港は、このフライトの出発ターミナル/ゲート情報を更新する
航空会社ベースのアップデート#2:
・航空会社は、予測出発時刻を更新する
到着空港ベースのアップデート#1:
・到着空港は、このフライトの到着ゲートを更新する
出発空港ベースのアップデート#2:
・出発空港は、このフライトの実際の出発時刻を更新する
到着空港ベースのアップデート#2:
・到着空港は、このフライトを実際の到着時刻を更新する
・到着空港は、このフライトの手荷物受け取りターンテーブルを更新する
【0073】
データ形式
フライトデータはACRISデータ構造を使用してブロックチェーンに送信され、この例ではいくつかの更なるフィールドが追加される。
追加フィールド:
-乗客-このデータ構造には、フライトに関するデータが含まれており、各キャビンの乗客数と車椅子の補助が必要な乗客数とを示している。通常、データは暗号化されており、関連する当事者、即ち航空会社、出発空港、および到着空港のみが閲覧可能である。
-フライトデータ変更-このデータ構造には、全ての変更の履歴が含まれる。これは、デバッグを支援し、簡単にアクセスできるフライトの更新履歴を提供するためだけに便利なデータ構造の一部である。
【0074】
前述のデータフィールドのうち任意の1つ以上をSITAデータベース111に格納することができる。通常、追加のフィールドデータをデータベース111から取得することができるようにデータベースを照会することができるAPIが提供される。
【0075】
以上から、本発明の実施形態は、スマートコントラクトを使用してデータをマージし、競合するデータがある場合には調停する、許可されたブロックチェーンまたはDLTを使用することができることが理解されよう。航空会社および空港のAODBシステムからのデータは、ブロックチェーンにマージされ保存される。通常、ブロックチェーンノードはSITA、IAG、およびLHRデータセンターに存在する。
【0076】
図面の
図2~
図7は、ステータス情報等のデータを使用したデータベースまたはブロックチェーンの更新プロセスを示している。この特定の例では、データはロンドンのヒースロー(LHR)からジュネーヴ(GVA)への特定のフライトBA0724に関連付けられており、出発予定時刻は06:45、到着予定時刻は09:20、またフライトが出発済みであることを示している。
【0077】
実際の出発時刻は、ターミナル5のゲートB:38から、06:43と表示されている。ターミナル1における到着予測時刻09:35が表示されており、到着ゲートはまだ割り当てられていない。
【0078】
図2では、更新ステータスまたは履歴が示されている。例えば、これは、到着空港であるGVAが実際の時刻を更新しようと試みたこと、およびこの更新が認可または許可されなかったことを示している。対照的に、
図2の下部には、航空会社が実際の出発時刻06:43にデータを更新することを許可または認可されたことが示されている。同様に、
図3~
図6は、データベースに格納されているデータを更新しようと試みる特定のデータソースの例と、データの書き込みが許可または拒否された例とを示している。
図7は、いくつかの例示的なフィールドまたは構文要素を示している。
【0079】
図8および
図9のフローチャートは、本発明の様々な実施形態によるシステム、方法、およびコンピュータプログラム製品の例示的な実装の動作を示している。フローチャートまたはブロック図の各ブロックは、ブロックで指定された論理機能を実装するための、1つ以上の実行可能なコンピュータ命令または命令の一部を含むモジュールを表している。図中のブロックの順序は、単なる例示を目的としている。代替的な実施形態では、特定のブロックに示されている論理機能は、図に示されている以外の順序で発生し得る。例えば、互いに隣接するように示された2つのブロックは、同時に実行されてもよく、または機能に応じて、逆の順序で実行されてもよい。フローチャートの各ブロックは、ソフトウェア、ハードウェア、またはソフトウェアとハードウェアとの組み合わせで実施可能である。
【0080】
上記から、システム、デバイス、および方法は、デスクトップコンピュータ、ラップトップコンピュータ、タブレットコンピュータ、携帯情報端末、携帯電話、スマートフォン等のコンピュータデバイスを含み得ることが理解されよう。
【0081】
デバイスは、クライアントデバイスと通信するための1つ以上のサーバプロセスを実行するコンピュータプロセッサを備えてもよい。サーバプロセスは、本発明の動作を実行するためのコンピュータ可読プログラム命令を含む。コンピュータ可読プログラム命令は、C等の手続き型プログラミング言語や、C#、C++、Java、スクリプト言語、アセンブリ言語、マシンコード命令、命令セットアーキテクチャ(ISA)命令、および状態設定データ等のオブジェクト指向プログラミング言語を含む適切なプログラミング言語、またはそれらの任意の組み合わせで書かれたソースコードまたはオブジェクトコードであり得る。
【0082】
上述の有線または無線の通信ネットワークは、パブリック、プライベート、有線または無線のネットワークであり得る。通信ネットワークは、ローカルエリアネットワーク(LAN)、ワイドエリアネットワーク(WAN)、インターネット、携帯電話通信システム、または衛星通信システムのうちの1つ以上を含み得る。通信ネットワークは、銅ケーブル、光ケーブルまたは光ファイバ、ルータ、ファイアウォール、スイッチ、ゲートウェイコンピュータ、およびエッジサーバ等を含む、任意の適切なインフラストラクチャを含み得る。
【0083】
上述のシステムは、グラフィカルユーザインタフェースを備えてもよい。本発明の実施形態は、画面上のグラフィカルユーザインタフェースを含むことができる。ユーザインタフェースは、例えば、ウェブサイトに埋め込まれたウィジェットの形態で、デバイスのアプリケーションとして、または専用のランディングウェブページに提供されてもよい。グラフィカルユーザインタフェースを実装するためのコンピュータ可読プログラム命令は、例えば、インターネット、ローカルエリアネットワーク(LAN)、ワイドエリアネットワーク(WAN)および/または無線ネットワークを介したコンピュータ可読記憶媒体からクライアントデバイスにダウンロードすることができる。命令は、クライアントデバイス内のコンピュータ可読記憶媒体に保存されてもよい。
【0084】
当業者によって理解されるように、本明細書に記載される本発明は、方法、データ処理システム、またはコンピュータ可読命令を含むコンピュータプログラム製品として全体的または部分的に具体化され得る。従って、本発明は、完全にハードウェアの実施形態、またはソフトウェア、ハードウェアおよび任意の他の適切な手法または機器を組み合わせた実施形態の形態をとることができる。
【0085】
コンピュータ可読プログラム命令は、非一時的な有形のコンピュータ可読媒体に保存されてもよい。コンピュータ可読記憶媒体は、電子記憶装置、磁気記憶装置、光学記憶装置、電磁記憶装置、半導体記憶装置、ポータブルコンピュータディスク、ハードディスク、ランダムアクセスメモリ(RAM)、読み取り専用メモリ(ROM)、消去可能プログラマブル読み取り専用メモリ(EPROMまたはフラッシュメモリ)、スタティックランダムアクセスメモリ(SRAM)、ポータブルコンパクトディスク読み取り専用メモリ(CD-ROM)、デジタル多用途ディスク(DVD)、メモリースティック、フロッピーディスクのうちの1つ以上を含み得る。
【0086】
本発明の例示的な実施形態は、CPU、バス、RAM、フラッシュメモリ、プリンタ、ディスプレイ、キーパッド、センサおよびカメラ等の接続されたI/O装置の動作のための1つ以上のポート、ROM、モデム等の通信サブシステム、および通信メディアを含み得る回路基板として実装され得る。
【0087】
(付記1)
デバイスに関連付けられたデータベースまたは格納手段へのアクセスの許可または拒否を決定するためのコンピュータ処理デバイス(119、121、123、131、133、135)であって、前記デバイスは、
a.特定のステータス情報のデータを受信するための受信手段を含み、
前記データがキーにより署名されており、
前記デバイスは、
i.前記キーを、前記データベースまたは格納手段に格納されている1つ以上のキーと比較することによって、前記データの出所を決定して、前記データのソースを特定し、
ii.前記データベースまたは格納手段を検索して、前記データのソースに関連する1つ以上のアクセスルールであって、前記データについての前記データベースまたは格納手段への書き込みアクセスの許可または拒否を規定するアクセスルールを決定し、
iii.前記決定された1つ以上のルールに基づいて、前記データベースまたは格納手段への書き込みアクセスを許可または拒否する
ように構成されている、コンピュータ処理デバイス。
【0088】
(付記2) 前記データは、複数の異なるフィールドを含み、前記データベースまたは格納手段は複数の異なるフィールドを含む、付記1に記載のコンピュータ処理デバイス。
【0089】
(付記3) 前記異なるフィールドのうち少なくとも2つ以上に対して、1つ以上の異なるアクセスルールが提供される、付記2に記載のコンピュータ処理デバイス。
【0090】
(付記4) 前記データは、出発地Aと目的地Bとの間の旅行またはフライトに関連付けられている、付記1~3のいずれか一つに記載のコンピュータ処理デバイス。
【0091】
(付記5) 前記決定された1つ以上のルールに基づいて、前記データベースまたは格納手段に格納されているフィールドのサブセットへのアクセスを許可または拒否するように更に構成されている、付記1~4のいずれか一つに記載のコンピュータ処理デバイス。
【0092】
(付記6) 前記データベースまたは格納手段に格納されている1つ以上の暗号化ルールに基づいて、前記受信データに関連する1つ以上のフィールドを暗号化するように更に構成されており、前記暗号化が3way暗号化を使用して実行される、付記1~5のいずれか一つに記載のコンピュータ処理デバイス。
【0093】
(付記7) 出発地Aと目的地Bとの間の旅行に関連付けられたステータス情報を決定するためのコンピュータ処理デバイスであって、
前記旅行またはフライトに関連付けられた第1のキーを決定し、
前記第1のキーに関連付けられた第1のステータス情報を受信する
ように構成された
a.第1のアダプタを含む、コンピュータ処理デバイス。
【0094】
(付記8) 前記デバイスは、更に、
i.前記第1のキーに関連付けられた第2のステータス情報であって、前記第1のステータス情報とは異なる第2のステータス情報を受信する
ように構成された
a.第2のアダプタを含む、付記1に記載のコンピュータ処理デバイス。
【0095】
(付記9) 前記デバイスは、更に、
i.前記第1のキーに関連付けられた第3のステータス情報であって、前記第1のステータス情報および前記第2のステータス情報とは異なる第3のステータス情報を受信する
ように構成された
a.第3のアダプタを含む、付記2に記載のコンピュータ処理デバイス。
【0096】
(付記10) 第1のルールセットは第1のステータス情報に関連付けられており、前記ルールにより、データベースに格納されている1つ以上のフライトステータス情報の構文要素のうちどれを前記第1のアダプタによって更新するかを規定する、付記1~9のいずれか一つに記載のコンピュータ処理デバイス。
【0097】
(付記11) 第2のルールセットは第2のステータス情報に関連付けられており、前記ルールにより、データベースに格納されている1つ以上のフライトステータス情報の構文要素のうちどれを前記第2のアダプタによって更新するかを規定する、付記1~10のいずれか一つに記載のコンピュータ処理デバイス。
【0098】
(付記12) 第3のルールセットは第3のステータス情報に関連付けられており、前記ルールにより、データベースに格納されている1つ以上のフライトステータス情報の構文要素のうちどれを前記第1のアダプタによって更新するかを規定する、付記1~11のいずれか一つに記載のコンピュータ処理デバイス。
【0099】
(付記13) 前記第1のキーにより、航空会社または空港に関連付けられたデータベースへのアクセスが可能となる、付記1~12のいずれか一つに記載のコンピュータ処理デバイス。
【0100】
(付記14) 前記プロセッサは、交通結節点に関連するデータベースへのサービスコールを実行するように更に構成されており、好ましくは、前記サービスコールは、安全な転送プロトコルを使用して通信されるSOAP XML Webサービスコールまたはrest APIコールである、付記1~13のいずれか一つに記載のコンピュータ処理デバイス。
【0101】
(付記15) 前記サービスコールは前記第1のキーを含む、付記1~14のいずれか一つに記載のコンピュータ処理デバイス。
【0102】
(付記16) 前記第1のステータス情報および第2のステータス情報および第3のステータス情報のうち任意の1つ以上は、特定の出発空港、出発ゲート、到着空港、到着ゲート、航空会社に関連付けられたフライトスケジュール情報におけるステータス情報の異なる側面を定義するデータを含み、前記データはXMLまたはJSONデータ形式等の英数字データ形式に従ってフォーマットされていることが好ましい、付記1~15のいずれか一つに記載のコンピュータ処理デバイス。
【0103】
(付記17) 前記第1または第2または第3のアダプタは、前記第1のステータス情報、または第2のステータス情報または第3のステータス情報に関連する1つ以上の構文要素を読み取るように構成されており、前記ステータス情報は、第1の形式に従って構成され、かつ前記構文要素を前記第1の形式とは異なる第2の形式にマッピングするように構成されている、付記1~16のいずれか一つに記載のコンピュータ処理デバイス。
【0104】
(付記18) 前記第1のアダプタ、第2のアダプタまたは第3のアダプタのうち任意の1つ以上は、前記第1のキーにより、前記第1のステータス情報、第2のステータス情報および第3のステータス情報のうち任意の1つ以上をスタンプするように構成されている、付記1~17のいずれか一つに記載のコンピュータ処理デバイス。
【0105】
(付記19) 前記第1、第2または第3のアダプタ101、103、105またはノード119、121、123はそれぞれ、受信された第1のステータス情報および第2のステータス情報および好ましくは第3のステータス情報を集約データにマージするように構成されており、前記集約データは好ましくは英数字形式からなる、付記1~18のいずれか一つに記載のコンピュータ処理デバイス。
【0106】
(付記20) 前記第1のアダプタ、第2のアダプタまたは第3のアダプタのうち任意の1つ以上は、更に、
出発および/または到着予定時刻、
予測されるおよび実際の出発/到着時刻、
空港に関連する出発ゲートおよび/またはターミナル、
前記またはある空港に関連する到着ゲートおよび/またはターミナル、
到着空港に関連付けられた手荷物受け取りターンテーブル番号、
フライトをdelayedまたはgo to gateまたはboardingまたはclosingとして定義する特定のデータにおけるフライトステータス情報、並びに
航空機タイプおよびテールナンバー
を画定する、任意の1つ以上の構文要素を含むフライトステータスデータを受信するように構成されている、付記1に記載のコンピュータ処理デバイス。
【0107】
(付記21) 前記プロセッサは、前記第1のステータス情報および前記第2のステータス情報および好ましくは前記第3のステータス情報に関連付けられた前記構文要素または更なる構文要素のうち任意の1つ以上が、構文要素の比較に基づいて一致するか否かを決定するように更に構成されている、付記1~20のいずれか一つに記載のコンピュータ処理デバイス。
【0108】
(付記22) 前記プロセッサは、前記第1または第2または第3のフライトステータス情報の1つに関連付けられた一致する構文要素のうち1つのみを選択し、かつ、好ましくは、他のフライトステータス情報に関連付けられた一致する構文要素を捨てることによって、決定された一致する構文要素のうちの1つ以上を合理化するように更に構成されている、付記1~21のいずれか一つに記載のコンピュータ処理デバイス。
【0109】
(付記23) 前記プロセッサは、更に、前記集約データまたは前記第1のステータス情報および第2のステータス情報および第3のステータス情報のうちの任意の1つを1つ以上のノード(119、121、123)または分散型台帳に関連付けられた更なるコンピュータデバイスに送信するように構成されており、前記集約データまたはデータを定期的に送信する、付記1~22のいずれか一つに記載のコンピュータ処理デバイス。
【0110】
(付記24) 前記コンピュータデバイスまたは更なるコンピュータデバイスまたはノードは、出発予定日、出発空港、運航航空会社、および運航便を定義するデータのうちの任意の1つ以上に基づいて、フライトに対するユニークキーを生成するように構成されている、付記1~23のいずれか一つに記載のコンピュータ処理デバイス。
【0111】
(付記25) 前記更なるコンピュータデバイスまたはノードは、前記フライトのユニークキーに一致するデータについて、前記データベースまたは更なるデータベースを検索、付記1~24のいずれか一つに記載のコンピュータ処理デバイス。
【0112】
(付記26) 前記更なるコンピュータデバイスまたはノードは、出発スケジュール、到着スケジュール、運航日付、運航航空会社、便名、出発空港および到着空港を定義するデータのうちの任意の1つ以上を含むフライトレコードを生成し、前記データベースまたはあるデータベースが前記フライトのユニークキーに一致するデータを含まず、前記データベース内の前記フライトレコードに前記集約データを格納する場合にのみ、フライトレコードを作成する、付記1~25のいずれか一つに記載のコンピュータ処理デバイス。
【0113】
(付記27) 前記プロセッサは、前記集約データを空港のディスプレイに送信するように更に構成されており、前記表示されたステータス情報は、フライトが遅延、搭乗中、または閉鎖中であるか否か、または前記フライトに関連する乗客が所定のゲート番号に行くべきか否かを定義するデータのうちの任意の1つ以上を含む、特定の英数字テキストでフライトのステータスを定義するデータを含む、付記1~26のいずれか一つに記載のコンピュータ処理デバイス。
【0114】
(付記28) 出発地Aと目的地Bとの間の旅行に関連するステータス情報を決定するための方法であって、付記1~27のいずれか一つに記載のステップを含む、方法。
【0115】
(付記29) 実行時に、付記1~28のいずれか一つに記載の方法を実行する、コンピュータプログラム製品。
【0116】
(付記30) 出発地Aと目的地Bとの間の旅行に関連するステータス情報を決定するための装置であって、
a.旅行またはフライトに関連する第1のキーを決定する手段と、
b.前記第1のキーに関連する第1のステータス情報を受信するための手段と、
を含む、デバイス。