【手続補正書】
【提出日】平成22年3月26日(2010.3.26)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
プロセッサおよびシステムメモリを含むコンピュータシステムにおいて、データベースと相互作用するウェブベースユーザインターフェースを生成する方法であって、
該方法は、
前記データベースの複数のテーブルを定義するスキーマにアクセスするステップであって、該スキーマは該データベースの複数のテーブルのフィールド間の関係も定義し、該スキーマによるフィールド間の関係の定義は該データベースの第１のテーブルから第２のテーブルへの外部キー関係であって、第２のテーブルのレコードを識別する第１のテーブルのキーフィールドを示す外部キー関係を定義することを含む、ステップと、
前記外部キー関係を含む前記スキーマをソースコードに変換するステップであって、該ソースコードは該スキーマに従って定義される複数のテーブルおよびフィールド間の関係を表すクラスおよびサブクラスを含む、ステップと、
第１のテーブルから第２のテーブルへの前記外部キー関係を表すメタデータ注釈を前記ソースコードに注釈付けするステップであって、該メタデータ注釈は第２のテーブルのレコードを識別する第１のテーブルのキーフィールドを示す前記外部キー関係に基づいてクラスまたはサブクラスの生成の基準を示す、ステップと、
前記ソースコードから実行可能コードを生成するステップであって、
該ソースコードのクラスおよびサブクラスをダイナミックリンクライブラリの実行可能コードであって、該ソースコードにおけるデータベースの複数のテーブルおよびフィールド間の関係の表示を見えなくする実行可能コードにコンパイルすることと、
第２のテーブルのレコードを識別する第１のテーブルのキーフィールドを示す前記外部キー関係を表すメタデータ注釈を含む、前記ソースコードからの前記メタデータ注釈を該ダイナミックリンクライブラリの実行可能コードに保持すること
を含むステップと、
前記データベースのデータベースマッピングを生成する際に使用する、第２のテーブルのレコードを識別する第１のテーブルのキーフィールドを示す前記外部キー関係を表す前記メタデータ注釈を含む、メタデータ注釈を前記ダイナミックリンクライブラリの実行可能コード内から識別するステップと、
前記メタデータ注釈から前記データベースのデータベースマッピングを前記プロセッサが生成するステップであって、該データベースマッピングが、前記スキーマに基づくものであり、かつ第２のテーブルのレコードを識別する第１のテーブルのキーフィールドを示す前記外部キー関係の表示をウェブサイトジェネレータによって処理可能なフォーマットに保持するように、該データベースマッピングは前記データベースの構成を記述する、ステップと、
前記第２のテーブルから前記第１のテーブルへの関係が前記スキーマ内で明示的に記述されない場合であっても、前記第１のテーブルから前記第２のテーブルへの前記外部キー関係の存在から、前記第２のテーブルから前記第１のテーブルへの関係も、データベースからのデータを提示するウェブベースフォームをナビゲートすることに関連することを前記ウェブサイトジェネレータが推論するステップであって、前記データベースに関するウェブサイトの追加機能を生成する際に使用する推論された関係は第２のテーブルから第１のテーブルへのナビゲーション可能なリンクをトラバースすることを可能にする、ステップと、
前記データベースマッピングに従って前記データベースに関するウェブサイトを前記ウェブサイトジェネレータが生成するステップであって、該ウェブサイトは前記推論された関係に基づく第２のテーブルから第１のテーブルへのナビゲーション可能なリンクを少なくとも１つ含み、該少なくとも１つのナビゲーション可能なリンクは第２のテーブルから第１のテーブルへの前記推論された関係を実行し、該ウェブサイトは、第２のテーブルからのデータと相互作用するための第１のウェブベースフォームを含む、前記データベースのテーブルおよびフィールドと相互作用するための複数のナビゲーション可能なリンクされたウェブベースフォームを提供するように構成され、前記第１のウェブベースフォームは、前記第２のテーブルからの行のコンテキストで前記第１のテーブルからのデータベースレコードをクエリするダイナミッククエリを自動的に定式化するために選択可能なナビゲーション可能リンクを伴って構成される、ステップと
を含むことを特徴とする方法。
【請求項２】
前記メタデータ注釈を識別する前記ステップは、前記実行可能コード内のメタデータ注釈を識別するリフレクションを使用するステップを含むことを特徴とする請求項１に記載の方法。
【請求項３】
前記外部キー関係の存在から、前記第２のテーブルから前記第１のテーブルへの関係も関連することを推論する前記ステップは、前記第１のテーブルの外部キーによって表される前記第２のテーブルのフィールドの値を前記第１のテーブルの複数の行に含めることができることを推論するステップを含むことを特徴とする請求項１に記載の方法。
【請求項４】
前記データベースマッピングに従って前記データベースに関するウェブサイトを生成する前記ステップは、生成されるウェブサイトに前記ダイナミッククエリを含めるステップを含むことを特徴とする請求項１に記載の方法。
【請求項５】
前記データベースマッピングに従って前記データベースに関するウェブサイトを生成する前記ステップは、前記第１のテーブルからのレコードのソートおよび前記第１のテーブルからのレコードを介したページングのうちの少なくとも１つを実行するために前記データベースへのダイナミッククエリを実行するためのリンクを含むウェブサイトを生成するステップを含むことを特徴とする請求項１に記載の方法。
【請求項６】
プロセッサおよびシステムメモリを含むコンピュータシステムにおいて、データベースと相互作用するウェブベースユーザインターフェースを生成する方法であって、
該方法は、
前記データベースの複数のテーブルを定義するスキーマにアクセスするステップであって、該スキーマは該データベースの複数のテーブルのフィールド間の関係も定義し、該スキーマによるフィールド間の関係の定義は該データベースの第１のテーブルから第２のテーブルへの外部キー関係であって、第２のテーブルのレコードを識別する第１のテーブルのキーフィールドを示す外部キー関係を定義することを含む、ステップと、
前記外部キー関係を含む前記スキーマをソースコードに変換するステップであって、該ソースコードは該スキーマに従って定義される複数のテーブルおよびフィールド間の関係を表すクラスおよびサブクラスを含む、ステップと、
第１のテーブルから第２のテーブルへの前記外部キー関係を表すメタデータ注釈を前記ソースコードに注釈付けするステップであって、該メタデータ注釈は第２のテーブルのレコードを識別する第１のテーブルのキーフィールドを示す前記外部キー関係に基づいてクラスまたはサブクラスの生成の基準を示す、ステップと、
前記ソースコードから実行可能コードを生成するステップであって、
該ソースコードのクラスおよびサブクラスをダイナミックリンクライブラリの実行可能コードであって、該ソースコードにおけるデータベースの複数のテーブルおよびフィールド間の関係の表示を見えなくする実行可能コードにコンパイルすることと、
第２のテーブルのレコードを識別する第１のテーブルのキーフィールドを示す前記外部キー関係を表すメタデータ注釈を含む、前記ソースコードからの前記メタデータ注釈を該ダイナミックリンクライブラリの実行可能コードに保持すること
を含むステップと、
前記データベースのデータベースマッピングを生成する際に使用する、第２のテーブルのレコードを識別する第１のテーブルのキーフィールドを示す前記外部キー関係を表す前記メタデータ注釈を含む、メタデータ注釈を前記ダイナミックリンクライブラリの実行可能コード内から識別するステップと、
前記識別されたメタデータ注釈から前記データベースのデータベースマッピングを前記プロセッサが生成するステップであって、該データベースマッピングが、前記スキーマに基づくものであり、かつ第２のテーブルのレコードを識別する第１のテーブルのキーフィールドを示す前記外部キー関係の表示をウェブサイトジェネレータによって処理可能なフォーマットに保持するように、該データベースマッピングは前記データベースの構成を記述する、ステップと、
前記データベースに含まれるデータベーステーブルをクエリするように構成されたダイナミッククエリを自動的に定式化するステップであって、該ダイナミッククエリはウェブベースフォーム内のデータベーステーブルからのレコードの配置を変更するユーザ開始コマンドに応答して実行され、該ダイナミッククエリは、データベーステーブル全体がクエリされる必要がないように、ウェブベースフォームに提示される第１のテーブルからのレコードを、該レコードが提示される順序で要求するように構成され、該ダイナミッククエリは、ページネーションクエリ、追加クエリ、削除クエリ、および変更クエリの１つを実行する、ステップと、
前記データベースマッピングに従って前記データベースに関するウェブサイトを自動的に生成するステップであって、該ウェブサイトは、ユーザが前記データベースにクエリして、該ウェブサイトにて提示される前記データベースからのレコードの配置を自動的に変更することができるように、定式化されたダイナミッククエリを自動的に実行するリンクを含み、該ウェブサイトは第２のテーブルから第１のテーブルへのナビゲーション可能なリンクを少なくとも１つ含み、該少なくとも１つのナビゲーション可能なリンクは第２のテーブルから第１のテーブルへの推論された関係を、第２のテーブルのレコードを識別する第１のテーブルのキーフィールドを示す前記外部キー関係を表すメタデータ注釈に基づいて実行する、ステップと
を含むことを特徴とする方法。
【請求項７】
前記メタデータ注釈を識別する前記ステップは、前記実行可能コード内のメタデータ注釈を識別するリフレクションを使用するステップを含むことを特徴とする請求項６に記載の方法。
【請求項８】
データベーステーブルをクエリするように構成されたダイナミッククエリを自動的に定式化する前記ステップは、前記データベーステーブル内のレコードのソート、削除、追加、および変更のうちの１つまたは複数に関するダイナミッククエリを定式化するステップを含むことを特徴とする請求項６に記載の方法。
【請求項９】
前記データベーステーブル内のレコードのソートに関するダイナミッククエリを定式化する前記ステップは、前記レコードのフィールドのうちの１つのフィールドの値に基づいて昇順での前記データベーステーブルのレコードのソートと降順での前記データベーステーブルのレコードのソートとの間でトグルできるダイナミッククエリを定式化するステップを含むことを特徴とする請求項８に記載の方法。
【請求項１０】
データベーステーブルをクエリするように構成されたダイナミッククエリを自動的に定式化する前記ステップは、前記データベーステーブル内のレコードを介したページングに関するダイナミッククエリを定式化するステップを含むことを特徴とする請求項６に記載の方法。
【請求項１１】
前記データベースマッピングに従って前記データベースに関するウェブサイトを自動的に生成する前記ステップは、ソートクエリを実行するために選択され得るユーザ選択可能リンクを含めるステップを含むことを特徴とする請求項６に記載の方法。
【請求項１２】
前記データベースマッピングに従って前記データベースに関するウェブサイトを自動的に生成する前記ステップは、第２のテーブルからの行のコンテキストで第１のテーブルからのレコードに対するクエリを実行するために選択され得るユーザ選択可能リンクを含めるステップを含むことを特徴とする請求項６に記載の方法。
【請求項１３】
１つまたは複数のプロセッサと、
システムメモリと、
オブジェクトリレーショナルマッパ、コンパイラ、およびウェブサイトジェネレータとして表されるコンピュータ実行可能命令を格納した１つまたは複数のコンピュータ読み取り可能な記憶媒体と
を備えたコンピュータシステムであって、
前記オブジェクトリレーショナルマッパは、
前記データベースの複数のテーブルを定義するスキーマにアクセスすることであって、該スキーマは該データベースの複数のテーブルのフィールド間の関係も定義し、該スキーマによるフィールド間の関係の定義は該データベースの第１のテーブルから第２のテーブルへの外部キー関係であって、第２のテーブルのレコードを識別する第１のテーブルのキーフィールドを示す外部キー関係を定義することを含む、ことを行い、
前記外部キー関係を含む前記スキーマをソースコードに変換することであって、該ソースコードは該スキーマに従って定義される複数のテーブルおよびフィールド間の関係を表すクラスおよびサブクラスを含む、ことを行い、
第１のテーブルから第２のテーブルへの前記外部キー関係を表すメタデータ注釈を前記ソースコードに注釈付けすることであって、該メタデータ注釈は第２のテーブルのレコードを識別する第１のテーブルのキーフィールドを示す前記外部キー関係に基づいてクラスまたはサブクラスの生成の基準を示す、ことを行う
ように構成され、
前記コンパイラは、
前記ソースコードから実行可能コードを生成するように構成され、
該生成することは、
該ソースコードのクラスおよびサブクラスをダイナミックリンクライブラリの実行可能コードであって、該ソースコードにおけるデータベースの複数のテーブルおよびフィールド間の関係の表示を見えなくする実行可能コードにコンパイルすることと、
第２のテーブルのレコードを識別する第１のテーブルのキーフィールドを示す前記外部キー関係を表すメタデータ注釈を含む、前記ソースコードからの前記メタデータ注釈を該ダイナミックリンクライブラリの実行可能コードに保持すること
を含み、
前記プロセッサは、
前記データベースのデータベースマッピングを生成する際に使用する、第２のテーブルのレコードを識別する第１のテーブルのキーフィールドを示す前記外部キー関係を表す前記メタデータ注釈を含む、メタデータ注釈を前記ダイナミックリンクライブラリの実行可能コード内から識別し、
前記メタデータ注釈から前記データベースのデータベースマッピングを生成することであって、該データベースマッピングが、前記スキーマに基づくものであり、かつ第２のテーブルのレコードを識別する第１のテーブルのキーフィールドを示す前記外部キー関係の表示をウェブサイトジェネレータによって処理可能なフォーマットに保持するように、該データベースマッピングは前記データベースの構成を記述する、ことを行い、
前記ウェブサイトジェネレータは、
前記第２のテーブルから前記第１のテーブルへの関係が前記スキーマ内で明示的に記述されない場合であっても、前記第１のテーブルから前記第２のテーブルへの前記外部キー関係の存在から、前記第２のテーブルから前記第１のテーブルへの関係も、データベースからのデータを提示するウェブベースフォームをナビゲートすることに関連することを推論することであって、前記データベースに関するウェブサイトの追加機能を生成する際に使用する推論された関係は第２のテーブルから第１のテーブルへのナビゲーション可能なリンクをトラバースすることを可能にする、ことを行い、
前記データベースマッピングに従って前記データベースに関するウェブサイトを生成することであって、該ウェブサイトは前記推論された関係に基づく第２のテーブルから第１のテーブルへのナビゲーション可能なリンクを少なくとも１つ含み、該少なくとも１つのナビゲーション可能なリンクは第２のテーブルから第１のテーブルへの前記推論された関係を実行し、該ウェブサイトは、第２のテーブルからのデータと相互作用するための第１のウェブベースフォームを含む、前記データベースのテーブルおよびフィールドと相互作用するための複数のナビゲーション可能なリンクされたウェブベースフォームを提供するように構成され、前記第１のウェブベースフォームは、前記推論された関係を利用して前記第２のテーブルからの行のコンテキストで前記第１のテーブルに対するビューを提供する第２のウェブベースフォームへのナビゲーション可能リンクを伴って構成され、該第２のウェブベースフォームへのナビゲーション可能リンクを選択することによって、前記第２のテーブルからの行のコンテキストで前記第１のテーブルに対するビューを提供するように、前記データベースへのダイナミッククエリを発行してウェブサイトにて表示されるレコードの配置を変更し、該ダイナミッククエリは、ページネーションクエリ、追加クエリ、削除クエリ、および変更クエリの１つを実行する、ことを行う
ように構成される、
ことを特徴とするコンピュータシステム。