JP5435568B2 - データアクセス及びプレゼンテーション要素を再利用する方法及び装置 - Google Patents

データアクセス及びプレゼンテーション要素を再利用する方法及び装置 Download PDF

Info

Publication number
JP5435568B2
JP5435568B2 JP2009518693A JP2009518693A JP5435568B2 JP 5435568 B2 JP5435568 B2 JP 5435568B2 JP 2009518693 A JP2009518693 A JP 2009518693A JP 2009518693 A JP2009518693 A JP 2009518693A JP 5435568 B2 JP5435568 B2 JP 5435568B2
Authority
JP
Japan
Prior art keywords
fragment
document
metadata
database
data
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
JP2009518693A
Other languages
English (en)
Other versions
JP2009543235A5 (ja
JP2009543235A (ja
Inventor
サンボーン ロジャー
オルトマン グラント
Original Assignee
マイクロソフト アマルガメイテッド カンパニー ザ サード
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 マイクロソフト アマルガメイテッド カンパニー ザ サード filed Critical マイクロソフト アマルガメイテッド カンパニー ザ サード
Publication of JP2009543235A publication Critical patent/JP2009543235A/ja
Publication of JP2009543235A5 publication Critical patent/JP2009543235A5/ja
Application granted granted Critical
Publication of JP5435568B2 publication Critical patent/JP5435568B2/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/907Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/103Formatting, i.e. changing of presentation of documents
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/166Editing, e.g. inserting or deleting
    • G06F40/186Templates

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Databases & Information Systems (AREA)
  • Library & Information Science (AREA)
  • Data Mining & Analysis (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Document Processing Apparatus (AREA)

Description

この発明は情報技術システムに関連し、データを取り出して提示するものであって、より詳細には、1個又は複数のデータベースから選択されたデータを、レポート、テーブル、グラフ、チャート、又は他のプレゼンテーションフォーマットの形式で、提示するものである。
データの効率的な管理は、ほとんどのビジネスにおいて、重要な職務となっている。多くの会社が、会社と関係する情報を有する1個又は複数のデータベースを保持する。入手可能なコンピュータソフトウェアツールは、データベースからのデータが、取り出されて様々な方法で提示されることを許可する。
米国公開特許第20060041589号明細書(Helfman他)「System and Method for Clipping,Repurposing,and Augmenting Document Content」 米国公開特許第20050171965号明細書(Fujimoto他)「Contents Reuse Management Apparatus and Contents Reuse Support Apparatus」 米国公開特許第20050108619号明細書(Theall他)「System and Method for Content Management」 米国公開特許第20050131903号明細書(Margolus他)「Data Repository and Method for Promoting Network Storage of Data」 米国公開特許第20030046282号明細書(Carison他)「Managing Reusable Software Assets」 米国公開特許第20030204487号明細書(Sssv他)「A System of Reusable Components for Implementing Data Warehousing and Business Intelligence Solutions」
これらのツールは、
(a)それらは、専門的ではないコンピュータユーザーが、データベースに精通しているIT人間からの手助けなしに完了することができないよう、レポートドキュメントの設計プロセスを難解にする。
(b)それらは、全体のドキュメントを共有すること、又は再利用することを容易にするだけである。
等の多くの共通した欠点に悩まされる。例えば、それらはユーザーに要求して、ドキュメントの同じサブパートを繰り返し再作成することができる。
関係ある技術の前述の例、それに加え関係する制限は、実例的及び非排他的であることを意図される。明細書を読むこと及び図面の学習の上、関係ある技術の他の制限が、これらの技術に対して、技術的に、明らかになるだろう。
以下で実施形態及び実施態様について、システム、ツール及び方法と併せて、解説及び説明されており、これらは典型的及び実例的であることを意図されており、範囲を限定しない。他の実施形態は他の改良を目的とするが、様々な実施形態で、1個又は複数の上述の問題が減らされ、又は取り除かれた。
図面の参照された図で実施形態例が示される。ここで開示される実施形態及び図は、限定的というよりむしろ実例的と考えられることが意図される。
本発明のある実例的な実施形態による装置のブロック図である。 フラグメント内に存在してよい、又はフラグメントにより参照されてよい情報を示す概念図である。 本発明の一実施例による方法例を説明するフローチャートである。
本発明の一実施態様は、情報を再利用する方法を提供し、前記方法は、第一のデータベースからドキュメントを取り出すステップと、ドキュメント内部でフラグメントを識別するステップと、フラグメントと関連付けられたメタデータを生成するステップと、フラグメント及びメタデータと関連付けられた記録を第二のデータベースに格納するステップを含み、第二のデータベースは、第二のドキュメントへの前記フラグメントの挿入のために、フラグメントを検索可能である。
メタデータは、ユーザー指定のメタデータ、又はセマンティックメタデータを含むことができ、フラグメント型の情報、ユーザー指定の記述的情報、前記ドキュメントからパースされた値、又はAPIを用いて前記ドキュメントから得た値を含むことができる。記録は、フラグメントの要素及び前記フラグメントと関連付けられたメタデータを含むことができる。フラグメントの要素は、データソース識別子、データ指定及びプレゼンテーションフォーマットを含むことができる。フラグメントのメタデータは、トップレベル依存性と関連付けられるか又はフラグメントのサブ要素内の依存性と関連付けられる、フラグメント依存性データを含むことができる。
本発明のもう一つの実施態様は、情報を提供する方法を提供し、前記方法は、ドキュメントを提供するステップと、複数のフラグメントの中から1個のフラグメントを求めてデータベースを検索するステップと、データベースがフラグメントのそれぞれと関連付けられたメタデータを用いてフラグメントに索引づけするステップと、前記ドキュメントにフラグメントを挿入するステップ、及び第二のデータベースにドキュメントを保存するステップを含む。メタデータはユーザー指定のメタデータ、又はセマンティックメタデータを含むことができ、フラグメント型の情報、ユーザー指定の記述的情報、前記ドキュメントからパースされた値、又はAPIを用いて前記ドキュメントから得た値を含むことができる。記録は、フラグメントの要素及び前記フラグメントと関連付けられたメタデータを含むことができる。フラグメントの要素は、データソース識別子、データ指定及びプレゼンテーションフォーマットを含むことができる。フラグメントのメタデータは、トップレベル依存性と関連付けられるか又はフラグメントのサブ要素内の依存性と関連付けられる、フラグメント依存性データを含んでよい。
本発明のもう一つの実施態様は、ユーザーによって編集可能なドキュメントを提供し、前記ドキュメントは、ドキュメントが編集されるときにフラグメントが識別されメタデータがフラグメントと関連付けられるフラグメント、及びフラグメント記録のデータベースに格納されるフラグメントと関連付けられた記録を含む。メタデータはユーザー指定のメタデータ、又はセマンティックメタデータを含むことができ、フラグメント型の情報、ユーザー指定の記述的情報、前記ドキュメントからパースされた値、又はAPIを用いて前記ドキュメントから得た値を含むことができる。記録は、フラグメントの要素及び前記フラグメントと関連付けられたメタデータを含むことができる。フラグメントの要素は、データソース識別子、データ指定及びプレゼンテーションフォーマットを含むことができる。フラグメントのメタデータは、トップレベル依存性と関連付けられるか又はフラグメントのサブ要素内の依存性と関連付けられる、フラグメント依存性データを含むことができる。
本発明のもう一つの実施態様は、ドキュメントを編集するシステムを提供し、前記システムは、第一のデータベースからドキュメントを取り出す手段と、前記ドキュメント内部でフラグメントを識別する手段と、前記フラグメントと関連付けられた記録を第二のデータベースに格納する手段と、前記フラグメントと関連付けられた前記記録を求めて前記第二のデータベースを検索する手段、及び前記フラグメントを第二のドキュメントに挿入する手段を含む。
本発明のもう一つの実施態様は、ドキュメントを提供するシステムを提供し、前記システムは、ドキュメント内部でフラグメントを識別するフラグメント発見エンジンと、前記フラグメントに対するメタデータを生成するフラグメントメタデータ連想装置と、第二のドキュメントに前記フラグメントを挿入するドキュメントエディターと、フラグメント検索エンジンと、記録のデータベースと(前記記録のそれぞれは、関係するフラグメントと関連付けし、メタデータが前記の関係するフラグメントと関連付けした)、前記データベースから前記フラグメントを位置づけするユーザーインターフェース、及び前記ドキュメントの格納ための第一のデータベースを含む。
本発明のもう一つの実施態様は、情報を再利用する方法を提供し、前記方法は、データベースからドキュメントを取り出すステップと、ドキュメント内部でフラグメントを識別するステップと、フラグメントと関連付けられたメタデータを生成するステップ、及びフラグメントと関連付けられた記録と前記メタデータをデータベースに格納するステップを含み、データベースは第二のドキュメントへのフラグメントの挿入のために、前記フラグメントを検索可能である。
本発明のもう一つの実施態様は、情報を提供する方法を提供し、前記方法は、ドキュメントを提供するステップと、複数のフラグメントの中から一つのフラグメントを求めてデータベースを検索するステップと、データベースがフラグメントのそれぞれと関連付けられたメタデータを用いて前記フラグメントに索引づけするステップと、フラグメントをドキュメントに挿入するステップ、及びデータベースにドキュメントを保存するステップを含む。
本発明のもう一つの実施態様は、ドキュメントを編集するシステムを提供し、前記システムは、データベースからドキュメントを取り出す手段と、ドキュメント内部でフラグメントを識別する手段と、メタデータをフラグメントと関連付ける手段と、フラグメントと関連付けられた記録をデータベースに格納する手段と、フラグメントと関連付けられた記録を求めて第二のデータベースを検索する手段、及びフラグメントを第二のドキュメントに挿入する手段を含む。
上述の実施態様例及び実施形態例に加えて、図面への参照及び以下の詳細な説明の学習により、さらなる実施態様及び実施形態が明らかになるだろう。
以下の説明の至る所で、具体的な詳細が、以後設置されて、より完全な理解を当業者に提供する。しかしながら、開示を不必要にあいまいにするのを避けるために、よく知られている要素が示されず、又は詳しく説明されていない可能性がある。従って、説明及び図面は、実例的及び非限定的なものとしてみなされるべきである。
本発明は、1個又は複数のデータソースからデータを提示するドキュメントを作成、編集する方法及び装置(例えば、コンピュータシステム)に関する。例えば、ドキュメントは、視覚的に意味のあるフォーマットで、データを表示することができる。
ドキュメントは、1個又は複数のデータソースからデータを受けとるコンポーネントを含んで、データを提示することができる。そのようなドキュメントは普通、レポート又はレポートドキュメントと呼ばれる。本発明によるシステム及び方法は、任意のレポートドキュメントのフォーマットと共に使用することができる。データソースは1個又は複数のデータベースを含むことができる。コンポーネントはデータベースから関連データを選択するクエリを指定するクエリ定義を含むことができる。コンポーネントはデータを提示する方法を指定することができる。例えば、コンポーネントは、データが以下として提示されることを指定することができる。
(a)グラフ
(b)チャート
(c)テーブル
(d)スプレッドシート
(e)何か他の視覚的に見ることができるデータの描写
(f)又は同様のもの
これらのコンポーネントのそれぞれを「フラグメント」と呼ぶことができる。
本発明によるシステムが、フラグメント又はフラグメントの一部の再利用を容易にする。そのようなシステムのユーザーは、ドキュメントを設計及び編集して、データベースに格納された事業に関するデータの意味のある使用をできるようにする。
本発明のある実施形態の例による方法は、現存するドキュメントで再利用できるフラグメントを識別すること、再利用のために利用できる識別されたフラグメントを発見すること、及びさらなるドキュメントの作成において選択されたフラグメントを再利用することを含む。
本発明のある実施形態例による装置は、現存するドキュメントで再利用できるフラグメントを識別する手段、再利用のために利用できる識別されたフラグメントを発見する手段、及びさらなるドキュメントの作成において選択されたフラグメントを再利用する手段を含む。これらの手段のいくつか又は全てが、コンピュータソフトウェアアプリケーションに組み込まれて、1個又は複数のデータソースから読まれたデータを提示するドキュメントを作成及び/又は修正(又は編集)するために用いることができる。
図1はシステム10を示すブロック図である。システム10のコンポーネントは、データ処理装置により実行されて、データ処理装置にアクセス可能なデータに作用するソフトウェアプロセスでもよいし、又はコンピュータボード、又はチップ、又は同様のものに組み込まれたファームウェアでもよい。システム10はフラグメント発見エンジン12を含む。フラグメント発見エンジン12は、潜在的に再利用できるフラグメント20(20Aから20Eとして、視覚的に識別される)を、ドキュメントストア16内のドキュメント14(14Aから14Dとして、視覚的に識別される)の範囲内で、識別する。ドキュメントストア16は分散することができ、ドキュメント14は1個又は複数のデータベースに格納される複数の場所から構成することができる。
フラグメントメタデータ連想装置22は、フラグメント発見エンジン12によって位置づけされたフラグメントとメタデータを関連付ける。メタデータは、任意の適したソース又はソースの組み合わせから生じることができる。可能性のあるメタデータのソースは、以下を含む。
(a)例えばフラグメント型の情報のような、フラグメントから取り出すことができる情報。
(b)ユーザー指定の記述的情報(“逸話的メタデータ”と呼ぶことができる)。ユーザー指定の情報は、フラグメントが作成される時点か又はその後で、ユーザーから受けとることができる。
(c)ドキュメントから値をパースすることにより取り出された情報、及び/又は
(d)ドキュメントから値を読むのに供給されたAPIを用いることにより得た情報。
各フラグメントを識別する記録26がフラグメントストア25に格納される。 フラグメントストア25は、フラグメント発見エンジン12によって識別された各フラグメントに対応する記録26(26Aから26Dとして、視覚的に識別される)を含む。 フラグメントストアは、ドキュメントストア16と同じデータベースにフラグメントを格納することができ、又は分かれたデータベースでもよい。
各記録26は、フラグメントのコピーを保持すること、フラグメントへのポインタ27を保持すること(図示されるように)又は何とかして他の記録26と対応するフラグメント20間の関連性を保持することにより、対応するフラグメント20を識別する。各記録26もまた、対応するフラグメント20に関するメタデータを含むか又は参照する。メタデータはフラグメントの働きを理解する際に役立ち得る任意の情報を含むことができる。メタデータのいくつかの例が以下で説明される。メタデータを用いて、フラグメントストア16が記録26を索引付けすることができる。
ドキュメントエディター等のドキュメント作成アプリケーション32は、図示されるように矢印35によって、フラグメント検索エンジン34にアクセスして、新しいドキュメント14Eの作成に使用することができるフラグメント20を位置づけすることができる。フラグメント検索エンジン34は、様々なメタデータ又はメタデータの組み合わせを用いることにより、フラグメントを検索することを許可することができる。
ドキュメント作成アプリケーション32は、新しいドキュメント14Eへの結合のために、図示されるように線36によって、現存するフラグメント20を取り出すことができる。ドキュメント作成アプリケーション32は、ユーザーが選択されたフラグメント20の全て又は一部を再使用することを許可することができ、ユーザーが取り出されたフラグメント20を編集することを許可することができる。
いくつかの実施形態では、ここに説明された機能性はドキュメント作成アプリケーション32にまとめられる。 他の実施形態では、ここで説明された機能性は、ドキュメント作成アプリケーション32により起動されるが不可欠ではないソフトウェアにより可能となる。
通常、ドキュメント作成アプリケーション32は、デザインキャンバスなどの、ユーザーがドキュメントを定義、作成、及び編集することを許可するユーザーインターフェースを提示するだろう。ユーザーインターフェースは、ユーザーが視覚的なレポート要素の挿入を指示する手段を提供する。視覚的なレポート要素は、フラグメント検索エンジン34によって位置づけされたフラグメントにより定義されたレポート要素及び/又は、ユーザーによって定義されたかあるいはテンプレートに基づくか又は最初から作られた他のレポート要素を含むことができる。
ユーザーインターフェースは、ユーザーが、挿入された視覚的なレポート要素(データソースへの接続、実行するためのクエリ、及びそのような視覚的なレポート要素のプロパティ及び振る舞い)を何でも指定することを許可するメカニズムを含むことができる。通常、ユーザーインターフェースは、ユーザーがドキュメントに挿入された視覚的なレポート要素への意味のある修正を行うことを許可する。
図2は、フラグメント20に対応する記録26を示す。記録26は関数型フラグメント要素40及びフラグメントメタデータ42を含む(直接的に又は、外部の情報を参照することによって)。フラグメントは、フラグメント要素40の全てを持つ必要はない。フラグメント要素40は、1個又は複数の、データソース識別子40A、データ指定40B(例えば、任意の適したクエリ言語のクエリから成ることができる)、及びプレゼンテーションフォーマット40Cを含む。プレゼンテーションフォーマット40Cは、データソース識別子40Aにより識別されたデータソースからどのようなデータが取り出されたのか、表示されフォーマットされるためにあるデータ指定40Bを用いることにより、特定する。
フラグメント要素は、例えば、適したレポートドキュメントフォーマット内で定義することができる。適したレポートドキュメントフォーマットの一例は、マイクロソフト社によって公表された仕様に従って作動し、http://www.microsoft.com/sql/technologies/reporting/rdlspec.mspxで説明されるレポート定義言語(RDL)である。代わりに、他のレポートドキュメントフォーマットがフラグメントを定義するために使用されてもよい。
フラグメントメタデータ42はユーザー指定のメタデータ及びセマンティックメタデータのうちの1個又は両方を含むことができる。ユーザー指定のメタデータは、例えば、名前43Aと説明43Bを含むことができる。加えて、あるいは代わりに、ユーザー指定のメタデータは、例えばキーワード等、他のユーザー指定の情報を含むことができる。セマンティックメタデータは情報、例えば、型44A及び、フラグメントが関連付けられたドキュメント、フラグメントが接続するデータソース、又はフラグメントが要求する他のフラグメントのようなフラグメント自体から取り出されたフラグメントについての他の情報44Bのうちのどれか1個以上を含んでよい。
本発明のいくつかの実施形態では、データプレゼンテーション要素及びデータ/クエリ定義要素は再利用のために、分けて利用できる。そのような実施形態では、個々のフラグメント要素40が、必ずしも全てを含む必要はないが、データソース識別子40A、データ指定40B、及びプレゼンテーションフォーマット40Cのうちの1個又は複数を持つことができる。
RDL文書を含むドキュメントと共に機能する、より明確な実施形態がこれから説明されるだろう。RDLでは、データプレゼンテーション要素は、全クエリ結果(データ領域)で作動する視覚要素のセット、及び単一の一定値か個々のデータ値との結合、又は表現の結果との結合を含む視覚要素のセットを含む。一般に、プレゼンテーション要素は自身の中に他のプレゼンテーション要素を含むことができる。
データ領域はチャート、テーブル、リスト、及びマトリクスを含む。他の視覚要素はテキストボックス、レクタングル、及びイメージを含む。これらのテーブル、リスト、マトリクス、及びレクタングルは全て、他の視覚要素を含むことができる。各視覚要素が、自身の中に、同じグルーピングのレベルで他の要素の内部に保持された値で計算を実行する又はデータ要素の値に結合する表現を持つことができる。
RDLデータ/クエリ定義要素はデータソース、データセット、及びパラメータを含む。これらのものの組み合わせは、必須なデータ、接続するデータソース、及び実行するクエリを識別する際の使用のために要求される任意のユーザー入力を定義する。クエリの実行から生じるデータがプレゼンテーション要素によって使用される。
RDLソースドキュメント上で作動する本発明の一実施形態では、以下がフラグメントを再利用できると考えられる全てである。
(a)上記のどれがレポートキャンバスの直接の子か(すなわち、他の識別された視覚要素の内部に含まれるこれらの要素ではない)識別された全てのプレゼンテーション要素、及び
(b)全てのデータ/クエリ定義要素。
一般に、データ接続及びデータクエリ情報は再利用可能と考えることができる。データ接続とデータクエリ情報が分けられているか、又はドキュメント定義内で分けられるならば、それらは個別に再利用可能とすることができる。そうでなければ、データ接続とデータクエリの両方を定義する単一の要素が再利用可能と考えることができる。データの理解できるプレゼンテーションを生成する任意のプレゼンテーション要素は、最利用可能なフラグメントと考えることができる。例えば、グラフ/チャート、地理的なマップ、クロスタブ、及びクエリ結果の全ての範囲で作動する繰り返しのプレゼンテーションセクション(例えば、Crystal Reports .rptのようないくつかのドキュメントフォーマットのレポートセクション等)は全て再利用可能なフラグメントとして取り扱うことができた。
フラグメント発見エンジン12が潜在的に再利用できるフラグメントを求めて、現存の又は新しいドキュメントを検索する。いくつかの実施形態では、フラグメント発見エンジン12は、新しいドキュメント内の潜在的に再利用できるフラグメントを、フラグメントストア25に既に存在するフラグメントと比較する。フラグメントストア25に既に表される他の全てのフラグメントといくつかの重要な点において異なる場合にのみ、潜在的に再利用できるフラグメントがフラグメントストア25に格納されてもよい。これは、フラグメントストア25内での、同じフラグメントの多数のコピーの蓄積を避ける。
フラグメントメタデータ連想装置22は、識別されたフラグメントに対して基本的なメタデータを算出するメカニズムを提供することができる。フラグメントメタデータは以下の情報を含むことができる。
(a)利用できる型のセットからのフラグメント型。
(b)ユーザーにより名づけられるか、又はユーザーにより意味のない名前が与えられる場合フラグメントの視覚的な外観から自動的に得られるようなフラグメントの名前。
(c)ユーザーによって指定されるようなフラグメント解説。
ある好ましい実施形態では、上記メタデータは、RDL仕様により明確にされるようなドキュメント定義から値を読み込むことによって、取り出される。次いで、メタデータが、現在のフラグメントのためにフラグメントストア25で作成された記録26のメタデータポーションに書き込まれる。記録26のメタデータポーションはXMLなどのマークアップ言語のステートメントから成ることができる。ある実施形態例では、ルート<プロパティ>要素が作成され、フラグメントのためにキャプチャーされた各プロパティに対して<プロパティ>サブ要素が作成される。<プロパティ>サブ要素は1個又は複数の<値>サブ要素を含み、<値>サブ要素は、順に、所定のメタデータプロパティに対する値(又は複数の値)を含む。
フラグメントストア25はフラグメント(関連するメタデータを含む)を格納する。フラグメント及び関連したメタデータは、1個又は複数のデータ構造に格納される。ある実施形態では、フラグメントストア25はデータベースから成る。データベースはリレーショナルデータベースでもよい。データベースは例えばSQLデータベースから成ることができる。各フラグメント及び関連したメタデータが、データベースに記録として格納される。データベースはクエリされて、値が格納された任意のメタデータに基づくフラグメントを位置づけできる。また、データベースはドキュメントストア16として使用することもできる。
ある実施形態例では、各フラグメントはマイクロソフト社のSQLサーバエクスプレス内部でホストされたリレーショナルデータベース内のテーブルに記録として格納される。テーブルはテーブル1に記入されたフィールドを含む。
Figure 0005435568
代替の実施形態は、他の適したリレーショナルデータベースシステム、テーブルスキーマ又はフラグメントを格納する同様のもの、を使用することができる。例えば、XMLデータ構造又は他のデータファイル等の他の手段を、フラグメントを格納するために使用することができた。メタデータ及びフラグメントは、分かれたデータソース(キー情報によって互いに関連付けられている)又は上述のように同じデータソース内部に格納することができた。
フラグメント検索エンジン34の任意の特定の実装におけるクエリ技術はフラグメントストア25に対して適当であるべきである。いくつかの実施形態では、フラグメント検索エンジン34は、フラグメント型に関するフィルタリング・クライテリアを含むことができ、他の全てのフラグメントメタデータ上で全文検索を指定するクエリを処理することができる。フラグメントストア25がSQLデータベースに、XMLフィールド及び非XMLフィールドの組み合わせを含む場合には(例えば、テーブル1によって示されるように)、フラグメント検索エンジン34は、SQL及びXpath/Xqueryの組み合わせを使用して、クエリに合うフラグメントを位置づけすることができる。SQLクエリは、テーブルで直接公開される非XMLフィールドをクエリするために使用することができる。Xpath/Xqueryは、XMLベースのメタデータコラム内部でメタデータクエリを実行するために使用することができる。フラグメント検索エンジン34は、検索により位置づけされたフラグメントが、作成され又は編集されているドキュメントに挿入されるのを可能にするフォーマットで、そのクエリの結果を返す。
好ましい実施形態では、フラグメント検索エンジン34は、呼び出すアプリケーション又はコンポーネントが全文検索ストリング、検索時にインクルードするメタデータフィールドのセット及びフラグメントのどの型が返されるのか制限する型の情報を指定することを許すクエリモデルを公開するAPIを手段として、アクセスすることができる。ドキュメント作成アプリケーション32がこのクエリをトリガするとき、適合するフラグメントのリストが、インクルードされた完全なフラグメント定義と共に、フラグメント検索エンジン34により、アプリケーション32に返される。いくつかの実施形態では、公開されたAPIによって提示されるクエリモデルは、潜在的な興味があるフラグメントを正確に識別する別のクエリの定義を許可する。例えば、APIクエリモデルは、メタデータに対するクエリ、及びフラグメントに関する他の情報に対する別のクエリの定義を許可することができる。
いくつかの実施形態では、フラグメント検索エンジン34は、各入力クエリに対して2個又は複数の別々のクエリを生成して、実行することができる。これは、フラグメントとフラグメントの対応するメタデータが別々のストアにある場合に特に望ましい可能性がある。
フラグメントストア25から発見されたフラグメントを、ユーザーが編集しているレポートドキュメントにまとめることを可能にする多様なメカニズムがある。一般に、そのようなメカニズムは、作成され又は編集されているドキュメントに、選択されたフラグメントを挿入することができる。メカニズムがドキュメントに挿入されるフラグメントによって引き起こされる任意のコンフリクトを解決するいくつかの方法を含むことが、望ましい。
ある好ましい実施形態では、フラグメントストア25のクエリから生じるフラグメントのセットを特定する情報が、リストの形式、アイコンのセット、又は同様のもので、ユーザーに表示される。ユーザーは、ユーザーインターフェースにより提供された任意の適した方法で、リストからフラグメントを選択し、再びユーザーインターフェースにより提供された任意の適切な方法で、選択されたフラグメントをドキュメントに追加する。例えば、いくつかの実施形態では、ユーザーは、マウス又はカーソルを制御する他のポインティングデバイスを用いて、フラグメントの描写にカーソルを合わせ、次いで描写上でクリックし、ドキュメントを描写するユーザーインターフェースの編集中のウィンドウ部分の上にそれをドラッグすることができる。
通常、ユーザーにフラグメントを公開したクエリ結果は、フラグメントの関数部を含み(例えば、データソース、データ選択、又はプレゼンテーションのうちの1個又は複数を定義する1個又は複数のRDL文書のセット)、ユーザーによって指定された通りに、ドキュメント内の適当な場所にフラグメントの関数部をペーストすることができる。
フラグメントのドキュメントへの挿入により引き起こされるコンフリクトを解消するメカニズムの一例として、いくつかのドキュメントフォーマットが、ドキュメント内部で定義された各要素が唯一の名前又は他の識別子を持つことを、要求することを考える。ドキュメントが既に、挿入されるか又はフラグメント内部でサブ要素を名づけられるフラグメントの名前と同じ名前であるところの名前を持つ要素を含む場合、次いでコンフリクトが存在しないように、システムが自動的にフラグメント及び/又はコンフリクトするサブ要素をリネームすることができる。これは、現存する名前を増やすナンバリングスキームを用いることにより、行うことができる。例えば、ユーザーが販売チャートという名前のフラグメントをドキュメントに挿入するよう望み、ドキュメントが既に販売チャートという名前の要素を含む場合、次いでシステムは自動的に挿入されるフラグメントを販売チャート1又は同様のものにリネームすることができる。コンフリクト解消を容易にするために、システムは編集されているドキュメント内の要素のリストを保持することができる。適当な時、例えば、ユーザーがフラグメントをドキュメントに追加する願望を指示する時に、システムは、フラグメントの名前又は他の識別子を、リスト内の要素の識別子と比較することができる。
いくつかの実施形態では、フラグメントがフラグメントストア25に格納される際のフォーマットは、フラグメントがドキュメントに挿入されるであろう際のフォーマットと異なってよい。ドキュメントフォーマットによっては、リポジトリ内部に格納されるフォーマットからターゲットドキュメントのフォーマット又はAPIフォーマットへの変換がなされなければならないかもしれない。この変換を実行するために随意的なフォーマット変換装置38が提供されてもよい。
代替の実施形態は、ドキュメント作成アプリケーション32により提供されたAPIを介してフラグメントをドキュメントに挿入することができる。
本発明によるシステムは様々な随意の特徴及び増強を含んでよい。例えば、フラグメントと関連付けられるメタデータの性質及び量を変えることができる。随意的にフラグメントと関連付けることができるメタデータの1個の型は、フラグメント依存性メタデータである。いくつかのレポート記述言語は、他のフラグメントに依存するフラグメントの定義を許可する。本発明によるシステムは、識別されたフラグメントの依存性に関するメタデータを、フラグメントに関するメタデータを集めること及び格納することの一部として、キャプチャーし、及び格納することができる。
ある実施形態では、各フラグメントは2個の依存性の型を持つことができる。
(a)ダイレクトトップレベル依存性及び
(b)フラグメントのサブ要素における依存性
依存性は、フラグメント全体への依存性か、あるいはフラグメントのいくつかのサブ要素への依存性を指定することができる。例えば、RDLテーブルを考える(ついでに言えば、又は任意の他のデータ領域)。最も高いレベルで、テーブルはデータセットへの依存性(データソースに対して実行するクエリを指定する)を持つ。このデータセットは、テーブルが作動する上でデータコンテキストを指定する。テーブルの中に、多くのテキストボックスがある。これらのテキストボックスのいくつかは、データセット内部で定義されるフィールドを参照するだろう。テーブルフラグメントのサブ要素であるテキストボックスは、データセットフラグメントのサブ要素である個別フィールドに依存する。これらのフラグメントのサブ要素は、フラグメント自身である。
現在の好ましい実施形態では、フラグメントのベースプロパティを解析することによりフラグメント依存性がキャプチャーされる。依存性は、フラグメントストア25内でフラグメントテーブルのメタデータのカラムの内部に格納される。フラグメントの各トップレベル依存性に対して、依存エントリが作成されて、依存するフラグメントの型及びIDを特定する。例えば、サブ要素<依存性>が、与えられたフラグメントに対するメタデータフィールド内部で作成され、フラグメントは多くの<依存性>サブ要素を含み、各<依存性>サブ要素は型とID属性の両方を含む。
随意的に、コンシュームするフラグメント(例えば、データのプレゼンテーションを指定するフラグメント)又は作成するフラグメント(例えば、データソース及び/又はデータ指定を指定するフラグメント)のどちらかあるいは両方のために、メタデータ内のサブ要素へのパス情報と共に、各サブ依存性を別々にキャプチャーして、格納することができる。これは最適化であって、必須ではないが、実際はより後の時点でサブ依存性を計算することが可能となる(例えば、フラグメントがドキュメントにまとめられるとき)。
随意的にフラグメントと関連付けることができるもう一種のメタデータはセマンティックメタデータである。フラグメントメタデータ連想装置22は、識別されたフラグメントの意味に関する特長に関するメタデータをキャプチャーして、格納することができる。セマンティックメタデータはフラグメントについてのクラシフィケーション情報及び/又はインターフェース情報を含むことができる。
クラシフィケーション情報は、サブ要素情報(例えば、チャートフラグメントに対するパイ、バー等のチャートの型)及び他の情報(例えば、グルーピングのために用いられるデータ型、要素の重要な属性において用いられるキーワード、チャートに対するX軸及びY軸の性質等)を含むことができる。
インターフェース情報は、公開され、コンシュームされたインターフェースを含むことができる。公開されたインターフェースは、フラグメント又はサブ要素内部に包含される全ての値を含む(例えば、データセットフラグメントに対し、データセットによって公開された各フィールドが、公開されたインターフェースの一部を形成するだろう)。各々の場合において、キャプチャーされた情報が、フラグメントの任意の個々のサブ依存性のデータ型及び名前を含むことができる。
現在好ましい実施形態では、クラシフィケーションメタデータが、上述された同じフォーマットでメタデータに追加される。クラシフィケーション情報を記述するために加えられた個々のメタデータフィールドの名前は、フラグメント型に依存するだろう。インターフェースメタデータもまた、フラグメントストア25内のフラグメントテーブルのメタデータのカラムの内部に格納される。フラグメントの各インターフェースに対して、インターフェースエントリが作成されて、インターフェースによって公開され又はコンシュームされた値の型及び名前を特定する。例えば、与えられたフラグメントに対し、サブ要素<インターフェース>が、メタデータフィールド内部で作成されて、フラグメントは多くの<フィールド>サブ要素を含み、各<フィールド>サブ要素は型と名前属性の両方を含む。
随意的にフラグメントと関連付けることができるもう一種のメタデータはユーザー指定のメタデータである。システム10は、ユーザー指定のメタデータフィールドのセット及びそれらの値をフラグメントと関連付けるメカニズムを含むことができる。これは、ユーザーが、フラグメントに対しセットする値に加えて、フラグメントに対し公開する追加フィールドを指定することを可能にする。
ある現在好ましい実施形態では、ドキュメント作成アプリケーション32を実行しているユーザーは、編集のためにレポートドキュメントの内部に含まれるフラグメントを選択することができ、そのフラグメントに対する関数を編集するメタデータを選択することができる。次いで、システムは、ユーザーが彼ら自身の作成の新しいメタデータフィールドを追加すること、又は値(又は複数の値)を任意の現存するメタデータフィールドに追加することを許可するユーザーインターフェースをユーザーに提示する。次いで、システムは、例えば、上で説明されるのと同じメカニズムを使用することにより、フラグメントテーブルのメタデータフィールドにさらなるメタデータプロパティを追加することができる。随意的に、フラグメント管理コンポーネント39が提供されて、フラグメントストア25内でフラグメントを管理することを容易にすることができる。フラグメント管理コンポーネント39は、ユーザーがフラグメントと関連付けられたメタデータを編集し又は追加することを許可するドキュメント作成アプリケーション32から呼び出すことができるAPIを含むことができる。
他の随意的な特徴が、興味のあるフラグメントを識別するメカニズムに関連する。フラグメント検索エンジン34は機能を提供して、ユーザーが、志向性ブラウジングにより潜在的な興味のあるフラグメントを発見することを許可することができる。この機能は、1個又は複数のメタデータプロパティに基づくマルチレベルブラウザを通してフラグメントを発見するメカニズムから成ることができる。機能は、ユーザーに、利用できるメタデータプロパティのリスト又は他の識別性、及び各プロパティに対するフラグメントストア25内で表される値の識別性を提示することができる。
指向性ブラウジング機能は、ユーザーが、順不同で、利用できるプロパティをいくつでも使用することを許可して、層になった指向性ブラウズにより潜在的な関心のあるフラグメントを位置づけすることができる。例えば、そのような機能は、ユーザーが、適当な方法でユーザーインターフェースと相互作用することにより1個又は複数のプロパティに対して1個又は複数の利用可能な値を選択することを許可することができる。それに応じてシステムは、選択されたプロパティの全てに対して選択された1個又は複数の値に合う結果を返すクエリを実行することができる。
現在好ましい実施形態では、ユーザーが実行しているドキュメント作成アプリケーション32にアクセス可能なインターフェースは、論理的な定義済みのマルチレベルブラウザを提示する。このブラウザは、閲覧するプロパティのセット内に、フラグメントの型、フラグメントの名前、およびフラグメントの記述的なキーワードを含む。上で説明されるように、このブラウザはクエリを実行して、クエリに合うフラグメントのセットを返すことができる。
ある代替の実施形態では、ユーザーが実行しているドキュメント作成アプリケーション32にアクセス可能なインターフェースは、ユーザーが、システム内で現存するいくつものプロパティに従って閲覧経路を指定することを許可する。
フラグメント検索エンジン34は、セマンティックメタデータに完全に又は一部において基づいた検索を許可することができる。これは、クラシフィケーション情報、インターフェース情報又はそれらのいくつかの組み合わせ等のプロパティに基づいたフラグメントに対して、クエリする能力を提供する。クラシフィケーション情報によってフラグメントを検索することは、フラグメントのセマンティックメタデータの一部として作成された特定のメタデータフィールド上でクライテリアを指定するフラグメントを検索することを許可することができる。インターフェース情報によってフラグメントを検索することは、度合いに基づくフラグメントを求めて検索することを許可することができ、度合いはフラグメントのセマンティックメタデータ内で定義されるようなインターフェースと合う。ある公開されたインターフェースを指定するクエリに対し、少なくとも要求された個別的な値を公開する場合、フラグメントは合うと考えられるだろう。
現在好ましいある実施形態では、これらのセマンティックな検索タイプの各々に対するクエリAPIは、基本的なフラグメントの検索及び抽出に関して、上で説明されたAPIと同様の方法で、内部で機能する。各個別の分類及びインターフェースプロパティが、フラグメントテーブルのXMLメタデータフィールド内部に同様のフォーマットで格納されるが、SQL及びXpath/Xqueryの混合を使用して、潜在的な興味のあるフラグメントを識別することができる。
代替の実施形態は、他の適したAPI及び/又はクエリメカニズムを用いることができる。
フラグメントは他のフラグメントに依存してよいが、フラグメント間の依存性を解消するメカニズムを提供することが望ましい。このメカニズムは、ドキュメントにフラグメントをまとめることを容易にするために呼び出すことができる。
ドキュメントにフラグメントをまとめるとき、もしフラグメントが任意の依存性を持つ場合、システムは依存性のそれぞれの発生に対しドキュメントをチェックすることができる。依存性は、ドキュメントに含まれるフラグメントに対するフラグメント依存性メタデータを再調査することによって、識別することができる。依存性の識別性を伴うフラグメントがドキュメント内で発見された場合、次いで、そのフラグメントを使用することができる。別な方法としては、依存性は以下の方法の一つで解消することができる。
(a)フラグメント検索エンジン34及びフラグメント依存性メタデータを使用して元の依存性フラグメントを位置づけし、その依存性フラグメントをドキュメントにまとめることにより。
(b)フラグメントで使用される、依存性フラグメントの任意のインターフェース要素を提供する依存性フラグメントと同じ型のもう一個のフラグメントを位置づけすることにより(フラグメントと関連付けられたセマンティックメタデータに指定されたとおりに)。他のフラグメントは、セマンティックメタデータを検索するため、フラグメント検索エンジン34を用いて位置づけすることができる。このプロセスは1個又は複数の合うフラグメントのリストを作成することができ、そのリストから、ユーザーが1個を選択するよう促すことができる。いったんユーザーが選択をすると、ここで説明されたように、選択されたフラグメントがドキュメントにまとめられる。選択されたフラグメントが元の依存性フラグメントとは異なって名づけられた場合、現在のフラグメント内部の参照は選択されたフラグメントを参照するよう自動的にアップデートすることができる(又は、選択されたフラグメントの名前が自動的に変えられて、現在のフラグメント内の参照を合わせることができる)。
(c)現在のフラグメント内で使用される、依存性フラグメントの任意のインターフェース要素を提供する現在のドキュメント内部で、フラグメントを位置づけすることにより(現在のフラグメントと関連付けられたセマンティックメタデータに指定されたとおりに)。このプロセスはドキュメント内部で合う1個又は複数のフラグメントのリストを作成することができる。ユーザーが現存するフラグメントのうち1個を選択するように促されて、現在のフラグメントに対する依存性フラグメントとして使用することができる。選択されたフラグメントが元の依存性フラグメントとは異なって名づけられた場合、現在のフラグメント内部の参照は選択されたフラグメントを参照するようにアップデートすることができる。
本発明によるシステムは、随意的に、フラグメントバージョニングのメカニズムを含む。そのようなメカニズムは、ユーザーがドキュメントにまとめたフラグメントの新しいバージョンを追跡及び発見することができる。
現存するフラグメントがドキュメントにまとめられるとき、何らかの意味のある変更がそのフラグメントに対してなされる場合、フラグメントの変更されたバージョンが自動的にフラグメントストア25に追加されるだろう。次いで、フラグメントの変更されたバージョンが再利用のために利用できるだろう。システム10は、ユーザーが、ドキュメントを開くこと及びシステム10にドキュメント内に存在する任意のフラグメントのアップデータされたバージョンを検索させることを許可することができる。システムは、ユーザーに、フラグメントストア25内に存在する1個又は複数のアップデートされたバージョンのどれかに対し、任意のフラグメントのアップデートされたバージョンを含むドキュメントをアップデートすることの選択を提示することができる。ユーザーがそのように選択する場合、現存するフラグメントの場所にフラグメントのアップデートされたバージョンをまとめることによりドキュメントはアップデートされるだろう。ユーザーは、フラグメント毎の基準で、アップデートされたフラグメントを認めるか又は拒絶する機会を提供されてもよい。
現在好ましい実施形態では、現存するフラグメントの新しいバージョンが、現存するフラグメントと一緒にフラグメントストア25に格納される。フラグメントデーブルはアップデートされて、テーブル2に示されるようにIDフィールドを増やす。
Figure 0005435568
ある好ましい実施例では、現在のフラグメントと同じオリジナルIDを持つが、より新しいタイムスタンプを持つ任意のフラグメントに対し、リポジトリに反してクエリを実行することにより、現在のドキュメント内にあるフラグメントのより新しいバージョンに関してチェックが実行される。
システム10は、必ずしも単一のユーザー又は単一のドキュメントストア16又は単一のフラグメントストア25に限定されない。いくつかの実施形態では、複数のフラグメントストア25が存在する。例えば、分かれたフラグメントストア25が、複数のユーザーのそれぞれに、提供されてもよい。フラグメントストア25は、複数のユーザーのうちの一人によって主に使用されるコンピュータ上で位置づけすることができる。
システム10は、他のユーザーとフラグメントを共有し、及び他のユーザーによって利用できるようになったフラグメントを利用するメカニズムを持つことができる。そのようなメカニズムは、ここで説明された全ての特徴が、多くのユーザーにわたって分配されることを可能にすることができる。そのようなメカニズムは、フラグメントの発見及び再利用のために、各ユーザーのフラグメントストア25を、システムの他のユーザーに対して公開することができる。メカニズムはフラグメントストア25に対する中心の索引を含むことができ、又は複数のフラグメントストア25の検索を許可することができる(検索されるフラグメントストア25は、ユーザーが選択可能又は自動的に決定されてもよい)。
いくつかの実施形態では、システム10は一人のユーザーのコンピュータ上で作動し、フラグメント検索エンジン34が、ローカルのフラグメントストア25上でも、ピアツーピアの方法で他のユーザーのフラグメントストア25上でも、実行されるクエリを生成する。そのような実施形態では、システム10は、ネットワーク又は他の適したデータ通信リンク経由で、他のシステム10からクエリを受けとり、これらのクエリを1個又は複数のローカルのフラグメントストア25上で実行し、クエリが始まったシステム10に対して何らかのクエリの結果を転送するインターフェースから成ることができる。
いくつかの実施形態では、システム10は複数のユーザーに対してアクセス可能なサーバー上で作動する。
図3は、本発明の実施形態による方法100を示す。方法100はフラグメント回復方法100A及びフラグメント再利用方法100Bを含む。方法100A及び方法100Bは、独立的にも一緒にも、実践することができる。
方法100Aは、ブロック102でドキュメントを受けとることで始まる。ドキュメントは、ドキュメントレポジトリ16に格納されるプロセス中であってもよく、又は前もって格納されていてもよい。ブロック104で、ドキュメント内部で、任意の再利用できるフラグメントが識別される。ブロック104は、データソースを定義すること、データ指定(クエリ)を定義すること、データプレゼンテーションを定義すること、これらのいくつかの組み合わせに相当するRDL又はいくつかの他の言語のステートメント、又は別の方法で潜在的に再利用可能なフラグメントとして識別されたステートメントを求めて、ドキュメントを検索することから成ることができる。
ブロック106で、メタデータがフラグメントのそれぞれに対して特定される。上で述べたように、メタデータは、より広い範囲であってもよいし、又はより狭い範囲であってもよい。ブロック108で、フラグメントストア25内に、各フラグメントに対して記録が作成される。記録は、フラグメントがユーザーにとって興味があるかもしれないかどうかを判定するために検索することができるいくつかのメタデータ、及びフラグメントにアクセスするために使用することができる情報から成る。情報は、フラグメントのコピー、フラグメントを再作成する指示、フラグメントへのポインタ、キー、識別子又はいくつかの他のデータベースからフラグメントを取り出すために使用することができるクエリ、又は同様のものでよい。
フラグメント再利用方法100Bは、ブロック110でドキュメントをスタートすることで始まる。ブロック110は、空のドキュメントを始めること、新しいドキュメントをテンプレートから作成すること、編集又は同様のもののために現存するドキュメントを開くことから成ることができる。ドキュメントは、レポート又はいくつかのデータの描写を含むことが望ましい他のドキュメントから成ることができる。
ブロック112は、潜在的な興味のあるフラグメントを検索する。ブロック112は、ユーザー入力から1個又は複数の検索文字列を受けとること、及び検索文字列に合うメタデータを求めてフラグメントストア25内でメタデータを検索することから成ることができる。ブロック112は、上で述べたように、指向性の検索から成ることができる。
ブロック114で、ブロック112の検索で位置づけされたフラグメントが選択される。ブロック116で、選択されたフラグメントがドキュメントに挿入される。ブロック118で、選択されたフラグメントが随意的に編集される。ブロック120で、ドキュメントはドキュメントストア16に保存される。
本発明のある実装は、プロセッサに本発明の方法を実行させるソフトウェア指示を実行するコンピュータプロセッサから成る。例えば、コンピュータシステム又はネットワーク内の1個又は複数のプロセッサは、プロセッサにアクセス可能なプログラムメモリ内でソフトウェア指示を実行する本発明の実施形態による方法を実行することができる。本発明はまた、プログラム製品という形で提供することもできる。プログラム製品は、データプロセッサによって実行されたときはデータプロセッサに本発明の方法を実行させる指示から成る、コンピュータが読込可能な信号のセットを運ぶ任意の媒体から成ることができる。本発明によるプログラム製品は、幅広い種類の形式のうちの何であってもよい。プログラム製品は例えば、フロッピー(登録商標)ディスク、ハードディスクドライブを含む磁気データストレージ媒体、CD−ROM、DVDを含む光学式データストレージ媒体、ROMs、フラッシュRAMを含む電気的データストレージ媒体等の媒体、又は同様のものから成ることができる。プログラム製品上のコンピュータが読込可能な信号は、随意的に、圧縮され、又は暗号化されてもよい。
コンポーネント(例えば、コンピュータ、検索エンジン、データベース、ドキュメント、アセンブリ、デバイス、サーキット等)は上を参照させられるが、特に指示されない限りは、前記コンポーネントへの参照(「手段」への参照を含む)は、前記コンポーネントと同等のもので、説明されたコンポーネントの機能を実行する任意のコンポーネントを含むこと(すなわち、機能的に同等である)として解するべきであり、含まれるコンポーネントは示された本発明の実施形態例における機能を実行する開示された構造と構造的に同等ではない。
ユーザーのジョンは、データソース、クエリ及びレポートデザインのアスペクトに関して良い技術的な理解を持つ。ジョンは、販売レポートであるドキュメントを作成する。その販売レポートは、データソース接続及びクエリ情報を指定し、多くの視覚的な要素を含む。その視覚的な要素は、商品毎の昨年の販売の分析を示すパイチャート及び販売注文の詳細を有するテーブルを含む。ジョンは要素のそれぞれに、販売という言葉にいくらかの変化と共に、名前をつける。彼はまたレポートの主要な視覚的要素のそれぞれの目的を説明する記述的情報を入力する。彼は次いで、ドキュメントストアにレポートを保存する。
システムは自動的にレポートのフラグメントを識別し、フラグメントを取り出す。システムはフラグメントに、基本的なフラグメントのメタデータ、フラグメント依存性メタデータ及びフラグメントのセマンティックメタデータを含むメタデータを、タグ付けする。システムはフラグメントをフラグメントストアに挿入する。
ユーザーのフランクは販売員であって、コンポーネントコンピュータのユーザーであるが、どのようにしてデータソースと接続されたドキュメントを作成し又はクエリを作成するのか、理解していない。彼は、商品毎の昨年の販売のパイチャートを示し、上位10番の製品に関する値のみを示すレポートを準備する仕事を課せられた。フランクはレポート作成アプリケーションを開いて、新しいレポートドキュメントを作成する。彼はチャートを挿入するための選択を選び、現存するチャートを検索するよう選択する。検索クライテリア内で、彼は「販売」と打ち込む。
この時点で、クエリが上述のように実行される。結果はジョンが以前に作成したチャートを含む。フランクはジョンによって作成されたチャートを選択し、解説によりそれが、彼が探し求めているほとんどそのとおりのものであることがわかる。彼は選択して、それをレポートドキュメントに挿入する。
この時点で、ジョンのチャートを描写するフラグメントは、フランクのレポートにまとめられる。チャートはジョンによって同様に作成されたデータセット及びデータソースへの依存性を持つので、これらは自動的に位置づけされて挿入される。フランクは現在、セールスチャートを含むレポートを持つ。彼は続けてレポート作成ドキュメントを使用して、上位10番の製品の販売だけを見せるようチャートを修正する。彼は現在、彼が必要とする情報を正確に含むレポートを持ち、従って、彼は続いてレポートを準備して結果を閲覧する。
多くの実施態様例及び実施形態例が上で議論されてきたが、これらの技術は、技術的に、一定の変更、置換、付加及びそれに関する下位の組み合わせを認めるだろう。例えば、ある代替の実施形態例では、異なるレポートドキュメントフォーマット上で作動し、識別された再使用可能なフラグメントの正確なセットが異なり、ドキュメントオブジェクトモデルの特定の分類に依存する。
本発明は全ての変更、置換、付加、及びここで説明された特徴の下位の組み合わせを網羅する。

Claims (10)

  1. 情報を再利用する方法であって、前記方法は、
    a)第一のデータベースからドキュメントを、コンピュータが、取り出すステップと、
    b)取り出された前記ドキュメントに含まれ、前記ドキュメント内のフラグメントを定義するレポートドキュメントフォーマットステートメントを考慮して、前記ドキュメント内の前記フラグメントを、前記コンピュータが、識別するステップと、
    c)前記フラグメントと関連付けられたメタデータを、前記コンピュータが、生成するステップと、
    d)前記フラグメントと関連付けられ前記メタデータから成る記録を第二のデータベースに、前記コンピュータが、格納するステップであって、前記記録は、複数のフラグメント要素から成り、前記フラグメント要素は、データベースを識別するデータソース識別子と、前記データベースからデータを取り出すためのクエリを含むデータ指定と、前記データベースから取り出されたデータがどのように表示され、フォーマットされるかを指定するプレゼンテーションフォーマットとを含む、前記格納するステップと、
    e)前記メタデータに対するサーチクエリの比較の結果として、前記第二のデータベース内の前記フラグメントを、前記コンピュータが、識別するステップと、
    f)第二のドキュメント内に前記フラグメントを、前記コンピュータが、挿入するステップと
    を備え、
    前記フラグメントのメタデータはさらに、前記フラグメントが依存する他のフラグメントを指定するフラグメント依存性データを含むことを特徴とする方法。
  2. 請求項1に記載の方法において、前記メタデータは、ユーザー指定のメタデータ又はセマンティックメタデータのうちの少なくとも一つを含むことを特徴とする方法。
  3. 請求項2に記載の方法において、前記メタデータはさらに、フラグメント型の情報、ユーザー指定の記述的情報、前記ドキュメントからパースされた値、又はAPIを用いて前記ドキュメントから得た値のうちの少なくとも一つを含むことを特徴とする方法。
  4. 請求項3に記載の方法において、前記記録は、前記フラグメントの要素、及び前記フラグメントと関連付けられた前記メタデータから成ることを特徴とする方法。
  5. 情報を提供する方法であって、前記方法は、
    a)ドキュメントを、コンピュータが、提供するステップと、
    b)複数のフラグメントの中から一つのフラグメントを求めて第一のデータベースを、前記コンピュータが、検索するステップであって、前記第一のデータベースは前記フラグメントに前記フラグメントのそれぞれと関連付けられたメタデータを用いて索引づけするステップと、
    c)前記ドキュメント内で前記フラグメントの要素を定義するレポートドキュメントフォーマットステートメントに基づき、前記フラグメントを前記ドキュメントに、前記コンピュータが、挿入するステップであって、前記フラグメントの前記要素は、、データベースを識別するデータソース識別子と、前記データベースからデータを取り出すためのクエリを含むデータ指定と、前記データベースから取り出されたデータがどのように表示され、フォーマットされるかを指定するプレゼンテーションフォーマットとを含む、前記挿入するステップと、
    d)前記ドキュメントを第二のデータベースに、前記コンピュータが、保存するステップと
    を備え、
    前記フラグメントのメタデータはさらに、前記フラグメントが依存する他のフラグメントを指定するフラグメント依存性データを含むことを特徴とする方法。
  6. 請求項に記載の方法において、前記メタデータは、ユーザー指定のメタデータ又はセマンティックメタデータのうちの少なくとも一つを含むことを特徴とする方法。
  7. 請求項に記載の方法において、前記メタデータはさらに、フラグメント型の情報、ユーザー指定の記述的情報、前記ドキュメントからパースされた値、又はAPIを用いて前記ドキュメントから得た値のうちの少なくとも一つを含むことを特徴とする方法。
  8. 請求項に記載の方法において、前記データベースは複数の記録から成り、前記記録のうちの一つは前記フラグメントの要素及び前記フラグメントと関連付けられた前記メタデータから成ることを特徴とする方法。
  9. 1つ又は複数のデータソースからのデータが存在するレポートドキュメントを、再利用する情報に基づき、作成及び編集するシステムであって、前記システムは、
    a)第一のデータベースからドキュメントを取り出す手段と、
    b)取り出された前記ドキュメントに含まれ、前記ドキュメント内のフラグメントを定義するレポートドキュメントフォーマットステートメントを考慮して、前記ドキュメント内の前記フラグメントを識別する手段と、
    c)メタデータを前記フラグメントと関連付ける手段と、
    d)前記フラグメントと関連付けられ前記メタデータから成る記録を前記第一のデータベース又は第二のデータベースに格納する手段であって、前記記録はさらに、前記フラグメントの複数の要素から成り、前記フラグメントの要素は、データベースを識別するデータソース識別子、前記データベースからデータを取り出すためのクエリを含むデータ指定、及び前記データベースから取り出されたデータがどのように表示され、フォーマットされるかを指定するプレゼンテーションフォーマットを少なくとも含む、前記格納する手段と、
    e)前記フラグメントと関連付けられた前記記録を求めて前記第一のデータベース又は前記第二のデータベースを検索する手段であって、前記第一のデータベース又は前記第二のデータベースは、前記メタデータを用いて前記記録を索引付けする、前記検索する手段と、
    f)前記レポートドキュメントフォーマットの前記ステートメントに基づき、前記フラグメントを第二のドキュメントに挿入する手段と
    を備え、
    前記フラグメントのメタデータはさらに、前記フラグメントが依存する他のフラグメントを指定するフラグメント依存性データを含むことを特徴とするシステム。
  10. 請求項に記載のシステムにおいて、前記挿入の手段は、
    f.1)前記フラグメントが第二のフラグメントへの依存性を持つか、前記フラグメント依存性データに基づいて判定する手段と、
    f.2)前記第二のフラグメントが前記ドキュメント内にあるか判定する手段と、
    f.3)前記ドキュメントに挿入のため、前記第二のフラグメントを位置づけする手段と
    から成ることを特徴とするシステム。
JP2009518693A 2006-07-09 2007-07-09 データアクセス及びプレゼンテーション要素を再利用する方法及び装置 Expired - Fee Related JP5435568B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US80678906P 2006-07-09 2006-07-09
US60/806,789 2006-07-09
PCT/CA2007/001207 WO2008006197A1 (en) 2006-07-09 2007-07-09 Methods and apparatus for reusing data access and presentation elements

Publications (3)

Publication Number Publication Date
JP2009543235A JP2009543235A (ja) 2009-12-03
JP2009543235A5 JP2009543235A5 (ja) 2010-09-02
JP5435568B2 true JP5435568B2 (ja) 2014-03-05

Family

ID=38922872

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009518693A Expired - Fee Related JP5435568B2 (ja) 2006-07-09 2007-07-09 データアクセス及びプレゼンテーション要素を再利用する方法及び装置

Country Status (6)

Country Link
US (1) US20090327277A1 (ja)
EP (1) EP2041672B1 (ja)
JP (1) JP5435568B2 (ja)
KR (1) KR101401171B1 (ja)
CN (1) CN101490675A (ja)
WO (1) WO2008006197A1 (ja)

Families Citing this family (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7873902B2 (en) * 2007-04-19 2011-01-18 Microsoft Corporation Transformation of versions of reports
US8136037B2 (en) * 2008-07-15 2012-03-13 International Business Machines Corporation Assistant for manually proofreading text documents
US8583682B2 (en) * 2008-12-30 2013-11-12 Microsoft Corporation Peer-to-peer web search using tagged resources
US8325973B2 (en) * 2008-12-31 2012-12-04 Jason Lee Moore Generating data representative of a fragmented document
KR101111222B1 (ko) * 2009-02-25 2012-02-16 김기미 인터넷 프로그램의 메타데이타와 웹 정보의 데이타베이스화를 통한 시만틱웹 구현 시스템
US8533213B2 (en) * 2009-06-17 2013-09-10 Sap Portals Israel Ltd. Apparatus and method for integrating applications into a computerized environment
US8538935B2 (en) * 2009-09-25 2013-09-17 Formrouter Inc. One-to-one and one-to-many relationships in databases
US9355144B2 (en) * 2009-12-10 2016-05-31 Nokia Technologies Oy Method and apparatus for recycling information fragments in information spaces
US20120131556A1 (en) * 2010-11-19 2012-05-24 International Business Machines Corporation Xpath-based selection assistance of gui elements during manual test script authoring for xml-based applications
JP5810792B2 (ja) * 2011-09-21 2015-11-11 富士ゼロックス株式会社 情報処理装置及び情報処理プログラム
US10026060B2 (en) * 2013-02-22 2018-07-17 International Business Machines Corporation Enabling dynamic polymorphic asset creation and reuse
WO2014138210A1 (en) * 2013-03-07 2014-09-12 Elateral, Inc. Template metadata
US20140281850A1 (en) * 2013-03-14 2014-09-18 Citta LLC System and method of content stream utilization
US9772984B2 (en) 2013-03-15 2017-09-26 Systemic Management Science Corporation Visualization interface for information object system
CN105447016B (zh) * 2014-08-18 2018-09-14 北大方正集团有限公司 一种组件的快速搜索及重用的办法
US10803013B2 (en) * 2017-02-10 2020-10-13 Smugmug, Inc. Efficient similarity detection
US10558467B2 (en) 2017-03-30 2020-02-11 International Business Machines Corporation Dynamically generating a service pipeline comprising filtered application programming interfaces
US10853347B2 (en) * 2017-03-31 2020-12-01 Microsoft Technology Licensing, Llc Dependency-based metadata retrieval and update
AU2019438434B2 (en) * 2019-11-26 2021-10-21 Citrix Systems, Inc. Document storage and management
US11321526B2 (en) * 2020-03-23 2022-05-03 International Business Machines Corporation Demonstrating textual dissimilarity in response to apparent or asserted similarity

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06309365A (ja) * 1993-04-20 1994-11-04 Fuji Xerox Co Ltd 文書処理装置
JP4255538B2 (ja) * 1998-08-07 2009-04-15 三菱電機株式会社 構造化文書蓄積検索装置
US6721727B2 (en) 1999-12-02 2004-04-13 International Business Machines Corporation XML documents stored as column data
US7072896B2 (en) * 2000-02-16 2006-07-04 Verizon Laboratories Inc. System and method for automatic loading of an XML document defined by a document-type definition into a relational database including the generation of a relational schema therefor
US6993475B1 (en) * 2000-05-03 2006-01-31 Microsoft Corporation Methods, apparatus, and data structures for facilitating a natural language interface to stored information
US6768816B2 (en) * 2002-02-13 2004-07-27 Convey Corporation Method and system for interactive ground-truthing of document images
US7363340B2 (en) * 2002-07-18 2008-04-22 International Business Machines Corporation Method and system for generating auxiliary-server cache identifiers
US7107277B1 (en) * 2002-12-17 2006-09-12 Microsoft Corporation Programmable calculation engine
US7418456B2 (en) * 2004-01-16 2008-08-26 International Business Machines Corporation Method for defining a metadata schema to facilitate passing data between an extensible markup language document and a hierarchical database
US7617450B2 (en) * 2004-09-30 2009-11-10 Microsoft Corporation Method, system, and computer-readable medium for creating, inserting, and reusing document parts in an electronic document
US8775933B2 (en) * 2005-12-22 2014-07-08 Xerox Corporation System and method for managing dynamic document references
WO2007137145A2 (en) * 2006-05-17 2007-11-29 Newsilike Media Group, Inc Certificate-based search

Also Published As

Publication number Publication date
KR101401171B1 (ko) 2014-05-29
JP2009543235A (ja) 2009-12-03
US20090327277A1 (en) 2009-12-31
EP2041672A1 (en) 2009-04-01
EP2041672B1 (en) 2017-02-22
EP2041672A4 (en) 2011-10-19
KR20090028758A (ko) 2009-03-19
CN101490675A (zh) 2009-07-22
WO2008006197A1 (en) 2008-01-17

Similar Documents

Publication Publication Date Title
JP5435568B2 (ja) データアクセス及びプレゼンテーション要素を再利用する方法及び装置
US10452768B2 (en) Managing source annotation metadata
JP4264118B2 (ja) ネットワーク上の異なる情報源から情報を構成する方法
US8914414B2 (en) Integrated repository of structured and unstructured data
US8417513B2 (en) Representation of objects and relationships in databases, directories, web services, and applications as sentences as a method to represent context in structured data
US9460396B1 (en) Computer-implemented method and system for automated validity and/or invalidity claim charts with context associations
KR101114189B1 (ko) 라벨 시스템 - 실행 및 설계 중 텍스트 번역 및 다중 언어지원
CN110263317B (zh) 一种生成文档模板的方法及装置
US20030135517A1 (en) Method, system, and program for defining asset classes in a digital library
US7720885B2 (en) Generating a word-processing document from database content
US20170154101A1 (en) Systems and methods for multilingual metadata
JP2004500645A (ja) ビジュアルデータ形式の記憶と検索
US6915303B2 (en) Code generator system for digital libraries
US7035842B2 (en) Method, system, and program for defining asset queries in a digital library
JP2014089646A (ja) 電子データ処理装置、及び電子データ処理方法
US7949656B2 (en) Information augmentation method
Pikus et al. Semi-automatic ontology-driven development documentation: generating documents from RDF data and DITA templates
Yu et al. Metadata management system: design and implementation
Landone et al. Enabling Access to Sound Archives Through Integration, Enrichment and Retrieval: The EASAIER Project.
Alifi et al. The relational data model on the university website with search engine optimization
JP2008077285A (ja) Sql管理システムとsql管理方法およびプログラム
JP2002297662A (ja) 構造化文書編集方法および構造化文書編集装置および端末装置およびプログラム
JP2003288332A (ja) 構造化文書作成支援方法及び構造化文書作成支援システム
Languedoc Build iOS database apps with Swift and SQLite
JP2010218459A (ja) 情報処理装置、情報処理方法及びプログラム

Legal Events

Date Code Title Description
A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A712

Effective date: 20091019

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100709

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20100709

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120803

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20121105

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130510

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130809

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: 20131105

RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20131126

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20131126

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20131204

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20131126

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