JP2003323324A - データ・リポジトリ抽象化層を介するアプリケーションの物理データ層の動的なエンド・ユーザ固有のカスタマイズ - Google Patents

データ・リポジトリ抽象化層を介するアプリケーションの物理データ層の動的なエンド・ユーザ固有のカスタマイズ

Info

Publication number
JP2003323324A
JP2003323324A JP2003117893A JP2003117893A JP2003323324A JP 2003323324 A JP2003323324 A JP 2003323324A JP 2003117893 A JP2003117893 A JP 2003117893A JP 2003117893 A JP2003117893 A JP 2003117893A JP 2003323324 A JP2003323324 A JP 2003323324A
Authority
JP
Japan
Prior art keywords
data
query
user
mapping rules
physical
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2003117893A
Other languages
English (en)
Inventor
Richard Dean Dettinger
リチャード・ディーン・デッティンガー
Richard Joseph Stevens
リチャード・ジョセフ・スティーブンス
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Publication of JP2003323324A publication Critical patent/JP2003323324A/ja
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/242Query formulation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/80Information retrieval; Database structures therefor; File system structures therefor of semi-structured data, e.g. markup language structured data such as SGML, XML or HTML
    • G06F16/84Mapping; Conversion
    • G06F16/86Mapping to a database
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99931Database or file accessing
    • Y10S707/99933Query processing, i.e. searching
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99931Database or file accessing
    • Y10S707/99939Privileged access

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Computational Linguistics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

(57)【要約】 【課題】 データが物理的に表現される特定の形から独
立にデータへのアクセスを提供するシステム、方法、お
よび製造物を提供すること。 【解決手段】 一実施形態では、複数のデータ・リポジ
トリ抽象化によって、同一の基礎となるデータ・リポジ
トリの異なる論理ビューを提供する。複数のデータ・リ
ポジトリ抽象化のそれぞれを、異なるユーザに関連付け
ることができ、これによって、各ユーザに異なるデータ
のセットが公開される。ランタイム・コンポーネント
が、特定の物理データ表現に対して使用することができ
る形への抽象照会の変換を実行する。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、全般的にはデータ
処理に関し、具体的には、データが物的に表現される特
定の形から独立のデータへのアクセスに関する。
【0002】
【従来の技術】データベースは、コンピュータ化された
情報保管検索システムである。リレーショナル・データ
ベース管理システムは、データを保管し検索するのにリ
レーショナル技法を使用するコンピュータ・データベー
ス管理システム(DBMS)である。データベースの最
も普及したタイプが、リレーショナル・データベースす
なわち、複数の異なる形でデータを再編成でき、アクセ
スできるようにデータが定義される表形式データベース
である。
【0003】DBMSでは、特定のアーキテクチャに無
関係に、要求元の実体(たとえばアプリケーションまた
はオペレーティング・システム)が、データベース・ア
クセス要求を発行することによって、指定されたデータ
ベースへのアクセスを求める。そのような要求には、た
とえば、単純なカタログ・ルックアップ要求またはトラ
ンザクションと、オペレータがデータベース内の指定さ
れたレコードの読取、変更、および追加を行うトランザ
クションの組合せを含めることができる。これらの要求
は、構造化照会言語(SQL)などの高水準照会言語を
使用して行われる。たとえば、SQLは、Internationa
l Business Machines社(IBM)のDB2(R)、Micros
oft社のSQL Server、および、Oracle社、Sybase社、お
よびComputerAssociates社のデータベース製品などのデ
ータベースから情報を取得し、更新する対話型照会を行
うのに使用される。用語「照会」は、保管されたデータ
ベースからデータを検索するコマンドの組を指す。照会
は、プログラマおよびプログラムが、データの選択、挿
入、更新、位置の検索などを行えるようにするコマンド
言語の形をとる。
【0004】データ・マイニング・アプリケーションお
よびデータベース照会アプリケーションが直面する問題
の1つが、一般に、所与のデータベース・スキーマ(た
とえばリレーショナル・データベース・スキーマ)との
密な関係である。この関係によって、対応する基礎とな
るデータベース・スキーマに変更が加えられる時に、ア
プリケーションをサポートすることが困難になる。さら
に、代替の基礎データ表現へのアプリケーションの移行
は、禁止される。今日の環境では、前述の短所が、主
に、アプリケーションがSQLに頼ることに起因し、こ
れは、リレーショナル・モデルが、照会される情報の表
現に使用されることを前提とする。さらに、所与のSQ
L照会は、特定のデータベース表、列、および関係がS
QL照会表現内で参照されるので、特定のリレーショナ
ル・スキーマに依存する。これらの制限の結果として、
多数の問題が生じる。
【0005】問題の1つが、基礎となるリレーショナル
・データ・モデルの変更によって、対応するアプリケー
ションがその上で構築されたSQL基礎に対する変更が
必要になることである。したがって、アプリケーション
設計者は、アプリケーション保守を避けるために基礎と
なるデータ・モデルを変更せずに済ませるか、基礎とな
るリレーショナル・モデルの変更を反映するようにアプ
リケーションを変更しなければならない。もう1つの問
題が、複数のリレーショナル・データ・モデルを扱うよ
うにアプリケーションを拡張することが、各一意のリレ
ーショナル・スキーマによって駆動される一意のSQL
要件を反映するために、アプリケーションの複数のバー
ジョンを必要とすることである。もう1つの問題は、S
QLがリレーショナル・システムと共に使用されるよう
に設計されているので、代替データ表現を扱うためのア
プリケーションの進化である。XMLなどの代替データ
表現をサポートするようにアプリケーションを拡張する
ことは、非SQLデータ・アクセス方法を使用するよう
に、アプリケーションのデータ管理層を書き直すことを
必要とする。
【0006】前述の問題に対処するのに使用される通常
の手法は、ソフトウェア・カプセル化である。ソフトウ
ェア・カプセル化では、ソフトウェア・インターフェー
スまたはソフトウェア・コンポーネントを使用して、特
定の基礎となるデータ表現へのアクセス方法をカプセル
化することが用いられる。その例が、Java (R) 2 Enterp
rise Edition(J2EE)技術スイートの構成要素であ
るEnterprise Java (R)Bean(EJB)仕様に見られ
る。EJBの場合には、bean全体が、データの所与の組
をカプセル化するように働き、この情報にアクセスする
のに使用することができるアプリケーション・プログラ
ム・インターフェース(API)の組が公開される。こ
れは、データの新しい組にアクセスする時に必ず、また
はデータ・アクセスの新しいパターンが望まれる時に、
ソフトウェア(新しいエンティティEJBの形の)を記
述することを必要とする、非常に特殊化された手法であ
る。EJBモデルは、基礎となる物理データ・モデルの
再編成に反応するか、代替データ表現をサポートするた
めに、コード更新、アプリケーション構築、および開発
のサイクルも必要とする。EJBプログラミングでは、
より高度なJava(R)プログラミング技法が用いられるの
で、特殊化された技術も必要になる。したがって、EJ
B手法および他の類似する手法は、柔軟性に欠け、新し
い物理データ・モデルにアクセスする汎用照会アプリケ
ーションについて維持するのにコストがかかる。
【0007】従来技術のもう1つの短所は、情報をユー
ザに提示できる形である。複数のソフトウェア解決策
が、ユーザ定義照会の使用をサポートするが、このユー
ザ定義照会では、ユーザに、ユーザの特定のデータ選択
要件を満たす照会を構築するツールが与えられる。SQ
Lベースのシステムでは、ユーザに、照会を構築する時
にそこから選択される、基礎となるデータベース表およ
びデータベース列のリストが与えられる。ユーザは、デ
ータベース管理者によって使用される命名規則に基づい
て、どの表および列にアクセスするかを判断しなければ
ならない。この手法は、ユーザに提示される情報の組を
サブセットにする効率的な形を提供しない。その結果、
本質的でない内容もユーザに示される。
【0008】さらに、既存のデータベース環境は、同一
の物理データの異なる部分に同時にアクセスすることを
求める複数のユーザに効率的に対処しない。通常、その
ような同時アクセスは、各ユーザが別々のアプリケーシ
ョンを使用することによって達成される。各アプリケー
ションは、所望のデータをそれぞれのユーザに公開する
ように記述される。したがって、現在のデータベース環
境では、アプリケーション開発のかなりのオーバーヘッ
ドが生じる。
【0009】
【発明が解決しようとする課題】したがって、基礎とな
る物理データが表現される特定の形に制限されず、好ま
しくは従来技術に関連するアプリケーション開発のオー
バーヘッドが回避される、データにアクセスする改良さ
れたより柔軟な方法を提供する必要がある。
【0010】
【課題を解決するための手段】本発明は、全般的に、デ
ータが物理的に表現される特定の形から独立にデータに
アクセスし、同一のアプリケーションを使用して異なる
形でデータを公開する、方法、システム、および製造物
を対象とする。一実施形態では、複数のデータ・リポジ
トリ抽象化によって、同一の基礎となるデータ・リポジ
トリの異なる論理ビューを提供する。複数のデータ・リ
ポジトリ抽象化は、それぞれ、異なるユーザに関連付け
ることができ、これによって、データの異なるセットが
各ユーザに公開される。ランタイム・コンポーネント
が、特定の物理データ表現に対して使用することができ
る形への抽象照会の変換を実行する。
【0011】一実施形態では、特定の物理データ表現を
有するデータにアクセスする方法が提供される。この方
法は、抽象照会を定義する複数の論理フィールドを含む
照会指定を提供するステップと、前記複数の論理フィー
ルドの少なくとも第1部分を前記データの第1の複数の
物理実体にマッピングするマッピング規則の第1組を提
供するステップと、前記複数の論理フィールドの少なく
とも第2部分を前記データの第2の複数の物理実体にマ
ッピングするマッピング規則の第2組を提供するステッ
プとを含む。
【0012】特定の物理データ表現を有するデータへの
アクセスを提供するもう1つの方法は、抽象照会を定義
する複数の論理フィールドを含む照会指定を定義するア
プリケーションを提供するステップと、それぞれが前記
複数の論理フィールドの少なくとも一部を前記データの
物理実体にマッピングするマッピング規則の異なる組と
の関連をそれぞれが定義する複数のユーザ・プロファイ
ルを提供するステップとを含む。
【0013】特定の物理データ表現を有するデータにア
クセスするもう1つの方法は、第1ユーザによって、ア
プリケーションに第1の複数の論理フィールドに従って
定義される第1抽象照会を発行するステップと、前記第
1抽象照会に応答して、前記第1ユーザとの定義された
関連を有するマッピング規則の第1組にアクセスするス
テップとを含む。アプリケーションに第2抽象照会を発
行する第2ユーザに応答して、第2抽象照会が第2の複
数の論理フィールドに従って定義される。前記第2抽象
照会に応答して、前記第2ユーザとの定義された関連を
有するマッピング規則の第2組にアクセスする。前記第
1抽象照会および前記第2抽象照会のそれぞれを、前記
論理フィールドを前記データの物理実体にマッピングす
るそれぞれのマッピング規則に従って、前記特定の物理
データ表現との一貫性を有する照会に変換する。
【0014】もう1つの実施形態は、特定の物理データ
表現を有するデータへのアクセスを提供するデータベー
ス・アクセス環境を含むコンピュータ可読媒体を提供す
る。前記データベース・アクセス環境が、抽象照会を定
義する複数の論理フィールドを含む照会指定を含むアプ
リケーションと、前記複数の論理フィールドを前記デー
タの物理実体にマッピングする複数のマッピング規則の
組とを含む。前記複数のマッピング規則の組の少なくと
も2つは、前記複数の論理フィールドを前記データの前
記物理実体の異なる組にマッピングし、2人の異なるユ
ーザ、ユーザの2つの異なるグループ、ユーザのグルー
プおよびユーザの3つから選択される2つの異なる要求
元実体の少なくとも1つに一意に関連する。
【0015】もう1つの実施形態は、プロセッサによっ
て実行される時に、特定の物理データ表現を有するデー
タにアクセスする動作を実行するプログラムを含むコン
ピュータ可読媒体を提供する。前記動作は、論理フィー
ルドに従う前記抽象照会の定義を提供する、アプリケー
ションの照会指定に従って、複数のユーザによって発行
される複数の抽象照会を受け取るステップと、前記抽象
照会を、前記論理フィールドを前記データの物理実体に
マッピングする複数のデータ・リポジトリ抽象化コンポ
ーネントに従って、前記特定の物理データ表現との一貫
性を有する照会に変換するステップとを含む。異なるデ
ータ・リポジトリ抽象化コンポーネントは、前記アプリ
ケーションを使用する前記ユーザの少なくとも2人に関
連付けられる。
【0016】もう1つの実施形態は、コンピュータであ
って、少なくとも(i)論理フィールドによる抽象照会
の定義を提供する照会指定を含むアプリケーションと、
(ii)前記論理フィールドをデータの物理実体にマッ
ピングする複数のデータ・リポジトリ抽象化コンポーネ
ントであって、前記データ・リポジトリ抽象化コンポー
ネントの少なくとも一部が、異なるユーザとのプログラ
ム的に定義された関連を有する、複数のデータ・リポジ
トリ抽象化コンポーネントと、(iii)前記抽象照会
を、前記データ・リポジトリ抽象化コンポーネントに従
って、データの前記物理実体との一貫性を有する照会に
変換するランタイム・コンポーネントとを含むメモリを
含むコンピュータを提供する。
【0017】
【発明の実施の形態】序論 本発明は、全般的に、データが物理的に表現される特定
の形とは独立にデータにアクセスするシステム、方法、
および製造品を対象とする。一実施形態では、データ・
リポジトリ抽象化層が、データが物理的に表現される特
定の形から独立な基礎となるデータ・リポジトリの論理
ビューを提供する。照会抽象化層も提供され、これは、
データ・リポジトリ抽象化層に基づく。ランタイム・コ
ンポーネントが、特定の物理データ表現に対して使用で
きる形への抽象照会の変換を実行する。一実施形態で
は、データ・リポジトリ抽象化層に、単一のアプリケー
ション・スペース内で共存する(かつ、いくつかの実施
形態では協力する)複数のデータ・リポジトリ抽象化コ
ンポーネント/インスタンスが含まれる。データ・リポ
ジトリ抽象化の複数のインスタンスを提供することによ
って、データの異なるセットを異なるユーザに公開でき
るようになる。さらに、一実施形態では、新しいデータ
・リポジトリ抽象化コンポーネントの動的インスタンス
化が提供され、これによって、オンザフライで変更を行
え、複数の動的ユーザがそれぞれのデータ抽象化コンポ
ーネントをカスタマイズできるようになる。
【0018】本発明の一実施形態は、たとえば図1に図
示され下で説明するコンピュータ・システムなどのコン
ピュータ・システムと共に使用されるプログラム製品と
して実施される。このプログラム製品のプログラムによ
って、実施形態(本明細書に記載の方法を含む)の機能
が定義され、このプログラムを、さまざまな信号担持媒
体に含めることができる。例示的な信号担持媒体には、
(i)書込不能記憶媒体(たとえば、CD−ROMドラ
イブによって読取可能なCD−ROMディスクなどの、
コンピュータ内の読取専用メモリ・デバイス)に永久的
に保管された情報、(ii)書込可能記憶媒体(たとえ
ば、ディスケット・ドライブ内のフロッピ・ディスクま
たはハード・ディスク)に保管された変更可能な情報、
または(iii)無線通信を含む、コンピュータ・ネッ
トワークまたは電話ネットワークを介するなど、通信媒
体によってコンピュータに伝えられる情報が含まれる
が、これに制限はされない。後者の実施形態には、特
に、インターネットおよび他のネットワークからダウン
ロードされた情報が含まれる。そのような信号担持媒体
は、本発明の機能を指示するコンピュータ可読命令を搬
送する時に、本発明の実施形態を表す。
【0019】一般に、本発明の実施形態を実施するため
に実行されるルーチンは、オペレーティング・システム
または特定のアプリケーションの一部、コンポーネン
ト、プログラム、モジュール、オブジェクト、あるいは
命令のシーケンスとすることができる。本発明のソフト
ウェアは、通常は、ネイティブ・コンピュータによって
計算機可読フォーマットに、したがって実行可能命令に
変換される、複数の命令からなる。また、プログラム
は、プログラムにローカルに常駐するか、メモリまたは
記憶装置内にある、変数およびデータ構造からなる。さ
らに、下に記載のさまざまなプログラムは、それらがそ
のために本発明の特定の実施形態で実施される応用例に
基づいて識別することができる。しかし、以下の特定の
用語が、単に便宜上使用されるものであり、したがっ
て、本発明を、そのような用語によって識別または暗示
される特定の応用分野だけでの使用に制限されないこと
を諒解されたい。
【0020】環境の物理ビュー 図1に、本発明の実施形態を実施することができるネッ
トワーク化されたコンピュータ・システム100のブロ
ック図を示す。一般に、ネットワーク化されたコンピュ
ータ・システム100には、クライアント(たとえばユ
ーザの)コンピュータ102(3つのそのようなクライ
アント・コンピュータ102が図示されている)と、少
なくとも1つのサーバ・コンピュータ104(1つのそ
のようなサーバ・コンピュータ104)が含まれる。ク
ライアント・コンピュータ102およびサーバ・コンピ
ュータ104は、ネットワーク126を介して接続され
る。一般に、ネットワーク126は、ローカル・エリア
・ネットワーク(LAN)または広域ネットワーク(W
AN)あるいはその両方とすることができる。1特定の
実施形態では、ネットワーク126がインターネットで
ある。
【0021】クライアント・コンピュータ102には、
バス108を介してメモリ112、記憶装置114、入
力装置116、出力装置119、およびネットワーク・
インターフェース・デバイス118に接続された中央処
理装置(CPU)110が含まれる。入力装置116
は、クライアント・コンピュータ102に入力を与える
すべての装置とすることができる。たとえば、キーボー
ド、キーパッド、ライトペン、タッチスクリーン、トラ
ックボール、または音声認識ユニット、オーディオ/ビ
デオ・プレイヤ、および類似物を使用することができ
る。出力装置119は、ユーザへの出力を与えるすべて
の装置、たとえば、普通の表示画面とすることができ
る。入力装置116とは別に図示されているが、出力装
置119と入力装置116を組み合わせることができ
る。たとえば、一体化されたタッチスクリーンを有する
表示画面、一体化されたキーボードを有するディスプレ
イ、またはテキスト音声コンバータと組み合わされた音
声認識ユニットを使用することができる。
【0022】ネットワーク・インターフェース・デバイ
ス118は、ネットワーク126を介するクライアント
・コンピュータ102とサーバ・コンピュータ104の
間のネットワーク通信を可能にするように構成されたす
べての入口/出口装置とすることができる。たとえば、
ネットワーク・インターフェース・デバイス118は、
ネットワーク・アダプタまたは他のネットワーク・イン
ターフェース・カード(NIC)とすることができる。
【0023】記憶装置114は、直接アクセス記憶装置
(DASD)であることが好ましい。記憶装置114
は、単一のユニットとして図示されているが、ハード・
ディスク、フロッピ・ディスク・ドライブ、磁気テープ
・ドライブ、取外し可能メモリ・カード、または光記憶
装置など、固定記憶装置または取外し可能記憶装置の組
合せとすることができる。メモリ112および記憶装置
114は、複数の主記憶装置および副記憶装置にまたが
る1つの仮想アドレス空間の一部とすることができる。
【0024】メモリ112は、本発明の必要なプログラ
ミング構造およびデータ構造を保持するのに十分に大き
いランダム・アクセス・メモリであることが好ましい。
メモリ112は、単一の実体として図示されているが、
メモリ112に、実際に複数のモジュールを含めること
ができ、メモリ112が、高速レジスタおよびキャッシ
ュから低速だが大量のDRAMチップまでの複数のレベ
ルに存在できることを理解されたい。
【0025】例として、メモリ112に、オペレーティ
ング・システム124が含まれる。有利に使用すること
ができる例示的オペレーティング・システムには、Linu
xおよびMicrosoft社のWindows (R)が含まれる。より一
般的に、本明細書に開示された機能をサポートするすべ
てのオペレーティング・システムを使用することができ
る。
【0026】メモリ112は、ブラウザ・プログラム1
22も含むものとして図示されており、このブラウザ・
プログラム122は、CPU110で実行される時に、
さまざまなサーバ・コンピュータ104の間でのナビゲ
ートおよび1つまたは複数のサーバ・コンピュータ10
4でのネットワーク・アドレスの突き止めのサポートを
提供する。一実施形態では、ブラウザ・プログラム12
2に、ウェブベースのグラフィカル・ユーザ・インター
フェース(GUI)が含まれ、このGUIを用いて、ユ
ーザが、ハイパーテキスト・マークアップ言語(HTM
L)情報を表示できるようになる。しかし、より一般的
には、ブラウザ・プログラム122は、サーバ・コンピ
ュータ104から送信された情報をレンダリングするこ
とができるすべてのGUIベースのプログラムとするこ
とができる。
【0027】サーバ・コンピュータ104は、クライア
ント・コンピュータ102に似た形で物理的に配置する
ことができる。したがって、サーバ・コンピュータ10
4には、一般に、互いにバス136によって結合され
る、CPU130、メモリ132、および記憶装置13
4が含まれる。メモリ132は、サーバ・コンピュータ
104に配置される必要なプログラミング構造およびデ
ータ構造を保持するのに十分に大きいランダム・アクセ
ス・メモリとすることができる。
【0028】サーバ・コンピュータ104は、一般に、
メモリ132に常駐して図示されているオペレーティン
グ・システム138の制御下にある。オペレーティング
・システム138の例には、IBM OS/400 (R)、UNIX (R)、
Microsoft Windows (R)、および類似物が含まれる。よ
り一般的には、本明細書に記載の機能をサポートするこ
とができるすべてのオペレーティング・システムを、使
用することができる。
【0029】メモリ132には、さらに、1つまたは複
数のアプリケーション140および抽象照会インターフ
ェース146が含まれる。アプリケーション140およ
び抽象照会インターフェース146は、コンピュータ・
システム100のさまざまなメモリおよび記憶装置にさ
まざまな時に常駐する複数の命令を含むソフトウェア製
品である。サーバ・コンピュータ104の1つまたは複
数のCPU130によって読み取られ、実行される時
に、アプリケーション140および抽象照会インターフ
ェース146は、コンピュータ・システム100に、本
発明のさまざまな態様を実施するステップまたは要素を
実行するのに必要なステップを実行させる。アプリケー
ション140(および、より一般的には、オペレーティ
ング・システム138および最上位のユーザを含むすべ
ての要求元の実体)が、データベース(たとえば、集合
的にデータベース156と称するデータベース15
、…、156)に対して照会を発行する。例とし
て、データベース156が、記憶装置134内のデータ
ベース管理システム(DBMS)の一部として図示され
ている。データベース156は、特定の物理表現と無関
係なデータの集合を表す。例として、データベース15
6を、リレーショナル・スキーマ(SQL照会によって
アクセス可能)に従って、またはXMLスキーマ(XM
L照会によってアクセス可能)に従って編成することが
できる。しかし、本発明は、特定のスキーマに制限され
ず、現在は未知のスキーマへの拡張が企図されている。
本明細書で使用する用語「スキーマ」は、データの特定
の配置を包括的に指す。
【0030】一実施形態では、アプリケーション140
によって発行される照会が、各アプリケーション140
と共に含まれるアプリケーション照会指定142に従っ
て定義される。アプリケーション140によって発行さ
れる照会は、事前定義(すなわち、アプリケーション1
40の一部としてハード・コードされる)か、入力(た
とえばユーザ入力)に応答して生成されるものとするこ
とができる。どちらの場合でも、照会(本明細書では
「抽象照会」と称する)は、抽象照会インターフェース
146によって定義される論理フィールドを使用して構
成される。具体的に言うと、抽象照会に使用される論理
フィールドは、抽象照会インターフェース146のデー
タ・リポジトリ抽象化コンポーネント148によって定
義される。抽象照会は、ランタイム・コンポーネント1
50によって実行され、このランタイム・コンポーネン
ト150は、まず、抽象照会を、DBMS154に含ま
れるデータの物理表現との一貫性を有する形に変換す
る。アプリケーション照会指定142および抽象照会イ
ンターフェース146を、図2および3を参照してさら
に説明する。
【0031】一実施形態では、照会の要素が、グラフィ
カル・ユーザ・インターフェース(GUI)を介してユ
ーザによって指定される。GUIの内容は、アプリケー
ション140によって生成される。1特定の実施形態で
は、GUI内容は、ブラウザ・プログラム122を用い
てクライアント・コンピュータ102でレンダリングす
ることができるハイパーテキスト・マークアップ言語
(HTML)コンテンツである。したがって、メモリ1
32に、クライアント・コンピュータ102からの要求
をサービスするように適合されたハイパーテキスト転送
プロトコル(http)サーバ・プロセス152(たと
えばウェブ・サーバ)が含まれる。たとえば、http
サーバ・プロセス152は、データベース156へのア
クセスの要求に応答することができ、データベース15
6は、例としてサーバ・コンピュータ104に常駐す
る。データベース156からのデータに関する着信クラ
イアント要求によって、アプリケーション140が呼び
出される。CPU130によって実行される時に、アプ
リケーション140は、サーバ・コンピュータ104
に、データベース156のアクセスを含む本発明のさま
ざまな態様を実施するステップまたは要素を実行させ
る。一実施形態では、アプリケーション140に、GU
I要素を構築するように構成された複数のサーブレット
が含まれ、このGUI要素は、その後、ブラウザ・プロ
グラム122によってレンダリングされる。
【0032】図1は、ネットワーク化されたクライアン
ト・コンピュータ102およびサーバ・コンピュータ1
04の1つのハードウェア/ソフトウェア構成にすぎな
い。本発明の実施形態は、コンピュータ・システムが、
複雑なマルチユーザ・コンピューティング装置、単一ユ
ーザ・ワークステーション、または独自の不揮発性記憶
域を有しないネットワーク機器のどれであるかにかかわ
らず、すべての匹敵するハードウェア構成に適用するこ
とができる。さらに、HTMLを含む特定のマークアッ
プ言語に言及したが、本発明が、特定の言語、標準規
格、またはバージョンに制限されないことを理解された
い。したがって、本発明が、他のマークアップ言語なら
びに非マークアップ言語に適用可能であることと、本発
明が、特定のマークアップ言語でのさらなる変更ならび
に現在未知の他の言語にも適応可能であることを、当業
者は諒解するであろう。同様に、図1に示されたhtt
pサーバ・プロセス152は、単に例示であり、すべて
の既知のプロトコルおよび未知のプロトコルをサポート
するように適合された他の実施形態が企図されている。
【0033】環境の論理/ランタイムビュー 図2および3に、本発明のコンポーネントの例示的な関
係ビュー200を示す。要求元の実体(たとえばアプリ
ケーション140の1つ)が、要求元実体のそれぞれの
アプリケーション照会指定142によって定義される抽
象照会202を発行する。結果の抽象照会202を、本
明細書では一般に「抽象照会」と称するが、これは、こ
の照会が、DBMS154内の基礎となる物理データ実
体への直接参照によるのではなく、抽象(すなわち論
理)フィールドに従って構成されるからである。その結
果、使用される特定の基礎となるデータ表現から独立の
抽象照会を定義することができる。一実施形態では、ア
プリケーション照会指定142に、データ選択に使用さ
れる判断基準(選択判断基準204)と、選択判断基準
204に基づく返されるフィールドの明示的指定(リタ
ーン・データ指定206)の両方を含めることができ
る。
【0034】アプリケーション照会指定142によって
指定され、抽象照会202の構成に使用される論理フィ
ールドは、データ・リポジトリ抽象化コンポーネント1
48によって定義される。一般に、データ・リポジトリ
抽象化コンポーネント148は、データ選択の判断基準
を指定し、照会動作から返される結果データの形式を指
定するためにアプリケーション140によって発行され
る照会(たとえば抽象照会202)内で使用することが
できる論理フィールドの組として情報を公開する。論理
フィールドは、DBMS154内で使用される基礎とな
るデータ表現とは独立に定義され、これによって、照会
を、基礎となるデータ表現に疎に結合された形にするこ
とが可能になる。
【0035】一般に、データ・リポジトリ抽象化コンポ
ーネント148には、集合的にフィールド指定208と
称する複数のフィールド指定208、208、20
、208、および208(例として5つを図
示)が含まれる。具体的に言うと、フィールド指定は、
抽象照会の構成に使用可能な論理フィールドごとに提供
される。各フィールド指定には、論理フィールド名21
、210、210 、210、および210
(集合的に論理フィールド名210)と、関連するアク
セス方法212、212、212、212、お
よび212(集合的にアクセス方法212)が含まれ
る。アクセス方法によって、論理フィールド名がデータ
ベース(たとえばデータベース156の1つ)内の特定
の物理データ表現214、214、…、214
関連付けられる(すなわち、マッピングされる)。例と
して、2つのデータ表現、XMLデータ表現214
よびリレーショナル・データ表現214が示されてい
る。しかし、物理データ表現214は、既知または未
知の、すべての他のデータ表現が企図されていることを
示す。
【0036】一実施形態では、単一のデータ・リポジト
リ抽象化コンポーネント148に、複数の物理データ表
現214のフィールド指定が(関連するアクセス方法と
共に)含まれる。代替実施形態では、異なる単一のデー
タ・リポジトリ抽象化コンポーネント148が、別々の
物理データ表現214ごとに設けられる。もう1つの実
施形態では、複数のデータ・リポジトリ抽象化コンポー
ネント148が設けられ、各データ・リポジトリ抽象化
コンポーネント148が、同一の基礎となる物理データ
(1つまたは複数の物理データ表現214を含めること
ができる)の異なる部分を公開する。この形で、単一の
アプリケーション140を、複数のユーザが同時に使用
して、同一の基礎となるデータにアクセスすることがで
き、この基礎となるデータの、アプリケーションに公開
される特定の部分は、それぞれのデータ・リポジトリ抽
象化コンポーネント148によって決定される。後者の
実施形態を、下で詳細に説明する。
【0037】サポートされる異なるタイプの論理フィー
ルドの数に応じて、複数のアクセス方法が企図される。
一実施形態では、単純なフィールド、フィルタリングさ
れたフィールド、および合成されたフィールドのアクセ
ス方法が提供される。フィールド指定208、208
、および208によって、それぞれ単純なフィール
ドのアクセス方法212、212、および212
が例示される。単純なフィールドは、基礎となる物理デ
ータ表現の特定の実体に直接にマッピングされる(たと
えば、フィールドが、所与のデータベースの表および列
にマッピングされる)。例として、図3に示された単純
なフィールドのアクセス方法212では、論理フィー
ルド名210(FirstName)が、「contact」という名
前の表の「f_name」という名前の列にマッピングされ
る。フィールド指定208に、フィルタリングされた
フィールドのアクセス方法212が例示されている。
フィルタリングされたフィールドによって、関連する物
理実体が識別され、物理データ表現内の項目の特定のサ
ブセットを定義するのに使用される規則が提供される。
1例が、図3に示されており、この例では、フィルタリ
ングされたフィールドのアクセス方法212によっ
て、論理フィールド名210(AnytownLastName)
が、「contact」という名前の表の「l_name」という名
前の列の物理実体にマッピングされ、Anytownという都
市の個人に関するフィルタが定義される。フィルタリン
グされるフィールドのもう1つの例が、郵便番号の物理
表現にマッピングされ、NewYork州について定義された
郵便番号だけにデータを制限する、New York ZIP code
フィールドである。フィールド指定208に、合成さ
れたフィールドのアクセス方法212が例示されてい
る。合成アクセス方法では、アクセス方法定義の一部と
して供給される式を使用して、1つまたは複数の物理フ
ィールドから1つの論理フィールドを計算する。この形
で、基礎となるデータ表現に存在しない情報を計算する
ことができる。図3に示された例では、合成されたフィ
ールドのアクセス方法212によって、論理フィール
ド名210「AgeInDecades」が「AgeInYears/10」に
マッピングされる。もう1つの例が、販売価格フィール
ドに消費税率をかけることによって合成される消費税フ
ィールドである。
【0038】基礎となるデータのすべての所与のデータ
型(たとえば日付、10進数など)のフォーマットが変
更される可能性があることが企図されている。したがっ
て、一実施形態では、フィールド指定208に、基礎と
なるデータのフォーマットを反映する型属性が含まれ
る。しかし、もう1つの実施形態では、フィールド指定
208のデータ・フォーマットが、関連する基礎となる
物理データと異なり、この場合には、アクセス方法が、
要求元の実体によって仮定される正しいフォーマットで
データを返す責任を負う。したがって、アクセス方法で
は、どのフォーマットのデータが仮定されるか(すなわ
ち、論理フィールドに従って)ならびに基礎となる物理
データの実際のフォーマットを知らなければならない。
その場合に、アクセス方法で、基礎となる物理データを
論理フィールドのフォーマットに変換することができ
る。
【0039】例として、図2および3に示されたデータ
・リポジトリ抽象化コンポーネント148のフィールド
指定208は、物理データ表現214で表現されたデ
ータにマッピングされた論理データを表す。しかし、デ
ータ・リポジトリ抽象化コンポーネント148の他のイ
ンスタンスで、XMLなどの他の物理データ表現に論理
フィールドをマッピングすることができる。
【0040】図2および3の抽象照会202に対応する
例示的抽象照会を、下のテーブル1に示す。例として、
データ・リポジトリ抽象化コンポーネント148が、X
MLを使用して定義される。しかし、他の言語を有利に
使用することができる。
【0041】テーブル1 照会の例 001 <?xml version="1.0"?> 002 <!--照会文字列表現: (FirstName= "Mary" AND Las
tName = 003 "McGoon")OR State = "NC"--> 004 <QueryAbstraction> 005 <Selection> 006 <Condition internalID="4"> 007<Conditionfield="FirstName" operator="EQ"value
="Mary" 008 internalID="1"/> 009<Condition field="LastName"operator="EQ" value
="McGoon" 010 internalID="3"relOperator="AND"></Condition> 011 </Condition> 012 <Conditionfield="State" operator="EQ" value="N
C" internalID="2" 013 relOperator="OR"></Condition> 014 </Selection> 015 <Results> 016 <Field name="FirstName"/> 017 <Field name="LastName"/> 018 <Fieldname="State"/> 019 </Results> 020 </QueryAbstraction>
【0042】例として、テーブル1に示された抽象照会
には、選択判断基準を含む選択指定(行005から01
4)および結果指定(行015から019)が含まれ
る。一実施形態では、選択判断基準が、フィールド名
(論理フィールドの)、比較演算子(=、>、<な
ど)、および値式(比較されるフィールドが何か)から
なる。一実施形態では、結果指定が、照会実行の結果と
して返されなければならない抽象フィールドのリストで
ある。抽象照会の結果指定は、フィールド名およびソー
ト判断基準からなるものとすることができる。
【0043】図2および3に示されたデータ・リポジト
リ抽象化コンポーネント148に対応する例示的な抽象
照会を、下のテーブル2に示す。例として、データ・リ
ポジトリ抽象化コンポーネント148が、XMLを使用
して定義される。しかし、他の言語を有利に使用するこ
とができる。
【0044】テーブル2 データ・リポジトリ抽象化の
例 001 <?xml version="1.0"?> 002 <DataRepository> 003 <Categoryname="Demographic"> 004 <Field queryable="Yes" name="FirstName"display
able="Yes"> 005 <AccessMethod> 006<Simple columnName="f_name" tableName="contact"
></Simple> 007 </AccessMethod> 008 <Type baseType="char"></Type> 009 </Field> 010 <Field queryable="Yes" name="LastName"displaya
ble="Yes"> 011 <AccessMethod> 012<Simple columnName="l_name" tableName="contact"
></Simple> 013 </AccessMethod> 014 <Type baseType="char"></Type> 015 </Field> 016 <Field queryable="Yes" name="State" displayabl
e="Yes"> 017 <AccessMethod> 018<Simple columnName="state" tableName="contact">
</Simple> 019 </AccessMethod> 020 <Type baseType="char"></Type> 021 </Field> 022 </Category> 023 </DataRepository>
【0045】図4に、ランタイム・コンポーネント15
0の動作の一実施形態を例示する例示的なランタイムの
方法300を示す。方法300は、ランタイム・コンポ
ーネント150が、入力として抽象照会のインスタンス
(図2および3に示された抽象照会202など)を受け
取る時に、ステップ302で開始される。ステップ30
4で、ランタイム・コンポーネント150が、抽象照会
のインスタンスを読み取り、構文解析し、個々の選択判
断基準および所望の結果フィールドを突き止める。ステ
ップ306で、ランタイム・コンポーネント150が、
抽象照会に存在する照会選択判断基準ステートメントの
それぞれを処理し、これによって具象照会のデータ選択
部分を構築するために、ループ(ステップ306、30
8、310、および312を含む)に入る。一実施形態
では、選択判断基準が、フィールド名(論理フィールド
の)、比較演算子(=、>、<など)、および値式(比
較されるフィールドが何か)からなる。ステップ308
で、ランタイム・コンポーネント150が、抽象照会の
選択判断基準からのフィールド名を使用して、データ・
リポジトリ抽象化コンポーネント148のフィールドの
定義をルック・アップする。上で注記したように、フィ
ールド定義には、フィールドに関連する物理データにア
クセスするのに使用されるアクセス方法の定義が含まれ
る。その後、ランタイム・コンポーネント150が、処
理される論理フィールドの具象照会寄与を構築する(ス
テップ310)。本明細書で定義される具象照会寄与
は、具象照会のうちで、現在の論理フィールドに基づい
てデータ選択を実行するのに使用される部分である。具
象照会は、SQLおよびXML Queryなどの言語
で表された照会であり、所与の物理データ・リポジトリ
(たとえばリレーショナル・データベースまたはXML
リポジトリ)のデータとの一貫性を有する。したがっ
て、具象照会は、図1に示されたDBMS154によっ
て表される物理データ・リポジトリからデータを突き止
め、検索するのに使用される。現在のフィールドについ
て生成された具象照会寄与が、具象照会ステートメント
に追加される。その後、方法300は、ステップ306
に戻って、抽象照会の次のフィールドの処理を開始す
る。したがって、ステップ306で開始される処理は、
抽象照会のデータ選択フィールドごとに繰り返され、こ
れによって、寄与する追加の内容が、実行される最終的
な照会に与えられる。
【0046】具象照会のデータ選択部分を構築した後
に、ランタイム・コンポーネント150は、照会実行の
結果として返されなければならない情報を識別する。上
で説明したように、一実施形態では、抽象照会によっ
て、本明細書で結果指定と称する、照会実行の結果とし
て返される抽象フィールドのリストが定義される。抽象
照会の結果指定は、フィールド名およびソート判断基準
からなるものとすることができる。したがって、方法3
00は、ステップ314でループ(ステップ314、3
16、318、および320によって定義される)に入
って、生成される具象照会に結果フィールド定義を追加
する。ステップ316で、ランタイム・コンポーネント
150が、データ・リポジトリ抽象化コンポーネント1
48内で結果フィールド名(抽象照会の結果指定から
の)をルック・アップし、その後、データ・リポジトリ
抽象化コンポーネント148から結果フィールド定義を
検索して、現在の論理結果フィールドについて返される
データの物理位置を識別する。ランタイム・コンポーネ
ント150は、その後、論理結果フィールドの具象照会
寄与(返されるデータの物理位置を識別する具象照会
の)を構築する(ステップ318として)。ステップ3
20で、具象照会寄与を具象照会ステートメントに追加
する。抽象照会の結果指定のそれぞれを処理し終えたな
らば、ステップ322で照会を実行する。
【0047】ステップ310および318による論理フ
ィールドの具象照会寄与を構築する方法400の一実施
形態を、図5を参照して説明する。ステップ402で、
方法400は、現在の論理フィールドに関連するアクセ
ス方法が単純なアクセス方法であるかどうかを問い合わ
せる。そうである場合には、物理データ位置情報に基づ
いて具象照会寄与を構築し(ステップ404)、処理
は、その後、上で説明した方法300に従って継続され
る。そうでない場合には、処理はステップ406に継続
されて、現在の論理フィールドに関連するアクセス方法
がフィルタリングされるアクセス方法であるかどうかを
問い合わせる。そうである場合には、ある物理データ実
体の物理データ位置情報に基づいて具象照会寄与を構築
する(ステップ408)。ステップ410で、具象照会
寄与を、物理データ実体に関連するデータをサブセット
化するのに使用される追加論理(フィルタ選択)を用い
て拡張する。その後、処理は、上で説明した方法300
に従って継続される。
【0048】アクセス方法が、フィルタリングされるア
クセス方法でない場合には、処理は、ステップ406か
らステップ412に進んで、方法400が、アクセス方
法が合成されるアクセス方法であるかどうかを問い合わ
せる。アクセス方法が、合成されるアクセス方法である
場合には、ステップ414で、合成されるフィールド式
の各サブフィールド参照の物理データ位置を突き止め、
検索する。ステップ416で、合成されるフィールド式
の物理フィールド位置情報を、合成されるフィールド式
の論理フィールド参照について置換し、これによって、
具象照会寄与を生成する。処理は、その後、上で説明し
た方法300に従って継続される。
【0049】アクセス方法が、合成されるアクセス方法
ではない場合には、処理は、ステップ412からステッ
プ418に進む。ステップ418は、本発明の実施形態
として企図される他のすべてのアクセス方法タイプを表
す。しかし、すべての使用可能なアクセス方法より少な
い方法が実施される実施形態が企図されていることを理
解されたい。たとえば、1特定の実施形態で、単純なア
クセス方法だけが使用される。もう1つの実施形態で
は、単純なアクセス方法およびフィルタリングされるア
クセス方法だけが使用される。
【0050】上で説明したように、論理フィールドで基
礎となる物理データと異なるデータ・フォーマットが指
定される場合に、データ変換を実行する必要が生じる場
合がある。一実施形態では、方法400に従って論理フ
ィールドの具象照会寄与を構築する時に、それぞれのア
クセス方法ごとに最初の変換が実行される。たとえば、
変換を、ステップ404、408、および416の一部
として、またはその直後に実行することができる。物理
データのフォーマットから論理フィールドのフォーマッ
トへの後続の変換が、ステップ322で照会が行われた
後に実行される。もちろん、論理フィールド定義のフォ
ーマットが、基礎となる物理データと同一である場合に
は、変換は不要である。
【0051】さまざまな実施形態で、従来技術に対する
多数の利点がもたらされる。1態様では、利点が、アプ
リケーション照会指定と基礎となるデータ表現の間の疎
結合を定義することによって達成される。SQLが使用
される場合のように特定の表、列、および関係情報を用
いてアプリケーションをエンコードするのではなく、ア
プリケーションで、より抽象的な形でデータ照会要件を
定義し、このデータ照会要件が、その後、ランタイム
に、特定の物理データ表現にバインドされる。本発明の
疎な照会−データ結合によって、要求元の実体(たとえ
ばアプリケーション)が、基礎となるデータ表現が修正
される場合であっても、また、要求元実体が、要求元実
体が開発された時に使用されたものと異なる完全に新規
の物理データ表現を用いて使用される場合であっても、
機能することが可能になる。所与の物理データ表現が、
修正されるか再構成される場合に、対応するデータ・リ
ポジトリ抽象化が、基礎となる物理データ・モデルに対
する変更を反映するように更新される。同一の論理フィ
ールドの組が、照会による使用に使用可能であり、単に
異なる実体または物理データ・モデル内の位置にバイン
ドされている。その結果、抽象照会インターフェースに
対して記述された要求元実体が、対応する物理データ・
モデルがかなりの変更を受ける場合であっても、変更な
しで機能し続ける。要求元実体が、要求元実体が開発さ
れた時に使用されたものと異なる完全に新しい物理デー
タ表現と共に使用される場合に、新しい物理データ・モ
デルを、同一の技術(たとえばリレーショナル・データ
ベース)を使用するが、命名および編成の情報に関する
異なる戦略(たとえば異なるスキーマ)に従って実施す
ることができる。新しいスキーマには、単純な、フィル
タリングされる、および合成されるフィールド・アクセ
ス方法技法を使用するアプリケーションによって要求さ
れる論理フィールドの組にマッピングされる情報が含ま
れる。代替案では、新しい物理表現で、類似する情報を
表す代替の技法を使用することができる(たとえば、X
MLベースのデータ・リポジトリ対リレーショナル・デ
ータベース・システムの使用)。どの場合でも、抽象照
会インターフェースを使用するように記述された既存の
要求元実体は、代替データ・リポジトリ抽象化の提供と
共に新しい物理データ表現を使用するように簡単に移行
することができ、この代替データ・リポジトリ抽象化
は、照会で参照されるフィールドを、新しい物理データ
・モデルの位置および物理表現にマッピングする。
【0052】もう1つの態様では、アプリケーション構
築者およびエンド・ユーザの使い易さが促進される。抽
象層を使用して基礎となるデータ・リポジトリの論理フ
ィールドを表すことによって、アプリケーション開発者
が、基礎となるデータ表現の詳細を気にせずに主要なア
プリケーション・データ要件に焦点を合わせられるよう
になる。その結果、より高い生産性および低い誤り率
が、アプリケーション開発中に達成される。エンド・ユ
ーザに関して、データ・リポジトリ抽象化は、データ・
フィルタリング機構を提供し、関係するデータが公開さ
れ、所与の照会を開発する特定のクラスのエンド・ユー
ザが必要としない本質的でない内容が隠蔽される。
【0053】本明細書での特定の値、定義、プログラミ
ング言語、および例への言及が、単に例示のためである
ことに留意されたい。したがって、本発明は、特定の図
および例によって制限されない。さらに、本発明の諸態
様を、SELECTION動作に関して説明したが、ADD、MODIF
Y、INSERT、DELETE、および類似物などの周知の動作を
含む他の入出力動作が企図されている。もちろん、ある
アクセス方法で、その特定のアクセス方法を使用するフ
ィールドを使用して定義できる抽象照会機能のタイプに
関する制限が設けられる場合がある。たとえば、合成さ
れるアクセス方法を用いるフィールドは、MODIFY、INSE
RT、およびDELETEの実行可能なターゲットにならない。
【0054】上で注記したように、一実施形態では、単
一のアプリケーション・スペースに共存する、データ・
リポジトリ抽象化コンポーネント148の複数のインス
タンスが提供される。そのような環境を示す一実施形態
を、図6に示す。環境500には、一般に、アプリケー
ション層502(アプリケーション140によって定義
される)、データ抽象化層504、および物理データ層
506が含まれる。環境500に、アプリケーション層
502を介して物理データ層506にアクセスする2人
のユーザ508および510が示されている。したがっ
て、ユーザ508および510は、共通のアプリケーシ
ョン層502を介して同一の物理データ層506にアク
セスしている。しかし、それぞれのユーザ508および
510に公開されるデータは、同一ではない。そうでは
なく、各ユーザに、物理データ層506のうちで、デー
タ抽象化層504の定義に従って選択された部分が公開
される。具体的に言うと、データ抽象化層504には、
例として、2つのデータ・リポジトリ抽象化コンポーネ
ント、DRA1 516およびDRA2 518が含ま
れ、これらによって、それぞれ、アプリケーション層5
02を介してユーザ508および510に公開されるデ
ータが定義される。この例では、第1のデータ・リポジ
トリ抽象化(DRA1 516)によって、第1のデー
タベース512(登録データベース)のすべておよび第
2のデータベース514(給与計算データベース)の表
1が公開され、第2のデータ・リポジトリ抽象化(DR
A2518)によって、第2のデータベース514のす
べておよび第1のデータベース512の表2が公開され
る。それぞれのデータ・リポジトリ抽象化コンポーネン
トによって公開される特定のデータが、例示にすぎない
ことに留意されたい。より一般的には、データベース5
12および514の任意の部分ならびにデータ抽象化層
504の任意の他のデータベースを公開することができ
る。例として、環境500に、2人のユーザ(508、
510)を示すが、より一般的には、任意の数のユーザ
が、物理データ層506のデータにアクセスしているこ
とが可能である。
【0055】一実施形態では、各ユーザが、関連するプ
ロファイル158(図1に図示)を有する。各プロファ
イルに、ユーザIDが含まれ、各プロファイルによっ
て、特定のユーザのシステムでの権限が決定される。さ
らに、いくつかの場合に、プロファイルは、特定のデー
タ・リポジトリ抽象化コンポーネント148に関連付け
られる。これらの態様を、図7に示す。たとえば、プロ
ファイルA602およびプロファイルB604は、図6
に示された第1のユーザ508および第2のユーザ51
0のプロファイルである。したがって、プロファイルA
によって、第1のデータ・リポジトリ抽象化コンポーネ
ントDRA1 516との関連が定義され、プロファイ
ルB604によって、第2のデータ・リポジトリ抽象化
コンポーネントDRA2 518との関連が定義され
る。一実施形態では、個々のプロファイルによって、グ
ループのメンバが定義される。たとえば、プロファイル
C606およびプロファイルD608は、グループA6
10のメンバである。いくつかの場合に、グループ自体
によって、データ・リポジトリ抽出コンポーネントとの
関連が定義される。たとえば、グループA610によっ
て、第4のデータ・リポジトリ抽出コンポーネントDR
A4 614との関連が定義される。この形で、グルー
プのメンバが、それ自体のそれぞれのプロファイルを介
するのではなく、グループ定義からデータ・リポジトリ
抽象化コンポーネントを継承する。しかし、一実施形態
では、グループのメンバが、第3のデータ・リポジトリ
抽象化コンポーネントDRA3 612への関連を定義
するプロファイル Cによって例示されているように、
グループによって定義されたデータ・リポジトリ抽象化
コンポーネントをオーバーライドする。
【0056】図7には、データ・リポジトリ抽象化コン
ポーネントが互いを参照する実施形態も示されている。
具体的に言うと、第2のデータ・リポジトリ抽象化コン
ポーネントDRA2 518は、第3のデータ・リポジ
トリ抽象化コンポーネントDRA3 612(子)に関
する親である。この関係では、第3のデータ・リポジト
リ抽象化コンポーネントDRA3 612が、第2のデ
ータ・リポジトリ抽象化コンポーネントDRA2 51
8の定義の少なくとも一部を継承する。第3のデータ・
リポジトリ抽象化コンポーネントDRA3 612は、
第2のデータ・リポジトリ抽象化コンポーネントDRA
2 518の一部をオーバーライドするか、第2のデー
タ・リポジトリ抽象化コンポーネントDRA2 518
にない追加の定義を含めるか、その両方を行うこともで
きる。これらの態様を、図8を参照してさらに説明す
る。
【0057】図8に、第2のデータ・リポジトリ抽象化
コンポーネントDRA2 518と第3のデータ・リポ
ジトリ抽象化コンポーネントDRA3 612の例示的
実施形態を示す。第2のデータ・リポジトリ抽象化コン
ポーネントDRA2 518によって、「demographi
c」という名前のカテゴリ702が定義され、このカテ
ゴリ702に、3つのフィールド704AからCすなわ
ち「name」、「gender」、および「ethnicgroup」が含
まれる。第3のデータ・リポジトリ抽象化コンポーネン
トDRA3 612には、親属性706が含まれる。親
属性706は、第2のデータ・リポジトリ抽象化コンポ
ーネントDRA2 518への参照として動作し、これ
によって、すべての共通のカテゴリ(第2のデータ・リ
ポジトリ抽象化コンポーネントDRA2 518に関す
る)のフィールドが、第3のデータ・リポジトリ抽象化
コンポーネントDRA3 612によって継承される。
たとえば、第3のデータ・リポジトリ抽象化コンポーネ
ントDRA3 612に、「demographic」という名前
のカテゴリ708が含まれる。したがって、第3のデー
タ・リポジトリ抽象化コンポーネントDRA3 612
は、第2のデータ・リポジトリ抽象化コンポーネントD
RA2 518からフィールド704のそれぞれを継承
する。しかし、この例では、第3のデータ・リポジトリ
抽象化コンポーネントDRA3 612のカテゴリ70
8が、第2のデータ・リポジトリ抽象化コンポーネント
DRA2 518のethnicgroupフィールドに対応するe
thnic groupフィールド712Aに関連するremove属性
710を用いて構成される。remove属性710は、親デ
ータ・リポジトリ抽象化コンポーネントからの指定され
たフィールド、この例ではethnicgroupフィールドの継
承を除去またはオーバーライドするように動作する。さ
らに、子のカテゴリ708に、親のカテゴリ702のフ
ィールド704Aおよび704Bを補足する追加フィー
ルドを含めることもできる。この例では、子のカテゴリ
708に、追加のclinicnumberフィールド712Bが含
まれる。もちろん、子のデータ・リポジトリ抽象化コン
ポーネントDRA3 612では、それ自体の独自のカ
テゴリも定義することができる。たとえば、データ・リ
ポジトリ抽象化コンポーネントDRA3 612では、
カテゴリ708のほかに、diagnosticsカテゴリ716
が定義されている。図8に、結果の「有効」データ・リ
ポジトリ抽象化コンポーネントDRA3effective72
0を示す。すなわち、有効データ・リポジトリ抽象化コ
ンポーネントDRA3ef fective720は、実際の既存
のDRAではなく、データ・リポジトリ抽象化コンポー
ネントDRA3 612の有効なカテゴリ定義およびフ
ィールド定義の表現である。具体的に言うと、有効デー
タ・リポジトリ抽象化コンポーネントDRA3
effective720は、データ・リポジトリ抽象化コンポ
ーネントDRA3612に、親のデータ・リポジトリ抽
象化コンポーネントDRA2 518から継承した2つ
のフィールド704Aおよび704Bと、追加のclinic
numberフィールド712Bとを含む「demographic」と
いう名前のカテゴリ722が含まれることを示す。ethn
ic groupフィールド704Cが存在しないことに留意さ
れたい。というのは、これが、remove属性710によっ
て除去されたからである。有効データ・リポジトリ抽象
化コンポーネントDRA3effective720には、デー
タ・リポジトリ抽象化コンポーネントDRA3 612
にdiagnosticsカテゴリ716が含まれることも示され
ている。
【0058】前述では、データ・リポジトリ抽象化コン
ポーネント148が互いから継承し、ある継承された列
を選択的に除去するように構成することができる実施形
態を説明した。しかし、他の属性を使用して、データ・
リポジトリ抽象化コンポーネントの諸態様を操作する、
本発明の実施形態が企図されている。たとえば、あるデ
ータ・リポジトリ抽象化コンポーネントの選択された継
承された列を、別のデータ・リポジトリ抽象化コンポー
ネントによる使用のために修正(たとえば、修正属性の
使用によって)することができる。例として、基礎とな
る物理データベースが値「M」および「F」をサポート
し、DRA2 518のフィールド704Bが、エンド
・ユーザ使用可能のために有効な値として「male」およ
び「female」をとると仮定する。したがって、ランタイ
ム・コンポーネント150(すなわち、ランタイム・コ
ンポーネントの照会ビルダ250)は、DRA2 51
8が入力として得るもの(「male」または「female」)
をとり、基礎となる物理データベース値(「M」および
「F」)との一貫性を有する照会を構築することができ
る。もう1つのデータ・リポジトリ抽象化コンポーネン
トを定義して、DRA2 518を拡張することがで
き、このデータ・リポジトリ抽象化コンポーネントは、
別の作業環境のユーザに対処するためにgender列の値の
1および0としてのマッピングを定義するgender列を有
する。やはり、ランタイム・コンポーネント150は、
1および0をとり、これらを基礎となる物理データベー
スとの一貫性を有する値(すなわち「M」および
「F」)に変換する。1態様では、この手法が、単に、
親データ・リポジトリ抽象化コンポーネントから継承す
る値を定義し、その列に関するremove属性が存在しない
子データ・リポジトリ抽象化コンポーネントで、親の実
施形態よりそれ自体の実施形態が使用されることを示
す。
【0059】1態様で、前述の実施形態は、ユーザが人
種(ethnic origin)または性別(gender)などの微妙
な情報に基づいて一方的な判断をすることができなくす
る。物理データ層の選択された情報へのアクセスを防ぐ
ことによって(子データ・リポジトリ抽象化の継承され
た/参照されたカテゴリの場合のremove属性の使用によ
るか、データ・リポジトリ抽象化コンポーネントの継承
されないカテゴリの定義による)、望まれない問題を回
避することができる。たとえば、第2のデータ・リポジ
トリ抽象化コンポーネントDRA2 518のユーザ
は、ethnicgroupフィールド704Cへのアクセス権を
与えられるが、第3のデータ・リポジトリ抽象化コンポ
ーネントDRA3 612のユーザは、これを与えられ
ない。
【0060】図9を参照すると、アプリケーション14
0の初期プログラム・ロードを示す方法800が示され
ている。ステップ802で、アプリケーション140の
実行が開始される(たとえば管理者によって)。ステッ
プ804で、デフォルト・データ・リポジトリ抽象化コ
ンポーネントをロードする。一実施形態では、デフォル
ト・データ・リポジトリ抽象化コンポーネントが、アプ
リケーション140のプロパティ・ファイル160(図
1に図示)によって指定される。デフォルト・データ・
リポジトリ抽象化コンポーネントを指定することによっ
て、ユーザまたはグループのプロファイルでデータ・リ
ポジトリ抽象化コンポーネントが指定されない場合であ
っても、データ・リポジトリ抽象化コンポーネントが必
ず使用可能になる。デフォルト・データ・リポジトリ抽
象化コンポーネントをロードしたならば、デフォルト・
データ・リポジトリ抽象化コンポーネントに関連するタ
イムスタンプをロードする(ステップ806)。図1か
らわかるように、各データ・リポジトリ抽象化コンポー
ネント148が、関連するタイムスタンプ162を有す
る。関連するタイムスタンプによって、それぞれのデー
タ・リポジトリ抽象化コンポーネントが最後に修正され
た時が示される。アプリケーション140は、要求を受
け入れ始める準備ができている。
【0061】ユーザが、アプリケーション140に接続
する時(すなわち、ユーザがアプリケーションに照会を
発行する時)に、どのデータ・リポジトリ抽象化コンポ
ーネントがそのユーザに必要であるかを判定する必要が
ある。一実施形態では、レベル/状況および最後の修正
の時刻(関連するタイムスタンプによる)も、所与のユ
ーザのためにロードされるデータ・リポジトリ抽象化コ
ンポーネントごとに判定される。これらの態様を処理す
る方法900の一実施形態を、図10を参照して説明す
る。一実施形態では、方法900が、データ・リポジト
リ抽象化コンポーネント148のアプリケーション・プ
ログラミング・インターフェース(API)の1機能を
表す。アプリケーション140への要求の発行時に、方
法900では、要求を発行する特定のユーザのプロファ
イルで、データ・リポジトリ抽象化コンポーネント14
8が指定されているかどうかを判定する(ステップ90
2)。そうである場合には、指定されたデータ・リポジ
トリ抽象化コンポーネントのレベル/状況に、「プロフ
ァイル」をセットする(ステップ904)。レベル/状
況は、特定のデータ・リポジトリ抽象化コンポーネント
が指定されたことを追跡する機構である。一実施形態で
は、レベル/状況を、単に変数値とすることができる。
その後、指定されたデータ・リポジトリ抽象化コンポー
ネントのコピーをロードし(ステップ906)、指定さ
れたデータ・リポジトリ抽象化コンポーネントの関連す
るタイムスタンプを、メモリにロードする(ステップ9
08)。要求を発行する特定のユーザのプロファイル
で、データ・リポジトリ抽象化コンポーネントが指定さ
れない場合(ステップ902)には、方法900は、ユ
ーザが、関連するデータ・リポジトリ抽象化コンポーネ
ントを有するグループの一部であるかどうかを判定する
(ステップ910)。そうである場合には、レベル/状
況に「グループ」をセットする(ステップ912)。そ
の後、指定されたデータ・リポジトリ抽象化コンポーネ
ントのコピーをロードし(ステップ906)、指定され
たデータ・リポジトリ抽象化コンポーネントの関連する
タイムスタンプを、メモリにロードする(ステップ90
8)。ユーザが、関連するデータ・リポジトリ抽象化コ
ンポーネントを有するグループの一部でない場合(ステ
ップ910)には、レベル/状況に「アプリケーショ
ン」をセットする(ステップ914)。その後、デフォ
ルト・データ・リポジトリ抽象化コンポーネントのコピ
ーをロードし(ステップ906)、デフォルト・データ
・リポジトリ抽象化コンポーネントの関連するタイムス
タンプをメモリにロードする(ステップ908)。
【0062】マルチユーザ環境では、方法900が、ユ
ーザごとに実行される。結果として、データ・リポジト
リ抽象化コンポーネントの多数のインスタンス(そのう
ちのいくつかが同一である可能性がある)が、任意の所
与の時刻に存在する可能性がある。さらに、いくつかの
場合に、データ・リポジトリ抽象化コンポーネント14
8が、変更される(たとえばデータ・リポジトリ抽出コ
ンポーネントに関連するファイルを修正することによっ
て)、追加される、または除去される可能性がある。後
者の事象(変更、修正、および追加)は、単一ユーザ環
境またはマルチユーザ環境のいずれかで発生する可能性
がある。たとえば、動作中に、ユーザが、当初はアプリ
ケーション・レベル/状況で作業している可能性がある
(すなわち、ユーザが、デフォルト・データ・リポジト
リ抽象化コンポーネントのユーザ自身のコピーを用いて
作業している)。ユーザが、その後、デフォルト・デー
タ・リポジトリ抽象化コンポーネントのユーザ自身のコ
ピーを修正し、そのコピーとプロファイル158を関連
付けると仮定する。そのユーザによる後続の要求では、
そのユーザのプロファイル158に関連するデータ・リ
ポジトリ抽象化コンポーネントにアクセスしなければな
らない。したがって、これらの事象を適宜検出し、処理
する機構が必要である。そのような機構の1つが、図1
1に示された方法1000によって例示される。具体的
に言うと、方法1000は、特定のデータ・リポジトリ
抽象化コンポーネントがアクセスされる時に実施するこ
とができるアルゴリズムを示す。一実施形態では、方法
1000が、データ・リポジトリ抽象化コンポーネント
148のアプリケーション・プログラミング・インター
フェース(API)の1機能を表す。ステップ1002
で、アクセスされるデータ・リポジトリ抽象化コンポー
ネントのレベル/状況を検査する。図10に関して上で
説明したように、レベル/状況は、「ユーザ」、「グル
ープ」、および「アプリケーション」のうちの1つであ
る。レベル/状況が「ユーザ」である場合には、方法1
000では、アクセスされるデータ・リポジトリ抽象化
コンポーネントが変更されたかどうかを判定する(ステ
ップ1004)。これは、アクセスされるデータ・リポ
ジトリ抽象化コンポーネントの最後の修正のタイムスタ
ンプ(方法900のステップ908でメモリにロードさ
れた)を、アクセスされるデータ・リポジトリ抽象化コ
ンポーネントの現在のタイムスタンプと比較することに
よって達成される。アクセスされるデータ・リポジトリ
抽象化コンポーネントが変更されていない場合には、ア
クセスが許可される(ステップ1006)。そうでない
場合には、方法900をもう一度実行し(ステップ10
08)、その後、アクセス要求を再開始する(101
0)。
【0063】アクセスされるデータ・リポジトリ抽象化
コンポーネントのレベル/状況に「グループ」がセット
されている場合(ステップ1002の判定で)、次に高
いレベル/状況(現在のユーザに関する)でのデータ・
リポジトリ抽象化コンポーネントの存在を検査する(ス
テップ1012)。この実施形態では、「ユーザ」レベ
ル/状況だけが、「グループ」レベル/状況より上位で
ある。したがって、ユーザ・レベル・データ・リポジト
リ抽象化コンポーネントが、特定のユーザについて存在
しない場合には、方法1000では、アクセスされるデ
ータ・リポジトリ抽象化コンポーネントが変更されたか
どうかを(ステップ1004)すなわち、上で説明した
ようにタイムスタンプの比較によって、判定する。アク
セスされるデータ・リポジトリ抽象化コンポーネントが
変更されていない場合には、アクセスが許可される(ス
テップ1006)。そうでない場合には、方法900を
もう一度実行し(ステップ1008)、その後、アクセ
ス要求を再開始する(1010)。
【0064】アクセスされるデータ・リポジトリ抽象化
コンポーネントのレベル/状況に「アプリケーション」
がセットされている(ステップ1002での判定で)場
合には、次に高いレベル/状況(現在のユーザにとって
の)でのデータ・リポジトリ抽象化コンポーネントの存
在を検査する(ステップ1014)。この実施形態で
は、「ユーザ」レベル/状況および「グループ」レベル
/状況が、「アプリケーション」レベル/状況より上位
である。したがって、方法1000では、まず、ユーザ
・レベル・データ・リポジトリ抽象化コンポーネントが
存在するかどうかを判定し(ステップ1014)、そう
でない場合に、グループ・レベル・データ・リポジトリ
抽象化コンポーネントが存在するかどうかを判定する
(ステップ1016)。ユーザ・レベルまたはグループ
・レベルのいずれかのデータ・リポジトリ抽象化コンポ
ーネントが、現在のユーザについて存在する場合には、
処理はステップ1008に進み、方法900をもう一度
実行して、使用される適当なデータ・リポジトリ抽象化
コンポーネントを判定し、その後、アクセス要求を再開
始する(1010)。ユーザ・レベルおよびグループ・
レベルの両方のデータ・リポジトリ抽象化コンポーネン
トが現在のユーザについて存在しない場合には、処理は
ステップ1004に進んで、アクセスされる現在のアプ
リケーション・レベル・データ・リポジトリ抽象化コン
ポーネントが変更されたかどうかを(ステップ100
4)すなわち、上で説明したようにタイムスタンプを比
較することによって判定する。アクセスされるデータ・
リポジトリ抽象化コンポーネントが変更されていない場
合には、アクセスが許可される(ステップ1006)。
そうでない場合には、方法900をもう一度実行し(ス
テップ1008)、その後、アクセス要求を再開始する
(1010)。
【0065】したがって、本発明の諸態様は、アプリケ
ーション層によって操作されるデータの変更からアプリ
ケーション層を分離する、高水準インフラストラクチャ
(すなわち、データ・リポジトリ抽象化コンポーネン
ト)を提供する。このインフラストラクチャは、非常に
構成可能でもあり、これによって、アプリケーションを
対話式に構築できるようになる。さらに、所与のデータ
・リポジトリ抽象化コンポーネントは、複数のアプリケ
ーションに拡張可能であり、それぞれがデータ・リポジ
トリ抽象化コンポーネントへの初期投資を再利用するア
プリケーションのファミリを構築できるようになる。図
11に関して説明したように、本発明の一実施形態は、
新しいデータ・リポジトリ抽象化コンポーネント・イン
スタンスの動的インスタンス化を提供し、オンザフライ
変更を行えるようにし、複数のユーザがデータ・リポジ
トリ抽象化コンポーネントを動的にカスタマイズできる
ようにする。この形で、ユーザが、自分の特定の必要に
従ってそれぞれのデータ・リポジトリ抽象化コンポーネ
ントをカスタマイズすることができる。たとえば、医療
環境では、心臓科の医師が、心臓検査に関するすべての
情報を必要とする可能性があるが、神経科の医師は、神
経検査に関するすべての情報を必要とする可能性があ
る。本発明の諸態様を適用することによって、各ユーザ
が、自分に関係すると思われる情報だけを公開すること
ができる。
【0066】前述は、本発明の実施形態を対象とする
が、本発明の他の実施形態およびさらなる実施形態を、
本発明の基本範囲から逸脱せずに考案することができ、
本発明の範囲は、請求項によって定義される。
【0067】まとめとして、本発明の構成に関して以下
の事項を開示する。
【0068】(1)特定の物理データ表現を有するデー
タへのアクセスを提供する方法であって、抽象照会を定
義する複数の論理フィールドを含む照会指定を提供する
ステップと、前記複数の論理フィールドの少なくとも第
1部分を前記データの第1の複数の物理実体にマッピン
グするマッピング規則の第1組を提供するステップと、
前記複数の論理フィールドの少なくとも第2部分を前記
データの第2の複数の物理実体にマッピングするマッピ
ング規則の第2組を提供するステップとを含む方法。 (2)前記抽象照会が、少なくとも1つの選択判断基準
および結果指定を含む、上記(1)に記載の方法。 (3)各抽象照会を、前記それぞれのマッピング規則に
従って、前記特定の物理データ表現との一貫性を有する
照会に変換するステップをさらに含む、上記(1)に記
載の方法。 (4)第1ユーザによって発行されるすべての抽象照会
についてマッピング規則の前記第1組だけにアクセスす
るステップと、第2ユーザによって発行されるすべての
抽象照会についてマッピング規則の前記第2組だけにア
クセスするステップとをさらに含む、上記(1)に記載
の方法。 (5)前記特定の物理データ表現との一貫性を有する前
記照会が、SQL照会およびXML照会の1つである、
上記(3)に記載の方法。 (6)前記マッピング規則のそれぞれが、前記複数の論
理フィールドの異なるアクセス方法を含む、上記(1)
に記載の方法。 (7)前記アクセス方法のそれぞれが、前記データの前
記物理実体の位置を記述する、上記(6)に記載の方
法。 (8)特定の物理データ表現を有するデータへのアクセ
スを提供する方法であって、抽象照会を定義する複数の
論理フィールドを含む照会指定を定義するアプリケーシ
ョンを提供するステップと、それぞれが前記複数の論理
フィールドの少なくとも一部を前記データの物理実体に
マッピングするマッピング規則の異なる組との関連をそ
れぞれが定義する複数のユーザ・プロファイルを提供す
るステップと、を含む方法。 (9)各抽象照会を、前記それぞれのマッピング規則に
従って、前記特定の物理データ表現との一貫性を有する
照会に変換するステップをさらに含む、上記(8)に記
載の方法。 (10)前記マッピング規則のそれぞれが、前記複数の
論理フィールドの異なるアクセス方法を含み、前記アク
セス方法のそれぞれが、前記データの前記物理実体の位
置を記述する、上記(8)に記載の方法。 (11)特定の物理データ表現を有するデータにアクセ
スする方法であって、第1ユーザによって、アプリケー
ションに第1の複数の論理フィールドに従って定義され
る第1抽象照会を発行するステップと、前記第1抽象照
会に応答して、前記第1ユーザとの定義された関連を有
するマッピング規則の第1組にアクセスするステップ
と、第2ユーザによって、前記アプリケーションに第2
の複数の論理フィールドに従って定義される第2抽象照
会を発行するステップと、前記第2抽象照会に応答し
て、前記第2ユーザとの定義された関連を有するマッピ
ング規則の第2組にアクセスするステップと、前記第1
抽象照会および前記第2抽象照会のそれぞれを、前記論
理フィールドを前記データの物理実体にマッピングする
それぞれのマッピング規則に従って、前記特定の物理デ
ータ表現との一貫性を有する照会に変換するステップと
を含む方法。 (12)前記第1ユーザおよび前記第2ユーザによる前
記アプリケーションとの最初の接続に関して、(i)前
記ユーザの使用のためにマッピング規則の前記それぞれ
の組を選択するステップと、(ii)マッピング規則の
前記それぞれの組が、前記マッピング規則にアクセスす
る特定のユーザについて選択されたその選択のされ方を
示すレベル・インジケータをセットするステップと、
(iii)前記選択されたマッピング規則の組をロード
するステップとをさらに含む、上記(11)に記載の方
法。 (13)前記ユーザの使用のためにマッピング規則の前
記組を選択するステップが前記ユーザと特定のマッピン
グ規則の組との間に事前定義の関連が存在するかどうか
を判定し、そうである場合に、前記ユーザによって発行
された照会についてアクセスされるマッピング規則の前
記組として前記特定のマッピング規則の組を選択し、そ
うでない場合に、前記ユーザによって発行された照会に
ついてアクセスされるマッピング規則の前記組としてデ
フォルト・マッピング規則の組を選択するステップを含
む、上記(12)に記載の方法。 (14)前記第1ユーザおよび前記第2ユーザによるマ
ッピング規則のそれぞれの組のアクセスごとに、アクセ
スされるマッピングの前記組のレベル・インジケータを
判定するステップと、少なくとも第1のレベル・インジ
ケータについて、アクセスされるマッピング規則の前記
組が、アクセスされる前記マッピング規則の組が前記ユ
ーザのためにロードされた時に関して変更されているか
どうかを判定し、そうである場合にステップ(i)乃至
(iii)を実行するステップと、少なくとも第2のレ
ベル・インジケータについて、前記ユーザについて別の
レベルが存在するかどうかを判定し、そうである場合に
ステップ(i)乃至(iii)を実行するステップとを
さらに含む、上記(12)に記載の方法。 (15)前記第1のレベル・インジケータが、前記それ
ぞれのユーザによってアクセスされるマッピング規則の
前記組が前記ユーザとの定義された関連を有することを
示すユーザ・レベル・インジケータであり、前記第2の
レベル・インジケータが、(i)前記それぞれのユーザ
によってアクセスされるマッピング規則の前記組が、前
記ユーザがそのメンバであるグループとの定義された関
連を有することを示すグループ・レベル・インジケータ
と、(ii)前記それぞれのユーザによってアクセスさ
れるマッピング規則の前記組が、マッピング規則のデフ
ォルト組であることを示すアプリケーション・レベル・
インジケータとの少なくとも1つである、上記(14)
に記載の方法。 (16)前記マッピング規則のそれぞれが、前記抽象照
会の論理フィールドごとに少なくとも1つのアクセス方
法を含む、上記(11)に記載の方法。 (17)前記アクセス方法のそれぞれが、前記データの
物理実体の物理位置を記述する、上記(16)に記載の
方法。 (18)特定の物理データ表現を有するデータへのアク
セスを提供するデータベース・アクセス環境を含むコン
ピュータ可読媒体であって、前記データベース・アクセ
ス環境が、抽象照会を定義する複数の論理フィールドを
含む照会指定を含むアプリケーションと、前記複数の論
理フィールドを前記データの物理実体にマッピングする
複数のマッピング規則の組とを含み、前記複数のマッピ
ング規則の組の少なくとも2つは、前記複数の論理フィ
ールドを前記データの前記物理実体の異なる組にマッピ
ングし、2人の異なるユーザ、ユーザの2つの異なるグ
ループ、ユーザのグループおよびユーザの3つから選択
される2つの異なる要求元実体の少なくとも1つに一意
に関連する、コンピュータ可読媒体。 (19)前記2つの異なる要求元実体の1つによって発
行される、前記照会指定によって定義される抽象照会
を、前記2つの異なる要求元実体の前記それぞれのマッ
ピング規則に従って、前記特定の物理データ表現との一
貫性を有する照会に変換するランタイム・コンポーネン
トをさらに含む、上記(18)に記載のコンピュータ可
読媒体。 (20)前記マッピング規則が、前記複数の論理フィー
ルドごとに少なくとも1つのアクセス方法を含む、上記
(18)に記載のコンピュータ可読媒体。 (21)前記アクセス方法が、前記データの前記物理実
体の位置を記述する、上記(20)に記載のコンピュー
タ可読媒体。 (22)プロセッサによって実行される時に、特定の物
理データ表現を有するデータにアクセスする動作を実行
するプログラムを含むコンピュータ可読媒体であって、
前記動作が、論理フィールドに従う抽象照会の定義を提
供する、アプリケーションの照会指定に従って、複数の
ユーザによって発行される複数の抽象照会を受け取るス
テップと、前記抽象照会を、前記論理フィールドを前記
データの物理実体にマッピングする複数のデータ・リポ
ジトリ抽象化コンポーネントに従って、前記特定の物理
データ表現との一貫性を有する照会に変換するステップ
とを含み、異なるデータ・リポジトリ抽象化コンポーネ
ントは、前記アプリケーションを使用する前記ユーザの
少なくとも2人に関連付けられる、コンピュータ可読媒
体。 (23)前記マッピング規則が、前記抽象照会の論理フ
ィールドごとにアクセス方法を含む、上記(22)に記
載のコンピュータ可読媒体。 (24)前記アクセス方法が、前記データの前記物理実
体の物理位置を記述する、上記(23)に記載のコンピ
ュータ可読媒体。 (25)コンピュータであって、少なくとも(i)論理
フィールドによる抽象照会の定義を提供する照会指定を
含むアプリケーションと、(ii)前記論理フィールド
をデータの物理実体にマッピングする複数のデータ・リ
ポジトリ抽象化コンポーネントであって、前記データ・
リポジトリ抽象化コンポーネントの少なくとも一部が、
異なるユーザとのプログラム的に定義された関連を有す
る、複数のデータ・リポジトリ抽象化コンポーネント
と、(iii)前記抽象照会を、前記データ・リポジト
リ抽象化コンポーネントに従って、データの前記物理実
体との一貫性を有する照会に変換するランタイム・コン
ポーネントとを含むメモリと、前記メモリの内容を実行
するように適合されたプロセッサとを含むコンピュー
タ。 (26)前記データを含む記憶装置をさらに含む、上記
(25)に記載のコンピュータ。 (27)前記データ・リポジトリ抽象化コンポーネント
が、前記複数の論理フィールドごとにアクセス方法を含
む、上記(25)に記載のコンピュータ。 (28)前記アクセス方法が、前記データの前記物理実
体の位置を記述する、上記(26)に記載のコンピュー
タ。
【図面の簡単な説明】
【図1】本発明に従って使用されるコンピュータ・シス
テムの一実施形態である。
【図2】本発明の一実施形態のソフトウェア・コンポー
ネントの相対ビューを示す図である。
【図3】本発明の一実施形態のソフトウェア・コンポー
ネントの相対ビューを示す図である。
【図4】ランタイム・コンポーネントの動作を示す流れ
図である。
【図5】ランタイム・コンポーネントの動作を示す流れ
図である。
【図6】データ・リポジトリ抽象化コンポーネントの複
数のインスタンスが単一アプリケーション・スペース内
に共存する、一実施形態を示す図である。
【図7】それぞれが直接にまたはグループへのメンバシ
ップによってデータ・リポジトリ抽象化コンポーネント
に関連付けられるプロファイルをユーザが有する環境を
示す図である。
【図8】別のデータ・リポジトリ抽象化コンポーネント
による、あるデータ・リポジトリ抽象化コンポーネント
の諸態様の継承を示す図である。
【図9】アプリケーション起動を示す流れ図である。
【図10】データ・リポジトリ抽象化コンポーネント
と、データ・リポジトリ抽象化コンポーネントとユーザ
の間の関係の起点を示す関連するレベル/状況の選択を
示す流れ図である。
【図11】アクセス要求の処理方法と、データ・リポジ
トリ抽象化コンポーネントの動的更新を示す流れ図であ
る。
【符号の説明】
140 アプリケーション 142 アプリケーション照会指定 148 データ・リポジトリ抽象化コンポーネント 150 ランタイム・コンポーネント 200 関係ビュー 214 物理データ表現
フロントページの続き (72)発明者 リチャード・ディーン・デッティンガー アメリカ合衆国55901 ミネソタ州ロチェ スター ケンシントン・レーン・ノース・ ウェスト 5305 (72)発明者 リチャード・ジョセフ・スティーブンス アメリカ合衆国55955 ミネソタ州マント ービル ツー・ハンドレッド・フィフティ ー・セカンド・アベニュー 61432 Fターム(参考) 5B082 GA02 GA08

Claims (28)

    【特許請求の範囲】
  1. 【請求項1】特定の物理データ表現を有するデータへの
    アクセスを提供する方法であって、 抽象照会を定義する複数の論理フィールドを含む照会指
    定を提供するステップと、 前記複数の論理フィールドの少なくとも第1部分を前記
    データの第1の複数の物理実体にマッピングするマッピ
    ング規則の第1組を提供するステップと、 前記複数の論理フィールドの少なくとも第2部分を前記
    データの第2の複数の物理実体にマッピングするマッピ
    ング規則の第2組を提供するステップとを含む方法。
  2. 【請求項2】前記抽象照会が、少なくとも1つの選択判
    断基準および結果指定を含む、請求項1に記載の方法。
  3. 【請求項3】各抽象照会を、前記それぞれのマッピング
    規則に従って、前記特定の物理データ表現との一貫性を
    有する照会に変換するステップをさらに含む、請求項1
    に記載の方法。
  4. 【請求項4】第1ユーザによって発行されるすべての抽
    象照会についてマッピング規則の前記第1組だけにアク
    セスするステップと、 第2ユーザによって発行されるすべての抽象照会につい
    てマッピング規則の前記第2組だけにアクセスするステ
    ップとをさらに含む、請求項1に記載の方法。
  5. 【請求項5】前記特定の物理データ表現との一貫性を有
    する前記照会が、SQL照会およびXML照会の1つで
    ある、請求項3に記載の方法。
  6. 【請求項6】前記マッピング規則のそれぞれが、前記複
    数の論理フィールドの異なるアクセス方法を含む、請求
    項1に記載の方法。
  7. 【請求項7】前記アクセス方法のそれぞれが、前記デー
    タの前記物理実体の位置を記述する、請求項6に記載の
    方法。
  8. 【請求項8】特定の物理データ表現を有するデータへの
    アクセスを提供する方法であって、 抽象照会を定義する複数の論理フィールドを含む照会指
    定を定義するアプリケーションを提供するステップと、 それぞれが前記複数の論理フィールドの少なくとも一部
    を前記データの物理実体にマッピングするマッピング規
    則の異なる組との関連をそれぞれが定義する複数のユー
    ザ・プロファイルを提供するステップと、 を含む方法。
  9. 【請求項9】各抽象照会を、前記それぞれのマッピング
    規則に従って、前記特定の物理データ表現との一貫性を
    有する照会に変換するステップをさらに含む、請求項8
    に記載の方法。
  10. 【請求項10】前記マッピング規則のそれぞれが、前記
    複数の論理フィールドの異なるアクセス方法を含み、前
    記アクセス方法のそれぞれが、前記データの前記物理実
    体の位置を記述する、請求項8に記載の方法。
  11. 【請求項11】特定の物理データ表現を有するデータに
    アクセスする方法であって、 第1ユーザによって、アプリケーションに第1の複数の
    論理フィールドに従って定義される第1抽象照会を発行
    するステップと、 前記第1抽象照会に応答して、前記第1ユーザとの定義
    された関連を有するマッピング規則の第1組にアクセス
    するステップと、 第2ユーザによって、前記アプリケーションに第2の複
    数の論理フィールドに従って定義される第2抽象照会を
    発行するステップと、 前記第2抽象照会に応答して、前記第2ユーザとの定義
    された関連を有するマッピング規則の第2組にアクセス
    するステップと、 前記第1抽象照会および前記第2抽象照会のそれぞれ
    を、前記論理フィールドを前記データの物理実体にマッ
    ピングするそれぞれのマッピング規則に従って、前記特
    定の物理データ表現との一貫性を有する照会に変換する
    ステップとを含む方法。
  12. 【請求項12】前記第1ユーザおよび前記第2ユーザに
    よる前記アプリケーションとの最初の接続に関して、 (i)前記ユーザの使用のためにマッピング規則の前記
    それぞれの組を選択するステップと、 (ii)マッピング規則の前記それぞれの組が、前記マ
    ッピング規則にアクセスする特定のユーザについて選択
    されたその選択のされ方を示すレベル・インジケータを
    セットするステップと、 (iii)前記選択されたマッピング規則の組をロード
    するステップとをさらに含む、請求項11に記載の方
    法。
  13. 【請求項13】前記ユーザの使用のためにマッピング規
    則の前記組を選択するステップが前記ユーザと特定のマ
    ッピング規則の組との間に事前定義の関連が存在するか
    どうかを判定し、 そうである場合に、前記ユーザによって発行された照会
    についてアクセスされるマッピング規則の前記組として
    前記特定のマッピング規則の組を選択し、 そうでない場合に、前記ユーザによって発行された照会
    についてアクセスされるマッピング規則の前記組として
    デフォルト・マッピング規則の組を選択するステップを
    含む、請求項12に記載の方法。
  14. 【請求項14】前記第1ユーザおよび前記第2ユーザに
    よるマッピング規則のそれぞれの組のアクセスごとに、 アクセスされるマッピングの前記組のレベル・インジケ
    ータを判定するステップと、 少なくとも第1のレベル・インジケータについて、アク
    セスされるマッピング規則の前記組が、アクセスされる
    前記マッピング規則の組が前記ユーザのためにロードさ
    れた時に関して変更されているかどうかを判定し、そう
    である場合にステップ(i)乃至(iii)を実行する
    ステップと、 少なくとも第2のレベル・インジケータについて、前記
    ユーザについて別のレベルが存在するかどうかを判定
    し、そうである場合にステップ(i)乃至(iii)を
    実行するステップとをさらに含む、請求項12に記載の
    方法。
  15. 【請求項15】前記第1のレベル・インジケータが、前
    記それぞれのユーザによってアクセスされるマッピング
    規則の前記組が前記ユーザとの定義された関連を有する
    ことを示すユーザ・レベル・インジケータであり、前記
    第2のレベル・インジケータが、(i)前記それぞれの
    ユーザによってアクセスされるマッピング規則の前記組
    が、前記ユーザがそのメンバであるグループとの定義さ
    れた関連を有することを示すグループ・レベル・インジ
    ケータと、(ii)前記それぞれのユーザによってアク
    セスされるマッピング規則の前記組が、マッピング規則
    のデフォルト組であることを示すアプリケーション・レ
    ベル・インジケータとの少なくとも1つである、請求項
    14に記載の方法。
  16. 【請求項16】前記マッピング規則のそれぞれが、前記
    抽象照会の論理フィールドごとに少なくとも1つのアク
    セス方法を含む、請求項11に記載の方法。
  17. 【請求項17】前記アクセス方法のそれぞれが、前記デ
    ータの物理実体の物理位置を記述する、請求項16に記
    載の方法。
  18. 【請求項18】特定の物理データ表現を有するデータへ
    のアクセスを提供するデータベース・アクセス環境を含
    むコンピュータ可読媒体であって、前記データベース・
    アクセス環境が、 抽象照会を定義する複数の論理フィールドを含む照会指
    定を含むアプリケーションと、 前記複数の論理フィールドを前記データの物理実体にマ
    ッピングする複数のマッピング規則の組とを含み、 前記複数のマッピング規則の組の少なくとも2つは、前
    記複数の論理フィールドを前記データの前記物理実体の
    異なる組にマッピングし、2人の異なるユーザ、ユーザ
    の2つの異なるグループ、ユーザのグループおよびユー
    ザの3つから選択される2つの異なる要求元実体の少な
    くとも1つに一意に関連する、 コンピュータ可読媒体。
  19. 【請求項19】前記2つの異なる要求元実体の1つによ
    って発行される、前記照会指定によって定義される抽象
    照会を、前記2つの異なる要求元実体の前記それぞれの
    マッピング規則に従って、前記特定の物理データ表現と
    の一貫性を有する照会に変換するランタイム・コンポー
    ネントをさらに含む、請求項18に記載のコンピュータ
    可読媒体。
  20. 【請求項20】前記マッピング規則が、前記複数の論理
    フィールドごとに少なくとも1つのアクセス方法を含
    む、請求項18に記載のコンピュータ可読媒体。
  21. 【請求項21】前記アクセス方法が、前記データの前記
    物理実体の位置を記述する、請求項20に記載のコンピ
    ュータ可読媒体。
  22. 【請求項22】プロセッサによって実行される時に、特
    定の物理データ表現を有するデータにアクセスする動作
    を実行するプログラムを含むコンピュータ可読媒体であ
    って、前記動作が、 論理フィールドに従う抽象照会の定義を提供する、アプ
    リケーションの照会指定に従って、複数のユーザによっ
    て発行される複数の抽象照会を受け取るステップと、 前記抽象照会を、前記論理フィールドを前記データの物
    理実体にマッピングする複数のデータ・リポジトリ抽象
    化コンポーネントに従って、前記特定の物理データ表現
    との一貫性を有する照会に変換するステップとを含み、 異なるデータ・リポジトリ抽象化コンポーネントは、前
    記アプリケーションを使用する前記ユーザの少なくとも
    2人に関連付けられる、 コンピュータ可読媒体。
  23. 【請求項23】前記マッピング規則が、前記抽象照会の
    論理フィールドごとにアクセス方法を含む、請求項22
    に記載のコンピュータ可読媒体。
  24. 【請求項24】前記アクセス方法が、前記データの前記
    物理実体の物理位置を記述する、請求項23に記載のコ
    ンピュータ可読媒体。
  25. 【請求項25】コンピュータであって、 少なくとも(i)論理フィールドによる抽象照会の定義
    を提供する照会指定を含むアプリケーションと、(i
    i)前記論理フィールドをデータの物理実体にマッピン
    グする複数のデータ・リポジトリ抽象化コンポーネント
    であって、前記データ・リポジトリ抽象化コンポーネン
    トの少なくとも一部が、異なるユーザとのプログラム的
    に定義された関連を有する、複数のデータ・リポジトリ
    抽象化コンポーネントと、(iii)前記抽象照会を、
    前記データ・リポジトリ抽象化コンポーネントに従っ
    て、データの前記物理実体との一貫性を有する照会に変
    換するランタイム・コンポーネントとを含むメモリと、 前記メモリの内容を実行するように適合されたプロセッ
    サとを含むコンピュータ。
  26. 【請求項26】前記データを含む記憶装置をさらに含
    む、請求項25に記載のコンピュータ。
  27. 【請求項27】前記データ・リポジトリ抽象化コンポー
    ネントが、前記複数の論理フィールドごとにアクセス方
    法を含む、請求項25に記載のコンピュータ。
  28. 【請求項28】前記アクセス方法が、前記データの前記
    物理実体の位置を記述する、請求項26に記載のコンピ
    ュータ。
JP2003117893A 2002-04-25 2003-04-23 データ・リポジトリ抽象化層を介するアプリケーションの物理データ層の動的なエンド・ユーザ固有のカスタマイズ Pending JP2003323324A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US10/132,228 US6928431B2 (en) 2002-04-25 2002-04-25 Dynamic end user specific customization of an application's physical data layer through a data repository abstraction layer
US10/132228 2002-04-25

Publications (1)

Publication Number Publication Date
JP2003323324A true JP2003323324A (ja) 2003-11-14

Family

ID=29268753

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003117893A Pending JP2003323324A (ja) 2002-04-25 2003-04-23 データ・リポジトリ抽象化層を介するアプリケーションの物理データ層の動的なエンド・ユーザ固有のカスタマイズ

Country Status (2)

Country Link
US (1) US6928431B2 (ja)
JP (1) JP2003323324A (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006012173A (ja) * 2004-06-25 2006-01-12 Internatl Business Mach Corp <Ibm> データ抽象化モデルにおける関係管理
JP2006209316A (ja) * 2005-01-26 2006-08-10 Nec Corp データベースアクセス管理システム、管理方法及びそのプログラム
US7146341B1 (en) * 1998-10-07 2006-12-05 Verisign, Inc. Method and apparatus for data recipient storage and retrieval of data using a network communication device

Families Citing this family (95)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8375046B2 (en) * 2002-02-26 2013-02-12 International Business Machines Corporation Peer to peer (P2P) federated concept queries
US8244702B2 (en) * 2002-02-26 2012-08-14 International Business Machines Corporation Modification of a data repository based on an abstract data representation
US6996558B2 (en) * 2002-02-26 2006-02-07 International Business Machines Corporation Application portability and extensibility through database schema and query abstraction
US20080250003A1 (en) * 2002-02-26 2008-10-09 Dettinger Richard D Peer to peer (p2p) concept query abstraction model augmentation with federated access only elements
US9031924B2 (en) * 2002-02-26 2015-05-12 International Business Machines Corporation Query conditions having filtered fields within a data abstraction environment
US9043365B2 (en) * 2002-02-26 2015-05-26 International Business Machines Corporation Peer to peer (P2P) federated concept queries
US7398263B2 (en) * 2002-02-26 2008-07-08 International Business Machines Corporation Sequenced modification of multiple entities based on an abstract data representation
US8458200B2 (en) * 2002-02-26 2013-06-04 International Business Machines Corporation Processing query conditions having filtered fields within a data abstraction environment
US8086568B2 (en) * 2002-02-26 2011-12-27 International Business Machines Corporation Peer to peer (P2P) concept query notification of available query augmentation within query results
US7734646B2 (en) * 2003-01-29 2010-06-08 International Business Machines Corporation Data model simplification through field fallout
US7418600B2 (en) * 2003-03-13 2008-08-26 International Business Machines Corporation Secure database access through partial encryption
US8577908B2 (en) * 2003-03-20 2013-11-05 International Business Machines Corporation Automatic lock management in an abstract database
US7574423B2 (en) * 2003-03-20 2009-08-11 International Business Machines Corporation Partial data model exposure through client side caching
US7991788B2 (en) * 2003-03-27 2011-08-02 International Business Machines Corporation Abstract data model filters
US7054877B2 (en) * 2003-03-31 2006-05-30 International Business Machines Corporation Dealing with composite data through data model entities
US7146376B2 (en) * 2003-04-24 2006-12-05 International Business Machines Corporation Data abstraction model driven physical layout
US20040254916A1 (en) * 2003-06-12 2004-12-16 International Business Machines Corporation Data query schema based on conceptual context
US7899843B2 (en) * 2003-09-19 2011-03-01 International Business Machines Corporation Expanding the scope of an annotation to an entity level
US7152074B2 (en) * 2003-09-19 2006-12-19 International Business Machines Corporation Extensible framework supporting deposit of heterogenous data sources into a target data repository
US7593929B2 (en) * 2003-10-22 2009-09-22 International Business Machines Corporation Context sensitive term expansion with dynamic term expansion
US7617196B2 (en) 2003-10-22 2009-11-10 International Business Machines Corporation Context-sensitive term expansion with multiple levels of expansion
US8458215B2 (en) * 2003-11-24 2013-06-04 International Business Machines Corporation Dynamic functional module availability
US7149731B2 (en) * 2003-11-26 2006-12-12 International Business Machines Corporation Methods, systems and articles of manufacture for abstract query building with selectability of aggregation operations and grouping
US7900133B2 (en) 2003-12-09 2011-03-01 International Business Machines Corporation Annotation structure type determination
US7487513B1 (en) 2003-12-30 2009-02-03 Sap Ag Web service archive
US7310637B2 (en) * 2004-05-05 2007-12-18 International Business Machines Corporation Dynamic database access via standard query language and abstraction technology
WO2005114379A2 (en) * 2004-05-14 2005-12-01 Perfect Market Technologies, Inc. Personalized search engine
US20060004735A1 (en) * 2004-06-03 2006-01-05 International Business Machines Corporation Abstract classification field specification
US8224872B2 (en) * 2004-06-25 2012-07-17 International Business Machines Corporation Automated data model extension through data crawler approach
US7461066B2 (en) * 2004-06-29 2008-12-02 International Business Machines Corporation Techniques for sharing persistently stored query results between multiple users
US7546601B2 (en) * 2004-08-10 2009-06-09 International Business Machines Corporation Apparatus, system, and method for automatically discovering and grouping resources used by a business process
US7661135B2 (en) * 2004-08-10 2010-02-09 International Business Machines Corporation Apparatus, system, and method for gathering trace data indicative of resource activity
US7630955B2 (en) * 2004-08-10 2009-12-08 International Business Machines Corporation Apparatus, system, and method for analyzing the association of a resource to a business process
US20060047648A1 (en) * 2004-08-24 2006-03-02 Eric Martin Comprehensive query processing and data access system and user interface
US8041728B2 (en) * 2004-09-30 2011-10-18 International Business Machines Corporation Utilization of display profiles with abstract queries
US8090739B2 (en) * 2004-10-14 2012-01-03 International Business Machines Corporation Utilization of logical fields with conditional modifiers in abstract queries
US8055683B2 (en) * 2004-10-14 2011-11-08 International Business Machines Corporation Management of relationships between database tables
US7539668B2 (en) * 2004-11-30 2009-05-26 International Business Machines Corporation System and method for sorting data records contained in a query result based on suitability score
US20060116999A1 (en) * 2004-11-30 2006-06-01 International Business Machines Corporation Sequential stepwise query condition building
US20060116983A1 (en) * 2004-11-30 2006-06-01 International Business Machines Corporation System and method for ordering query results
US7461052B2 (en) * 2004-12-06 2008-12-02 International Business Machines Corporation Abstract query plan
US7480648B2 (en) * 2004-12-06 2009-01-20 International Business Machines Corporation Research rapidity and efficiency improvement by analysis of research artifact similarity
US7333981B2 (en) * 2004-12-17 2008-02-19 International Business Machines Corporation Transformation of a physical query into an abstract query
US8112459B2 (en) * 2004-12-17 2012-02-07 International Business Machines Corporation Creating a logical table from multiple differently formatted physical tables having different access methods
US7624097B2 (en) * 2005-01-14 2009-11-24 International Business Machines Corporation Abstract records
US7321895B2 (en) * 2005-01-14 2008-01-22 International Business Machines Corporation Timeline condition support for an abstract database
US8122012B2 (en) 2005-01-14 2012-02-21 International Business Machines Corporation Abstract record timeline rendering/display
US7363297B2 (en) * 2005-01-20 2008-04-22 International Business Machines Corporation Utilization of logical fields with conditional constraints in abstract queries
WO2006081698A1 (de) * 2005-02-02 2006-08-10 Sdn Ag Suchmaschinenbasiertes selbstlernsystem
US7668807B2 (en) * 2005-02-24 2010-02-23 International Business Machines Corporation Query rebinding for high-availability database systems
US8095553B2 (en) * 2005-03-17 2012-01-10 International Business Machines Corporation Sequence support operators for an abstract database
US20060282470A1 (en) * 2005-06-10 2006-12-14 Hong-Lee Yu Determining compliance of a database architecture to an enterprise data standard
US9792351B2 (en) * 2005-06-10 2017-10-17 International Business Machines Corporation Tolerant and extensible discovery of relationships in data using structural information and data analysis
US20060294066A1 (en) * 2005-06-23 2006-12-28 International Business Machines Corporation Visual display of information using historical condition support and event profiles
US8285739B2 (en) * 2005-07-28 2012-10-09 International Business Machines Corporation System and method for identifying qualifying data records from underlying databases
US7403937B2 (en) * 2005-08-31 2008-07-22 International Business Machines Corporation Abstractly mapped physical data fields
US8321441B2 (en) * 2005-09-14 2012-11-27 International Business Machines Corporation Disabling subsets of query conditions in an abstract query environment
US8285736B2 (en) * 2005-09-14 2012-10-09 International Business Machines Corporation Disabling query conditions in an abstract query environment
US9679031B2 (en) 2005-09-14 2017-06-13 International Business Machines Corporation Composing abstract queries for delegated user roles
US7444332B2 (en) 2005-11-10 2008-10-28 International Business Machines Corporation Strict validation of inference rule based on abstraction environment
US7440945B2 (en) * 2005-11-10 2008-10-21 International Business Machines Corporation Dynamic discovery of abstract rule set required inputs
US7472116B2 (en) * 2005-12-22 2008-12-30 International Business Machines Corporation Method for filtering query results using model entity limitations
US7774355B2 (en) 2006-01-05 2010-08-10 International Business Machines Corporation Dynamic authorization based on focus data
US8954426B2 (en) * 2006-02-17 2015-02-10 Google Inc. Query language
US20070185870A1 (en) 2006-01-27 2007-08-09 Hogue Andrew W Data object visualization using graphs
US7739267B2 (en) * 2006-03-10 2010-06-15 International Business Machines Corporation Classification and sequencing of mixed data flows
US9361137B2 (en) 2006-03-10 2016-06-07 International Business Machines Corporation Managing application parameters based on parameter types
US20080222121A1 (en) * 2006-06-02 2008-09-11 Wolfgang Wiessler System for Adaptively Querying a Data Storage Repository
US20080016047A1 (en) * 2006-07-12 2008-01-17 Dettinger Richard D System and method for creating and populating dynamic, just in time, database tables
US8954412B1 (en) 2006-09-28 2015-02-10 Google Inc. Corroborating facts in electronic documents
US8160999B2 (en) * 2006-12-13 2012-04-17 International Business Machines Corporation Method and apparatus for using set based structured query language (SQL) to implement extract, transform, and load (ETL) splitter operation
US8219518B2 (en) 2007-01-09 2012-07-10 International Business Machines Corporation Method and apparatus for modelling data exchange in a data flow of an extract, transform, and load (ETL) process
US20080228716A1 (en) * 2007-03-13 2008-09-18 Dettinger Richard D System and method for accessing unstructured data using a structured database query environment
US8326852B2 (en) * 2007-03-13 2012-12-04 International Business Machines Corporation Determining query entities for an abstract database from a physical database table
US8140557B2 (en) 2007-05-15 2012-03-20 International Business Machines Corporation Ontological translation of abstract rules
US8396898B2 (en) * 2007-05-21 2013-03-12 Stefan Becker Method for providing or operating a framework for the realization of independently developed programs
US8204906B2 (en) * 2007-07-13 2012-06-19 International Business Machines Corporation Abstraction based audit and security log model for increased role and security enforcement
US8903842B2 (en) * 2007-10-26 2014-12-02 Microsoft Corporation Metadata driven reporting and editing of databases
US8341647B2 (en) * 2007-11-30 2012-12-25 International Business Machines Corporation System and method for querying historical bean data
US8321438B1 (en) * 2008-06-18 2012-11-27 Bank Of America Corporation Integration layer for a data repository
US8260825B2 (en) * 2009-05-11 2012-09-04 Business Objects Software Limited Functionally-dependent analysis objects
US20110282863A1 (en) * 2010-05-11 2011-11-17 Donald Cohen Use of virtual database technology for internet search and data integration
US9043355B1 (en) * 2009-10-16 2015-05-26 Iqor U.S. Inc. Apparatuses, methods and systems for a journal entry automator
US9990416B2 (en) * 2009-12-02 2018-06-05 Business Objects Software Limited Analysis groups for semantic layer
US20110137977A1 (en) * 2009-12-07 2011-06-09 Sap Ag Method and system for generating rich client applications for administrators and translators
US8266170B2 (en) 2010-04-26 2012-09-11 International Business Machines Corporation Peer to peer (P2P) missing fields and field valuation feedback
US8583699B2 (en) 2010-04-30 2013-11-12 International Business Machines Corporation Web service discovery via data abstraction model augmented by field relationship identification
US8275806B2 (en) 2010-04-30 2012-09-25 International Business Machines Corporation Web service discovery via data abstraction model and condition creation
US8250113B2 (en) 2010-04-30 2012-08-21 International Business Machines Corporation Web service discovery via data abstraction model
US8949280B2 (en) 2010-04-30 2015-02-03 International Business Machines Corporation Web service discovery via data abstraction model with input assistance
US8321451B2 (en) * 2010-04-30 2012-11-27 International Business Machines Corporation Automatic web service discovery and information retrieval via data abstraction model
US8725857B2 (en) * 2010-10-27 2014-05-13 Rolta International, Inc. Dynamic query services and methods
WO2013101169A1 (en) * 2011-12-30 2013-07-04 Intel Corporation Sharing data amoung smart devices and a cloud network
EP2819058A1 (en) * 2013-06-27 2014-12-31 Siemens Aktiengesellschaft Accessing data of a database in a MES system
US11327986B2 (en) 2020-06-22 2022-05-10 International Business Machines Corporation Retrieving and presenting data in a structured view from a non-relational database

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5369778A (en) * 1987-08-21 1994-11-29 Wang Laboratories, Inc. Data processor that customizes program behavior by using a resource retrieval capability
US5918232A (en) * 1997-11-26 1999-06-29 Whitelight Systems, Inc. Multidimensional domain modeling method and system
US6725227B1 (en) * 1998-10-02 2004-04-20 Nec Corporation Advanced web bookmark database system
US20010016843A1 (en) * 1999-02-08 2001-08-23 Todd Olson Method and apparatus for accessing data
US20020123984A1 (en) * 1999-08-23 2002-09-05 Naveen Prakash Dynamic query of server applications
CA2281331A1 (en) * 1999-09-03 2001-03-03 Cognos Incorporated Database management system
US6999956B2 (en) * 2000-11-16 2006-02-14 Ward Mullins Dynamic object-driven database manipulation and mapping system
WO2002073497A2 (en) * 2001-03-09 2002-09-19 Pihl Limited Method and apparatus for delivering healthcare
US7437349B2 (en) * 2002-05-10 2008-10-14 International Business Machines Corporation Adaptive probabilistic query expansion

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7146341B1 (en) * 1998-10-07 2006-12-05 Verisign, Inc. Method and apparatus for data recipient storage and retrieval of data using a network communication device
US7693796B2 (en) 1998-10-07 2010-04-06 Paypal, Inc. Method and apparatus for data recipient storage and retrieval of data using a network communication device
US8244641B2 (en) 1998-10-07 2012-08-14 Paypal, Inc. Method and apparatus for data recipient storage and retrieval of data using a network communication device
US8423474B2 (en) 1998-10-07 2013-04-16 Paypal, Inc. Method and apparatus for data recipient storage and retrieval of data using a network communication device
US9256878B2 (en) 1998-10-07 2016-02-09 Paypal, Inc. Method and apparatus for data recipient storage and retrieval of data using a network communication device
JP2006012173A (ja) * 2004-06-25 2006-01-12 Internatl Business Mach Corp <Ibm> データ抽象化モデルにおける関係管理
JP2006209316A (ja) * 2005-01-26 2006-08-10 Nec Corp データベースアクセス管理システム、管理方法及びそのプログラム

Also Published As

Publication number Publication date
US6928431B2 (en) 2005-08-09
US20030208486A1 (en) 2003-11-06

Similar Documents

Publication Publication Date Title
JP2003323324A (ja) データ・リポジトリ抽象化層を介するアプリケーションの物理データ層の動的なエンド・ユーザ固有のカスタマイズ
CA2483963C (en) A method, computer program and computer for accessing data in an environment of multiple data repositories
US7096229B2 (en) Dynamic content generation/regeneration for a database schema abstraction
KR100843651B1 (ko) 추상적 데이터베이스에서의 규칙 애플리케이션 관리
US8165989B2 (en) Automated data model extension through data crawler approach
US8244702B2 (en) Modification of a data repository based on an abstract data representation
US7689551B2 (en) Iterative data analysis enabled through query result abstraction
US8122009B2 (en) Dealing with composite data through data model entities
US8086647B2 (en) Sequenced modification of multiple entities based on an abstract data representation
US8341172B2 (en) Method and system for providing aggregate data access
US7158969B2 (en) Iterative data analysis process via query result augmentation and result data feedback
US20130226901A1 (en) Processing abstract derived entities defined in a data abstraction model
US8577908B2 (en) Automatic lock management in an abstract database

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20070109

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070409

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20070409

RD12 Notification of acceptance of power of sub attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7432

Effective date: 20070409

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20070409

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20070619

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20070904

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070904

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20071022

A912 Re-examination (zenchi) completed and case transferred to appeal board

Free format text: JAPANESE INTERMEDIATE CODE: A912

Effective date: 20071109

RD14 Notification of resignation of power of sub attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7434

Effective date: 20081219

RD14 Notification of resignation of power of sub attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7434

Effective date: 20091211