JP5113764B2 - データベースと電子ドキュメントとの間での階層データの転送および表示 - Google Patents

データベースと電子ドキュメントとの間での階層データの転送および表示 Download PDF

Info

Publication number
JP5113764B2
JP5113764B2 JP2008550385A JP2008550385A JP5113764B2 JP 5113764 B2 JP5113764 B2 JP 5113764B2 JP 2008550385 A JP2008550385 A JP 2008550385A JP 2008550385 A JP2008550385 A JP 2008550385A JP 5113764 B2 JP5113764 B2 JP 5113764B2
Authority
JP
Japan
Prior art keywords
relational database
network location
location identifier
data
node
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.)
Expired - Fee Related
Application number
JP2008550385A
Other languages
English (en)
Other versions
JP2009523289A5 (ja
JP2009523289A (ja
Inventor
ケイ アンツ,ロン
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.)
UnzOrg LLC
Original Assignee
UnzOrg LLC
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 UnzOrg LLC filed Critical UnzOrg LLC
Publication of JP2009523289A publication Critical patent/JP2009523289A/ja
Publication of JP2009523289A5 publication Critical patent/JP2009523289A5/ja
Application granted granted Critical
Publication of JP5113764B2 publication Critical patent/JP5113764B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/958Organisation or management of web site content, e.g. publishing, maintaining pages or automatic linking
    • G06F16/972Access to data in other repository systems, e.g. legacy data or dynamic Web page generation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/955Retrieval from the web using information identifiers, e.g. uniform resource locators [URL]
    • G06F16/9566URL specific, e.g. using aliases, detecting broken or misspelled links

Description

本開示は、一般に、大規模リレーショナルデータベースなどのデータベースからのデータを、インターネットウェブページなどの電子ドキュメント内で表示することに関する。
この節で記載する方法は、遂行されることが可能であるが、必ずしも、以前に考案または遂行されたことがある方法とは限らない。したがって、本明細書内で特に指示しない限り、この節で記載する方法は、本出願における特許請求の範囲に対する先行技術ではなく、かつ、この節に含めることによって先行技術であると認められるわけではない。
インターネットは、現在、世界のコンピュータ間での、ディジタル化された情報の配送のための、非常に効率的な手段を提供しており、ウェブブラウザインタフェースは、その情報を表示するための優れた手段である。
この配送/表示モデルの、1つの普及している実装は、ユーザによって指定されたユニフォームリソースロケータ(URL)が、ホストコンピュータ上のデータベースから引き出された特定の情報に基づいて、ウェブページの即座の作成を引き起こす、動的に生成されるウェブページの使用である。
ウェブページの動的構造は、PHPまたはColdFusionなどのウェブアプリケーション言語のうちの1つでプログラムされなければならないが、1つのそのような動的ウェブページは、ユーザのURLから抽出される選択パラメータに基づいて、かつ、ホストデータベース内の、場合により変化している値にも基づいて、潜在的に無制限の数の異なるデータ表示を提供する。プログラミングは、1度だけ、そして1つのページについてのみ行われる必要があるため、このモデルは効率が非常に良く、ほとんどのウェブサイトに使用される標準的な方法となった。
データ自体は、通常はSQLデータベース言語に基づく、リレーショナルデータベース内に存在する可能性がますます高くなっており、MySQL、Oracle、およびSQL−Serverエンジンは最も一般的である。そのようなリレーショナルデータベースは、非常に高い性能と、記憶効率と、潜在的サイズの非常に大きな拡張性とを提供する。
このデータ配送/表示モデルは、これらの主要な利点を有するが、さまざまなタイプのデータに好都合に適用される際に、いくつかの障害に直面してきた。部分的にはこの理由により、インターネットデータは、ユーザ自身のコンピュータ上に存在するソフトウェアアプリケーション内のデータほど、表示または操作が高速かつ容易であったことはめったにない。
1つの障害は、ウェブページ上に示される特定のデータを決定するために使用されるURLは、構造に対する実際上の制約を有するということである。長くなりすぎた、または複雑になりすぎたURLは、個人にとって、理解するため、操作するため、またはリンクとして保存するためには不都合である。短く、かつ最小限の複雑さのURLの、埋め込まれる情報内容を最大にすることにより、ウェブ表示システムの有効性は大幅に向上する。
別の障害は、インターネット上で潜在的に利用可能なデータセットの多くは、サイズおよび複雑さが非常に大きいということである。そのような複雑なデータセットを好都合に表示または操作するための、1つのダイナミックウェブページをプログラミングすることは、困難な仕事である可能性があり、間違いが発生しやすい傾向がある。
最後に、ホストデータベースとウェブページとの間で、データを選択および転送するための、現在の方法の多くは、それらの基礎をなすデータベースアルゴリズムのため、またはそれらの表示技術のため、低速かつ非効率的であるように見える。結果として、ホストデータベースは過負荷状態となる可能性があり、クライアントまたはサーバの帯域幅はふさがれたものとなる可能性があり、全体的な性能はしばしば停滞する。
総合すれば、これらおよび類似した困難は、インターネットベースのデータの、効率的な表示または操作を大幅に制限してきた。
これらの大きいと予想されるインターネットデータセットの多くは、構造が階層的であり、さまざまな一般性の程度の、データ要素の集約されたファミリ内に編成される。おそらく、そのような階層データセットの最も一般的な例は、特定のコンピュータ上のディレクトリおよびファイルであり、この例においては、「子」ディレクトリが他の「親」ディレクトリ内に含まれてもよく、コンピュータ記憶装置の最高位まで以下同様であってもよい。
階層データを視覚化または表示する標準的な手段は、コンピュータのハードドライブのディレクトリ/ファイルツリーなどの、「ツリー」構造の形態である。これは、ユーザが、ツリーのさまざまなノードまたはブランチを「開くこと」または「閉じること」によって、任意の所望の詳細さの程度において、データを要約すること、または調べることを、好都合に可能にする。
ほとんどの大規模な階層データセットは、現在、リレーショナルデータベース内に記憶されているか、またはそのようなデータベーステーブル内に迅速かつ容易に読み込まれることが可能である。リレーショナルデータベースは、それらが含むデータセットに、特定の重要な制約を加えるが、その結果として、そのデータを後で操作または選択することにおいて、非常に優れた効率を提供する。
例として、コンピュータのハードドライブのファイルおよびディレクトリの記述的情報は、通常はリレーショナルデータベース内に記憶されていないが、そのようなテーブル内に容易に読み込まれることが可能であり、そのようなテーブルの1つのフィールドは、場合によってはフルパス名から導かれた、固有の識別子であり、別のフィールドは、要素タイプ(ファイルまたはディレクトリ)であり、別のフィールドは、親ディレクトリの識別子であり、その他のフィールドは、個々のファイルまたはディレクトリに関連付けられたさまざまなその他のタイプの追加情報である。
SQLデータベースは、リレーショナルデータベースの最も一般的な例であり、通常は、データベースエンジン自体による高速な検索のために自動的に記憶されてインデックスされる1つ以上の固有の識別子が、データ要素に割り当てられることを必要とする。数ある特性の中でも特に、SQLデータベースエンジンは、固有のまたは固有ではないインデックス値によって選択されるデータを検索するために、そして、それらのインデックス値に基づいて、データベーステーブルをそれ自体と、または他のテーブルと、マージまたは「結合」するために最適化されている。
場合により複数の結合または自己結合を含む、1つの非常に高度に複雑なSQL文として書かれてもよいデータベースクエリは、効率が劣るデータベースシステムにおける、データベース操作の同等のグループよりも、しばしば桁違いに高速である。
本発明は、限定のためではなく、例として、添付の図面の図において示され、図中の同様の参照番号は、同様の要素を意味している。
以下の説明において、本発明の完全な理解を提供するために、多数の具体的な詳細が、説明の目的のために記載される。しかし、本発明は、それらの具体的な詳細なしに実施されてもよいということは、当業者にとって明らかであろう。他の場合には、本発明を不必要に曖昧にするのを避けるために、よく知られている構造および装置はブロック図の形態で示される。
データベースと電子ドキュメントとの間で階層データを転送および表示するための方法が説明される。一実施形態では、リレーショナルデータベースとインターネットウェブページとの間で階層データを転送および表示するための、新しいソフトウェア技術が、そのようなプロセスの速度、効率、および単純さを増加することを目的として提供される。一実施形態では、選択されたデータはデータツリーの形態で表示され、その特定の表示ビューは、ユニフォームリソースロケータ(URL)などのネットワーク位置識別子の部分によって決定され、文字列のその同じ部分は、さらに、データベースからデータを選択するためのクエリコマンドの部分に変換される。
一実施形態では、データ処理装置が、1つ以上のプロセッサに結合されたデータ記憶装置と、リレーショナルデータベース構造内に含まれた、かつ階層データツリー内に編成された、複数のデータ要素と、命令とを含み、命令は、クライアントコンピュータからネットワーク位置識別子を受信するステップであって、ネットワーク位置識別子はデータツリーの第1のビューを指定する部分を少なくとも含む、ステップと、ネットワーク位置識別子の部分を使用してリレーショナルデータベースクエリを作成し、リレーショナルデータベースにクエリをサブミットするステップと、第1のビューに関連付けられたデータ要素の組をリレーショナルデータベースから受信するステップと、データ要素の組を含む第1の電子ドキュメントを生成するステップであって、データツリー内のノードに対して操作を実行することに対応する、他のネットワーク位置識別子へのトランスフォーマティブリンク(transformative link)を生成するステップを含む、ステップと、第1の電子ドキュメントをクライアントコンピュータに提供するステップとを実行する。
一実施形態では、ネットワーク位置識別子を受信するステップは、データツリーのオープンノードの1つ以上の識別子のリストを含む、ネットワーク位置識別子を受信するステップを含む。一実施形態では、リレーショナルデータベースクエリを作成するステップは、オープンノードの識別子のうちの少なくとも1つがSELECT文のパラメータである、構造化照会言語(SQL)クエリを作成するステップを含む。一実施形態では、SQLクエリを作成するステップは、階層的親がすべてオープンノードのリスト内にあるデータ要素のみの結果セットを選択することを指定する、SQLクエリを作成するステップを含む。
一実施形態では、第1の電子ドキュメントを生成するステップは、データ要素の組を含む第1の電子ドキュメントを生成するステップであって、データツリー内のノードを開くことまたは閉じることに対応する、他のネットワーク位置識別子へのトランスフォーマティブリンクを生成するステップを含む、ステップを含み、ノードを開くことに対応する第1のトランスフォーマティブリンクは、受信したネットワーク位置識別子の、識別子のリストに、現在クローズドのノードの識別子が追加されたものを含み、ノードを閉じることに対応する第2のトランスフォーマティブリンクは、受信したネットワーク位置識別子の、識別子のリストから、現在オープンのノードの識別子が削除されたものを含む。
その他の態様および特徴は、以下の説明、図面、および添付の特許請求の範囲から明らかとなるであろう。
本発明の例示的な実施形態の下で、データツリーの表示される形態は、オープンツリーノードのリストによって決定され、オープンツリーノードのこのリストは、URL文字列であってもよいネットワーク位置識別子の、特定のセグメント内に含まれる。
ネットワーク位置識別子のこのセグメントは、抽出され、次に、データベースクエリの中に埋め込まれ、それにより、階層的親がすべてオープンノードのリスト内にあるデータ要素に限定された結果セットが生成される。選択されたら、それらのデータ要素は、次に、ウェブアプリケーション言語によって処理されて、所望のフォーマットの、そして所望の情報を、任意選択のリンクまたはボタン操作とともに示す、ダイナミックウェブページ上に表示される。
一実施形態では、リレーショナルデータベースはMySQLであり、ウェブアプリケーション言語はColdFusionであり、ウェブページサーバはApcheであり、データベースクエリはSQL SELECT文として提示され、データ要素自体は、データ記憶システムの部分の、特定のファイルおよびディレクトリに関する情報を含む。
提示される階層データは、すでにリレーショナルデータベースフォーマットになっていない場合、最初に、そのようなフォーマット内に読み込まれる。
一実施形態では、示されるデータツリーの特定のビューは、そのオープンノードのリストによって完全に決定される。したがって、ネットワーク位置識別子セレクタのオープンノード部分は、データツリーのビューを完全に決定する。ノードは、リレーショナルデータベース内でのそれらの固有の識別子によって表されてもよい。
表示されるデータツリーの正確な実装は、ユーザによって決定されるが、1つの例は、HTMLで単に表示される、テキストツリーである。
表示されるテキストデータツリー内の各ノードは、ネットワーク位置識別子で制御される動作が、オープンノードを閉じること、またはクローズドノードを開くことである、リンクをさらに含んでもよい。特定のシステムは、特定のツリーノードが常にオープンであること、または常にクローズドであることを要求するように設計されてもよい。
リレーショナルデータベースクエリがURLの関連部分を使用する正確な形態は、重要ではなく、特定のデータベース言語、ウェブアプリケーション言語、およびシステム設計により異なってもよい。
図1は、本発明の例示的な実施形態の動作シーケンスを表すフローチャートを示す。最初に、クライアントマシン上のユーザは、ネットワーク位置識別子を、ウェブサイトについての特定のURLの形態で指定し[#10]、そのURLはサーバマシン上のウェブサイトシステムによって受信される[#11]。次に、ウェブサイトシステムは、URLを構文解析し、データツリーの表示ビューを決定する部分を抽出する[#12]。このURLセグメントは、次に、データツリーSQLデータベースクエリ内に挿入され[#13]、それにより、SQLデータベースエンジンから、表示される項目の結果セットが返される[#14]。ウェブサイトシステムは、次に、それらの返された要素をデータツリーの形態で表示し、データツリーの異なるビューを表す新しいURLへの適切なリンクを挿入し、そして結果のHTMLページを、ユーザのマシン上での表示のために送信する[#15]。ユーザは、次に、データツリーの異なる表示ビューを表す、HTMLページ上の任意のデータノードのオープンまたはクローズを、ページ上のさまざまなURLリンクを選択することによって選択してもよい[#16]。
図2および図3では、REPORTという名前の特定のファイルディレクトリと、そのさまざまなサブディレクトリおよびファイルとが、2つの異なるURLセグメントによって決定される2つの異なる表示ビュー内に示された、単純なHTMLテキストデータツリーとして表示されている。
図2では、表示ビューは、ディレクトリREPORT[#10]がオープンであり、サブディレクトリCG[#11]、およびサブ−サブディレクトリCGS[#12]も同様にオープンであるものである。このビューは、URL[#13]のOpenNodes部分によって決定され、URLは、それらの3つのオープンディレクトリの固有のIDコードのリストであるセグメント「OpenNodes=96278,96281,96690」を含む。
ディレクトリを表す、テキストツリーの各行は、初期テキスト記号リンク[X]を、ディレクトリがクローズドの場合に含み、ディレクトリがオープンの場合は[−−]を含む。これらのリンクを選択すると、所与のディレクトリは、オープンとクローズドとの間で自動的に切り換わり、クローズドのディレクトリは開かれ、オープンのディレクトリは閉じられる。
オープニングリンクは、現在のURLを含むが、ただしOpenNodeセグメントには、現在クローズドのディレクトリのIDが追加されている。クロージングリンクは、現在のURLを含むが、ただしOpenNodeセグメントからは、現在オープンのディレクトリのIDが削除されている。例えば、図2のディレクトリ2002の隣のオープニングリンク記号[X]は、URLセグメント「OpenNodes=96278,96281,96690,96694」を含み、リスト内の最後のIDはディレクトリ2002に対応するものである。したがって、このリンクをクリックすると、同じウェブページが再読み込みされるが、ただし、ディレクトリ2002がクローズドではなくオープンとして示されることを示す新しいURLが使用される。この新しいURLは、図3に示す、異なる表示ビューに対応する。
図4は、セレクタURLから、HTMLディレクトリ/ファイルツリー構造を生成することが可能な、SQL SELECT文の例を提供する。SQL Select文は、ColdFusionウェブアプリケーション言語で表現される関数呼び出しの中に埋め込まれる。例示的なColdFusion/SQL文は、図2の画面上に表示されるファイルまたはディレクトリを、すなわち、オープンノードのリストに親のすべてが含まれているファイルまたはディレクトリを返す。
SQL文において、変数IDは、特定のファイルまたはディレクトリの固有の識別子を表し、parentIDは、親ディレクトリの固有の識別子であり、Levelは、ファイルまたはディレクトリのレベルを表し、ここで、最上位のディレクトリは0であり、そのサブディレクトリは1であり、そのサブ−サブディレクトリは2であり、以下同様である。提供されている特定の例示的な文は、4レベルの深さのディレクトリ構造を表示することが可能である。
記載したSQLクエリが、画面上に表示されるべきファイルおよびディレクトリを返した後は、標準的なウェブアプリケーションプログラミングが、HTMLツリーの表示されるフォーマットを生成するために使用されてもよい。
通常の状況下では、本明細書に記載された1つのSQL SELECT文のみが、任意の指定されたサイズの階層データツリーの、任意の表示ビューのための値を生成するために必要とされる。結果として、データベースサーバには最小の負担がかけられ、応答は非常に高速である。
その上、これらの方法は、選択URL(selection URL)とデータベース選択クエリ(database selection query)との間の自然なマッピングを提供することにより、ダイナミックウェブページの設計に必要とされるプログラミングの複雑さを最小にする。さらに、所与のデータツリーの比較的少ないノードが、所与の時間において、通常は開かれているため、この方法は、選択URLのサイズおよび複雑さを最小にする。
図5は、例示的な実施形態の主要な構成要素を表すブロック図を提供する。クライアントマシン[#10]は、ウェブサーバ、アプリケーションサーバ、およびデータベースのホストとして働く1つ以上のコンピュータに、1つ以上のネットワークを介して、直接的または間接的に結合される。一実施形態では、ウェブサーバはApacheウェブサーバであり[#11]、アプリケーションサーバはColdFusionウェブアプリケーションサーバであり[#12]、データベースサーバはMySQLリレーショナルデータベースサーバであり[#13]、MySQLリレーショナルデータベースサーバは、1つ以上のMySQLリレーショナルデータベーステーブルのホストとして働く[#14]。
図6は、本発明の実施形態が実装されてもよいコンピュータシステム600を示すブロック図である。コンピュータシステム600は、情報を伝達するための、バス602またはその他の通信機構と、情報を処理するための、バス602と結合されたプロセッサ604とを含む。コンピュータシステム600は、さらに、プロセッサ604によって実行される情報および命令を記憶するための、バス602に結合された、ランダムアクセスメモリ(「RAM」)またはその他のダイナミック記憶装置などの、メインメモリ606を含む。メインメモリ606は、さらに、プロセッサ604によって実行される命令の実行中に一時変数またはその他の中間情報を記憶するために使用されてもよい。コンピュータシステム600は、さらに、プロセッサ604のための静的情報および命令を記憶するための、バス602に結合された、リードオンリーメモリ(「ROM」)608またはその他のスタティック記憶装置を含む。磁気ディスクまたは光ディスクなどの、記憶装置610が、情報および命令を記憶するために提供され、バス602に結合される。
コンピュータシステム600は、コンピュータユーザに情報を表示するための、陰極線管(「CRT」)などの、ディスプレイ612に、バス602を介して結合されてもよい。英数字およびその他のキーを含む、入力装置614が、プロセッサ604に情報およびコマンド選択を伝達するために、バス602に結合される。別のタイプのユーザ入力装置は、方向情報とコマンド選択とをプロセッサ604に伝達するため、およびディスプレイ612上のカーソルの動きを制御するための、マウス、トラックボール、スタイラス、またはカーソル方向キーなどの、カーソル制御616である。この入力装置は、平面内での位置を装置が指定することを可能にする、第1の軸(例えば、x)および第2の軸(例えば、y)の2つの軸における、2つの自由度を通常は有する。
本発明は、データベースと電子ドキュメントとの間で階層データを転送および表示するための、コンピュータシステム600の使用に関する。本発明の一実施形態によれば、データベースと電子ドキュメントとの間での階層データの転送および表示は、コンピュータシステム600によって、メインメモリ606内に含まれている1つ以上の命令の1つ以上のシーケンスを実行するプロセッサ604に応えて提供される。そのような命令は、メインメモリ606内に、記憶装置610などの別のコンピュータ読み取り可能な媒体から読み込まれてもよい。メインメモリ606内に含まれている命令のシーケンスの実行は、プロセッサ604に、本明細書に記載された処理ステップを実行させる。代替の実施形態では、本発明を実装するために、ソフトウェア命令の代わりに、またはそれと組み合わせて、ハードワイヤードの回路が使用されてもよい。したがって、本発明の実施形態は、ハードウェア回路とソフトウェアとの、いかなる特定の組み合わせにも限定されない。
「コンピュータ読み取り可能な媒体」という用語は、本明細書で使用する場合、実行のためにプロセッサ604に命令を提供することに関与する、任意の媒体を意味する。そのような媒体は、以下に限定されないが、不揮発性媒体、および揮発性媒体を含む、多くの形態をとってもよい。不揮発性媒体は、例えば、記憶装置610などの、光または磁気ディスクを含む。揮発性媒体は、メインメモリ606などの、ダイナミックメモリを含む。
コンピュータ読み取り可能な媒体の一般的な形態は、例えば、フロッピーディスク、フレキシブルディスク、ハードディスク、磁気テープ、または任意のその他の磁気媒体、CD−ROM、任意のその他の光媒体、穿孔カード、紙テープ、穴のパターンを有する任意のその他の物理媒体、RAM、PROM、EPROM、FLASH−EPROM、任意のその他のメモリチップまたはカートリッジ、後述する搬送波、またはコンピュータが読み取ることが可能な任意のその他の媒体を含む。
さまざまな形態のコンピュータ読み取り可能な媒体が、実行のためにプロセッサ604に1つ以上の命令の1つ以上のシーケンスを搬送することに関与してもよい。例えば、命令は、最初に、リモートコンピュータの磁気ディスク上に保持されてもよい。リモートコンピュータは、そのダイナミックメモリ内に命令をロードし、モデムを使用して、電話線を介して命令を送信してもよい。コンピュータシステム600に対してローカルであるモデムは、電話線上のデータを受信し、赤外線送信器を使用してデータを赤外線信号に変換してもよい。赤外線検出器が、赤外線信号内で搬送されるデータを受信し、適切な回路がデータをバス602上に置いてもよい。バス602はデータをメインメモリ606に搬送し、プロセッサ604はそこから命令を取り出して実行する。メインメモリ606によって受信された命令は、任意選択で、プロセッサ604による実行の前または後で、記憶装置610上に記憶されてもよい。
コンピュータシステム600は、さらに、バス602に結合された通信インタフェース618を含む。通信インタフェース618は、ローカルネットワーク622に接続されたネットワークリンク620に結合する、双方向データ通信を提供する。例えば、通信インタフェース618は、統合サービスディジタルネットワーク(「ISDN」)カード、または、対応するタイプの電話線へのデータ通信接続を提供するためのモデムであってもよい。別の例として、通信インタフェース618は、互換性のあるLANへのデータ通信接続を提供するためのローカルエリアネットワーク(「LAN」)カードであってもよい。無線リンクがさらに実装されてもよい。任意のそのような実装においては、通信インタフェース618は、さまざまなタイプの情報を表すディジタルデータストリームを搬送する電気信号、電磁信号、または光信号を、送信および受信する。
ネットワークリンク620は、通常、他のデータ装置への、1つ以上のネットワークを介したデータ通信を提供する。例えば、ネットワークリンク620は、ローカルネットワーク622を介して、ホストコンピュータ624への、またはインターネットサービスプロバイダ(「ISP」)626によって運用されるデータ機器への接続を提供してもよい。ISP626は、次に、現在一般に「インターネット」628と呼ばれている、ワールドワイドパケットデータ通信ネットワークを介して、データ通信サービスを提供する。ローカルネットワーク622およびインターネット628は、両方とも、ディジタルデータストリームを搬送する電気信号、電磁信号、または光信号を使用する。コンピュータシステム600への、およびコンピュータシステム600からのディジタルデータを搬送する、さまざまなネットワークを通る信号、および、ネットワークリンク620上の、そして通信インタフェース618を通る信号は、情報を運ぶ搬送波の例示的形態である。
コンピュータシステム600は、ネットワーク、ネットワークリンク620、および通信インタフェース618を介して、メッセージを送信してもよく、かつ、プログラムコードなどのデータを受信してもよい。インターネットの例においては、サーバ630は、要求された、アプリケーションプログラムのコードを、インターネット628、ISP626、ローカルネットワーク622、および通信インタフェース618を介して送信してもよい。本発明によれば、1つのそのようなダウンロードされたアプリケーションは、本明細書に記載された、データベースと電子ドキュメントとの間での階層データの転送および表示を提供する。
受信されるコードは、受信時にプロセッサ604によって実行されてもよく、および/または、後で実行するために、記憶装置610またはその他の不揮発性記憶装置内に記憶されてもよい。このようにして、コンピュータシステム600は、アプリケーションコードを搬送波の形態で取得してもよい。
非常にさまざまな代替実施形態のうちの1つにおいては、データツリーを表示するダイナミックウェブページは、HTMLテキストから構成されるのではなく、XMLまたは何らかのその他の、現在または将来のウェブページフォーマットで表現されてもよい。
別の代替形態では、ダイナミックウェブページを生成するために使用されるテンプレートは、ColdFusionに基づくのではなく、PHPなどの、何らかのその他の、現在または将来のウェブアプリケーションプログラミング言語を代わりに使用してもよい。Apacheではなく、何らかのその他の、現在または将来のウェブページサーバが使用されてもよい。それらのダイナミックウェブページの作成を推進する、基礎をなすデータベースシステムは、MySQLではなく、Oracle SQL、Microsoft SQL−Server、または何らかのその他の、現在または将来のSQLまたはその他のリレーショナルデータベースに代わりに依拠してもよい。
表示されるデータツリーのオープンノードを表す代わりに、URLセレクタの関連部分は、何らかのその他の手法を使用して、データツリーの表示ビューをエンコードしてもよい。さらに、複数の独立したデータツリーが、それらのURLセレクタを連結することによって、あるいは、別の方法を使用してそれらを組み合わせることによって、ウェブページ上に同時に表示され、制御されてもよい。
以上の明細書において、本発明は、その特定の実施形態を参照して記載されてきた。しかしながら、それらに対するさまざまな変更および変形が、本発明の広範な趣旨および範囲を逸脱することなく行われてよいということは明白であろう。したがって、明細書および図面は、限定的な意味ではなく、例示的なものであると見なされるべきである。
例示的な実施形態の動作シーケンスを表すフローチャートを示す。 ディレクトリREPORTがオープンである、例示的な表示ビューを示す。 異なる表示ビューを示す。 セレクタURLから、HTMLディレクトリ/ファイルツリー構造を生成することが可能な、SQL SELECT文の例を提供する。 例示的な実施形態の主要な構成要素を表すブロック図を提供する。 実施形態が実装されてもよいコンピュータシステムを示す。

Claims (12)

  1. 1つ以上のプロセッサと、
    前記1つ以上のプロセッサに結合されたデータ記憶装置であって、リレーショナルデータベース構造内に含まれた、かつ階層データツリー内に編成された、複数のデータ要素を記録した、データ記憶装置と、
    ネットワーク位置識別子をクライアントコンピュータから受信するための手段であって、前記ネットワーク位置識別子は、前記データツリーの第1のビューに関連する複数のオープンノードの識別子を指定する部分を少なくとも含むユニフォームリソースロケータ(URL)である、手段と、
    前記データツリーの第1のビューに関連する複数のオープンノードの識別子を含むリレーショナルデータベースクエリを作成し、そして前記クエリをリレーショナルデータベースにサブミットするための手段と、
    前記第1のビューに関連付けられたデータ要素の組を、前記リレーショナルデータベースから受信するための手段と、
    データ要素の前記組を含む第1の電子ドキュメントを生成するための手段であって、前記データツリー内のノードに対して操作を実行することに対応する、他のネットワーク位置識別子へのトランスフォーマティブリンクを生成することを含む、手段と、
    前記第1の電子ドキュメントを前記クライアントコンピュータに提供するための手段とを含むことを特徴とする、装置。
  2. 機械実装された方法であって、
    ネットワーク位置識別子をクライアントコンピュータから受信するステップであって、前記ネットワーク位置識別子は、データ記憶装置内に記憶されたリレーショナルデータベース構造内に含まれている複数のデータ要素を表す、階層データツリーの第1のビューに関連する複数のオープンノードの識別子を指定する部分を少なくとも含むユニフォームリソースロケータ(URL)である、ステップと、
    前記データツリーの第1のビューに関連する複数のオープンノードの識別子を含むリレーショナルデータベースクエリを作成し、そして前記クエリをリレーショナルデータベースにサブミットするステップと、
    前記第1のビューに関連付けられたデータ要素の組を、前記リレーショナルデータベースから受信するステップと、
    データ要素の前記組を含む第1の電子ドキュメントを生成するステップであって、前記データツリー内のノードに対して操作を実行することに対応する、他のネットワーク位置識別子へのトランスフォーマティブリンクを生成するステップを含む、ステップと、
    前記第1の電子ドキュメントを前記クライアントコンピュータに提供するステップとを含むことを特徴とする、方法。
  3. 前記ネットワーク位置識別子を受信するステップは、前記データツリーのオープンノードの1つ以上の識別子のリストを含む前記ネットワーク位置識別子を受信するステップを含むことを特徴とする、請求項2に記載の方法。
  4. 前記リレーショナルデータベースクエリを作成するステップは、オープンノードの前記識別子のうちの少なくとも1つがSELECT文のパラメータである構造化照会言語(SQL)リレーショナルデータベースクエリを作成するステップを含むことを特徴とする、請求項3に記載の方法。
  5. 前記SQLリレーショナルデータベースクエリを作成するステップは、階層的親がすべてオープンノードの前記リスト内にあるデータ要素のみの結果セットを選択することを指定する前記SQLリレーショナルデータベースクエリを作成するステップを含むことを特徴とする、請求項4に記載の方法。
  6. 前記第1の電子ドキュメントを生成するステップは、データ要素の前記組を含む第1の電子ドキュメントを生成するステップであって、前記データツリー内のノードを開くこと、または閉じることに対応する、他のネットワーク位置識別子へのトランスフォーマティブリンクを生成するステップを含み、ノードを開くことに対応する第1のトランスフォーマティブリンクは、前記受信したネットワーク位置識別子の、識別子の前記リストに、現在クローズドのノードの識別子が追加されたものを含み、ノードを閉じることに対応する第2のトランスフォーマティブリンクは、前記受信したネットワーク位置識別子の、識別子の前記リストから、現在オープンのノードの識別子が削除されたものを含む、ステップを含むことを特徴とする、請求項2に記載の方法。
  7. 前記ネットワーク位置識別子は、ユニフォームリソースロケータ(URL)であることを特徴とする、請求項2記載の方法。
  8. 1つ以上の命令シーケンスを保持しているコンピュータ読み取り可能な媒体であって、前記命令は、1つ以上のプロセッサによって実行された場合に、
    ネットワーク位置識別子をクライアントコンピュータから受信するステップであって、前記ネットワーク位置識別子は、データ記憶装置内に記憶されたリレーショナルデータベース構造内に含まれている複数のデータ要素を表す、階層データツリーの第1のビューに関連する複数のオープンノードの識別子を指定する部分を少なくとも含むユニフォームリソースロケータ(URL)である、ステップと、
    前記データツリーの第1のビューに関連する複数のオープンノードの識別子を含むリレーショナルデータベースクエリを作成し、そして前記クエリをリレーショナルデータベースにサブミットするステップと、
    前記第1のビューに関連付けられたデータ要素の組を、前記リレーショナルデータベースから受信するステップと、
    データ要素の前記組を含む第1の電子ドキュメントを生成するステップであって、前記データツリー内のノードに対して操作を実行することに対応する、他のネットワーク位置識別子へのトランスフォーマティブリンクを生成するステップを含む、ステップと、
    前記第1の電子ドキュメントを前記クライアントコンピュータに提供するステップとを、前記1つ以上のプロセッサに実行させることを特徴とする、コンピュータ読み取り可能な媒体。
  9. 前記ネットワーク位置識別子を受信するステップのための前記命令は、前記データツリーのオープンノードの1つ以上の識別子のリストを含む前記ネットワーク位置識別子を受信するステップのための命令を含むことを特徴とする、請求項8に記載のコンピュータ読み取り可能な媒体。
  10. 前記リレーショナルデータベースクエリを作成するステップのための前記命令は、オープンノードの前記識別子のうちの少なくとも1つがSELECT文のパラメータである構造化照会言語(SQL)リレーショナルデータベースクエリを作成するステップのための命令を含むことを特徴とする、請求項9に記載のコンピュータ読み取り可能な媒体。
  11. 前記SQLリレーショナルデータベースクエリを作成するステップのための前記命令は、階層的親がすべてオープンノードの前記リスト内にあるデータ要素のみの結果セットを選択することを指定する前記SQLリレーショナルデータベースクエリを作成するステップのための命令を含むことを特徴とする、請求項10に記載のコンピュータ読み取り可能な媒体。
  12. 前記第1の電子ドキュメントを生成するステップのための前記命令は、データ要素の前記組を含む第1の電子ドキュメントを生成するステップのための命令であって、前記データツリー内のノードを開くこと、または閉じることに対応する、他のネットワーク位置識別子へのトランスフォーマティブリンクを生成するステップのための命令を含み、ノードを開くことに対応する第1のトランスフォーマティブリンクは、前記受信したネットワーク位置識別子の、識別子の前記リストに、現在クローズドのノードの識別子が追加されたものを含み、ノードを閉じることに対応する第2のトランスフォーマティブリンクは、前記受信したネットワーク位置識別子の、識別子の前記リストから、現在オープンのノードの識別子が削除されたものを含む、命令を含むことを特徴とする、請求項8に記載のコンピュータ読み取り可能な媒体。
JP2008550385A 2006-01-10 2007-01-10 データベースと電子ドキュメントとの間での階層データの転送および表示 Expired - Fee Related JP5113764B2 (ja)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US75824906P 2006-01-10 2006-01-10
US60/758,249 2006-01-10
US11/651,739 US8306990B2 (en) 2006-01-10 2007-01-09 Transferring and displaying hierarchical data between databases and electronic documents
US11/651,739 2007-01-09
PCT/US2007/000664 WO2007082005A2 (en) 2006-01-10 2007-01-10 Transferring and displaying hierarchical data between databases and electronic documents

Publications (3)

Publication Number Publication Date
JP2009523289A JP2009523289A (ja) 2009-06-18
JP2009523289A5 JP2009523289A5 (ja) 2010-01-14
JP5113764B2 true JP5113764B2 (ja) 2013-01-09

Family

ID=38233905

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008550385A Expired - Fee Related JP5113764B2 (ja) 2006-01-10 2007-01-10 データベースと電子ドキュメントとの間での階層データの転送および表示

Country Status (7)

Country Link
US (1) US8306990B2 (ja)
EP (1) EP1971912A4 (ja)
JP (1) JP5113764B2 (ja)
CN (1) CN101371220B (ja)
AU (1) AU2007204902B2 (ja)
CA (1) CA2635265C (ja)
WO (1) WO2007082005A2 (ja)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8484174B2 (en) 2008-03-20 2013-07-09 Microsoft Corporation Computing environment representation
US8572033B2 (en) 2008-03-20 2013-10-29 Microsoft Corporation Computing environment configuration
US9298747B2 (en) 2008-03-20 2016-03-29 Microsoft Technology Licensing, Llc Deployable, consistent, and extensible computing environment platform
JP5418539B2 (ja) * 2011-04-28 2014-02-19 キヤノンマーケティングジャパン株式会社 情報処理システム、およびその情報処理方法、そのプログラム、情報処理装置、およびその情報処理方法、そのプログラム、開発者端末、およびその情報処理方法、そのプログラム
JP5413426B2 (ja) * 2011-08-31 2014-02-12 キヤノンマーケティングジャパン株式会社 情報処理システム、およびその情報処理方法、そのプログラム、サーバ、およびその情報処理方法、そのプログラム、開発者端末、およびその情報処理方法、そのプログラム
US10325282B2 (en) * 2013-11-27 2019-06-18 At&T Intellectual Property I, L.P. Dynamic machine-readable codes
US9875276B2 (en) * 2015-06-15 2018-01-23 Sap Se Database view generation
CN109874339A (zh) * 2016-04-04 2019-06-11 优尼玛软件公司 用于创建用于传达与应用程序相关的信息的序列的方法和系统
CN106547877B (zh) * 2016-10-26 2019-08-09 红有软件股份有限公司 基于6w业务逻辑模型的数据元智能标识解析方法
CN111126014A (zh) * 2018-10-15 2020-05-08 安永金融科技股份有限公司 动态产生客制化图文件的方法、系统与计算机可读存储器
CN109840257B (zh) * 2018-12-15 2023-11-21 中国平安人寿保险股份有限公司 数据库查询方法、装置、计算机装置及可读存储介质

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6199098B1 (en) * 1996-02-23 2001-03-06 Silicon Graphics, Inc. Method and apparatus for providing an expandable, hierarchical index in a hypertextual, client-server environment
US6477527B2 (en) * 1997-05-09 2002-11-05 International Business Machines Corporation System, method, and program for object building in queries over object views
US6122627A (en) * 1997-05-09 2000-09-19 International Business Machines Corporation System, method, and program for object building in queries over object views
US6154750A (en) * 1998-04-01 2000-11-28 Cyberpulse Llc Method and system for navigation and data entry in heirarchically-organized database views
US6493717B1 (en) * 1998-06-16 2002-12-10 Datafree, Inc. System and method for managing database information
US6314424B1 (en) * 1998-09-28 2001-11-06 International Business Machines Corporation System and method for dynamically expanding and collapsing a tree view for an HTML web interface
US8578266B2 (en) * 2000-06-26 2013-11-05 Vertical Computer Systems, Inc. Method and system for providing a framework for processing markup language documents
US7076521B2 (en) 2000-06-26 2006-07-11 Vertical Computer Systems, Inc. Web-based collaborative data collection system
JP2002132782A (ja) 2000-10-27 2002-05-10 Toshiba Corp マルチメディアデータ管理システム
JP3842574B2 (ja) 2001-03-30 2006-11-08 株式会社東芝 情報抽出方法および構造化文書管理装置およびプログラム
JP3842573B2 (ja) * 2001-03-30 2006-11-08 株式会社東芝 構造化文書検索方法、構造化文書管理装置及びプログラム
EP1349081A1 (en) * 2002-03-28 2003-10-01 LION Bioscience AG Method and apparatus for querying relational databases
US7167866B2 (en) 2004-01-23 2007-01-23 Microsoft Corporation Selective multi level expansion of data base via pivot point data

Also Published As

Publication number Publication date
CA2635265C (en) 2013-09-24
EP1971912A4 (en) 2012-03-21
JP2009523289A (ja) 2009-06-18
CN101371220A (zh) 2009-02-18
WO2007082005A3 (en) 2008-04-10
US8306990B2 (en) 2012-11-06
US20070162438A1 (en) 2007-07-12
CA2635265A1 (en) 2007-07-19
EP1971912A2 (en) 2008-09-24
AU2007204902B2 (en) 2011-12-08
CN101371220B (zh) 2010-11-10
AU2007204902A1 (en) 2007-07-19
WO2007082005A2 (en) 2007-07-19

Similar Documents

Publication Publication Date Title
JP5113764B2 (ja) データベースと電子ドキュメントとの間での階層データの転送および表示
JP4516566B2 (ja) Xml文書とリレーショナルデータと間のマッピングにおける階層情報の保持
JP4406609B2 (ja) 単一のインターフェイスからのデータの多重階層を管理するための手法
JP3907161B2 (ja) キーワード検索方法、キーワード検索端末、コンピュータプログラム
JP5320438B2 (ja) Xmlデータ記憶、クエリー再書込、ビジュアライゼーション、マッピング、および参照のための方法および装置
JP5710851B2 (ja) 影響分析のためのシステムおよび方法
US20070282869A1 (en) Automatically generating web forms from database schema
EP1667038A2 (en) System and method for customization of search results
JP2005182835A (ja) 異種のデータソースのためのデータサーバを生成する方法
US20090210780A1 (en) Document processing and management approach to creating a new document in a mark up language environment using new fragment and new scheme
US20030088639A1 (en) Method and an apparatus for transforming content from one markup to another markup language non-intrusively using a server load balancer and a reverse proxy transcoding engine
WO2001095123A1 (en) System and method for accessing, organizing, and presenting data
US8601001B2 (en) Selectively structuring a table of contents for accessing a database
WO2007105759A1 (ja) 数式記述構造化言語オブジェクト検索システムおよび検索方法
EP2240875A1 (en) Method and system for navigation of a data structure
JP3999093B2 (ja) 構造化文書検索方法及び構造化文書検索システム
AU2007229359B2 (en) Method and apparatus for flexible storage and uniform manipulation of XML data in a relational database system

Legal Events

Date Code Title Description
A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20091119

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20091119

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120410

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20120710

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20120718

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120809

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20120918

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20121012

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20151019

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees